一个mysql注入引发的通宵

热度s:2916℃ 评论:0 发布时间:2017-04-25 收录:已收录

本来没准备通宵的,在t00ls看了会文章,然后准备睡觉,就在准备睡觉的时候,无意中发现了以前看过的某站(我属于看干劲做事的那种,当时没干劲,没搞下,然后最近干劲十足,在一看发现遍地是漏洞。。。)然后,我的通宵之mysql注入艰难拿shell就此开始......

发现SQL注入漏洞

跑了下二级,然后打开一个个随手测试,因为当时准备睡觉了,所以也就没想过认真搞。。。
加个admin,后台出来,输入admin admin 成功登陆。。。
网站全部是htm后缀,后端是php,环境是Linux+mysql+Apache
后台尝试拿shell无果,就一个kindeditor编辑器上传,别的地方全是统计查询,
后台手工找SQL无果,于是丢wvs,设置登陆状态,然后在手工看了下前台,
一个mysql注入引发的通宵
发现前台上图中页面,burp抓包手工检测sql,并没有发现,然而习惯性的把包丢sqlmap跑(手工无报错并不代表就不是注入,记得看文章看到某牛说的,一切输入的地方均有危害),结果居然真跑出注入来了,mobile存在注入,好吧,无报错注入,is-dba看了下,是dba权限,这就有搞头了。。
直接os-shell,结果windows版的sqlmap虽然能直接出现shell交互,然而执行无回显,Kali的sqlmap执行os-shell or os-pwn均需要路径,于是花费了大量的时间寻找路径无果,无错注入,各种尝试和其他页面各种寻找均没找到路径。。。
passwords下user,root密码为null,应该是没跑出来,另外跑出几个账号:

[*] activity [1]:
    password hash: *7A1CACBE8DFDF8C425B7F6477C931D2E0CF481FE
[*] stockcrash [1]:
    password hash: *47063C4B61E623D581B3E6FD24DA59D98FB49248
[*] sumi [1]:
    password hash: *3AA5D0588A7F30E12F73F485168F8A7F87F83ED3
[*] video [1]:
    password hash: *4A9F271A0E1D7DDF78C299D9174BC543F06C0423

stockcrash解密成功,其他均失败,然后阿D扫端口(我说阿D端口扫描比nmap好用你们是否会喷我?然而我就是这样的感觉,nmap不一定跑出的端口阿D可以或许是我懒吧,习惯性nmap -Pn 仅此而已)然后roles查看了下,发现允许外链,于是尝试连接,结果连不上,这就纠结了,无法反弹,没绝对路径,后台无法拿shell,思路断了?

发现绝对路径

思路暂时断了,那么就继续看下别的子站吧,连续打开了六七个,发现都是一个程序,有的后台admin可以进入有的不能,我也没兴趣一个个数据库去翻密码了,一万匹草拟马飞过。。。不过幸运的是,发现有的站的后台的菜单不一样,在点开某后台版本详情处时,终于看到了路径。。。。哇塞。。。
一个mysql注入引发的通宵
然后在这个站尝试之前发现的sql漏洞页面,然而页面不存在。。。。坑爹!
于是乎,构造路径:/data/http/子站名/ 尝试,结果os-shell还是不行。。。纳尼????
sql-shell 执行select @@version发现可以正常执行并且有回显,能执行sql总算让我草泥马的心暂时不奔放了,
有了路径,能执行sql,直接outfile shell吧,本以为我可以马上睡觉了。。。然而故事才刚开始。。。
尝试outfile shell到绝对路径失败,返回null,访问发现页面不存在。。。偶买噶。。。
这时候只想说一句,我拿这绝对路径和dba有何用?

峰回路转之mysql外链

outfile shell失败让我心中一片死灰,刚刚燃起的希望就那么么有了。。。
好吧,咱继续看子站,然而看来看去都是那套程序。。难道有干劲的本屌还是不能fuck掉它吗?
突然想起之前扫的端口,打开阿D看了下:
一个mysql注入引发的通宵
端口很多,似乎我的希望又回来了!!!
一个个端口的手工检测判断,终于发生奇迹了,让我找到了mysql的端口: 6612 卧槽卧槽卧槽,快点膜拜我。。。。
开头就说了stockcrash解密成功,果断连接上了,然而。。。就一个数据库。。。
一个mysql注入引发的通宵
看到就一个数据库,心里就悬哒哒滴,感觉应该没权限outfile shell了。。不死心的我还是尝试一番:
一个mysql注入引发的通宵
建表插表都没问题,在outfile shell的时候就大姨妈了,果然呀。。。
然后就想着去吧其他几个账号给解出来。。。
很多收集的hash在线解密都尝试了,无果。。。想着去t00ls发布悬赏找密码帝解密的,发布帖子的页面都打开了,然而看到那个TB>=10我心中就在滴血....穷淫啊,干嘛要这样喃。。。之前发了个mysql解密的悬赏到现在都没人解出来,账号就10来个tb了,难道最后的10TB也要入坑?心中飞过一句草泥马,直接把页面关了(各位大表哥,小弟穷死了,有么有土豪打赏几个TB呀~)
继续思考继续搞,思路决定出路,不能放弃。。。

load_file大杀器

突然想到,这是mysql,且注入点是DBA,路径也有了,我特么干嘛不load_file读文件呢?fuck,短路了,现在才想起。。。
于是乎,果断尝试load_file('/etc/passwd');能读取,那么果断读取配置文件,那么多个站都是同一个程序,只要找到配置文件的路径,一个个站的读,我特么不信找不到个别的账号。。。
一个mysql注入引发的通宵
从index.php一路跟着代码读下去,终于读到了配置文件,看到配置文件就来气。。。为嘛我不早点想到load_file?早想到能省太多弯路和时间了。。。
video用户正是注入点当前用户,DBA权限啊DBA权限,啦啦啦啦
一个mysql注入引发的通宵
果断outfile shell,
一个mysql注入引发的通宵
然而我的通宵是注定了,

[Err] 1 - Can't create/write to file '/data/http/xxx/xxx/plugin/6.php' (Errcode: 13)

错误13,目录mysql没权限写入,继续找别的目录尝试,然而找了半天都是13,最后无奈,想到后台有图片上传,我导到图片目录该可以了吧?
一个mysql注入引发的通宵
就在我边松气边访问地址的时候。。。
一个mysql注入引发的通宵
不存在?what?你特么在逗我?
果断load_file下,发现是存在的,写入成功了的,那为嘛提示这个?
这时候想到了在找配置文件的时候读到的某个文件的代码:
一个mysql注入引发的通宵
仔细看了下代码,也没发现个所以然。。。
难道是因为图片目录,没有解析权限?好嘛,换目录,然后各种寻找目录,
一个mysql注入引发的通宵
全部错误13。。。在看看wvs里面找目录,结果也全部不行,
一个mysql注入引发的通宵
能成功的目录没找到,不过倒是让我看到了这个,当时那个心情。。。我花了那么久时间找路径。。。哎,不想多说了。。。从来没看到有人在mysql爆路径和php爆路径上提到过Fatal error的方法。。。
既然找不到,那么继续回到图片目录把。。。

奇葩的解析拿下shell

尝试各种后缀,也尝试了Apache的解析漏洞。。。。
txt、htm、php、php5、这些都不行,不过doc和jpg却没有提示不存在。。。
突然尝试到rar的时候,让我眼前一亮!!!
一个mysql注入引发的通宵
rar不是应该下载吗?
一个mysql注入引发的通宵
304状态,这是为什么呢?不解,不过好不容易没显示不存在了,我就不能放过rar!!
尝试1.php;.rar1.php.rar.xxxx等很多能想到的方式,最后:1.php.rar特么的居然神奇的解析了,Apache有这个解析漏洞?
一个mysql注入引发的通宵
一个mysql注入引发的通宵
至此终于成功拿下shell。。。。俺没啥文采,文章写不出多生动,我只是想说,当我拿下shell的时候,已经快中午了。。。。其实很多时间都是白花的,本不应该浪费那么久时间,然,渗透就是这样,思路很重要,你若想到,分分钟的事,你若想不到,或许就不是一天两天一月两月的事了。

结尾疑问

虽然折腾了一个通宵才拿下,不过还是为搞下而高兴,靠自己而成功的喜悦你们都懂的,另说下,图中显示股票啥的,这并不是单子,我也不是搞黑产,请勿瞎BB,我算是怕了那些对黑产莫名其妙敏感的大佬了。
结尾疑问1:我这种情况,有办法覆盖文件吗?当时超级想把那个判断文件给覆盖掉,干死丫的。。。(假设,我这个环境,加目录可写的情况)
结尾疑问2:为何在sqlmap的sql-shell中outfile shell失败?返回null
结尾疑问3:Apache存在1.php.rar这类文件名解析?
结尾疑问4:我这种情况,除了本文提到的方法思路以为,针对mysql注入拿shell,大佬们是否还有别的奇淫意技?求交流,求指点~
PS:若文中有写的不对或者做的不对的地方,欢迎改进,弱爆了,一直在努力。

本文由 Mr.Wu 创作,除注明转载/出处外,均为本站原创,转载前请注明出处!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

顶部
护眼