代码审计第八节-任意文件删除

admin 2022年3月1日10:14:17评论104 views字数 1055阅读3分31秒阅读模式

任意文件删除也是代码审计中比较重要的一个知识点,删除主要不是删除同目录下的文件,而是删除我们认为比较重要的文件。上节教程主要是采取了黑盒加白盒的方式进行代码审计,这节课也是才相同方式进行审计。希望大家有所收获。

安装成功74cms软件以后,大概浏览一下,要清楚一下功能调用等一些基本问题。另外就是开始进入后台,查看后台看看有哪些可以利用的。

代码审计第八节-任意文件删除

后来在系统的地方发现一些可以删除的地方,如果代码严谨就不会出现夸目录删除,那我们可以进行分析一下代码。我所采取方式,是黑盒和白盒结合进行代码审计。

代码审计第八节-任意文件删除

我们找到一个删除省略图的地方,调用img这个变量,然后进行删除。有没有发现在调用$_GET这个变量的时候,没有进行任何过滤函数,直接删除,调用了unlink。如果你没有采取黑盒的方式,在代码中可以直接进行查找unlink,也可以进行上下文分析。

代码审计第八节-任意文件删除

这个是通过notepad++直接进行搜索unlink,然后大概是21文件,通过排除和分析,然后也不会有太多文件,那么两种方式大家可以自行选择,如果你接触审计不长,对代码逻辑不是特别清楚,建议大家采取第二种方式,进行查找,由于第一个就是arctice这个文件,点击进去就可以直接找到问题点。

代码审计第八节-任意文件删除

点击就可以找到函数关键点。

代码审计第八节-任意文件删除

通过对img参数调整,发现可以删除根目录下面的文件,可以跨目录进行删除。这个也算一个任意删除目录。

代码审计第八节-任意文件删除

根目录下面有一个123文件,我们尝试任意删除漏洞是否可以删除根目录文件。

另外通过查找,我们有发现一个可疑点,代码如下:

代码审计第八节-任意文件删除

发现act是不是也有问题呢,通过查找代码应该也是没有经过任何保护,直接就执行unlink,通过跳转目录也可以直接删除。

代码审计第八节-任意文件删除

代码审计第八节-任意文件删除

最后发现可以删除成功。本节就给大家介绍到这里。

下节预计给大家分析一下任意文件下载。

在开始讲下一节之前,希望大家把下面的函数,百度查找一下,说不准下节会利用到搜索功能进行搜索。

file_get_contents(),highlight_file(),fopen(),readfile(),fread(),fgetss(),fgets(),parse_ini_file(),show_source(),file()等。

作者博客:sec-redclub.com

Q群:242410171
论坛:http://bbs.whitecell-club.org
欢迎投稿以及咨询问题。
版权声明:该科普文章属于WhiteCellClub团队的redBu11原创,转载须申明!

代码审计第八节-任意文件删除

本文始发于微信公众号(WhiteCellClub):代码审计第八节-任意文件删除

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年3月1日10:14:17
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   代码审计第八节-任意文件删除https://cn-sec.com/archives/489504.html

发表评论

匿名网友 填写信息