最近公司项目被扫描出有SQL注入的漏洞,通过百度之后,决定使用sqlmap进行SQL注入的检测。这里仅仅是记录一下注入检测的步骤。
检测前准备
sqlmap是一个python编写的工具,因此我们首先要进行python环境的搭建,然后再从sqlmap官网下载最新版本。
检测步骤
查看需要检测的注入点
首先我们需要访问自己的项目,找到一个需要检测的url,这个url需要对应后台的处理,这个url对应的后台需要接收参数,并且会将我们的参数作为sql的一部分去数据库进行查询之类的操作。
如 我们有个链接 http://192.168.21.12:8080/mylink.action?userCode=admin
URL检测是否存在注入点
使用python sqlmap.py -u "http://192.168.21.12:8080/mylink.action?userCode=admin" --batch
这里--batch表示不需要用户输入,使用默认行为,否则会有一些提示选择需要用户进行。
如果此URL中存在SQL注入,那么将会出现如下画面。并且可以看到 这里告诉我们后台使用的数据库类型与版本是SQLServer 2008.
获取到数据库名称
这里我们使用
python sqlmap.py -u URL --dbs --batch
可以获取到此实例下的所有数据库名称。
使用python sqlmap.py -u URL --current-db --batch
可以获取当前系统使用的数据库名称。