渗透经验分享之文件操作漏洞拓展

admin 2024年5月18日11:19:37评论12 views字数 1860阅读6分12秒阅读模式

上文分享了注入相关的东西,注入也可以对文件进行操作,本文是对文件操作漏洞的拓展

文件操作漏洞

  1. 文件上传

  2. 文件读取

  3. 文件写入

  4. 文件删除

  5. 文件包含

一般java的站点存在文件系列的洞比较多(除了文件包含)。

文件上传

在哪最容易发现上传点?注册登陆用户头像、发布文章发布产品、js中的文件上传接口、一些编辑器,甚至还有扫目录扫出来的/uploader路径,访问出现这种405的uploader一般就是上传。比如:

渗透经验分享之文件操作漏洞拓展

这个时候本地构造POST表单就行了,file参数靠猜,有的时候任意参数就行,有的时候post提交过去会报错缺失什么参数,随机应变。

渗透经验分享之文件操作漏洞拓展

一般上java的站点扫出来这种uploader比较多,都是上传写的servlet接口。

上传其实upload-labs里的绕过姿势已经非常全面了。拿到一个上传点,首先应该判断能不能正常上传、白名单还是黑名单、怎么校验的在哪校验的,这些没什么好讲的。聊一些比较恶心的文件上传。

  1. 上传不返回路径

  2. 上传不在web目录

上传不返回路径多出现在市长邮箱投诉举报这类功能中,其实这种功能本来就没打算给你返回路径。我的思路一般是找注入点,只要没返回路径的文件上传并且返回给你一个ID给你当作凭据的(此处只是举例,类推),肯定保存路径在数据库中。找到注入就等于找到了文件路径。

如果没有注入呢?找找日志。比如tp的日志是有规律的,你可以传一个非法文件名1.;,在tp的日志中报错,说不定就有路径。这个我自己是真实碰到的,一个laravel的框架,在laravel.log中报错返回了错误文件名的文件路径,猜出来了shell的路径。

如果没有日志呢?猜。形如/Files//uploads/目录,猜要有根据的猜,观察网站的图片和文件地址,以此拼接你的shell文件名,多数以时间戳命名,bp爆破下就行了。

再来说不在web目录的,上传的时候关注下请求包的几个参数,有没有pathfilepathfilenamefile_prefix,甚至测一下../../1.jpg文件名。如果上传不能跨目录其实你就应该转移关注点了。找文件包含、文件读取。

上传不在web目录的站,有这种功能的很多都有文件读取的洞,因为传上去的文件总归是要下回来的,找找形如download?path=1.jpg这种。拓展思路,举一反三。

另外就是文件包含了,没啥可说的。

文件读取

限制条件有两个

  1. 限制前缀

  2. 限制后缀

不限制前缀的时候可以通过file协议读文件,php可以通过伪协议读文件,当限制前缀的时候Linux其实还好,可以通过../跳目录,但是windows没办法通过../跳盘符。

限制后缀就比较恶心了,php好像可以用#?符号去绕过。具体看 chybeta师傅的文章 吧。

确定是文件读取之后,如何进一步拿权限?个人习惯先读/etc/passwd,权限够大直接读/etc/shadow,然后根据/etc/passwd读每个用户的.bash_history,读中间件的配置文件,以此判断web的绝对路径。然后逐个读源码,java的话可以读一下war包,搞到代码之后就变得so easy了。

举个例子:文件读取读到了旁站的war包,旁站是一个监控,就一个登陆框,而war包中配置文件里写死了密码,刚好登陆进去直接可以执行命令rce。

weblogic的话可以直接读console账号密码,登陆console部署war包getshell。

反正就是文件读取=60%中间件特性+10%猜+30%运气。

文件写入

文件写入拿shell很简单,直接指定web目录和内容就行了。但是这个一般上会有限制,比如内容检测(不能写php标签之类),文件名检测(不能写.php)。

  1. 写计划任务或许为一个好的选择

  2. 覆盖原有配置文件(比如覆盖安装锁)

  3. 写ssh

文件写入好像没什么好说的,先就这样,想到什么补充什么。

文件删除

实战没怎么遇到过这个洞

  1. 删除配置文件

  2. 删除安装锁(造成重装)

  3. 删除waf文件include waf.php

文件包含

文件包含多为php站点,所以伪协议读文件这些都是基本操作。不过有一说一,除了ctf中碰到过文件包含,实战中没遇到过。

具体看 文章-php文件包含漏洞

需要提一嘴的是phar可以伪装为图片,你可以传一个1.jpg,绕过内容检测,然后用phar://协议包含。还有就是smb包含,php缓存文件包含。

或许渗透变化万千的思路才是我真正喜欢他的原因。

From:https://www.chabug.org/web/1811

原文始发于微信公众号(巡安似海):渗透经验分享之文件操作漏洞拓展

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年5月18日11:19:37
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   渗透经验分享之文件操作漏洞拓展https://cn-sec.com/archives/2041779.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息