日常聊一聊
额,不多说了,真的热……
Get user shell
老伙计,扫IP以及服务端口
arp-scan -l
nmap -sV -p- -O 192.168.5.46
OK呀,开着80,又是经典web机,看看有什么
哦,这个源码里面的一点点特殊标注有点意思,组合拳,不知道啥意思,那没了,主页没啥,啥也没有,只能扫目录
gobuster dir -u http://192.168.5.46 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,html,js,txt
OK,有用的其实就是login.php和comment.php,
OK,这个先打这个输入框,没有sql,xss,ssti都没有哈,那就后台自己爆破去吧,或者bp抓包爆破都行,这里爆破还是喜欢用hydra,bp我的虚拟机里面太慢了不知道为什么,这里教大家怎么hydra网页爆破登录,首先你得先知道url,然后什么请求,表单字段,失败的标识
bp一抓个包就都有了,然后根据这些构造爆破命令,现在就剩下怎么获得失败信息,这个简单,你随便输输不就回显了,当然不严谨,也可以用curl一下登录框也可以,
curl -X POST \
"http://192.168.5.46/login.php" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Cookie: PHPSESSID=ikvdvv3c0eac2dca97hf5n0d0d" \
-d "username=test&password=test"
像这样,意思都很明确哈,对照着bp看,实在还有点懵的,问问AI,挺好使
hydra -L top-usernames-shortlist.txt -P 5000.txt 192.168.5.46 http-post-form "/login.php:username=^USER^&password=^PASS^:用户名或密码错误" -V -I -f -u -e nsr
OK,这就是构造的命令,很快就爆出来了
弱密码哈,登录看看
要改金额,那就按提示来呗,
就写了个500就这样了,啥意思,反定就继续试,也是成功卡了30分钟,得出结论,就是一个可能有个钥匙,就是缺了个什么东西不知道,那就转战,html/xss输入框
哈,这个简单的测试语句成功了,然后……开始了深渊……这里根本就是个假的哈哈哈,迷惑你,根本就啥也没有,OK,这里卡了30分钟就真的卡住了,其实这里我想到了前面源码里面不是有什么组合拳吗,我也思考过,也丢给AI问,也没啥思路……要了提示,OK,这里就是组合拳哈哈哈,就是给你的一切都要综合起来哦,组合拳什么意思,各位看官请看我的操作
bp抓包,修改请求方,用comment.php请求哈哈哈哈哈,然后放包你看……啊,忘了忘了,要修改金额到500哦哈哈哈
哈哈哈,真的组合拳,唉,其实我应该想到,就是太零碎了,组合拳加这个modify.php知道好像缺了个东西,唉,但是这是新思路我没碰上过哈哈哈,长知识了
Get root shell
OK,开始提权,依据先提权三部曲,OK,sudo -l就有反应了
哦,就是数字小游戏,编写个小脚本(这里不知道为什么直接sudo gu……不能运行了,真是,不是自己会找嘛)
其实编写这个脚本很简单,因为前面的就跟你提示就是按顺序1到100哈哈哈哈哈,不用写脚本还要检测前面是什么数字,再输出什么,那就直接打印1到100运行这个.sh就行,
printf "%s\n" {1..100} | sudo /opt/guessgame.sh
OK,到这里就结束了,我看完别人的思路,我得说一下
看到没有,这里点明一些人,包括我,就是不习惯-h看看能输出啥哈哈哈,会忘也不习惯,这不就直接可以啦哈哈哈
还有个大佬给了个方案
这个没研究哈,感兴趣的大家可以搜索学习一下