vulnhub靶机b0x

难度:初级到中级

端口扫描

 

仅开放了两个端口

 详细服务信息

web探测 

提示我们用sql注入,这里对于登录窗口的sql注入就是构造进后台了。

但是经过尝试 常见的姿势并没有办法进入后台,那么先暂且放弃这,下一步的思路就是去看看目录有什么信息。

目录扫描

 同样的字典两款不同扫描器会有不同的结果,所以后续还是用两次扫描吧。

这里给出了几个目录,这里我不再去一一进入访问。这里看过去以后发现test这个目录下的内容比较有用,其他的没什么用。做的时候自己手动看一下就好。

这里自己遇到了兔子洞对于add这个目录很感兴趣

但是一直上传不成功。。。。。卡在这好久

 这里其实应该就先暂时放弃这里转而下一个目标。自己经验不足还是死磕导致人迷糊了。

 

这里提示我们用file参数提供路径信息,那我们自然而然想到可能存在文件包含

文件下载漏洞利用

这里通过get行不通,那么试试post

通过post提交数据就可以下载下来一份文件了,很显然这里不是文件包含漏洞而是文件下载漏洞。

tong

通过阅读源码不难发现是一个文件下载漏洞,首先定义一个函数file_download,判断要下载的文件是否存在。存在的话构造返回信息然后读取文件内容。在通过调用函数实现文件下载。


这里是我第一个卡的地方,自己对于漏洞的利用还是不灵活,总结还是基础不扎实,对于攻击手法没有一个框架的思维。无论文件包含还是下载,除了可以看常见的系统配置文件以外,更重要的是我们可以通过这两个漏洞去读取web目录下的任意文件。首先网站运行必然是web权限,所以不存在权限受限问题,第二我们可以通过url判断网站的文件的相对位置,再通过../读取文件。这里自己经验不足,没想到。

后续这里下一步的操作就是用这个下载漏洞去下载源码,还记得index的sql注入提示吗,去下载下来。

 前面目录扫描的时候我们可以看到index和test是在一个目录下,所以用./代表当前目录 

代码审计 

这里自己代码学的不是很好,sql这点看了很多文章自己总结一下。

总结就是在不添加 ' 的情况下如何完成闭合。 

首先我们要理解一件事情,如果在一对单引号或一对双引号之间要再用一次单引号或双引号,那么就会产生报错。

例如

' ' ' 

因为在程序中引号都是成对出现的,那么这时就出现了无法闭合的矛盾的。

再看我们的程序,首先通过前两行字符替换将 ' 替换为空,这样我们就无法进行手动添加 ' 进行闭合了

其中 '.$pass.' 这是一个变量名,其中的单引号并不影响闭合,所以不论我们怎么添加 ' ,最后的查询结果都是

pass=' xxx' and uanme = ' xxx ';

那么我们应该怎么去构造闭合呢?

我们可以通过添加反斜杠转义’,什么意思呢,我们可以通过 \ 改变闭合的位置

例如

pass=' xxxx\' and uname =' or 1=1 #';

构造这样一条语句,那么最终进行查询的语句是什么呢

pass = ' xxxx' and uname =' or 1=1 #'

但是其中pass部分因为我们添加了转义符号,第二个引号被转义成一个字符串,不参与闭合从而导致闭合向后退了到了 第二个等号后第一个位置处,那么我们再把最后一个'过滤掉就可以完成注入闭合。

like this 

pass =  'xxxxxx'( ps:被转义的单引号,被视作一个字符串) and uname = '

+

or 1=1 #'

分成两部分,第二部分永真所以构成了闭合,可以直接进入系统

 

文件包含漏洞 

注意这时我们进入后台了,电脑已经有了cookie,此时我们再用之前的文件下载去读panel看看能得到什么。

 

第一部分是关于文件包含,通过load参数来读取。第二部分是文件上传,且是白名单处理。

那么不难想到我们上传文件是刚刚uploaded_images那个文件夹。可以手动验证。

 直接在这个地方利用就好,因为是白名单我们没办法进行绕过,只能结合文件包含漏洞利用。

构造图片马

 这里jpg图片的选取可以用upload目录下的图片但注意别用这个

因为他其中有一个phpinfo的代码,我利用很久不成功。

 利用

 

 

弹回来了

phpmyadmin

在www目录下还有一个phpmy,这里我前期用的字典比较小没有扫到,而且前面目录扫描的文件可以全下载下来,可以找到一个账号密码,登进去也是一个攻击点。 

通过查看config.inc.php可以得到一组账号密码

没想到可以直接连。。。。

另外这个是Ubuntu的3.12.0 这个有一个可以利用系统提权的文件。

完美契合这个靶机,可以利用。

总结 

本次靶机学到了不少,更多还是漏洞利用的学习,之前对于文件包含这类漏洞只能想到/etc/passwd这个点,没有想到过下载源码。对于php来说文件包含虽不像下载那样可以看任意文件,但也能做到看文件。其次就是对于sql闭合的学习,学到了如何在'被过滤的情况下进行注入。

### 关于 VulnHub 平台上的 Jan 靶机 #### 环境准备 对于渗透测试环境的选择,通常会采用 Kali Linux 作为攻击平台。Kali 是一款专门为渗透测试设计的操作系统,内置了大量的安全工具[^2]。 #### 初始信息收集 针对任何靶机的第一步都是进行全面的信息收集。这包括但不限于网络扫描、服务识别和服务版本检测。可以利用 `nmap` 进行初步的端口扫描和操作系统指纹识别: ```bash nmap -A <target_ip> ``` #### Web 应用分析 许多靶机会提供 web 接口供玩家探索。此时应该仔细审查网页源代码并尝试发现隐藏文件夹或路径。如果遇到 base64 编码的内容,则可能需要对其进行解码来揭示潜在线索[^1]。 #### 用户认证绕过与暴力破解 当面对受保护资源时,考虑是否存在弱密码或其他形式的身份验证缺陷。Hydra 工具能够帮助执行字典攻击以猜测常见用户名/密码组合: ```bash hydra -l admin -P /usr/share/wordlists/rockyou.txt ssh://<target_ip> ``` #### 权限提升技巧 一旦获得低权限 shell 访问后,下一步就是寻找方法提高当前用户的访问级别。LXD 容器逃逸是一种常见的提权手段,在某些情况下可能会被利用。 尽管上述内容提供了通用性的指导方针,但对于特定名称为 "Jan" 的 VulnHub 靶机的具体细节并未提及。建议查阅官方文档或者社区贡献者分享的相关 Walkthrough 文章获取更精确的帮助。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值