이 문서에 포함된 어떠한 내용도 불법적이거나 비윤리적인 목적으로 보안 도구나 방법론을 사용하도록 가르치거나 장려하지 않습니다. 항상 책임감 있는 태도로 행동하세요. 여기에 설명된 도구나 기법을 사용하기 전에 개인 테스트 환경 또는 허가를 받았는지 확인하세요. |
[ 환경 ]
DVWA | v1.9 |
Burp Suite | Community Edition v2024.11.2 |
$target = $_REQUEST[ 'ip' ];
$substitutions = array(
'&&' => '',
';' => '',
);
$target = str_replace( array_keys( $substitutions ), $substitutions, $target );
if( stristr( php_uname( 's' ), 'Windows NT' ) ) {
$cmd = shell_exec( 'ping ' . $target );
} else {
$cmd = shell_exec( 'ping -c 4 ' . $target );
}
echo "<pre>{$cmd}</pre>";
소스코드에서 확인하였듯이 $target = $_REQUEST[ 'ip' ]; 로 target 변수에 입력한 IP를 대입하며, shell_exec( ) 함수는 $target 에서 입력한 IP를 이용해서 Ping 실행한다는 것을 확인하였다. Low level과 다른점은 블랙리스트로 $substitutions 배열에 제거할 문자열을 정의하였다는 것이다. 블랙리스트로 지정한 문자열 이외에 다른 구분자를 사용하면 정상적으로 명령어가 실행되는 것을 확인할 수 있다.
DVWA : Command Injection - Impossible level (0) | 2024.12.29 |
---|---|
DVWA : Command Injection - High level (0) | 2024.12.29 |
DVWA : Command Injection - Low level (0) | 2024.12.29 |
DVWA : Brute Force - Impossible level (0) | 2024.12.29 |
DVWA : Brute Force - High level (0) | 2024.12.29 |