本文由掌控安全学院 - zbs投稿
一、漏洞说明
xxxxx公司后台存在SQL注入,后端数据库为Mysql
【显错位2,4,6】
漏洞已提交平台,后台的开发商提供给了很多公司,搜一下资产就有很多公司都没有修复该漏洞。
二、漏洞挖掘【思路、过程】
现在的网站想直接【inurl:asp?id= 】 去找SQL注入很难【反正我是没有找到过】,基本都有waf或者过滤什么的,要黑盒去绕小白实在无能为力;
所以需要转变思路—>魔方老师课上说的’外紧内松’,并且很多公司内网没搞,也就是说很多公司的后台如果能进去,想找到SQL注入就会简易很多;
【intext:管理登录 inurl:asp】 所以我们先这样去搜索后台,找找有没有能弱口令进去的网站,这边运气很好,找到了一个:
寻找注入点:
SQL注入就不细说了,课里、笔记或者网上都有步骤:
'、 "、 ")、") + and 1=1、and 1=2
结合一步一步测,这边测的第一个网站后台是没有SQL注入的,不要灰心,直接找到它的后台开发商,上Hunter鹰图平台或者其他资产测绘平台去构造语法进行搜索:
这些都是资产,结合弱口令大法能很好提高我们的效率;
如果能证明这个开发商的后台系统默认没有防御SQL注入,就能找到n多存在sql注入的网站,毕竟都是同一开发商的系统。
相信只要耐心坚持测一测,小白也能找到梦寐以求的SQL注入:
【显错位2,4,6】
确认字符型or数据型 —-> order by测字段数 —-> 找显错位 —-> 爆库名、表名
字段和数据咱们最好就别碰了,测试证明漏洞存在就好了!
【出现的问题】:
这里一开始不知道是什么类型的数据库,在显错那里纠结了很久,因为union select …. 莫名500了,以为是access或oracle,使用exists爆破了库名爆了个dual,一下就以为是oracle,结果又疯狂500,最后发现第n个显错位是其他类型,填个null就正常了,就是个mysql数据库
1’ union select 1,2,3,4,null,6 — 1 这样:
【看我的笔记一开始以为是access哈哈,但小白就是得不断碰壁,但这也是一种提升能力的方法】
显错完就是database(),table_name……了,就不细说了,证明漏洞完交报告;
当然你发现没有防护也可以直接丢给sqlmap:
python2 sqlmap.py -r 1.txt —level 3 —risk 2 —delay 1
python2 sqlmap.py -r “D:\soft\sqlmap-master\1.txt” —dbms=”Mysql” —level 3 —risk 2 —delay 1
如果你是修改或者删除的操作,不要直接使用sqlmap,一定要了解清楚规则后再使用:
【爆完库名就点到为止】
三、漏洞修复
1.后台管理员账号密码进行修改
2.对后台进行ip限制
3.开启魔术引号等过滤传参
4.使用预编译,提前设置好用户传入的变量类型
申明:本账号所分享内容仅用于网络安全技术讨论,切勿用于违法途径,所有渗透都需获取授权,违者后果自行承担,与本号及作者无关,请谨记守法。
免费领取安全学习资料包!
渗透工具
技术文档、书籍
面试题
帮助你在面试中脱颖而出
视频
基础到进阶
环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等
应急响应笔记
学习路线