본문 바로가기

웹해킹/DVWA

DVWA XSS(Stored)(low) 롸업

게시글을 올릴 수 있는 창이 있다.

sign guestbook으로 올리면 아래에 name과 message가 뜨고, 

clear guestbook을 누르면 올렸던 글들이 모두 사라진다.

<?php

if( isset( $_POST[ 'btnSign' ] ) ) {
    // Get input
    $message = trim( $_POST[ 'mtxMessage' ] );
    $name    = trim( $_POST[ 'txtName' ] );

    // Sanitize message input
    $message = stripslashes( $message );
    $message = ((isset($GLOBALS["___mysqli_ston"]) && is_object($GLOBALS["___mysqli_ston"])) ? mysqli_real_escape_string($GLOBALS["___mysqli_ston"],  $message ) : ((trigger_error("[MySQLConverterToo] Fix the mysql_escape_string() call! This code does not work.", E_USER_ERROR)) ? "" : ""));

    // Sanitize name input
    $name = ((isset($GLOBALS["___mysqli_ston"]) && is_object($GLOBALS["___mysqli_ston"])) ? mysqli_real_escape_string($GLOBALS["___mysqli_ston"],  $name ) : ((trigger_error("[MySQLConverterToo] Fix the mysql_escape_string() call! This code does not work.", E_USER_ERROR)) ? "" : ""));

    // Update database
    $query  = "INSERT INTO guestbook ( comment, name ) VALUES ( '$message', '$name' );";
    $result = mysqli_query($GLOBALS["___mysqli_ston"],  $query ) or die( '<pre>' . ((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)) . '</pre>' );

    //mysql_close();
}

?>

구성 코드이다.

 

이렇게 <script> 태그로 게시글을 올리면 원하는 코드를 실행시킬 수 있다.

 

'웹해킹 > DVWA' 카테고리의 다른 글

DVWA JavaScript(low) 롸업  (0) 2023.11.11
DVWA CSP Bypass(low) 롸업  (0) 2023.11.11
DVWA XSS(Reflected)(low) 롸업  (0) 2023.11.10
DVWA XSS(DOM)(low) 롸업  (0) 2023.11.09
DVWA Weak Session IDs(low) 롸업  (0) 2023.11.08