Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2012-1823 — CVE-2012-1823 - PHP CGI 인자 주입 원격 코드 실행 (RCE) | Kitploit
도구/GitHubGitHub/k3ystr0k3r/cve-2012-1823
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationPayload Development
GitHubk3ystr0k3r/cve-2012-1823

CVE-2012-1823

CVE-2012-1823 - PHP CGI 인자 주입 원격 코드 실행 (RCE)

저장소 보기
52개월 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2012-1823 - PHP CGI 인자 주입 원격 코드 실행 (RCE)

심각도: 치명적 (CVSS 9.8)

CVE: CVE-2012-1823
게시일: 2012년 5월 11일
영향받는 소프트웨어: CGI 모드로 실행되는 PHP (php-cgi)
취약점 유형: 인자 주입 / 원격 코드 실행 (RCE)
공격 벡터: 네트워크
인증 요구: 없음


CVE-2012-1823은 PHP에서 발견된 가장 중요한 원격 코드 실행 취약점 중 하나입니다. 이 취약점은 CGI(Common Gateway Interface)를 통해 실행되도록 구성된 PHP 설치에 영향을 미치며, 인증되지 않은 공격자가 원격으로 임의의 PHP 코드를 실행할 수 있게 합니다.

웹 애플리케이션 내부의 결함이 필요한 취약점과 달리, 이 문제는 php-cgi를 사용하여 배포할 때 PHP 자체에 존재합니다. 취약점이 인터프리터 수준에 존재하므로, 영향을 받는 서버에서 호스팅되는 모든 PHP 애플리케이션은 코딩 결함 여부와 관계없이 취약해집니다.

이 취약점은 단순성, 신뢰성, 그리고 인터넷 전반에 걸친 광범위한 악용으로 인해 2012년에 널리 알려지게 되었습니다. 공개된 지 수년이 지난 후에도 인터넷 전체 스캔은 취약한 시스템을 계속 식별하고 있으며, 이 취약점은 여전히 악용 프레임워크와 방어 탐지 도구에 포함되어 있습니다. :contentReference[oaicite:0]{index=0}


기술 요약

이 취약점은 PHP의 CGI 구현(php-cgi) 내부에 존재합니다.

일반적으로 HTTP 쿼리 매개변수는 사용자 입력으로 PHP 스크립트에 전달되도록 설계되었습니다.

그러나 PHP는 등호(=) 문자를 포함하지 않는 특수하게 조작된 쿼리 문자열을 잘못 처리합니다.

PHP는 쿼리 문자열을 순수한 사용자 데이터로 취급하는 대신, 그 일부를 PHP 실행 파일에 직접 전달되는 명령줄 인자로 잘못 해석합니다.

PHP는 다양한 명령줄 스위치(예: -d)를 지원하므로, 공격자는 요청 처리 중에 PHP 런타임 구성 옵션을 재정의할 수 있습니다.

이를 통해 공격자는 다음을 수행할 수 있습니다:

  • 위험한 PHP 지시어를 활성화
  • 보안 제한을 비활성화
  • 공격자가 제어하는 PHP 코드를 자동으로 앞에 추가
  • 임의의 PHP 명령을 실행
  • 웹 서버 프로세스에 대한 완전한 제어를 획득

근본 원인은 다음 내부에서 php_getopt()를 부적절하게 처리하는 것입니다:

root@kitploit:~
sapi/cgi/cgi_main.c

구체적으로, PHP는 등호(=)가 없는 악성 쿼리 문자열을 처리할 때 명령줄 구문 분석을 올바르게 무시하지 못했습니다. :contentReference[oaicite:1]{index=1}


근본 원인

CGI 실행 파일은 명령줄 매개변수를 허용합니다.

예를 들어:

root@kitploit:~
php-cgi -d allow_url_include=1

일반적으로 이러한 매개변수는 운영 체제에서만 비롯되어야 합니다.

대신, PHP는 HTTP 요청이 특수하게 조작된 URL을 통해 이러한 매개변수를 주입하는 것을 잘못 허용했습니다.

따라서 공격자는 대상 스크립트가 실행되기 전에 PHP 런타임 구성을 조작할 수 있었습니다.

이것은 사실상 단순한 HTTP 요청을 php-cgi에 대한 명령줄 실행으로 변환했습니다.


영향받는 버전

다음 PHP 릴리스가 취약합니다:

버전상태
PHP < 5.3.12취약
PHP 5.4.x < 5.4.2취약

**CGI 모드(php-cgi)**를 사용하는 설치만 영향을 받습니다.

다음과 같이 실행되는 PHP는 일반적으로 CVE-2012-1823 자체의 영향을 받지 않습니다:

  • Apache 모듈 (mod_php)
  • PHP-FPM
  • 이 구문 분석 결함에 취약하지 않은 FastCGI 구현

:contentReference[oaicite:2]{index=2}


공격 요구 사항

공격자는 다음만 필요로 합니다:

  • 대상에 대한 네트워크 연결
  • CGI로 실행되는 PHP
  • 인증 불필요
  • 유효한 사용자 계정 불필요
  • 피해자의 상호 작용 불필요

이 취약점은 원격으로 완전히 악용 가능합니다.


악용 과정

공격은 일반적으로 다음 단계를 따릅니다:

  1. PHP CGI 엔드포인트를 발견합니다.
  2. 특수하게 조작된 HTTP 요청을 보냅니다.
  3. PHP 명령줄 인자를 주입합니다.
  4. PHP 런타임 설정을 재정의합니다.
  5. 공격자가 제어하는 PHP 코드를 실행합니다.
  6. 원격 코드 실행을 획득합니다.

코드 실행을 획득하면 공격자는 일반적으로 다음을 수행합니다:

  • 웹 셸 업로드
  • 시스템 명령 실행
  • 민감한 파일 읽기
  • 데이터베이스 덤프
  • 악성코드 설치
  • 지속성 확립
  • 내부 네트워크로 더 깊이 피벗

영향

성공적인 악용은 PHP 애플리케이션의 완전한 손상을 초래합니다.

잠재적 결과는 다음과 같습니다:

  • 원격 코드 실행
  • 웹사이트 전체 손상
  • 데이터베이스 도난
  • 자격 증명 노출
  • 악성코드 배포
  • 웹 셸 설치
  • 서버 장악
  • 측면 이동
  • 권한 상승 (서버 구성에 따라 다름)

PHP가 상승된 권한으로 실행되는 경우 시스템 수준의 손상도 가능할 수 있습니다.


CVSS v3.1

지표값
기본 점수9.8
심각도치명적
공격 벡터네트워크
공격 복잡도낮음
필요한 권한없음
사용자 상호 작용없음
기밀성높음
무결성높음
가용성높음

이 취약점이 그토록 위험했던 이유

여러 특성으로 인해 CVE-2012-1823은 특히 영향력이 컸습니다:

  • HTTP를 통해 악용 가능
  • 인증 불필요
  • 신뢰할 수 있는 악용
  • 인터프리터 수준 취약점
  • 호스팅된 모든 PHP 애플리케이션에 영향
  • 공개 직후 공개 익스플로잇 코드가 유포됨
  • 침투 테스트 프레임워크에서 지원됨
  • 자동화된 인터넷 스캐닝 캠페인에서 널리 사용됨

악용 용이성과 심각한 영향의 결합으로 인해 광범위한 실제 공격이 발생했으며, 이 취약점은 CISA의 KEV(Known Exploited Vulnerabilities) 카탈로그에도 포함되었습니다. :contentReference[oaicite:4]{index=4}


탐지

관리자는 다음을 확인해야 합니다:

  • PHP 버전
  • 배포 모드
  • php-cgi 존재 여부
  • 웹 서버 구성

지표에는 다음이 포함됩니다:

  • HTTP를 통해 노출된 CGI 실행 파일
  • 예상치 못한 PHP 런타임 지시어
  • 인코딩된 명령줄 스위치를 포함한 의심스러운 요청
  • 쿼리 문자열에 '='가 없는 요청

Nuclei, Nessus, OpenVAS, Metasploit 모듈과 같은 보안 스캐너는 취약한 구성을 탐지할 수 있습니다. :contentReference[oaicite:5]{index=5}


완화 조치

권장 완화 조치는 다음과 같습니다:

  • PHP를 다음 버전으로 업그레이드:
    • 5.3.12 이상
    • 5.4.2 이상
  • 가능한 경우 CGI 모드 비활성화
  • PHP-FPM으로 마이그레이션
  • php-cgi 실행 파일에 대한 액세스 제한
  • 공급업체 보안 패치 적용
  • 악성 CGI 인자 주입 시도를 차단할 수 있는 WAF(Web Application Firewall) 배포

타임라인

날짜이벤트
2012년 5월취약점 공개
2012년 5월보안 패치 출시
2012년공개 익스플로잇 유포
2012년Metasploit 모듈 게시
이후 수년대규모 인터넷 악용 관찰
현재취약점 스캔 및 레거시 시스템에 계속 등장

면책 조항

이 저장소는 교육 목적, 보안 연구, 취약점 분석 및 방어적 테스트만을 위해 제공됩니다. 여기에 포함된 모든 정보는 명시적 승인을 받은 시스템에서만 사용해야 합니다. 승인되지 않은 취약 시스템의 악용은 불법적이고 비윤리적입니다.

도구 다운로드