CTFshow文件上传
好久之前做过一遍了,当时早,没记笔记,现在重新快速做一遍,顺便复习一遍 Web 151(前端绕过) 前端绕过,一句话木马 <?php @eval($_POST['1']); ?> 一种方法是可以直接在前端改掉它对我们的上传文件的限制 另一种方法就是bp抓包后,直接改文件后缀 Web 152(MIME头绕过) 考点是:Content-Type 是 HTTP 协议中的一个头字段,用于指示发…
CTFshow1024杯
写完忘传了,翻看自己的笔记发现好多没传的嘞 web签到 <?php​error_reporting(0);highlight_file(__FILE__);call_user_func($_GET['f']); 自己调用内置方法,看看phpinfo里有一个自定义的函数 ?f=ctfshow_1024 成功拿到flag 柏拉图 进去看到有输入url的地方,开始判断为ssrf 测试一下,http…
Phar反序列化
来填坑了,差点就忘了,今天做题遇见了才想起来的 什么是Phar Phar是PHP的压缩文档,是PHP中类似于JAR的一种打包文件,他可以把多个文件存放到同一个文件中,无需解压,PHP就可以进行访问并执行内部语句 同时对PHP版本有要求 PHP version >-5.3 Phar文件的结构 大致分为四个部分 1、Stub //Phar文件头2、manifest //压缩文件信息3、conte…
GHCTF2025
Web SQL??? 参数直接给了测试一下,为数字型 order by出来到5 2,3,4,5都可注入直接出最后select flag from flag 也可以用sqlmap一把梭 只是通过user-agent进⾏的过滤,加⼀个--random-agent即可 sqlmap -u xxxx?id=1 --random-agent --batch sqlite数据库,查询和平时不太一样而已 Pop…
SSTI再出发
声明:本篇记的可能会比较混乱 官方对于模版的介绍 {% ... %} 可以用来声明变量,当然也可以用于循环语句和条件语句​{{ ... }} 用于将表达式打印到模板输出​{# ... #} 表示未包含在模板输出中的注释​# ... # 和{%%}相同的效果​ 同时除了标准的python语法使用点(.)外,还可以使用中括号([])来访问变量的属性 {{"".__class__}}{{""['__cl…
浅学SSTI漏洞原理(基于flask)
Flask flask是一个使用Python编写的轻量级Web应用框架 特点:良好的文档,丰富的插件,包含开发服务器和调试器,集成支持单元测试,RESTful请求调度,支持安全cooies,基于Unicode。 Python可直接使用flask启动一个Web服务页面。 Flask基本架构 from flask import Flaskapp = Flask(__name__)​@app.route…
CTFshow萌新赛
Web 签到 <?php if(isset($_GET['url'])){       system("curl https://".$_GET['url'].".ctf.show");}else{       show_source(__FILE__);} ?> 进去就是源码 考察命令执行 ?url=;ls;?url=;ca…
2024春秋杯
解出题目wp easy_php 打开场景 点击下载源码 发现有好多php文件,包括反序列化内容,而且还有文件上传点,一开始以为是要先传马,然后有参数,再进行反序列化 <?php​class Chunqiu​{ public $test;​ public $str;​ public function __construct($name)​ {​•   $this->str = …
记一次session反序列化
Session的序列化 当用户通过PHP的$_SESSION变量存储数据时,PHP会自动将这些数据序列化(即转换成字符串)并存储在服务器端的Session文件或其他Session存储介质中。序列化的格式通常是可以通过serialize()函数手动生成的格式 当用户再次访问Session数据时,PHP会自动从服务器端读取Session文件,并通过unserialize()函数将数据转换回原始格式。这…