php代码审计前奏之ctfshow之文件上传

访客3年前黑客工具805

本系列题目来源:CTFSHOW: https://ctf.show/challenges

想搞好代码审计,必须要搞懂其中一些危险函数危险应用,以及过滤不足,

故以 CTF 来练习。

web151~前端验证

直接抓包修改后缀。

web152~前端+MIME

直接抓包修改后缀。

web153~.user.ini

https://www.php.net/manual/en/ini.list.php

使用条件:

(1)服务器脚本语言为PHP 服务器使用CGI/FastCGI模式

(2)上传目录下要有可执行的php文件

使用方式:

  1. 上传一张图片马

  2. 上传 auto_prepend_file=ma.png

  3. 访问同级目录中的一个php文件。

本题目中有 ,所以可以操作。

题目配置可以从http相应包得到。

web154~文件内容过滤php

上来测试发现是黑名单过滤的。

我们还可以上传 ,并且真好存在。

那么我们上传一张图片马,

发现被拦截了。

猜测可能是拦截了 php 字符串。那么我们删掉他试试,果然上传成功。

那么我们呢绕过就可以了。

web155~文件内容过滤php

测试正常的 png 图片可以上传。

对图片内容过滤

绕过

步骤跟上关一样。。。。。

web156~过滤 php, [

测试,又是文件内容过滤了 .

紧接着发现事情没这么简单,还过滤了,这给传参造成了一定的困难。

但是我们可以直接

web157~过滤分号

nginx/1.18.0 (Ubuntu) PHP/5.6.40

文件名黑名单

经测试,对文件内容过滤了 、、、

上传

我们知道 php 最后的语句也可以不加分号的,前提是得有 结束标志。

上传

访问

web158~过滤分号

和web157解法相同。

web159~过滤括号

经测试,对文件内容过滤了 、、、 、

问题不大,不能用函数了。

那我们用反引号代替system()

web160~过滤反引号,包含日志

经测试,对文件内容过滤了 、、、 、 、 反引号 、空格。

好家伙。包含日志文件,但发现 也被过滤了。那就进行拼接。

上传后,在上传

看到页面回显,确实包含了。

想着直接浏览器访问 url 路径带上一句话,但是却被编码了

还是再UA出比较好。

修改UA

然后成功getshell.

web161~检测文件头

DBx4T1.md.png

发现只有文件内容异常的图片已经上传不上去了。猜测应该是对文件头进行了检测。

DBxj0A.md.png

上传 成功绕过,但是这里文件内容测试只有两个字符的时候还不能上传。。。。。所以多放点字符。

其余操作和上官相同。

web162~包含session文件

测试,这关也检测了文件头,但是同时过滤掉了 点

我们可以看到这样绕过

.user.ini :

但上传文件,同样不能包含日志文件。这时候就需要包含session文件了。

这里还过滤了

上传

那么我们就开始构造,session文件竞争包含。

构造

DDCEvT.md.png

一直上传,内容为写后门到

然后一直包含session文件。

DDCJKO.md.png

可以看到成功包含,那么此时我们去,成功访问,并测试后门成功写入。

DDCtqe.md.png

可以参考文件包含篇:

还有 利用session.upload_progress进行文件包含



web163~包含session文件

过滤还是前面的过滤。

操作和上关一样的。

这里有,所以我们其实可以直接利用此文件包含Session文件。

上传:

然后就开始session文件竞争上传和包含。

DDkU6P.md.png

成功。

这是题目源码:

web164~png二次渲染

测试了一下。

白名单验证。

找了一张测试可以成功上传png图片。

还发现

可以随意修改图片又会被检测,故做图片马。

但是一般的图片马还绕不过,应该是做了二次渲染。

所以可以上传二次渲染绕过的图片,在做文件包含即可。

生成脚本:

DDHlrt.md.png

web165~jpg二次渲染

测试只能上传 jpg.

也是二次渲染,当我们写后门进图片是,后台会自动检测并删除数据。

那么就用到 jpg二次渲染绕过了。

拿脚本

先上传一张图片,然后下载下来,然后利用脚本生成。

DDLmPU.md.png

再继续上传,

发现这张图片不行,再来一张。

DDOAQH.md.png

成功。

需要注意的是,有一些jpg图片不能被处理,所以要多尝试一些jpg图片.



web166~zip文件上传包含

尝试多次,发现zip 文件可上传。

DDXFA0.md.png

但是上传直接编辑后门一句话的压缩包。

Ds8P0g.md.png

Ds8Ats.md.png

web167~.htaccess

Ds8Y1x.md.png

但这只是前端限制。

可以看到,只允许jpg上传。

抓包测试了一下,是黑名单。

开局有个提示

测试apache解析漏洞没解析。

测试成功。

然后上传带有马的 即可。

但是这里浏览器响应回来的是 nginx呀,坑。

web168~后门免杀

测试,会检测、。

可抓包后修改直接上传php文件。

反引号

反引号达到命令执行的效果。

把源码拔下来

本来还想着包含一波日志。

字符拼接

$_REQUEST

数学函数

这里

其他函数构造

web169~.user.ini包含日志

测试发现

抓包需修改

文件名后缀随意。

看看文件内容过滤了啥 <> ? 等等。

只能进行 日志文件包含了。

思路: 上传

然后随便上传个php文件即可。

然后改UA为一句话即可。

web170

测试上传zip,抓包修改,后缀为, MIME类型为.

包含

日志文件

相关文章

深棕色衣服裤子配什么样围脖(鞋颜色搭配表)

服装配搭:深灰色意味着高贵典雅,一直是时尚界的新宠儿。现如今,秋天早就慢慢地到来,深灰色早就变为一种实用性的方法。那么,哪些适合深灰色?如何搭配深灰色变为潮流趋势和优雅? 这一件短毛线衣配有高腰裙复...

QQ盗号软件黑客用,百度找的黑客靠谱吗,黑客技术入门盗qq密码视频

Windows操作(改写、最大化、最小化等)挖矿木马喜欢将本身进程名命名为体系进程来利诱用户,除了部分挖矿进程直接运用xxxminer外,最常运用的进程名为windows体系进程名:svchost.e...

网上被黑客服找种种理由不提现怎么办-黑客是不是什么软件都会用(什么

现在的黑客一样平常上班怎么上 暗网手机号定位(手机暗网教程) 黑客攻击电脑后怎么办 qq解密在线使用(qq怎么解密保) 黑客怎么上岸我的数据库 被打破的谣言墙许茹(被打破的谣...

音节是什么意思(你真的知道什么是音节吗)

  音节是什么含意(你确实了解什么是音节吗)什么是音节英语单词是由声调组成的,长单词能够区划成许多个声调,只是是了解这一定义就早已能帮助我们提高英语口语的语言表达能力了。中学的情况下,我有时确实会很好...

支付宝蚂蚁庄园2020年7月1日答案 大象一般是通过什么方式来防晒的

支付宝蚂蚁庄园2020年7月1日答案 大象一般是通过什么方式来防晒的

支付宝蚂蚁庄园小课堂2020年7月1日今日答案是什么?大象一般是通过什么方式来防晒的?蚂蚁庄园小课堂今日答题答案的正确答案是什么?想必很多朋友都想知道支付宝蚂蚁庄园今日答题答案,正确回答就可以领取18...

找一本黑客重生校园小说-黑客免费帮忙找回微信密码(帮忙找回qq密码的

每日好文 手机黑客要学什么软件 不经对方同意的免费定位软件(行迹定位需要对方同意) 黑客电热蚊香片什么原理 黑客网络(黑客网络hacknet攻略) 黑客一般用的是什么系统 教你入侵学校网站(如何入侵...