靶场环境:Ubuntu 20.04.2 LTS
攻击机环境:kali
信息收集
扫描kali的IP C段,得到目标主机信息和端口开放情况
sudo nmap 172.31.205.0/24

漏洞利用
试着访问80端口,然而无法访问只能试试ftp了
ftp ip

可以看到登录需要用户名和密码,尝试匿名登录,发现可以,就很nice
ftp 匿名登录 在用户名输入 anonymous 即可

在ftp模式下载存在文件
get flag1.txtget word.dir
得到第一个flag
然后打开另一个文件得到一个字典猜测它是密码,但不知道用户名是啥(于是无耻的我找了参考答案)
Getshell
使用kali自带的目录爆破工具Dirbuster
注:其自带的字典在 /usr/share/wordlists/dirbuster 下
于是得到一个可以访问的目录,url/happy
访问http://172.31.205.151/happy并查看源代码,得到用户名hackathonll
发现无路可做时又进行到了信息收集,刚刚直接nmap并没有很好的收集端口信息,于是用更好的语句搜索
nmap -T4 -A -v -p- 172.31.205.151
得到一个ssh链接端口7223
使用kali爆破工具hydra,进行协议爆破
Hydra
语法:Hydra 参数 IP 服务
参数:
-l login 小写,指定用户名进行破解
-L file 大写,指定用户的用户名字典
-p pass 小写,用于指定密码破解,很少使用,一般采用密码字典。
-P file 大写,用于指定密码字典。
-e ns 额外的选项,n:空密码试探,s:使用指定账户和密码试探
-M file 指定目标ip列表文件,批量破解。
-o file 指定结果输出文件
-f 找到第一对登录名或者密码的时候中止破解。
-t tasks 同时运行的线程数,默认是16
-w time 设置最大超时时间,单位
-v / -V 显示详细过程
-R 恢复爆破(如果破解中断了,下次执行 hydra -R /path/to/hydra.restore 就可以继续任务。)
-x 自定义密码。
service:指定服务名,支持的服务跟协议有:telnet,ftp,pop3等等。
注意点:1.自己创建字典,然后放在当前的目录下或者指定目录。
2.参数可以统一放在最后,格式比如hydra ip 服务 参数。
3.如果能确定用户名一项时候,比如web登录破解,直接用 -l就可以,然后剩余时间破解密码。
4.缺点,如果目标网站登录时候需要验证码就无法破解。
5.man hydra最万能。
6.或者hydra -U http-form等查看具体帮助。
举例:
hydra -L users.txt -P password.txt -t 2 -vV -e ns 192.168.1.114 ssh -o 1.txt -f
本靶场使用
hydra -l hackathonll -P word.dir 172.31.205.151 -s 7223 ssh
提权
输入密码登录服务器
输入sudo -l,发现存在vim提权漏洞
运行如下命令并获取到了root权限
sudo vim:!/bin/bash

把目录返回最初的目录,得到第二个flag
