900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 【CyberSecurityLearning 71】DC系列之DC-2渗透测试(WordPress)

【CyberSecurityLearning 71】DC系列之DC-2渗透测试(WordPress)

时间:2019-03-20 16:35:44

相关推荐

【CyberSecurityLearning 71】DC系列之DC-2渗透测试(WordPress)

目录

DC-2靶机渗透测试

一、实验环境

二、实验要求

三、渗透过程演示

flag1:

flag2:

flag3:

flag4:

final-flag:

DC-2靶机渗透测试

一、实验环境

实验环境:

kali:192.168.3.151/24(桥接到vmnet0)

靶机环境DC-2(桥接到vmnet0,MAC地址:00:0C:29:3F:B7:2B)

保证kali和DC-2在同一个网段

二、实验要求

靶机中一共有五个flag文件,我们需要找到它们,即可完成任务。

三、渗透过程演示

开启DC-2环境

DC-2对于我们来说完全是黑盒的,我们所知道的只有它的网卡模式是桥接到VMnet0,MAC地址是00:0C:29:3F:B7:2B

接下来我们需要通过它的MAC地址找到DC-2的IP地址(可知DC-2的IP地址为192.168.3.150

对这个IP地址做信息收集:

nmap -A 192.168.3.150 -p 1-65535 -oN nmap.A

我们得知DC-2开启了80端口,我们访问一下(访问其IP ,连接失败)

在浏览器输入ip进行访问,发现无法访问

添加本地DNS解析

打开C:\Windows\System32\drivers\etc下的hosts文件,添加如下一行

刷新后发现能成功访问(我们原来输入的是IP地址,它会自动跳转到DC-2)

其实正常情况下来讲,打开浏览器我们输入IP地址的时候,实际上地址栏不应该直接跳到dc-2,如果想正确的访问dc-2这样一个web应用,需要给一个本地的解析,否则访问不了!

除了本地需要修改hosts文件,那我们用kali虚拟机去访问目标80端口的时候,我们也需要去修改一下本机的host文件

vim /etc/hosts

我们测试ping dc-2

这就说明我们通过域名的方式就能去访问dc-2的一个web应用

我们简单去浏览一下这个网站,发现这个网站是用WordPress写的,它是WordPress模板,WordPress是我们开源的cms的PHP编写的

flag1:

观察选项卡的时候发现有个flag,点开,发现flag1

Flag 1:

Your usual wordlists probably won’t work, so instead, maybe you just need to becewl.

More passwords is always better, but sometimes you just can’t win them all.

Log in as one to see the next flag.

If you can’t find it, log in as another.

给出的提示是:需要使用cewl工具破解密码,用一个身份登录后,能找到下一个flag。所以接下来会用到cewl工具破解密码。使用cewl破解密码前,要先找到wordpress的后台登录地址,通过百度可以查到,后台地址是在首页地址后加wp-login.php,登录界面如下图所示:

cewl工具(自动集成在kali虚拟机)

作用:cewl会自动去爬行网站的网页,工具网页的关键字会生成一个字典

为什么要这么做呢?我们可能在渗透测试或者是攻防演练的过程中,我们需要做一个信息收集,我们往往很多的信息都是放在我们网页里面的

cewl工具使用:cewl 域名或IP地址 > 保存到一个文件中

cewl dc-2 > pwd.dic

我们拿到这个网站,由于它是一个网站,我们观察这个网站的结构,发现它是一层一层的,我们做一个目录的扫描

有很多工具能对网站目录做扫描:dirb、gobuster等

我们这里演示一下用MSF做网站目录的扫描:

启动一下msf:msfconsole

使用辅助模块:use auxiliary/scanner/http/dir_scanner(我们选择了目录扫描模块)

看一下选项:show options

我们扫出来两个目录:

[+] Found http://192.168.3.150:80/icons/ 403 (192.168.3.150)

[+] Found http://192.168.3.150:80/wp-includes/ 200 (192.168.3.150)

访问一下http://192.168.3.150:80/wp-includes/ 没什么发现

但是知道是用PHP编写的,并且属于WordPress(一个开源的CMS)

接下来使用kali自带的一款工具:wpscan

WPScan使用(WordPress扫描工具)

常用选项

其他选项

在使用wpscan之前我们要做一个工具的更新

wpscan --update 更新工具

apt-get install wpscan wpscan 更新

注:如果wpscan 无法使用,可以尝试更换新的kali 虚拟机,笔者就碰到类似的问题,安装 kali .2 之后,wpscan 启动成功

附清华大学开源镜像站kali.2(amd64,installer)下载链接

https://mirrors.tuna./kali-images/current/kali-linux-.2-installer-amd64.iso

wpscan查看帮助:wpscan -h

wpscan --url dc-2 -e u 列出WordPress用户和账号

发现admin、Jerry和tom三个用户

我们可以写一个字典,把这三个用户名放到一个字典(user.dic)

接下来可以去尝试爆破,我们要先得到网站的后台(很容易扫到是wp-login.php)

爆破表单方法(可以用burpsuite、wpscan等来爆破)

wpscan 爆破用户

wpscan --url dc-2 -U user.dic -P pwd.dic

接下来使用【tom/parturient】和【jerry/adipiscing】登录网站

登录成功:

网站里面随便逛逛,好像没什么特别的东西

flag2:

我们登录一下jerry(adipiscing

打开Pages选项,发现flag2

提示:如果你不能再去攻击WordPress,你就考虑其他方法

之前还扫到它开放了7744端口,我们扫描爆破一下:

hydra -L user.dic -P pwd.dic ssh://192.168.3.150 -s 7744 -o hydra.ssh -vV

得到ssh,用户名tom,密码:parturient

我们ssh连接tom:

flag3:

绕过-rbash的限制:

BASH_CMDS[a]=/bin/sh;a 把/bin/bash给一个变量,这个变量叫a

/bin/bash

export PATH=$PATH:/bin/ 导入环境变量

export PATH=$PATH:/usr/bin

提示:把线索引向jerry

其实这四条命令前两条已经完成了绕过,后两句是导入环境变量

flag3中的线索引向了jerry

我们cat /etc/passwd,看看有没有jerry

我们切换jerry:

su jerry

password是adipiscing

flag4:

提示:还不是root权限

我们到根下,看有没有root

接下来我们就应该考虑提权了。

根据flag4的提示,git,想git能不能提权啊?可以

我们执行:sudo -l

查看具有root权限的命令

sudo -l

sudo git能够执行,不要你输入密码

这里就考虑,git能以root权限去执行命令,那git能不能去调用bash

final-flag:

git 提权

看到关键词git提示咱可以使用git提权

可使用sudo git help config(用这个)或者 sudo git -p help

在输入!/bin/bash即可登录root用户

sudo git -p --help(让git参数强制进入交互模式)

强制进入交互式状态,让页面缓冲区无法显示全部信息

!/bin/bash

发现可以,whoami

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。