728x90
개요 및 배경 정보
최근 PHP Group에서 PHP의 보안 취약점을 해결하기 위한 업데이트를 공식적으로 발표하였습니다. 이번에 공개된 두 가지 주요 취약점은 각각 버퍼 오버플로우(Buffer Overflow)와 소스코드 노출에 관련된 내용으로, 심각한 피해로 이어질 수 있어 즉시 대응이 필요한 상태입니다.
취약점 ID | 취약점 설명 | 위험성 |
---|---|---|
CVE-2012-2329 | apache_request_headers() 함수의 버퍼 오버플로우 취약점PHP가 Apache 모듈로 실행될 때, 특수하게 조작된 요청 헤더로 인해 메모리 손상 가능 |
높음 (임의 코드 실행 가능) |
CVE-2012-1823 | php-cgi 모드에서 소스코드가 노출되는 취약점 원격 공격자가 PHP 소스코드 및 설정 정보를 노출 가능 |
높음 (정보 노출 위험) |
참고: 요청하신 자료에서 CVE 번호에 오타가 있었으며, 두 번째 취약점은 정확히는 CVE-2012-1823으로 잘 알려져 있습니다.
상세 취약점 분석 및 영향도
CVE-2012-2329: apache_request_headers() 버퍼 오버플로우
- 발생 원인
- PHP가 Apache 웹 서버의 모듈(
mod_php
)로 동작할 때, 요청 헤더를 처리하는 과정에서 길이 검증이 미흡하여 공격자가 헤더에 특수하게 조작된 긴 문자열을 전달하면 버퍼 오버플로우가 발생할 수 있습니다.
- PHP가 Apache 웹 서버의 모듈(
- 공격 시나리오
- 공격자는 특수 제작된 HTTP 요청을 보냅니다.
- 길이가 초과된 헤더를 처리할 때 버퍼 오버플로우가 발생합니다.
- 공격자가 서버의 권한으로 임의의 코드를 실행하거나 서비스 장애(Denial of Service)를 일으킬 수 있습니다.
- 영향
- 서버 접근 권한 탈취 가능
- 임의 코드 실행 및 시스템 손상 가능성 존재
CVE-2012-1823: php-cgi 소스코드 노출 취약점
- 발생 원인
- PHP가 CGI 모드로 실행될 때, 특정 URL 조작(예:
?-s
,?-d
)을 통해 PHP 해석기가 스크립트를 실행하지 않고 소스코드를 그대로 출력하는 문제입니다.
- PHP가 CGI 모드로 실행될 때, 특정 URL 조작(예:
- 공격 시나리오
- 공격자가 웹 서버에 접근하여 URL 뒤에
?-s
등과 같은 특정 매개변수를 추가합니다. - PHP 스크립트의 소스코드가 브라우저에 그대로 노출됩니다.
- 데이터베이스 연결 정보, 비밀번호, 내부 로직 등 민감한 정보가 노출될 가능성이 있습니다.
- 공격자가 웹 서버에 접근하여 URL 뒤에
- 영향
- 민감한 소스코드 및 설정 정보가 노출됨
- 이후 추가적인 공격(정보 유출, 계정 탈취)의 가능성 있음
영향받는 시스템과 버전
해당 취약점의 영향을 받는 PHP 버전은 다음과 같습니다.
- PHP 5.4.2 이하 모든 버전
- PHP 5.3.12 이하 모든 버전
위의 버전을 사용하고 있는 환경은 즉시 업데이트가 필요합니다.
보안 업데이트 방법 (필수 조치 사항)
다음과 같은 절차로 PHP의 최신 보안 업데이트를 적용하세요.
최신 버전으로 업데이트 수행
# PHP 5.4 버전대
wget https://www.php.net/distributions/php-5.4.3.tar.gz
tar zxvf php-5.4.3.tar.gz
cd php-5.4.3
./configure --with-apxs2=/usr/bin/apxs
make && make install
# PHP 5.3 버전대
wget https://www.php.net/distributions/php-5.3.13.tar.gz
tar zxvf php-5.3.13.tar.gz
cd php-5.3.13
./configure --with-apxs2=/usr/bin/apxs
make && make install
각 환경에 따라 옵션(./configure)은 달라질 수 있으며, 기존 설정을 반드시 확인 후 적용하세요.
업데이트 후 버전 확인 방법
php -v
다음과 같이 안전한 버전이 표시되면 성공적으로 업데이트가 완료된 것입니다.
PHP 5.4.3 (cli) (built: May 8 2012 10:00:00)
Copyright (c) 1997-2012 The PHP Group
내부 사용자 보안 점검 가이드
아래 체크리스트를 통해 업데이트 적용 상태 및 보안 설정을 검증하세요.
- PHP 버전 최신 업데이트 적용 여부 확인 (
php -v
) - PHP 설정(
php.ini
)에서 불필요한 모듈 비활성화 - CGI/FastCGI 모드를 사용할 경우 별도의 접근 통제 설정 확인 (Nginx/Apache 설정에서 제한)
- 웹 서버 접근 로그 검토 및 이상 접근 패턴 모니터링
- 정기적인 취약점 점검 및 서버 환경 모니터링 수행
보안 관련 용어 정리
- PHP: 동적인 웹 페이지를 만들기 위한 서버 측 스크립트 언어로, HTML 내에서 사용되어 데이터 처리, 사용자 인증, 세션 관리 등 다양한 웹 기능을 제공합니다.
- 버퍼 오버플로우(Buffer Overflow): 할당된 메모리 크기보다 더 많은 데이터를 입력하여, 인접한 메모리 영역을 덮어쓰는 취약점입니다.
- php-cgi: PHP를 CGI/FastCGI 인터페이스를 통해 실행하는 방식으로, Apache나 Nginx와 같은 웹 서버에서 흔히 사용됩니다.
문의 및 참고 사항
- 추가적인 보안 문의사항은 한국인터넷진흥원(KISA) 인터넷침해대응센터로 연락하세요.
- 📞 국번없이 118
- 자세한 공식 정보는 다음 PHP 공식 사이트를 참고하세요.
필수 조치사항
- 반드시 최신 PHP 버전으로 업데이트하세요.
- PHP 환경의 설정과 로그를 철저히 점검 및 모니터링하여 추가적인 피해를 방지하세요.
728x90
그리드형(광고전용)
댓글