2019-2-26 dvwa学习(3)--sql注入级别high和session

这篇博客详细介绍了在DVWA中,针对SQL注入的High级别进行的学习和研究。作者通过分析代码执行流程,发现High级别的安全性并不如预期,没有使用字符转义,仅通过LIMIT 1限制查询结果,但可被SQL注入攻击。同时,作者尝试使用sqlmap进行攻击,遇到了因查询与结果在不同页面导致的挑战,通过使用--second-order参数解决了问题。
摘要由CSDN通过智能技术生成

2019-2-26 dvwa学习(3)–sql注入级别high和session

继续把dvwa环境安全级别调整为high
观察界面
在这里插入图片描述
high级别页面,点击"here to change your ID",会打开另外一个网页(session-input.php),然后输入3,提交,在主页面上会显示数据。
感觉high和low差不多,只不过high的提交和显示结果不在一个页面上。
先尝试按照low级别的同样方法攻击。
在这里插入图片描述
结果也是可以注入成功,说明high也字符型注入。
我们可以研究一下与源代码的执行过程。
step1./var/www/html/vulnerabilities/sqli/index.php

 $page[ 'body' ] .= "Click <a href=\"#\" onclick=\"javascript:popUp('session-input.php');return false;\">here to change your ID</a>.";

以上代码表示点击"here to change your ID",会打开session-input.php页面

step2./var/www/html/vulnerabilities/sqli/session-input.php

<?php

define( 'DVWA_WEB_PAGE_TO_ROOT', '../../' );
require_once DVWA_WEB_PAGE_TO_ROOT . 'dvwa/includes/dvwaPage.inc.php';

dvwaPageStartup( array( 'authenticated', 'phpids' ) );

$page = dvwaPageNewGrab();
$page[ 'title' ] = 'SQL Injection Session Input' . $page[ 'title_separator' ].$page[ 'title' ];

if( isset( $_POST[ 'id' ] ) ) {
        $_SESSION[ 'id' ] =  $_POST[ 'id' ];
        //$page[ 'body' ] .= "Session ID set!<br /><br /><br />";
        $page[ 'body' ] .= "Session ID: {$_SESSION[ 'id' ]}<br /><br /><br />";
        $page[ 'body' ] .= "<script>window.opener.location.reload(true);</script>";
}

$page[ 'body' ] .= "
<form action=\"#\" method=\"POST\">
        <input type=\"text\" size=\"15\" name=\"id\">
        <input type=\"submit\" name=\"Submit\" value=\"Submit\">
</form>
<hr />
&l
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值