概述(Overview)当Web应用程序允许用户下载文件时,如果后端代码直接将用户请求的文件名或路径参数拼接到文件路径中,而没有进行充分的安全验证和过滤(特别是对目录遍历字符如../),就可能导致任意文件下载漏洞 攻击者可以利用此漏洞下载服务器上预期之外的敏感文件,如配置文件、源代码、日志文件、密码文件等。利用条件(Conditions)Web应用程序提供文件下载功能。 应用程序将读取到的文件内容输出到响应中。漏洞发现(Discovery)专用搜索引擎Hacking:使用GoogleDorks或类似语法搜索可能存在漏洞的URL模式。 \Windows\win.ini如果服务器返回了目标文件的内容(即使是在浏览器中显示而非直接下载),则确认存在漏洞。可能需要对../进行URL编码(%2e%2e%2f)或其他编码绕过。 下载源代码:获取Web应用程序的源代码进行白盒审计,寻找其他漏洞(SQL注入、命令执行、文件上传等)。
WordPress 1.5.1 之前的 Zip 附件插件中的 download.php 中的目录遍历漏洞允许远程攻击者通过 za_file 参数中的 ..(点点)读取任意文件。 Zip 附件 <= 1.1.4 - 任意文件下载 /wp-content/plugins/zip-attachments/download.php?za_file=../../../../..
正文 字面意思理解,就是你能够读取任何 你有权限读取到的文件,但有一个最主要的问题就是,你不知道 文件名 一般情况下,任意文件读取/下载漏洞存在于 可下载资源,可读取文件的接口,比如网站读取指定图片 http file=xxxxx&filetype=doc 那么通过修改参数,就可以进行任意文件读取/下载 http://www.example.com/filedown.php? filename=..%2f..%2f..%2f..%2f..%2f..%2f..%2f..%2fetc%2fpasswd 可以说,任意文件读取/下载漏洞存在后,最经典的还是下载 /etc/passwd 文件 在我利用的漏洞中,这个文件也可以说是最关键的文件,下面有两种思路 思路1 根据当前目录,配合请求的url,来对文件进行读取,接着慢慢的通过源码,读取整个网站关联到的文件 例如 ? ,逆推着写一个脚本来下载备份数据库文件,贴一张我漏洞报告中的记录 ?
文章源自【字节脉搏社区】-字节脉搏实验室 作者-Beginners 0x01 浅谈任意文件读取下载漏洞 第一步,任意文件读取下载漏洞是怎么产生的: 介绍:一些网站由于业务需求,可能提供文件查看或下载功能 如果对用户查看或下载的文件不做限制,则恶意用户能够查看或下载任意文件,可以是源代码文件、敏感文件等。 0x02 任意文件读取下载漏洞的危害: 下载服务器任意文件,如脚本代码、服务及系统配置文件等。 可用得到的代码进一步代码审计,得到更多可利用漏洞 0x03 任意文件读取漏洞常见出现点: 存在读取文件的功能点 存在下载文件的功能点 提供文件查看或下载功能点 0x04 任意文件读取常用敏感文件路径 0x05 任意文件读取常见参数名: ? 0x06 任意文件读取漏洞利用案例: 第一步,点击下载图片,发现文件内容回显,请求如下: ? ? 第二步,替换读取文件,使用..
,里面集成了很多的漏洞版本,例如: vulhub里面又有很多个漏洞,每一个文件夹代表着一个漏洞 接下来,开始搭建vulhub环境: 搭建vulhub环境需要docker-compose,如果没有docker-compose 代表着一个漏洞环境,如果没有docker-compose.yml文件在编译的时候会报错 编译完后,执行docker-compose up -d进行自动安装环境,并且后台运行 安装运行完后,使用命令sudo wlcsystem wlpisystem wlpisystem weblogic Oracle@123 Oracle123 | 由于登录次数超过五次后就会限制登录了,所以不要轻易的进行暴力破解 二、利用任意文件下载漏洞破解登录密码 如果网站存在任意文件下载等漏洞,我们还可以通过破解的方式获取密码。 /config/config.xml 密文 vulhub测试环境存在一个任意文件下载漏洞: 测试访问/etc/passwd文件 http://192.168.1.112:7001/hello/file.jsp
也就是任意文件下载漏洞,任意文件下载漏洞php最常见的函数就是readfile()这个函数,当里面的参数我们可以控制的话就会存在任意文件下载风险。 0×01 白盒审计 源码信息:Ear_Music_20180510_UTF8 问题文件: \template\default\source\down.php 漏洞类型:任意文件下载 站点地址:http: ”iframe”,”.php”这3个任何一个的时候直接显示’Safety filter’字段进行过滤,还有上面几个函数是过滤”\”这个的,综合看来由于读取的时候未作任何过滤所以可以通过输入物理路径进行任意文件的下载读取 0×02 漏洞利用 比如config.inc.php文件的物理路径为: D:\phpStudy\WWW\Ear_Music_20180510_UTF8\source\system\config.inc.php 跳到下面页面之后点击下面的”下载LRC歌词”,即可下载我们的配置文件了。 ? *本文原创作者:davichi8282,属于FreeBuf漏洞奖励计划,未经许可禁止转载
前面咱们一起学习了phpcms_v9.6.0,任意文件上传漏洞复现的过程,不知道小伙伴们后面有没有想到如何进行批量检测呢? 创作背景: 上周发完phpcms_v9.6.0,任意文件上传漏洞复现的过程的文章后,有小伙伴们说phpcms_v9.6.1的任意文件下载一直复现不成功,于是就有了本文。 源码部署: 参考:phpcms_v9.6.0 任意文件上传漏洞的链接 : https://mp.weixin.qq.com/s/hApXD2cKG0a83fzkRTjAlA 0x01 同样的按照常规的源码部署流程先将 ,点击下载,便下载获取得到database.php的文件,漏洞复现完成。 总结: 这个漏洞的复现过程也是属于较为简单的操作,需要明白整个漏洞利用流程,个别小伙伴们复现不成功,有可能wap未开启,或者第二步中绕过代码过滤时没处理好。
目录 目录浏览(目录遍历)漏洞 任意文件读取/下载漏洞 利用任意文件读取漏洞Getshell 目录浏览(目录遍历)漏洞 目录浏览漏洞是由于网站存在配置缺陷,导致网站目录可以被任意浏览,这会导致网站很多隐私文件与目录泄露 任意文件读取/下载漏洞 任意文件读取/下载漏洞比目录浏览漏洞危害更大,他不仅会泄露网站的目录结构,而且攻击者可以直接获得网站文件的内容。 任意文件读取/下载漏洞的挖掘: 通过web漏洞扫描工具对网站实施扫描可能发现任意文件读取/下载漏洞,发送一系列”../”字符来遍历高层目录,并且尝试找到系统的配置文件或者系统中存在的敏感文件。 ./ 任意文件读取/下载漏洞的危害:下载服务器任意文件,如脚本代码、服务及系统配置文件等。可用得到的代码进一步代码审计,得到更多可利用漏洞。 公开文件可放置在web应用程序下载目录中通过链接进行下载。 任意文件读取/下载漏洞的场景:出现在文件读取或者展示图片等对文件读取交互的功能块。
利用条件(Conditions)存在文件上传的功能点。应用程序允许上传动态脚本文件(如.php,.jsp,.asp,.aspx)或可以通过其他方式(如解析漏洞)使上传的文件被当作脚本执行。 绕过点:利用解析漏洞、找到泄露文件名的途径、利用目录穿越将文件存到可执行目录。 手机浏览器访问http://<burp_ip>:<burp_port>(如http://192.168.1.100:8080)下载并安装Burp的CA证书。 >(PNG文件头,注意需要是原始字节)注意:文件扩展名仍需能被解析为脚本,或结合解析漏洞。 如果服务器解压时遵循链接(通常不安全配置),可能读取或覆盖文件。ZipSlip漏洞:一种特殊的目录穿越,利用解压库处理包含../文件名的缺陷。
由于网站有下载文件的功能的业务需求,就会开放下载,如果服务端未对用户传入的参数做一个限制或者不对传入的参数进行检查限制的话,可能会导致网站的敏感文件被下载 危害 任意文件读取/下载的危害往往大于目录遍历漏洞 ,任意文件读取不仅会泄露网站的结构目录,一些敏感文件还会被通过构造特殊的字符结构下载下来,比如说.. /etc/shodan,~/bash_history等文件,或者下载脚本配置文件,网站文件进一步审计,得到危害更大的漏洞进一步利用 如何发现? /etc/passwd 如果服务端没有对用户传入的数据进行过滤的话,这个文件就会被输出,比如下面这样子 如果回显了这样子的界面,则代表该网站存在任意文件下载和读取 代码 以下代码均存在文件读取的危险, =xxx.txt或者其他文件名,文件直接显示的话,就是任意文件读取漏洞了 要区分清楚!!!
还有一些喜欢“捉迷藏”的文件下载URL: 结束语 上述的文件下载URL构造,就是我在近期挖掘“任意文件下载”一类漏洞常见的构造方式;通常来说,此类的URL构造类似于“”标签,都具有一种比较难有方法的 ;而对于使用id参数值进行文件下载,往往是采用“SQL注入”的方式来进行突破,但这就并不是“任意文件下载”了,以为以id作为唯一文件下载索引方式的URL,是无法构造出下载约定计划以外的文件;当然了最有可能存在 “任意文件下载”漏洞的URL就是“某协会文件下载接口”中的那类URL,它是通过我们给脚本文件传递一个path来下载该path指向的文件,本文中的对象,它采用了不同的服务器,无法通过任意文件下载来突破网站 讨论 2021/01/13 个人认为,目前我所遇到的所有文件下载的URL构造,无非通过三类: 直接使用a标签指向资源路径位置,此类URL极难形成任意文件下载。 向文件下载的download接口传递一个"URL/Path",接口向该地址的文件资源发起下载并返回给当前位置;这类方式是最容易出现“任意文件下载”危害的,所以不建议采用此类。
利用特殊构造的请求触发可参与文件删除操作,导致了任意文件删除漏洞的发生。早在2014年有白帽子向官方报告了一个类似的漏洞,但是由于没有修补全导致还有其他方式可以进行利用。 *由于Discuz官方暂未发布正式补丁及升级包,FreeBuf对漏洞细节暂不公开 影响范围 Discuz! X3.3 Discuz! X3.2 Discuz! X3.1 Discuz! X2.5 缓解措施 根据参考连接里的commit编辑upload/source/include/spacecp/spacecp_profile.php文件,删除和unlink相关代码。
漏洞情况近期,火山信安实验室监测发现,,开源低代码AI平台Flowise(版本≤2.2.6)存在高危任意文件读取漏洞(QVD-2025-35890)。 攻击者可利用该漏洞绕过身份验证,通过构造恶意请求读取服务器上的敏感文件(如数据库配置文件、密码文件等),进而导致数据泄露或系统沦陷。0x01漏洞利用方式攻击者可通过在请求参数中注入.. 系统下的C:\Windows\win.ini等核心文件;攻击者还可结合已知的敏感文件路径(如数据库配置文件db_params.php、SSH密钥文件等),通过漏洞直接下载关键文件,窃取系统账号、密码等核心凭据 ;更严重的是,若目标系统同时存在任意文件写入漏洞(如CVE-2025-26319),攻击者可先读取关键配置信息,再植入恶意脚本或后门程序,实现持久化控制并横向渗透内网环境。 Flowise服务的账户应限制为最低必要权限,避免使用root或管理员账户部署SIEM系统实时分析API访问日志,发现异常路径遍历行为立即告警使用工具(如Semgrep、CodeQL)扫描代码库,提前发现潜在的文件操作漏洞来源自
@actions/download-artifact 存在通过工件提取实现任意文件写入的漏洞漏洞标识符:GHSA-cxww-7g56-2vh6严重等级:高 (CVSS 8.6)发布状态:已于2024年9 漏洞详情影响actions/download-artifact 在 4.1.3 之前的版本容易受到任意文件写入攻击。当下载和提取一个包含路径遍历文件名的特制工件时,此漏洞可能被利用。 技术背景与参考相关漏洞研究Snyk 关于 ZIP Slip 漏洞的研究:https://snyk.io/research/zip-slip-vulnerability修复版本发布页面:https://github.com releases/tag/v4.1.3标识符CVE ID: CVE-2024-42471GHSA ID: GHSA-cxww-7g56-2vh6相关 GHSA: GHSA-6q32-hq47-5qq3致谢此漏洞由 SI): 无 (N)可用性 (SA): 无 (N)弱点分类相关弱点CWE-ID: CWE-22弱点名称: 对受限目录的路径名限制不当(路径遍历)描述: 该产品使用外部输入来构造旨在标识位于受限父目录下的文件或目录的路径名
> 如果限制了文件类型,比如这里只能包含html后缀的文件,那么就可以使用此方法 简介 操作系统存在最大路径长度的限制。 攻击者可以利用这个漏洞绕过扩展名过滤 和00截断有同样效果的还有:? 接下来使用蚁剑连接,就不多说了 4.session 文件 使用条件 session文件的内容可控的,而且session文件的保存目录已知,或者保存在默认目录,管理员没有改 可以通过phpinfo 此时上帝视角,进入tmp目录,发现了sess文件已经写进脚本 啥?你说为啥能访问www目录之外的tmp文件。 php是一门语言,它能访问的不仅仅只是web程序,利用文件里的函数,web程序之外的文件自然也能访问 ? 而且在sess.php同目录下,已经生成了一个data2.php文件, ?
重要声明 该培训中提及的技术只适用于合法CTF比赛和有合法授权的渗透测试,请勿用于其他非法用途,如用作其他非法用途与本文作者无关 我们今天来了解一下任意下载漏洞,这个漏洞原理很简单 任意下载漏洞 <任意下载漏洞>也叫<任意文件下载漏洞> 许多网站开放下载文件功能,由于下载功能代码对下载文件类型、目录未做限制或限制不当,导致攻击者可下载服务器任意文件 这个漏洞的原理很简单,我们现在说说攻击思路 攻击思路 下载web源码 通过下载web源码我们可以获得 数据库配置文件,然后可以通过远程数据库链接工具、在线数据库管理工具等链接获取数据库控制权 之后可以 1. 最后上面两种都不行那就直接数据库提权吧 其他源代码 下载到了没有数据库配置文件的源代码,我们可以做的有 分析源代码,寻找漏洞,进一步攻击 或者还有一种 服务器敏感文件 我们可以下载passwd、shadow 利用方法 <任意下载漏洞>的利用方法中的部分内容与<本地文件包含漏洞>的利用方法相同,如: 利用%00截断等绕过后缀限制等等
:文件包含不是漏洞,任意文件包含才是漏洞 原理 文件包含漏洞:即file inclusion 指当服务器开启allow_url_include选项时,就可以通过PHP的某些特性函数(include() ,require()和include_once(),requir_once()),去包含任意文件。 ,服务器通过PHP特性(函数)去包含任意文件时,由于要包含的这个文件来源过滤不严,从而可以去包含一个恶意文件,而我们可以构造这个恶意文件来达到自己的目的。 危害 1.配合文件上传漏洞Getshell (常见图片马中) 2.可执行任意脚本代码 3.可导致网站源码文件及配置文件泄露 4.远程包含GetShell 5.控制整个网站甚至服务器 包含的函数 造成任意代码执行,在这可以理解成远程文件包含漏洞(RFI),即POST过去PHP代码执行。 用法1:?123=data:text/plain,<?php 执行内容 ?> 用法2:?
文章来源|MS08067 Web安全知识星球 本文作者:Taoing(Web漏洞挖掘班讲师) 一、漏洞描述 Grafana是一个跨平台、开源的数据可视化网络应用程序平台。 Grafana 存在未授权任意文件读取漏洞,攻击者在未经身份验证的情况下可通过该漏洞读取主机上的任意文件。 该漏洞危害等级:高危 该漏洞源于Grafana在获取公共插件资产的相关函数中对于路径参数的字符清理不当,导致攻击者可以通过将包含特殊目录遍历字符序列(../)的特制HTTP请求发送到受影响的设备来利用此漏洞 成功利用该漏洞的攻击者可以在目标设备上查看文件系统上的的任意文件。 二、漏洞复现 简单判断是否存在:/public/plugins/a/a 400 啥的需要考虑中间件 GET /public/plugins/a/a HTTP/1.1 Host: Your Ip:port
因此我们可以通过PUT方式上传木马 同时如果要防御该类漏洞将false改为true即可,即不允许DELETE和PUT操作 查看Tomcat版本知道存在远程代码执行 ? Tomcat AJP 文件包含漏洞CVE-2020-1938 Ghostcat(幽灵猫) 是由长亭科技安全研究员发现的存在于 Tomcat 中的安全漏洞,由于 Tomcat AJP 协议设计上存在缺陷, 攻击者通过 Tomcat AJP Connector 可以读取或包含 Tomcat 上所有 webapp 目录下的任意文件,例如可以读取 webapp 配置文件或源代码。 此外在目标应用有文件上传功能的情况下,配合文件包含的利用还可以达到远程代码执行的危害。 Tomcat8+ 弱口令 && 后台getshell漏洞 Tomcat支持在后台部署war文件,可以直接将webshell部署到web目录下。其中,欲访问后台,需要对应用户有相应权限。
SQL注入 A6 test.jsp SQL注入漏洞 致远OA A6 test.jsp 存在sql注入漏洞,并可以通过注入写入webshell文件控制服务器 漏洞影响 致远OA A6 网络测绘 app=“ into outfile 'D:/Program Files/UFseeyon/OA/tomcat/webapps/yyoa/test_upload.jsp'),4# 其他操作同上 直接连接就行了 任意文件下载 (读取) webmail.do 任意文件下载 CNVD-2020-62422 影响版本 致远OA A6-V5 致远OA A8-V5 致远OA G6 payload 致远OA webmail.do文件读取漏洞 通过修改filePath参数来下载服务器文件 http://www.xxx.com/seeyon/webmail.do? /conf/datasourceCtp.properties 在漏洞的OA 系统将会下载 datasourceCtp.properties 配置文件 网络测绘 app=“致远互联-OA” 批量检测POC