회원가입

로그인

아이디
비밀번호
ID/PW 찾기
아직 회원이 아니신가요? 회원가입 하기

PHP2Shell 보안 취약점과 해결

Profile
맥노턴

최근 PHP 핵심 보안 이슈 (PHP2Shell 취약점)

최근 PHP 엔진 전반에 영향을 미치는 치명적인 원격 코드 실행(RCE) 취약점이 발표되어 세상이 떠들썩 함.

 

  • CVE 번호 : CVE-2026-109618, CVE-2026-109619

  • 일명 : PHP2Shell

  • 핵심 내용:

    • 메모리 처리 과정(CVE-2026-109618) 및 이전 요청의 잔류 상태(CVE-2026-109619)를 악용하여, 공격자가 인증 없이도 웹 서버 권한으로 임의의 코드를 실행할 수 있는 취약점.

    • Apache(mod_php)나 PHP-FPM 환경에서 악성 요청이 들어올 때 주로 트리거되며, 실제 인터넷 상에서 공격에 악용(Exploited in the wild)되고 있는 것으로 보고.

 

어쩔 수 없이 PHP 7.4를 쓸 수 밖에 없는 상황이라면

  • 공식 권고사항에 따라 취약점 악용 경로 중 하나가 될 수 있는 session.upload_progress.enabled 기능을 끄기.

    • 사용자가 대용량 파일을 업로드할 때, 업로드 진행 상태(예: 0%에서 100%로 올라가는 프로그레스 바)를 PHP 세션에 기록하여 화면에 보여주기 위한 전용 기능

    • 이 기능 자체가 프로세스를 물고 있어야 하므로, exploit에 취약할 수 밖에 없었던 것은 아닐까 추측.

 

PHP 환경 환경설정 수정

  • PHP의 설정 파일 php.ini (기본경로 /etc/php.ini) 을 보면, 아래처럼 주석처리 되어 있고 "On"으로 기본값이 정의 되어 있을 것임.

; session.upload_progress.enabled = On

  •  아래 처럼 주석 ";" 을 지우고, 설정을 "0" 으로 비활성화한 뒤, PHP-FPM 및 Apache를 재시작. (숫자 0으로 해도 되고 문자 Off로 해도 되지만, 안전하게 0을 추천)

session.upload_progress.enabled = 0

  • PHP-FPM 과 Apache 재시작

# sudo systemctl restart php-fpm

# sudo systemctl restart httpd

 

최대한 빨리 PHP 7을 탈출하기로...

Profile
맥노턴
레벨 31
3508088/
-3956%
McNorton & Education Lab.
Director
댓글
총 0개
댓글 쓰기
권한이 없습니다.

로그인

아이디
비밀번호
ID/PW 찾기
아직 회원이 아니신가요? 회원가입 하기