[GXYCTF2019]BabyUpload】的更多相关文章

0x00 知识点 文件类型绕过: Content-Type: image/jpeg apache环境下上传.hatcess 首先上传一个.htaccess内容如下的文件 :SetHandler application/x-httpd-php 这样所有文件都会解析为php,然后再上传图片马,就可以解析 这里多说一下nginx我们可以尝试.ini配置文件: 文件名后缀不能是 ph 开头,文件内容过滤<? 长传这样的图片马: GIF89a? <script language="php&qu…
CTF三大骗局:Baby Easy Funny,本题主要考察.htaccess文件解析文件.文件类型检测绕过 打开题目给了一个上传点,上传一个php文件看看过滤规则 “后缀名不能有ph”直接禁掉了所有可以直接执行php的后缀名,自然想到利用.user.ini或.htaccess文件来将其他文件解析成PHP文件 看一下中间件是什么: 发现是Apache直接上传一个.htaccess来试试,.htaccesee用途如下: .htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下的…
0x00 知识点 无参数RCE eval($_GET['exp']); 参考链接: https://skysec.top/2019/03/29/PHP-Parametric-Function-RCE/#%E4%BB%80%E4%B9%88%E6%98%AF%E6%97%A0%E5%8F%82%E6%95%B0%E5%87%BD%E6%95%B0RCE 1.利用超全局变量进行bypass,进行RCE 2.进行任意文件读取 形式: if(';' === preg_replace('/[^\W]+\(…
[GXYCTF2019]禁止套娃 1 啥都没有那只能上扫描器来一探究竟了. 扫完没有啥结果,但网上找了一下说是git泄露,但是我这里显示了403. <?php include "flag.php"; echo "flag在哪里呢?<br>"; if(isset($_GET['exp'])){ if (!preg_match('/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i', $_GET['exp'])) {…
阅读本文前建议先阅读本站中的另一篇文章:[GXYCTF2019]禁止套娃 重要参考链接:http://www.heetian.com/info/827 Leon师傅魔改了[GXYCTF2019]禁止套娃这道题,将过滤掉的字符串增加了一大堆.打开题目得到的源码如下: 1 <?php 2 header("Content-Type: text/html;charset=utf-8"); 3 highlight_file(__FILE__); 4 error_reporting(0);…
[BJDCTF 2nd]old-hack 页面很有意思 同时也告诉了我们是THINKPHP5,我们只需要寻找THINKPHP5的漏洞就可以了. https://www.codercto.com/a/54587.html 可以看这篇文章,我们使用里面的payload命令执行 cat /flag一下 获得flag [GXYCTF2019]禁止套娃 源代码里面没有什么提示,抓包也没有发现什么异常,感觉没什么思路,只能拿出御剑进行爆破,看有没有源代码泄露. 但是御剑扫了之后也没有线索,这里没有想到是.g…
[GXYCTF2019]simple CPP 一.查壳 无壳,64位程序 二.IDA分析 找到主函数后动态调试,看的更清楚 经过调试后我们可以找到len就是储存字符串长度的变量,之后判断长度是不是大于30,不是的话继续,然后将输入的字符串分别与v7中的内容异或,而v7是经过动调发现是 之后再进行一次长度判断,然后进入一个循环将加密后的字符串进行堆叠,例如字符串原本是A1B2,进行堆叠后储存到一个整型里就是 0x41314232,然后满8位储存一次,最后一次不满8位的储存到v8,然后有一个判断是否…
[GXYCTF2019]禁止套娃 1.扫描目录 扫描之后发现git泄漏 使用githack读取泄漏文件 <?php include "flag.php"; echo "flag在哪里呢?<br>"; if(isset($_GET['exp'])){ if (!preg_match('/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i', $_GET['exp'])) { if(';' === preg_repla…
[GXYCTF2019]luck_guy 附件 步骤: ida载入,shift+f12查看程序里的字符串,看到了关于flag的提示 双击跟进跳转,ctrl+x找到关键函数 flag是由f1和f1拼接而成,f1以知,f2也有,但是一看f2就知道长的不对,没有形成flag该有的样子,这边注意一下case5的代码,对长度为8的字符串进行了操作,f2(0x7F666F6067756369两位一划分)的长度正好也是8,猜测用来与f1进行拼接形成flag的字符串是f2进行了case5操作后的数据 脚本运算证…
0x00 知识点 emmm这道题目就是脑洞得大,能猜后端源码 0x01 解题 查看源码: base32,base64解码得到 select * from user where username = '$name' 提示我们 要从 username 入手我们查看下 他有几个字段 得到字段为3: admin' union select 1,2,3# 我们开始常规注入: admin' union select 1,2,3# 这里提示wrong user,用户名错误,猜测为admin 我们把admin…