会员登录 - 用户注册 - 设为首页 - 加入收藏 - 网站地图 webdav漏洞扫描器!
当前位置:首页 > 百科 > webdav漏洞扫描器 正文

webdav漏洞扫描器

时间:2026-10-17 06:33:39 来源:烟消火灭网 作者:娱乐 阅读:446次

去年冬天帮一家做在线教育的漏洞小公司做渗透测试,目标站点用的扫描是某开源网盘系统。我随手试了个Payload:PROPFIND / HTTP/1.1,漏洞返回包里直接吐出了数据库配置文件的扫描路径。管理员大概以为WebDAV就是漏洞个传文件的协议,根本没想过它能把服务器底裤扒干净。扫描

WebDAV这玩意儿,漏洞全称是扫描Web Distributed Authoring and Versioning,最早是漏洞给协作编辑用的。它扩展了HTTP方法,扫描让客户端能像操作本地文件夹一样管理远程资源。漏洞问题就出在这儿——PROPFIND、扫描PROPPATCH、漏洞MKCOL、扫描COPY、漏洞MOVE、LOCK这些方法,默认配置下可能一个都不需要认证。你发个PROPFIND请求,服务器就把目录结构、文件属性、甚至文件内容片段全抖出来了。

我见过最离谱的案例,是某政务云盘。用PROPFIND遍历根目录,直接列出所有部门文件夹。再对某个.config文件发GET,里面明文写着数据库连接串和Redis密码。整个过程不需要任何漏洞利用工具,curl加个-X PROPFIND参数就搞定了。这算漏洞吗?严格说算配置错误,但杀伤力比很多CVE都大。

写扫描器的话,核心逻辑其实不复杂。先探测目标是否开启WebDAV——发个OPTIONS请求,看返回头里有没有DAV: 1,2之类的标识。然后逐个测试危险方法:PROPFIND深度设为1或infinity,看能不能列目录;PUT试传个txt文件,看是否允许任意写入;DELETE删掉刚传的文件,验证权限;COPY和MOVE用来检测能否跨目录操作。最后别忘了SEARCH方法,有些实现会通过它泄露文件内容。

实际写代码时坑不少。Python的requests库默认不支持PROPFIND,得用request方法手动指定。返回的XML解析也恶心,不同服务器返回的命名空间前缀五花八门。我一般用lxml配合XPath的local-name()函数来绕开命名空间问题。还有个细节:很多WAF会拦截PROPFIND请求,但把方法名改成小写propfind就能绕过——HTTP方法名大小写不敏感,但WAF规则经常只匹配大写。

扫描器输出别只给个“存在漏洞”。要具体到:哪些方法可用、能否匿名访问、目录遍历深度、是否可写入。最好把PROPFIND返回的XML里<href>标签内容全提取出来,那才是真正暴露的文件列表。我习惯再加个功能:自动尝试下载web.config、.htaccess、package.json这些常见敏感文件。

防御方面,Nginx默认是关闭WebDAV模块的,但Apache的mod_dav经常被误开。如果业务真需要WebDAV,至少加上AuthType Basic和Require valid-user。更彻底的做法是限制HTTP方法,只放行GET、POST、HEAD。IIS那边有个WebDAV扩展,默认就开着,得手动在web.config里<remove name="WebDAVModule" />。

最后说个真实数据:我扫过国内某云服务商的托管网盘,大概12%的实例存在未授权PROPFIND。其中3%能直接写入文件。这个比例不算高,但考虑到基数,暴露面相当可观。扫描器代码我扔在GitHub上了,核心就两百多行,依赖只有requests和lxml。别指望它有多智能,WebDAV这东西,配置对了就是功能,配错了就是后门。

(责任编辑:娱乐)

相关内容
  • 日本视频种子
  • 沈阳大学生兼职群
  • 贵州反渗透纯水设备厂家
  • 三轴渗透试验步骤
  • 怎么加强wifi的穿墙性
  • 网页快照怎么没有了
  • 韩国浏览器网站
  • 赚钱的捕鱼1小时5000元
推荐内容
  • 沈阳殡仪馆招聘信息
  • 冲哥黑料冲哥精选
  • 哈尔滨雪博会咋样
  • steam俄区免费网站
  • 测试系统是否存在shiro漏洞
  • 网络渗透测试课程设计