记一些CTFPHP题 1、buuctf[极客大挑战 2019]PHP 1 打开题目是这样一个页面 查看源码没有发现什么,所谓“备份网站”相关文件应该是藏在某个目录下,这里用dirsearch工具进行扫描 python dirsearch.py -u "http://c2494c1e-7649-4c ...
转载 2021-07-28 15:12:00
501阅读
2评论
前言php的很多特性再带来编程方面的同时也会带来很多安全隐患,其中一些漏洞在CTF中经常出现,本文大部分示例也是取自CTF题目。这里首先说一下==和===区别。==是比较运算,它不会去检查条件式的表达式的类型,===是恒等,它会检查查表达式的值与类型是否相等,NULL,0,”0″,array()使用==和false比较时,都是会返回true的,而使用===却不会。 注:本文部分内容及代码并非原创,
转载 2023-05-19 17:32:40
0阅读
一.题目 小宁听说php是最好的语言,于是她简单学习之后写了几行php代码。 根据提示,就应该分析代码: <?phpshow_source(__FILE__);include("config.php");$a=@$_GET['a'];$b=@$_GET['b'];if($a==0 and $a){ ...
转载 2021-07-18 20:57:00
377阅读
2评论
特殊变量 可变变量 一个可变变量 “$$” 获取了一个普通变量的值后,用这个值作为这个可变变量的变量名。一个美元符号表示提取变量中的值,而 2 个连续的美元符号表示用某个变量的内容作为变量名,再来访问该变量。例如以下代码: <?php $a = "b"; $b = "c"; $c = "a"; ec ...
转载 2021-10-06 16:53:00
505阅读
2评论
感谢:长亭科技的学习资料PHP中有两种类型比...
原创 2021-08-13 14:01:06
492阅读
php黑魔法,是以前做CTF时遇到并记录的,很适合在做CTF代码审计的时候翻翻看看。一、要求变量原值不同但m
原创
WXL
2021-07-13 11:20:03
974阅读
这一题应该是入门级题目吧链接:http://oj.xctf.org.cn/problems/253---------------------------------------------------------...
原创 2021-08-13 15:11:20
179阅读
PHP 弱类型 php比较2个值是否相等可以用“==”或“ ”,“==”会在比较时自动转换类型而不改变原来的值,因此这个符号经常出现漏洞。“==”比较相等的一些常见值如下,当某些语句的判断条件是使用“==”来判断时,就可以使用弱类型来替代。值得一提的是“0e”开头的哈希字符串,php在处理哈希字符串 ...
转载 2021-10-06 11:27:00
648阅读
2评论
文件包含漏洞 为了更好地使用代码的重用性,可以使用文件包含函数将文件包含进来,直接使用文件中的代码来提高重用性。但是这也产生了文件包含漏洞,产生原因是在通过 PHP 的函数引入文件时,为了灵活包含文件会将被包含文件设置为变量,通过动态变量来引入需要包含的文件。此时用户可以对变量的值可控,而服务器端未 ...
转载 2021-10-06 20:52:00
542阅读
文章目录PHP反序列化这一篇就够了简介常见的序列化格式案例引入反序列化中常见的魔术方法反序列化绕过小Trickphp7.1+反序列化
原创 2022-12-14 20:19:59
611阅读
PHP可逆加密解密欢迎使用PHP可逆加密解密加密方式一:可逆加密可逆解密使用如下加密方式二:可逆加密/解密使用如下加密方式三:可逆加密/解密使用如下加密方式四:加密解密URL加密解密函数:加密解密用户密码可逆加密解密函数:加密解密KeySHA1的可逆加密解密函数:加密/解密例子DES的加密解密函数:加密解密 欢迎使用PHP可逆加密解密开头问候语:PHP 是世界上最好的语言,可能将来会是宇宙中最好
转载 2023-12-23 22:18:27
118阅读
php伪协议是ctf中的一个考点,目前比较熟悉的伪协议有php://filter, php://input, data://text/plain, file://,后续补充。要成功应用伪协议需要php.ini文件的allow_url_fopen      默认开启                allow_url_include  &nb
转载 2023-06-05 16:12:54
163阅读
file:// 作用: 用于访问文件(绝对路径、相对路径、网络路径) 示例: ://.xx.com?file=file:///etc/passswd php:// 作用: 访问输入输出流 1. php://filter 作用: 读取源代码并进行base64编码输出 示例: :/
原创 2022-01-21 11:54:54
2165阅读
89 get传参,满足两个条件,不能出现0-9,但是要满足是整数 这里传入 ?num[]=a 即可,对于第一个过滤,preg_match()函数无法处理数组。对于第二个过滤,intval()** 不能用于 object,否则会产生 **`E_NOTICE`** 错误并返回 1。 90 ?num=+4 ...
转载 2021-10-18 18:54:00
514阅读
2评论
文章目录总览file://php://php://filterphp://inputdata://参考文章总览php:// — 访问各个输
原创 2022-10-27 06:24:24
426阅读
Php 反序列化 class xctf{ public $flag = '111'; public function __wakeup(){ exit('bad requests'); } ?code= 看到题目中_wakeup() 方法以及题目名 unserialize3 猜测为反序列化 在 unserialize()函数中会优先执行_wakeup()方法,因此我们需要跳过_wakeup() _
原创 2023-02-23 09:17:58
430阅读
前言:遇到一个代码审计的题目,略有思考。记录一下~源码就是这样的<?php$content = '<?php exit; ?>';$content .= $_POST['data'];file_put_contents($_POST['filename'], $content);
原创 2021-09-14 14:40:31
1340阅读
133 这里限制了F只能取前6个字符,但这里可以用变量本身作为参数 这里给出羽师傅的解释 get传参 F=`$F `;sleep 3 经过substr($F,0,6)截取后 得到 `$F `; 也就是会执行 eval("`$F `;"); 我们把原来的$F带进去 eval("``$F `;sleep ...
转载 2021-10-21 22:06:00
371阅读
2评论
1php://input协议第一个例子flag.php <?php$flag = 'flag{flag_is_here}'; test1.php <?php include('flag.php'); $a= $_GET["a"]; if(isset($a)&&(file_get_contents($a,'r'))=== 'this is test'){ echo"s
原创 2023-06-04 12:31:18
389阅读
序列化与反序列化 magic 方法 PHP 的面向对象中包含一些魔术方法,这些方法在某种情况下会被自动调用。 magic 方法功能 __construct() 类构造器 __destruct() 类的析构器 __sleep() 执行 serialize() 时,先会调用这个函数 __wakeup() ...
转载 2021-10-06 20:58:00
985阅读
2评论
  • 1
  • 2
  • 3
  • 4
  • 5