dawn
一、靶机介绍:
攻击方法:
- 主机发现
- 端口扫描
- 信息搜集
- SAMBA漏洞
- 任意文件上传
- 日志信息泄露
- 调度任务
- 提权方法1
- 提权方法2
- 潜在提权方法
二、 主机发现
arp-scan -l |
靶机地址为:10.0.2.21
三、端口扫描
nmap -p- 10.0.2.21 |
发现靶机开放80,139,445,3306服务
139和445是smb服务,即共享文件以及打印机的
nmap -p- 80,139,445,3306 -sC -sV 10.0.2.21 |
发现smb是运行guest登录的
四、samba漏洞
由于smb历史漏洞比较多,我们先从这个方向入手
使用kali带的工具进行连接
smbclient -L \\\\10.0.2.21 |
UNC路径:UNC(Universal Naming Convention)通用命名规则,也称通用命名规范、通用命名约定。UNC路径就是类似\softer这样的形式的网络路径。
在Linux
\
通常表示转义,所以在Linux环境里使用UNC路径
的时候就要使用\\\\
,所以其中两个\\
表示转义-L 参数表示列出服务器上的共享资源
print$和IPC$是打印机和默认共享服务,先忽略掉,直接查看ITDEPT
使用help 查看可以执行的命令
help |
echo 123 > text.txt |
kali中随便写一个记事本,看看能不能通过smb传到靶机中
put text.txt |
发现能够上传
五、目录扫描
靶机web页面如下,源代码也没什么东西
进行目录扫描
dirsearch -u http://10.0.2.21/ |
发现存在一个日志目录
http://10.0.2.21/logs/ |
前三个都没权限访问,只有最后一个可以查看
在日志中发现这个工具,之前打靶时用过,就是实时监测的进程的
根据查看日志发现,系统每隔一段时间就会对某两个文件进行授权和执行
grep "/home/dawn/ITDEPT/" management.log |
六、边界突破
在当前执行smbclient目录下,创建一个文件,文件名与上面两个其中一个一样就行,在里面写入反弹shell的语句
vim product-control |
然后进行监听
将编辑好的文件通过smb上传到靶机中
put product-control |
等一会发现反弹成功,使用python升级一下终端
python -c 'import pty; pty.spawn("/bin/bash")' |
七、提权(两种方式)
7.1、mysql提权(一)
ls -al |
$1$$bOKpT2ijO.XcGlpjgAup9/
查看历史命令,发现mysql的历史命令中有\! sh
,猜测可以使用mysql直接提权
在查看历史命令,发现有一段hash字段,而且下面也使用到了sudo登录mysql
将hash进行解密
vim hash # 将hash字段写写入文件中 |
onii-chan29
成功跑出密码
使用sudo -l 发现mysql可以直接使用sudo权限执行,不用密码,将破解出来的密码,当作mysql密码尝试登录,可以登录成功
sudo mysql -uroot -p |
成功获取到root权限
7.2、suid配置不当提权(二)
使用命令查看是否存在配置不当文件,发现zsh这个shell
find / -type f -perm -u=s -ls 2>/dev/null |
直接执行,发现也能提权成功
flag中提示到,有四种提权方式