自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 ctfshow[ xss 篇]

可以写下祝福语,既然是xss题目,那么直接xss语句,看看能不能弹窗发现可以,查看一下他的cookie说我不是admin,没有flag。

2025-12-27 22:31:38 660

原创 日常刷题记录

随便传入一个图片,会跳转到upload.php会有他的源码分析一下finfo_open():这是一个初始化函数,用于创建一个File information资源,可以想象成一个打开了一个专门用于"鉴定文件"的工具箱FILEINFO_MIME_TYPE:是一个预定义常量,表示文件的MIME类型部分那么这两个一组合,最终$finfo就有了鉴定文件的MIME类型部分的功能然后使用$finfo,来判断临时文件的MIME类型是否为zip,如果是zip,就exec执行里面的命令。

2025-12-26 21:06:24 848

原创 ctfshow的Yii框架反序列化

信息收集一下使用wappalyzer,看到他的框架是Yii的先放着,给其他的收集完。

2025-12-25 20:24:19 799

原创 每周的周赛

水一篇。

2025-12-24 21:22:25 266

原创 命名空间和一道练习的框架反序列化

phpnamespace 项目名\模块名\子模块;class User{} //类 项目名\模块名\子模块\Userfunction login(){} //方法 项目名\模块名\子模块\login()//常量 项目名\模块名\子模块\VERSION?1.如果在其他文件中想使用这个类,可以:使用全名:new 项目名\模块名\子模块\User();或通过use导入:use 项目名\模块名\子模块\User2.方法的调用方式在同一命名空间内可直接调用 login()

2025-12-24 09:42:39 972

原创 [CISCN2019 总决赛 Day1 Web4]Laravel1

他是一个私有属性,触发了有一个if语句 ,判断本类的file属性是否存在这个文件,如果不存在,就将空数组赋值给本类的values属性,在赋值给本类的keys属性,然后返回为空,if语句外是一个三元运算符的简写,如果include包含$this->file文件不成功,就返回[[],[]],这里也是最后的结尾,可以进行一个文件包含。命名空间其实就像我们平时使用的绝对路径一样,只不过是在类名前面加了一个斜杠\,这就叫完全限定名称,不管你当前身处哪个命名空间,只要从\开始写,php就会从最顶层开始找。

2025-12-22 22:57:07 652

原创 [网鼎杯 2018]Comment

原理就是,在第一次在数据库中插入数据的时候,使用了转义字符,例如addslashes、get_magic_quotes_gpc、mysql_escape_string、mysql_real_escape_string等函数 ,addslashes函数有一个特点就是虽然参数在过滤后会添加斜杠\对单双引号进行转义,但是斜杠\不会插入到数据库中,在写入数据库的时候还是保留了原来的数据,然后 再取出的时候 还是取出的脏数据。看wp说这个文件的内容不全,要尝试下是否有其他版本的,用git命令查看下。

2025-12-21 20:12:42 660

原创 DC-2靶机

发现没有su这个命令 ,看 wp说这里需要rbash逃逸(rbash就是受限的bash shell,对用户的操作做了诸多限制,比如不能使用cd命令改变目录,不能随便修改PATH环境变量、限制导入功能等)发现无法访问,会跳转到http://dc-2/网站,那么访问一下这个,发现无法访问,给/etc/hosts中添加上。先输入sudo git branch --help config,然后再输入!nmap -p- -sS -sC -sV -min-rate 5000 -n -Pn 目标ip。

2025-12-20 20:33:01 948

原创 [CISCN 2019初赛]Love Math

然后定义了一个白名单,里面都是数学函数,下面是一个全局正则表达式,第一段是他定义的正则表达式 就是说它要以字母、下划线或扩展 ASCII字符开头,后面可以跟任意数量的字母、数字、下划线或扩展ASCII字符的字符串,然后$content是它要检查的字符,$used_funcs中是保存所有匹配到的结果,然后将$used_funcs[0]的值遍历到$func中,然后if检测,如果$func不在$whitelist这个数组中,就die退出。就例如:$content= "system($_GET['a']);

2025-12-19 23:24:34 557

原创 [CISCN2019 华北赛区 Day2 Web1]Hack World

这个是取出flag表中flag字段的第一行第一个字符的ascii码值,和后面的100进行一个比较,如果相同就返回1,否就返回0。这个语句是如果检测到flag表中的flag列的字段长度如果满足了就返回1也就是true,没满足就是0false。发现第一个字符为102,也就是f,然后看第二个,也就是将这个修改为2,然后找出他对应的ascii值。首先使用length查看一下flag表中的flag列的flag字段的长度为多少。这里因为自己写的脚本,会出现超时的情况,就让ai给修改了一下,成功得到flag。

2025-12-18 20:15:00 748

原创 命令执行绕过

直接闹麻了 ,命令执行绕不过空格的来了🤣,都能执行命令了,空格绕不过去直接全盘皆失赶紧补充一下自己的命令执行绕过知识😭。

2025-12-17 21:43:03 245

原创 [CISCN2019 华北赛区 Day1 Web2]ikun

首先是导入pickle和urllib,让AdminHandler继承一个object基类,然后定义一个__reduce__方法,然后里面的参数是当前对象,返回值为(eval,("__import__('os').popen('cat /flag.txt').read()",)),然后在进行一个实例化类,再进行一个反序列化,随后再让他进行一个url编码,最后打印出来。将反序列化的状态数据设置回对象的属性,他接收一个参数,这个参数是对象的状态数据(通常是字典形式),可以通过它恢复对象的状态。

2025-12-16 20:04:07 693

原创 [CISCN2019 华东南赛区]Web4

首先是看到他这里面有一个secret_key是可以自己构造的,结构为用生成的MAC地址初始化随机数生成器,再将random.random()生成的0~1的伪随机数小数,乘一个233,并转换为字符串就是他的secret_key,这里MAC地址通常出现在这几个路径下。首先就是先random.seed使用这个进行一个伪随机数初始化,这里的MAC地址要变成为十六进制,然后再利用random.random生成0~1的随机数乘一个233,注意!发现触发了waf,使用其他的试一试,最后发现 直接加路径也能进行访问。

2025-12-15 20:53:53 637

原创 [SWPUCTF 2018]SimplePHP

然后三元运算符判断GET传参file的值,然后赋值给$file,随后if检测$file的值如果为空,就echo输出一段话,然后将实例化一个Show类,将值赋值 给$show,随后检测$file是否存在 ,如果存在的话,就将$file的值,赋给Show类的source属性,然后再调用它的_show方法。里面告诉了上传的路径是upload/加文件名 ,如果有重复的就给删除 掉,然后还有一个白名单,只能上传gif,jpeg,jpg,png这几个文件没啥可用的。,后面的是它限制的 只能访问的目录。

2025-12-14 19:54:35 558

原创 [UUCTF 2022 新生赛]ezpop

这时候看UUCTF类,它最先触发的是wakeup方法,首先要满足他的if语句,让key为UUCTF,那么指定是这里逃逸无疑了,整段代码只有这一个需要满足的,接下来看里面的语句,首先是将本类的basedata属性进行一个base64解码,然后再进行反序列化的操作,既然这里的参数是basedata属性,那么链子的值是赋值给basedata的,然后这里name属性在key属性的前面,那么就是通过name的值,来逃逸key的UUCTF和我们的序列化的值了。rce方法,触发了会eval执行本类的cmd属性的内容。

2025-12-13 22:06:58 935

原创 php反序列化日常

一个destruct方法,触发了是 一个任意实例化类,类名为本类的className属性,结果赋值给$class,然后将本类的funcName属性赋值给$funcName,然后让$class作为对象名,调用它里面的$funcName方法 ,$this->args属性是它的方法参数。一个call方法,里面 接收两个参数$func,$argc,触发了会一个动态函数调用,$func是函数名,$arg的索引值为0的值是它的参数。下面是用来生成phar文件的,生成完的文件,在使用winhex将他的成员属性修改一下。

2025-12-12 20:08:36 824

原创 phar反序列化

记录学习phar反序列化的笔记^_^

2025-12-11 16:50:18 967

原创 [SWPUCTF 2021 新生赛]babyunser

下面是实例化一个zz类,$filename作为他的参数,并将其结果赋值给$file,然后$file调用类中的getFlag()方法,并赋值给$contents,然后下面有个php代码它的内容为echo $contents;,那么flag就能被输出出来。一个getFlag方法,触发了会调用本对象的filter方法,下面是一个读取本对象的filename属性的文件内容,赋值 给$content,然后if判断语句,判断$content是否不为空,如果不为空就返回$content,为空就die返回404。

2025-12-10 19:32:45 674 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除