# [SUCTF2018] MultiSQL-MySQL 预处理学习 [SUCTF 2018] MultiSQL-MySQL 预处理学习 进入题目后,注册账户登录 编辑头像可以上传文件,但是上传了 php 文件还是会变成 jpg 格式 再看用户信息这里,id=2 那里可以随意更改,存在越权,1 就是 admin 这里接下来要用到 MySQL 的预处理,参考文章 set MariaDB [(none)]> set @a='select version()'; Query OK, 0 rows affected (0.00 sec) MariaDB...

# [GYCTF2020]Ez_Express # 知识点:原型链污染 原型链的特性: 在我们调用一个对象的某属性时: 1.对象(obj)中寻找这一属性2.如果找不到,则在obj.__proto__中寻找属性3.如果仍然找不到,则继续在obj.__proto__.__proto__中寻找这一属性以上机制被称为 js 的 prototype 继承链。而原型链污染就与这有关 原型链污染定义: 如果攻击者控制并修改了一个对象的原型,那么将可以影响所有和这个对象来自同一个类、父祖类的对象。这种攻击方式就是原型链污染 举例: let foo = {bar:...

# [N1CTF 2018]eating_cms 一个登陆页面,试了试 admin 和 123456,无果,没找到注册页面 尝试 register.php 页面,存在注册页面,先注册个号登录看看 利用伪协议得到源码 http://a85cdc51-62e8-4ac7-a3b6-fe8e8924fdf8.node3.buuoj.cn/user.php?page=php://filter/convert.base64-encode/resource=user源码 base64 解码后如下 <?phprequire_once("function.php");if(...

# [GYCTF2020]Easyphp # 前言 # 知识点: # www.zip 源码泄露 # PHP 反序列化链 POC # 代码审计 # WP: 进入环境,题目是 easyphp 我就感觉要审源码。。。试了一下常见的泄露,发现存在 www.zip。把代码下载下来进行一下审计,发现 update.php 和 lib.php 可以利用: <?php session_start(); function safe($parm){ $array=...

# [ISITDTU 2019]![1](…/images/[ISITDTU 2019]EasyPHP/1.png)EasyPHP 思路很简单,绕过这两个 if 即可任意代码执行 先看一下第一个正则匹配 看不懂的推荐使用这个网站:https://regex101.com/ if ( preg_match('/[\x00- 0-9\'"`$&.,|[{_defgops\x7F]+/i', $_) ) die('rosé will not do it'); ![2](…/images/[ISITDTU...

# [HarekazeCTF2019]Avatar Uploader 1 [HarekazeCTF2019]Avatar Uploader 1 参考文章点这 首先输入用户登录 要求上传小于 256kB 且小于 256px*256px 的 PNG 图片。 上传做头像 试着传🐎发现没用,没有任何回响 只能去看源码来了 最主要的还是...

# [FireshellCTF2020] Caas C 的预处理 # 进入可以看到是一个编译器 ,输入简单的 php 代码试试 <?php phpinfo();?> 不知道什么的报错,直接复制报错代码百度一下看看(仔细地可以看见最前面有一个后缀.c) 发现清一色的 C 语言报错,那我们找个 c 语言代码传进去试试 #include <stdio.h> int main() { printf("hello, world");}下载出来一个不知什么文件 思路到这里就断了,其实可以猜到 flag...

# [SCTF2019]Flag Shop # 点击 buy flag 试试 提示没有足够的 jkl 这里可以点击 work 去赚取 jkl 正常点击要攒到 flag 怕是不可能,buu 请求过快也会报错 先抓包看看吧 这里不能修改 work 赚取的 jkl,尝试把 cookie 解码看看:直接修改发现出错,有密码。重新开始审计: 又回到最开始的地方。。 扫描一下有没有源码泄露之类的 发现 robots.txt 访问发现有 /filebak 发现 ruby 代码: require 'sinatra' require...

# [羊城杯 2020] easyphp 和 [XNUCA2019Qualifier] EasyPHP 基本一样,唯一的区别就是少了 include_once 导致没办法通过 error_log 来做,预期解应该就是那道题的非预期。 <?php $files = scandir('./'); foreach($files as $file) { if(is_file($file)){ if ($file !== "index.php") { unlink($file); }...

# [BSidesCF 2019]SVGMagic 标题说把 SVG 转为 PNG SVG 是一种用 XML 定义的语言,SVG 图形是可交互的和动态的,可以在 SVG 文件中嵌入动画元素或通过脚本来定义动画。 也就是说这里的 SVG 是个 XML, 并且存在可控的内容,那么自然就会想到 XXE。 究极详细讲解:https://www.freebuf.com/vuls/175451.html 我的理解是: 首先我们要知道,XML 被设计用来传输和存储数据。 然后这个漏洞就是利用了,应用程序在解析XML输入时,没有禁止外部实体的加载。 就拿下面的这个来说<!ENTITY file...