PHP는 안전할까? 언어보다 중요한 것은 사용 중인 버전
PHP 개발팀은 PHP의 각 계열을 4년 동안 지원하고, 그 뒤로는 보안 문제를 고치지 않습니다. 그래서 내 웹사이트에서 PHP가 안전한지는 언어 자체보다 사이트가 어떤 버전을 쓰는지, 그 버전이 패치되었는지에 더 많이 달려 있습니다. 이 글은 2026년 10월 23일 기준 정보입니다.
간단한 답변
PHP 개발팀이 아직 지원하는 버전을 최신 릴리스로 업데이트해 쓰고 있다면 PHP는 안전하게 쓸 수 있습니다. 2026년 10월 23일 기준으로 PHP 8.2, 8.3, 8.4, 8.5이며, 각각 8.2.35, 8.3.36, 8.4.27, 8.5.12 이상이어야 합니다. 지원이 끝난 버전은 보안 수정을 받지 못합니다. 덧붙여 PHP 개발팀은 10월 23일 정보성 권고에서, 관련은 있지만 훨씬 작고 실제로는 일어나기 어렵다는 문제에 대해 다음 정기 버그 수정 릴리스까지 세션 업로드 진행률 기능을 끄라고 권했습니다. 자세한 내용은 PHP2Shell 해설에 있습니다.
PHP 자체는 안전한 언어인가요?
PHP 매뉴얼은 이 점을 솔직하게 말합니다. 보안 장에서 PHP는 서버의 파일에 접근하고, 명령을 실행하고, 네트워크 연결을 열 수 있으며, 이런 성질 때문에 웹서버에서 실행되는 것은 무엇이든 기본적으로 안전하지 않다고 설명합니다. 이어서 올바른 설정과 제대로 된 코딩 습관이 있으면 PHP가 필요한 만큼의 자유와 보안을 함께 줄 수 있다고 말합니다.
그러니 언어는 도구이고, 사이트가 얼마나 안전한지는 어떻게 설정하고 얼마나 최신으로 유지하느냐에 달려 있습니다. 매뉴얼은 PHP 환경의 보안이 대부분 PHP 개발자에게 달려 있다고 말합니다. 개인 사이트라면 그 일은 대개 나와 호스팅 업체, 워드프레스처럼 사이트 소프트웨어를 만드는 곳이 나눠서 맡습니다. PHP가 내 사이트에서 무슨 일을 하는지부터 궁금하다면 PHP란 무엇일까를 먼저 보세요.
언어와 내가 쓰는 버전은 어떻게 다른가요?
PHP는 8.3이나 8.4 같은 계열로 나뉘고, 각 계열은 8.3.36처럼 번호가 붙은 작은 수정 릴리스를 받습니다. PHP가 안전하냐고 물을 때 실제로 따져 볼 것은, 내 계열이 아직 지원되는지와 그 계열의 최신 릴리스를 쓰는지입니다.
PHP의 지원 버전 페이지에 따르면 각 계열은 첫 안정 릴리스부터 2년 동안 전체 지원을 받고, 그다음 2년 동안은 심각한 보안 문제만 수정됩니다. 그 4년이 지나면 지원이 끝납니다. 2026년 10월 23일 기준으로 이 페이지는 8.2, 8.3, 8.4, 8.5를 지원 버전으로 보여 주며, 8.2의 보안 지원은 2026년 12월 31일에 끝납니다. 전체 표는 php.net의 지원 버전 페이지에 있습니다.
사이트가 더 오래된 계열을 쓴다면 PHP 8.1 이하를 쓰고 있다면에서 할 수 있는 일을 정리했습니다.
보안 업데이트가 왜 그렇게 중요한가요?
발견되어 고쳐진 취약점도 수정본을 설치하지 않은 서버에서는 계속 열려 있기 때문입니다. PHP의 지원 버전 페이지는 지원이 끝난 릴리스를 쓰는 사람은 패치되지 않은 보안 취약점에 노출될 수 있으므로 가능한 한 빨리 업그레이드해야 한다고 설명합니다.
일반 소프트웨어에 대해서도 같은 이야기를 합니다. 영국 국가사이버보안센터(NCSC)는 보안 업데이트를 바로 적용하면 기기와 계정을 사이버 범죄자로부터 지키는 데 도움이 된다고 하며, 업데이트를 가장 중요하면서도 빨리 할 수 있는 일 중 하나로 꼽습니다. 조직을 위한 지침에서는 업데이트를 가능한 한 빨리, 되도록 자동으로 적용하는 것을 기본으로 삼으라고 합니다.
웹사이트에서 업데이트란 대개 서버의 PHP와, 그 위에서 돌아가는 사이트 소프트웨어와 플러그인을 함께 뜻합니다. PHP는 호스팅 업체가 관리하는 경우가 많습니다. 한쪽을 최신으로 유지한다고 다른 쪽까지 해결되지는 않습니다.
PHP2Shell은 이 점을 어떻게 보여 주나요?
PHP 개발팀은 2026년 10월 21일 심각한 취약점 두 가지를 고쳤는데, 새 릴리스는 지원 중인 네 계열에만 나왔습니다. CISA는 이 취약점들이 "php2shell"로 알려져 있다고 밝혔습니다. 권고문은 PHP 8.1 이하가 더 이상 PHP 개발팀의 업데이트를 받지 못한다고 하므로, 이런 버전을 쓰는 사람은 업체의 백포트 수정에 기대거나 지원 계열로 옮겨야 합니다. KISA도 10월 22일 보안공지에서 8.1 이하는 공식 업데이트가 제공되지 않으므로 지원 버전으로 전환하라고 권고했습니다. 취약점 자체는 PHP2Shell 해설에서 자세히 다룹니다.
내 사이트가 지원되고 패치된 버전인지 어떻게 알 수 있나요?
사이트가 쓰는 정확한 PHP 버전을 찾은 다음, 지원 계열과 그 계열의 최신 수정 릴리스와 비교합니다. 직접 찾을 수 없다면 호스팅 업체가 알려 줄 수 있습니다.
워드프레스와 호스팅 관리 화면에서 보는 곳, 호스팅 업체에 물어볼 질문은 PHP 버전 확인 방법에 있습니다. 버전을 바꿔야 한다면 백업부터 시작하는 워드프레스 PHP 업데이트 방법을 보세요.
자주 묻는 질문
2026년에도 PHP를 써도 괜찮나요?
네, 지원되고 패치된 버전이라면 그렇습니다. 2026년 10월 23일 기준으로 PHP의 지원 버전 페이지는 8.2, 8.3, 8.4, 8.5를 지원 버전으로 보여 줍니다. 8.2보다 오래된 계열은 지원이 끝났고, 지원되지 않는 릴리스를 쓰면 패치되지 않은 보안 취약점에 노출될 수 있다고 페이지는 말합니다.
PHP 8.2는 안전한가요?
PHP의 지원 버전 페이지에 따르면 8.2의 보안 지원은 2026년 12월 31일에 끝납니다. KISA는 8.3 이상으로 전환하라고 권장합니다. 8.2와 앞으로의 계획은 PHP 8.1 이하를 쓰고 있다면에서 다룹니다.
PHP로 만든 사이트에 접속하면 내 컴퓨터가 위험한가요?
PHP는 내 기기가 아니라 웹서버에서 실행되고, PHP2Shell 권고문도 웹 요청을 처리하는 설치를 다룹니다. 고치는 일은 사이트 운영자의 몫입니다. 방문자 입장은 해킹된 사이트에 접속만 해도 감염될까에서 다룹니다.
PHP가 최신이면 내 웹사이트는 안전한가요?
그것만으로는 아닙니다. PHP 매뉴얼은 PHP 환경의 보안이 설정과 코드 작성 방식에도 달려 있다고 말합니다. 사이트 소프트웨어와 테마, 플러그인도 각자 업데이트가 필요하고, 그 주변의 서버는 호스팅 업체가 책임집니다.
호스팅을 쓰는 사이트의 PHP는 누가 업데이트하나요?
호스팅 업체가 하는 경우가 많고, 호스팅 관리 화면에서 내가 직접 바꾸는 경우도 있습니다. KISA는 호스팅 업체가 PHP를 관리한다면 그 업체에 조치 적용 여부를 확인하고 요청하라고 안내합니다. 누가 맡는지 모르겠다면 호스팅 업체에 내 사이트의 PHP 버전과 수정 릴리스 적용 여부를 물어보세요.
출처
- Supported versions, PHP (영어)
- Security: introduction, PHP Manual (영어)
- Security advisory: Critical remote code execution vulnerabilities, update now, PHP (2026년 10월 21일)
- Informational advisory: Session upload progress, PHP (2026년 10월 23일)
- PHP 보안취약점(PHP2Shell) 관련 기업 보안 대응 수칙, KISA 보호나라&KrCERT/CC
- Install the latest software and app updates, NCSC
- Vulnerability management guidance, NCSC
- Critical vulnerabilities in PHP require immediate patching, CISA