信息泄露(目录遍历,phpinfo,备份文件下载)

 一.目录遍历

目录遍历漏洞,一般flag放在目录或者目录文件里面。所以可以手动依次寻找,也可以运用python脚本

二.phpinfo函数

phpinfo是一个运行指令,为显示php服务器的配置信息。

phpinfo函数可以显示出PHP 所有相关信息。是排查配置php是是否出错或漏配置模块的主要方式之一,代码如下 :

               <?php

                 phpinfo();

               ?>

       只要访问到phpinfo()函数的web页面,即返回php的所有相关信息!

该函数返回 PHP 的所有信息,包括了 PHP 的编译选项及扩充配置、PHP 版本、服务器信息及环境变量、PHP 环境变量、操作系统版本信息、路径及环境变量配置、HTTP 标头、及版权宣告等信息。

我们能从phpinfo()中获得的敏感信息:

1.网站绝对路径

2.可以通过phpinfo()查看一些特殊的程序服务,比如redis、memcache、mysql、SMTP、curl等等如果服务器装了redis或者memcache可以通过ssrf来getshell了,在discuz中都出现过此类问题。如果确定装了redis或memcache的话,在没有思路的情况下,可以着重找一下ssrf

3.查旁站等

4.禁用的函数。

5.可能会泄露数据库账号密码

具体可参考PHPInfo()信息泄漏漏洞利用及提权-CSDN博客

解题方法:ctrl+f进行在页面内搜索的可找到flag

三.备份文件下载

文件下载漏洞类型
文件下载漏洞主要分为两类:任意文件下载和路径遍历。

任意文件下载,当应用程序未能限制可下载文件的范围时,攻击者可以下载服务器上的任意文件,包括配置文件、源代码、数据备份等。
路径遍历,路径遍历(也称目录遍历)漏洞允许攻击者通过修改URL或文件请求参数,来访问服务器上的目录以外的文件。攻击者通常使用“../”序列来尝试访问父目录。

文件下载漏洞的利用方法
攻击者利用文件下载漏洞的方式多种多样,以下是一些常见的攻击手法:

修改请求参数:攻击者可能会尝试修改 URL 中的文件路径或参数,以尝试访问相关文件。
绕过安全机制:有些服务器或应用程序可能设置了文件下载的安全机制,如文件类型限制、访问权限等。攻击者可以尝试绕过这些安全机制,下载敏感文件。例如,通过修改文件扩展名或使用特殊字符绕过文件类型限制。
构造特殊请求:通过编写脚本或使用工具发送特殊构造的请求。
社会工程学:攻击者可能会利用社会工程学技巧,诱骗合法用户点击恶意链接,从而下载并执行恶意文件。


(1)源码泄露

当开发人员在线上环境中对源代码进行了备份操作,并且将备份文件放在了 web 目录下,就会引起网站源码泄露。

常见的网站源码备份文件后缀:

tar

tar.gz

zip

rar

常见的网站源码备份文件名:

web

website

backup

back

www

wwwroot

temp

解题方法,手动(在url的末尾输入类似于 /index.php.bak    ,逐个尝试直到有下载框),

脚本运行(脚本附下),dirsearch(dirsearch是一个简单的命令行工具,用于强制执行网站中的目录和文件)。

import requests
url="http://challenge-b57d6c6579149fc2.sandbox.ctfhub.com:10080/"
list1=['web', 'website', 'backup', 'back', 'www', 'wwwroot', 'temp']
list2=['tar', 'tar.gz', 'zip', 'rar']
for i in list1:
    for j in list2:
        url_f=url+i+"."+j
        r=requests.get(url_f)
        if(r.status_code == 200):
            print(url_f)

(2)bak文件

有些时候网站管理员可能为了方便,会在修改某个文件的时候先复制一份,将其命名为xxx.bak。而大部分Web Server对bak文件并不做任何处理,导致可以直接下载,从而获取到网站某个文件的源代码

后缀名是.bak的文件是备份文件,把.bak改成对应的文件拓展名即可使用对应的软件打开。

解题方法

1.用curl命令访问,得到flag

curl命令可参考这篇资料:

curl命令用法-CSDN博客

2.在地址栏后直接添加后用网页直接访问,自动下载后得到flag

(3)vim缓存

当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。

非正常关闭vim编辑器时会生成一个.swp文件

在使用vim时会创建临时缓存文件,关闭vim时缓存文件则会被删除,当vim异常退出后,因为未处理缓存文件,导致可以通过缓存文件恢复原始文件内容。

以 index.php 为例:第一次产生的交换文件名为 .index.php.swp

再次意外退出后,将会产生名为 .index.php.swo 的交换文件

第三次产生的交换文件则为 .index.php.swn

更多了解Linux 编辑器之神 vim 的 IO 存储原理 - 知乎 (zhihu.com)

方法1在给出的URL链接后加上/.index.php.swp。因为swp这类文件是隐藏文件,所以调用它的时候前面要加一个点
它会自动下载一个文件,我们把它放到linux系统中进行操作,并把它名字后面的swp删掉,重命名为index.php

方法2获取文件后在kali中打开

用命令vim -r filename恢复文件,即可获取flag

(4).DS_Store

.DS_Store 文件利用 .DS_Store 是 Mac OS 保存文件夹的自定义属性的隐藏文件。通过.DS_Store可以知道这个目录里面所有文件的清单。

方法1:在网址后面加 /.DS_Store,会下载一个DS_Store文件,将该文件用010编辑器打开,会发现有一个类似txt文件名的一串字符,将.过滤掉,就是一个txt文件名,然后就在网址后面加上这个文件名,最后成功拿下flag!

方法2:在Linux中打开,发现.txt文件。.txt后边的不要复制,然后去进行访问得到flag。

  • 10
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值