You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

OWASP攻击练习:目录遍历请求部分成功部分返回404的原因咨询

可能的原因分析

首先纠正一个误解:/etc/passwd 和 /home/arun/mywindows.txt 都不在Web服务器根目录下,它们是系统级文件,Web服务器根目录一般是/var/www/html这类路径,你用../../../是跳出Web根目录去访问系统文件。

以下是导致两个请求结果不同的常见原因:

  • 文件实际不存在:先确认目标服务器上真的存在/home/arun/mywindows.txt,可能你假设它存在,但实际路径拼写错误(Linux区分大小写,比如MyWindows.txt和mywindows.txt是不同文件),或者该文件根本没创建。
  • 权限限制:Web服务器进程(如www-data、apache)没有读取/home/arun/mywindows.txt的权限。Linux用户家目录默认权限是700,只有用户本人能访问,Web进程无法进入/home/arun目录,更读不到里面的文件;而/etc/passwd默认是全局可读(权限644),所以Web进程能正常读取。
  • 路径遍历防护规则:服务器可能有针对性防护,比如允许访问/etc目录,但拦截了/home目录的请求,或者对home这类关键词做了过滤,导致请求被修改或直接返回404。
  • 符号链接干扰:如果Web根目录的上级目录存在符号链接,你的../../../跳转路径实际指向的位置可能和预期不符,最终访问的是一个不存在的路径。
  • 文件系统差异:虽然你能读取/etc/passwd说明目标大概率是Linux系统,但如果目标是Windows,/home/arun这种Linux风格路径根本不存在,自然返回404。

内容的提问来源于stack exchange,提问作者Arun Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 19:42:06