声明:该篇文章仅供学习网络安全技术参考研究使用,请勿使用相关技术做违法操作。本公众号的技术文章可以转载,能被更多人认可本文的创作内容属实荣幸之至,请在转载时标明转载来源即可.也欢迎对文章中出现的不足和错误进行批评指正!
kali的IP:192.168.56.102
靶机IP:192.168.56.110
实战打靶系列第 25 篇文章
主机发现
使用nmap进行主机发现:
发现192.168.56.110为新增加的IP,即为靶机IP。
端口扫描
使用nmap进行存活端口的探测,包括存活端口号,服务,版本,操作系统等信息。
这里发现靶机只开放了22,80两个端口,其中22端口运行ssh服务,80端口运行着http服务。
web渗透
对网页的信息收集
使用浏览器打开网页。如下图
在右上角有一个登陆按钮。
这里不存在弱口令,sql注入的万能密码。页面源码也没有暴露什么有用的信息。进行目录探测
这里直接发现了.git路径,很明显这里存在git泄露。这里补充一下.git目录的知识。
Git泄露
.git
目录是Git版本控制系统用于跟踪代码更改的文件夹,包含了敏感数据,例如源代码、配置文件、敏感文件等等。这意味着,如果.git
目录暴露在公共网络中,攻击者可以轻松获取敏感信息和源代码,进而滥用您的网站或者利用漏洞攻击系统。公网中暴露了.git目录就表示存在git泄露。对于git泄露,可以使用工具gitdump进行信息收集,也可以直接使用wget将git文件完整下载下来。
-r参数不能少,-r表示递归下载,这个文件本身就是一个文件夹,下载下来以后会存在一个以ip地址命名的文件夹,进入文件夹,首先查看历史日志。
发现在第二条日志中写他添加了默认信息到login.php,这提示我们要去第二条日志的版本中找到login.php 文件中找到他添加的用户和密码。首先将文件进行克隆,克隆以后会在当前文件夹先出现一个backup的文件夹,
文件夹里面的内容如图所示,
这里面的文件中的内容是以源码的形式存储的。由于添加用户信息的操作是在第二次进行的,首先要到对应的版本下。
查看login.php文件里面的信息。
这里成功发先了用户名和密码,进行网站登陆,成功。
sql注入漏洞
在页面上惊奇的发现页面上面有参数,输入一个单引号以后页面直接变为空白,
是由于用户输入导致页面报错,这里猜测是字符型注入,直接构造语句。
成功发现sql注入漏洞,并且闭合方式为单引号,接下来要进行字段数的判断,
这里有六个字段,接下来找回显点,
由于有时候页面只能显示一条信息,所以应该将让前面的信息报错,这样就可将我们要的信息显示出来了,否则前面的信息会将后面的信息覆盖过去,导致看不到想要的信息。
构造如图sql语句,其中group_concat()可以将多条信息拼接成一条显示出来,用于在网页限制显示一条的情况下显示信息,
执行结果如下:
这里成功读取到数据,使用ssh进行登陆。
提权
并没有sudo权限,没有可以利用的自动任务,没有可用的内核版本,这里再主目录下发现用户bash的历史信息。
对文件进行查看
发现这里进行了一个端口转发,我们使用他的命令进行同样的操作
从shell的历史记录中可以发现再进行端口转发以后就出现 一个cmd参数可以执行命令。
这里添加自己的命令,成功切换用户,继续信息收集,
在losy家目录下发现bash的历史信息,
在历史信息中发现了一个密码,不是lama用户的,猜测是losy用户的,使用ssh登陆lama用户,发现lama用户有sudo权限,
这里直接使用python调用系统命令开启一个新的bash环境。
成功提权。
flag
提示
获得一个新的用户shell以后进行目录查看以后,一定要查看所有信息,以免漏掉隐藏目录。
参考资料:
https://www.aqniukt.com/goods/show/2434?targetId=16289&preview=0
原文始发于微信公众号(0x00实验室):VulnHub靶机-darkhole_2 |红队打靶
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论