Blackb0x 服务器渗透

一次虚拟机服务器的内网渗透

D0g3第三次测试的题目,整个题目拥有7个flag。目标主机是一个Windows2003虚拟机,登录密码非弱口令,无法通过字典爆破的形式进行简单的进入,需进行常规的内网渗透程序进行渗透。


信息搜集

  • 获取目标IP

    建议VM虚拟机使用桥接的方式,kali虚拟机也是用桥接模式,这样在一个网段才能扫到IP,实验也更贴近实战。

使用kali Linux。终端 netdiscover命令获取同网段的主机IP(192.168.2.116)

  • 端口扫描

使用zenmap(nmap的图形化版本)进行端口扫描,扫描参数使用默认的就可以了。扫描结果如下:

从扫描结果可以发现开放了: 21/tcp、80/tcp端口,这两个服务分别对应着文件传输协议web服务,即服务器设有网站,并且还发现了一个phpinfo()页面。打开后获得第一条flag

于是现在就提供了两条思路。1.通过ftp协议进行远程访问,获取服务器的有用信息;2.通过找到服务器搭载的网站进行渗透,getshell后进行提权拿到服务器。

  • 目录扫描

既然开了80端口,就不得不扫一波目录了。

果然发现有收获:点进192.168.2.116/ftp.rar得到有个ftp程序的压缩包。解压:

即获得第二个flag

然后打开第二个文件夹中的ftp软件,在用户设置页面获得第三个flag。

FTP利用

前三个flag拿得还是很轻松,基本的信息搜集就可以做到了,心里美滋滋。可是下一步怎么走就比较懵逼了。于是进一步进行搜集(瞎找)。

最后在压缩包的第二个.xml文件中找到了蛛丝马迹。因为这个xml文件是记录着ftp远程连接的用户名和密码,以前在服务器上大马利用ftp提权的时候会专门去找这个文件,这里发现这个文件应该是故意给出下一步渗透的提示,看来思路是正确的。

找到对应的用户名:admin,解出对应的md5的密码。应该就可以进行远程登陆了。

登录之后获得一个hosts.bak的文件。这一步本想是偷懒上传一个五次shift的cmd后门,但是发现ftp链接后的权限被限制为只能读取了,所以感觉比较可惜啊。没办法,只有老老实实把hosts文件复制到本地再研究下了。

关于hosts文件:hosts文件是电脑中用于对域名进行解析的文件。它的优先级要大于DNS服务器。也就是说,电脑在访问网站时会先根据hosts文件中的域名解析信息寻找目标网址IP,如果没找到才会发给DNS服务器进行解析。

hosts文件内容如下:

`127.0.0.1 admin.hack.me

 127.0.0.1 cms.hack.me`

现在分析下:”127.0.0.1”是服务器的本地地址,也就是服务器内访问admin.hack.me 和cms.hack.me时会被解析到本地(localhost),也就是说本地一定存在对应这两个网站的网站。(但我扫目录的时候咋没扫出来,至少扫出一个才正常啊…….)

于是将hosts文件内容替换到本地,将 127.0.0.1 替换成目标的IP地址。分别访问,出现以下两个页面:

一个是phpmyadmin管理登录页面;
另一个是joomla cms网站的页面;

cms网站看了很久,没有找到版本号,exp那条路基本上比较难,而慢慢测试漏洞去突破显然不如搞phpmyadmin来得好点。所以就暂时放了一放cms。

phpmyadmin这里找了很久没有再发现有什么好的提示,试了下默认密码和匿名登录都不行,那就只有硬着头皮进行弱口令爆破了。于是下载了个phpmyadmin爆破工具,加载字典跑,在经历了近十次的误报后终于爆出了密码,登录进去。发现了第四个flag

既然都拿到了root权限的数据库,那就可以找到刚才cms网站的后台密码进行登录,看有没有下一个flag或者在后天上传一句话getshell。
后来才发现网站的后台什么都没有,而且基本上没有发现可以很好地插一句话的地方。最后纠结了半天。才发现可以直接在数据库里直接写入一句句话,只要找到网站的绝对路径就可以了。而绝对路径在最初的phpinfo()页面就可以找到。

于是写入一句话:

连上菜刀,getshell。并在网站根目录处拿到第五个flag


服务器提权

既然拿到shell了,接下来就是常规的上大马提权服务器了。

提权的思路一般有两种:1.利用服务器上高权限(主要指system权限)的服务进行提权;2.利用服务器的exp进行提权。

一开始我想利用较为普遍的mysql数据库提权方式。但在试了udf、mof、nc反弹提权后均没有用,所得的用户都是users权限。最后只有看了下系统的补丁情况:

看来这下就可以利用大把的exp进行利用了。百度找到服务器没有打补丁的漏洞exp。利用成功。获取system权限,并创建属于administrator权限的用户,登录成功。

在管理员的文件夹中找到最后两个flag,其中一个加密。应该是要管理员密码。使用pwdump7找到密码的hash,解出hash。

打完收工。

文章目录
  1. 1. 一次虚拟机服务器的内网渗透
    1. 1.1. 信息搜集
    2. 1.2. FTP利用
    3. 1.3. 服务器提权