VulnHub——DC-5(具体漏洞详解)

DC-5

这是DC-5的描述,从中得到一些关键信息。

1608777125_5fe3fda531d4f82bc2b53.png!small?1608777127840

开始

nmap扫描1608776634_5fe3fbba03ac237b2045e.png!small?1608776636555

确定IP地址后端口扫描

1608776834_5fe3fc82116c13e5534ed.png!small?1608776836634

发现80端口

使用kali自带工具dirbuster遍历目录

1608777237_5fe3fe15512911f64dda7.png!small?1608777240033

AWVS对网站扫描并没发现重大漏洞

1608777430_5fe3fed61effb30a83371.png!small?1608777432720

发现只有以下这个界面存在交互

1608777304_5fe3fe58a40d376061745.png!small?1608777307298

访问footer.php页面时发现了描述中会随着页面刷新改变的东西

1608777572_5fe3ff642b7ff087a6ace.png!small?1608777574686

1608777587_5fe3ff7334ea7b4229eed.png!small?1608777589818

我们猜测thankyou.php中incloude()包含了footer.php,

如果是动态包含的路径就可能存在LFI漏洞

什么是本地文件包含(LFI)漏洞?


LFI允许攻击者通过浏览器包含一个服务器上的文件。当一个WEB应用程序在没有正确过滤输入数据的情况下,就有可能存在这个漏洞,该漏洞允许攻击者操纵输入数据、注入路径遍历字符、包含web服务器的其他文件。(详细了解请访问:https://www.bugku.com/thread-19-1-1.html)

1608777533_5fe3ff3d034d5b5eadda9.png!small?1608777535739

我们用burpsuite遍历一下变量名

1608778509_5fe4030d4e2f03d6f7d6b.png!small?16087785119631608778620_5fe4037c4c04caa490657.png!small?1608778622980

得知是file

1608778676_5fe403b49c5f613c7eebe.png!small?1608778679293验证过确实存在LFI

1608778823_5fe40447be2f4b2f606ba.png!small?1608778826433

下面获取shell,前面得知服务nginx,

1608778852_5fe40464b1b282195f552.png!small?1608778855309

access.log

访问日志主要记录客户端的请求。客户端向Nginx服务器发起的每一次请求都记录在这里。客户端IP,浏览器信息,referer,请求处理时间,请求URL等都可以在访问日志中得到。

利用日志写入一句话小马


什么是一句话小马?

一句话木马就是只需要一行代码的木马,短短一行代码,就能做到和大马相当的功能。为了绕过waf的检测,一句话木马出现了无数中变形,但本质是不变的:木马的函数执行了我们发送的命令。


1608812359_5fe48747a361b634283ad.png!small?1608812362688使用蚁剑进行连接

写入反弹shell

1609209427_5fea9653537757b0ca1e0.png!small?1609209431660

1608871507_5fe56e531ccce27f764d2.png!small?1608871509832

得到交互式shell

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

提权

find / -perm /4000 2>/dev/null

/ 根目录
-perm /4000 查找SUID权限
2> 错误输出到空文件

查找具有SUID权限的命令

1609209439_5fea965ff2acc56687943.png!small?1609209444411

1609209977_5fea98799d9c1fc4a41d5.png!small?1609209982438

1609212537_5feaa279a5e95c037f4d1.png!small?1609212542042

将文件复制一份

查看文件

1609212588_5feaa2ac1331988b984b5.png!small?1609212592617

1609239315_5feb0b13ea95e8e730020.png!small?1609239320308

按照脚本将红框内内容保存为/tmp/libhax.c的文件

然后gcc编译为libhax.so文件

文件下半部分保存为/tmp/rootshell.c

gcc编译为rootshell

1609239432_5feb0b88472fa76d826dd.png!small?1609239436634

然后把编译过(两个)的文件上传到受害者/tmp/目录下

1609239716_5feb0ca400bb202cd9428.png!small?1609239720417

1609239767_5feb0cd78c638f47d5eb1.png!small

执行脚本中以下的命令

1609239606_5feb0c368313fc4fe9f37.png!small?1609239610840

提权成功
1609212382_5feaa1de0e5fd787ab2c0.png!small?16092123864591609212479_5feaa23f8feb52462cfa0.png!small?1609212484071

完结撒花!

猜你喜欢

转载自blog.csdn.net/qq_45320164/article/details/111935532
今日推荐