11. CTF综合靶机渗透(四)

运行环境

  • Virtualbox (二选一)

  • Vnware Workstation player

通关提示

  • Enumeration is key

  • Try Harder

  • Look in front of you

  • Tweet @togiemcdogie if you need more hints

ip探测

本次实验攻击机为kali

由于我们的目标与我们的物理机位于同一网段,所以我们要做的就是先获取目标机器的地址。在内网主机探测中,可以使用netdiscover来进行。

同样我们也可以用nmap神器来探测

综上我们可以获得本次的试验机ip为 : 192.168.1.110

端口扫描

我们需要知道目标机器上运行了哪些服务,利用某些服务的漏洞或配置不当来进行攻击,所以我们先进行端口扫描。

使用masscan扫描

masscan 192.168.0.110 -p 1-10000 --rate=1000

或者使用nmap扫描

nmap  -T4  -A  -v 192.168.1.110 -p 0-10000

对比可发现masscan扫描端口的速度比nmap快很多,但是想要知道端口所运行服务的具体信息,就要用到nmap了。

根据扫描结果可知目标机开启了22、80、139、445、3306、6667这几个端口。

我们先从web入手。我们先使用 dirb 或者 御剑 来爆破目标存在的目录

御剑:

dirb:

扫出来很多有用的目录,比如/phpmyadmin , /apache , /wp , /test , robots.txt 等

我们趁机做一波信息搜集,使用curl获取目标web的banner信息,发现使用的中间件是apache2.4.7,目标系统为Ubuntu。

我们尝试访问 robots.txt ,看一下网站目录

经过访问,发现只有最后一个有价值

发现用处不大.....

经过御剑二级域名扫描

 

然后经过一波访问,发现了wordpress登陆页面,不过尝试弱口令,万能密码均失败

同样phpmyadmin也是这样,不过我们发现靶机是用wordpress+apache+php+mysql搭建的

,网上的利用方法很多,也可以用kali自带的wordpress检测工具

wpscan详细用法:https://blog.csdn.net/feier7501/article/details/9750919

我这里用:

wpscan -u 192.168.1.114/wordpress/ -e u,v,p

 wpscan发现了一系列潜在的漏洞,但我喜欢简单地开始。

默认用户名正在使用,所以默认密码也可能被使用。

唯一的博客帖子是togie 

 

尝试admin:admin, admin:togie, admin:mynameistogie, admin:password

发现都不行,我想现在是时候看看其他服务,看看那里是否有什么。

SMB可能有一些有趣的信息,我知道它正在运行Linux

所以我使用了enum4linux

enum4linux
描述:Windows平台上曾经出现过一个第三方的信息枚举工具 enum.exe,其利用SMB协议枚举Windows系统和SAMBA服务,以此来获得目标系统大量的重要信息,其枚举结果可能包含目标系统的用户帐号、组帐号、共享目录、密码策略等机密重要信息。enum4linux作为其Linux平台的复刻作品,全面兼容了enum.exe的所有功能。对于安全防护不足的SMB/SAMBA服务,enum4linux可直接枚举重要信息,甚至帮助我们发现潜在漏洞的存在。为充分利用其功能,使用者需要对NetBIOS和SMB协议有所了解。

enum4linux是Kali Linux自带的一款信息收集工具。它可以收集Windows系统的大量信息,如用户名列表、主机列表、共享列表、密码策略信息、工作组和成员信息、主机信息、打印机信息等等。该工具主要是针对Windows NT/2000/XP/2003,在Windows 7/10系统,部分功能受限。总的来说,一个工具可以获取这么多的信息,也算非常强大了。

 发现了这一句:

开放windows的smb协议讲解:https://blog.csdn.net/ZiXuanFY/article/details/52513512

我们可以用简单的方法尝试连接SMB服务器:

smbclient //192.168.1.114/share$


然后我们就需要找到数据库账号密码

 

顺利得到数据库账号密码

思路二:

windows下获取共享资源

       net use k:\192.168.1.110share$

linux下获取共享资源

       mount -t cifs -o username=' ', password=' ' //192.168.1.110/share$  /mnt

我们查看/mnt

下面就需要找到数据库账号密码:

所以我们尝试用上面获取的mysql账号密码去登录phpmyadmin,但是发现没一个表项可以查看。

不过不要紧,上面还有一个密码是12345,而且之前我们登录WordPress页面的时候,页面显示My name is togie.,

所以我们可以用账号:togie 密码:12345尝试登录ssh,发现可以成功登录。

由于我们知道密码是12345,所以可以直接提权

有了root权限,我们就有权限查看目标文件/root/proof.txt

这样就算完成了整个游戏了。这里刚好togie有root权限,所以我直接用sudo su切换到root权限,但是如果togie没有root权限,那么我们就需要通过其他方式来提权了。

思路二:

通过账号:Admin 密码:TogieMYSQL12345^^登录WordPress控制面板,向404.php页面模板插入PHP反弹shell的代码。

 

 .....虚拟机突然蹦了,但是操作继续(借用别人的图):

 

出现no tty present and no askpass program specified,刚好目标机有python环境,所以我们导入Python的pty模块。


python -c 'import pty; pty.spawn("/bin/sh")'

但是我们不知道www-data的密码,所以接下来就要进行提权,先来看一下目标机的详细信息

所以用CVE-2017-1000112提权即可,但是目标机上没有gcc,这时候,我们可以本地搭建和目标机一样的环境,在本地编译好提权exp后,在目标机器上运行即可。

dirb安装方法(kali已自带)

参考链接:

VulnHub Walk-through – LazySysAdmin: 1

LazySysAdmin Vulnerable Machine Walk-through

原文地址:https://www.cnblogs.com/bmjoker/p/9174804.html