9.1k8 分钟

# web # web1 if(isset($_GET['id'])){ $id = $_GET['id']; # 判断 id 的值是否大于 999 if(intval($id) > 999){ # id 大于 999 直接退出并返回错误 die("id error"); }else{ # id 小于 999 拼接 sql 语句 $sql = "select * from article
8.5k8 分钟

# 前言 对于原生类的接触主要是在 ctfshow 菜鸟杯上的一道题,师傅用原生类两步就秒了,我还在来回折腾。所以记录一下在网上看到的可利用的原生类。 原生类,顾名思义就是自带的类,不需要事前进行 class 定义。 在 ISCC2022web 题有个就是典型的原生类利用 其中 new 的类和向类中传递的参数都可以自定义,就随便用原生类 # 原生类 # Error/Exception # XSS 这两个类中都内置了__toString () 方法 <?php$a = new Error("test");echo $a;当执行时,会输出该 “tes
4.5k4 分钟

# 前言 这个点之前从来没见过,故记录一下 # 正片 直接把题拿出来看,其实暂时不用怎么看,大概知道一下就行 $password=$_POST['password'];if ($username !== 'admin') { alertMes('only admin can login', 'index.php');}checkSql($password);$sql="SELECT password FROM users WHERE username&#x
4.5k4 分钟

# 关于 php 的反序列化 题里主要就是各种利用魔术方法进行跳转,从而实现恶意代码。 要利用这些魔术方法,就不得不了解一下有什么和如何利用 # 魔术方法 # __construct() 构造函数,只有在 new 一个对象的时候会触发,这时候会执行__construct () 下的语句 需要注意的是,在序列化和反序列化中都不会触发该方法 # __destruct() 析构函数会在对象被销毁的时候被调用,典型的就是 die 和 unset 函数,寒假考核的时候就用到了这个点 class web{ public function __wakeup() {
2.4k2 分钟

这是一篇加密文章,需要密码才能继续阅读。
2.6k2 分钟

这是一篇加密文章,需要密码才能继续阅读。
9.8k9 分钟

# web # 简单题,但是沃玛 在 js 文件里看到 redrockctf 函数,flag 应该就在这里边 本来看到 "Uh,f1a9!" 的时候以为只有 f1a9 才是真正的 flag,还蒙了好久,直到出了 hint ok,那手拼函数就完事了 第三部分分了两个,分别解码一下就出来了两个方法 写个 c 跑一下 显然第一个刚好是沃玛的 b 站 uid,再把三个拼接起来就得到 flag 了(后边的 #redr0cksrE2o22 也要加上) redrock{https://space.bilibili.com/53456#r
2.7k2 分钟

这是一篇加密文章,需要密码才能继续阅读。
4641 分钟

这是一篇加密文章,需要密码才能继续阅读。
6501 分钟

这是一篇加密文章,需要密码才能继续阅读。