![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
CTF
长着翅膀的乌龟
it从业者,爱好者。
展开
-
CTF代码审计中常用到的函数
extract()函数从数组中将函数导入当前列表,将数组的键当作变量名,数组的值当作对应变量的值。例如:<?php$a = "Original";$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");extract($my_array);echo "\$a = $a; \$b = ...原创 2019-08-02 20:38:39 · 557 阅读 · 0 评论 -
文件上传漏洞
为什么文件上传存在漏洞 上传文件的时候,如果服务器脚本语言,未对上传的文件进行严格的验证和过滤,就容易造成上传任意文件,包括上传脚本文件。 如果是正常的PHP文件,对服务器则没有任何危害。 PHP可以像其他的编程语言一样,可以查看目录下的文件,查看文件中的吗内容,可以执行系统命令等。 上传文件的时候,如果服务器端脚本语言,未对上传的文件进行严格的验证和过滤,就有...原创 2019-05-04 16:45:00 · 93 阅读 · 0 评论 -
CTF常见漏洞函数
php中得strcmp()函数的漏洞:strcmp(a1,a2)函数用来比较两个字符串是否相等的,比较的是对应字符的ascii码,如果相等返回0,当a1的ascii大于a2的返回小于0,a1的ascii码小于a2的,返回大于0.但是这个函数是存在漏洞的,我们知道这个函数是用来比较字符串的,但是当我们传入为数组是,那变成字符串和数组进行比较了,因此php在5.2之前,默认返回的-1,5.2版...原创 2019-05-04 16:46:00 · 1570 阅读 · 0 评论 -
文件包含的各种姿势
文件包含漏洞原理文件包含可以增加代码的重复使用,方便了开发人员,但是在带来方便的同时也给我们带来了很多安全方面的麻烦,因此我总结一下常见的文件包含漏洞的方式。文件包含的方式可以分为本地文件包含和远程文件包含,本地文件包含表示通过包含目标服务器上的文件来进行恶意代码的执行,我们通常需要构造自己的恶意代码并包含执行才能达到攻击服务器的目的,通常远程文件包含的的危害更大,因为恶意攻击者可以搭...原创 2019-05-27 09:37:00 · 569 阅读 · 0 评论 -
DDCTFweb签到题
DDCTF上的一个反序列化的题题目链接http://117.51.158.44/index.php 访问这个链接显示我们没有权限访问,我们查看开发者工具,刷新查看网络流,如图 QQ截图20190503192831.png 我们可以看到有一个Auth.php的请求,打开查看请求头有一个didictf_username,我们在添加☞为admin,然后编辑重发。 ...原创 2019-05-03 19:25:00 · 289 阅读 · 0 评论 -
php反序列化漏洞
php反序列化反序列化漏洞产生的原因:php在传递和保存数据时通常会将一个对象按照一定的格式来保存,这个过程称为序列化,当需要使用到这个对象时再通过反序列化,还原成原来的对象,但是在php的类中有一些魔术方法,这些方法,在一定的条件下会自动执行,因此攻击者通过构造传输的值,便会产生意料不到的结果。魔术方法:__construct(), __destruct(), __call...原创 2019-04-21 20:48:00 · 89 阅读 · 0 评论 -
php漏洞
php反序列化php伪协议php://input可以读取以post方式提交的内容,通常和文件包含放在一起使用。现在我们创建一个文件aa.php里面的代码如下。<?php@$bb="";@$bb=file_get_contents($_GET["aa"]);echo $bb;?>file_get_contents()这个函数表示将一个文件的内容读入...原创 2019-04-21 20:16:00 · 141 阅读 · 0 评论 -
文件上传漏洞的讲解
为什么文件上传存在漏洞 上传文件的时候,如果服务器脚本语言,未对上传的文件进行严格的验证和过滤,就容易造成上传任意文件,包括上传脚本文件。 如果是正常的PHP文件,对服务器则没有任何危害。 PHP可以像其他的编程语言一样,可以查看目录下的文件,查看文件中的吗内容,可以执行系统命令等。 上传文件的时候,如果服务器端脚本语言,未对上传的文件进行严格的验证和过滤,就有...原创 2018-11-04 10:59:18 · 1440 阅读 · 0 评论 -
ctf知识点总结
php的序列化和反序列化:serialize()和unserialize()函数的作用是把复杂的数据类型压缩到一个字符串中来传输例如:我们要传输一个数组$stooges = array('Moe','Larry','Curly');$new = serialize($stooges);print_r($new);echo "<br />";print_r(unse...原创 2018-10-28 14:11:37 · 3273 阅读 · 0 评论 -
sql注入中常见的报错信息
sql注入是我们常见的ctf的web类型题目,因此我们在做这类题时经常会在页面上返回错误信息,因此熟悉一些常见的sql注入信息是很重要的,下面我介绍一些自己常遇到的mysql报错信息。我们在页面上返回的错误信息不仅仅只有mysql返回的,可能还有服务器返回的,因此我仅仅对mysql返回的错误信息进行总结.1,报错信息 The used SELECT statements...原创 2018-10-21 14:37:05 · 4688 阅读 · 0 评论 -
sql注入的基本知识
常见类型的sql注入:我们看到的sql注入类题目经常包含直接在数据库的系统数据库类来得到信息,这个数据库的名字为information_schema这个数据库便是系统的数据库,用来存储我们创建的数据库和数据表的基本信息,而我接下来介绍的便是对这个数据库的认识。我们可以查看information_schema这个数据库里有很多的数据表,我们经常要用到的数据表有:tables表:这个表...原创 2018-10-08 22:08:10 · 357 阅读 · 0 评论 -
php中函数的常见漏洞
php中得strcmp()函数的漏洞:strcmp(a1,a2)函数用来比较两个字符串是否相等的,比较的是对应字符的ascii码,如果相等返回0,当a1的ascii大于a2的返回小于0,a1的ascii码小于a2的,返回大于0.但是这个函数是存在漏洞的,我们知道这个函数是用来比较字符串的,但是当我们传入为数组是,那变成字符串和数组进行比较了,因此php在5.2之前,默认返回的-1,5.2版...原创 2018-09-30 16:17:23 · 1797 阅读 · 0 评论 -
php单文件文件上传原理
目录用到的函数:实现一个php文件上传的全部代码:用到的函数:explode(separator,string,limit) 表示用一个字符串分割另一个字符串,返回一个数组。第一个参数表示风格的字符,第二个参数表示被分割的字符串,第三个参数可选。file_exists(path)函数用来检查文件或者目录是否存在,返回值为ture或false。move_uploaded...原创 2018-09-19 21:33:32 · 285 阅读 · 0 评论 -
CTF常见的编码
jother编码jother编码是由[]()+!这些符号组成的,是一种js的编码。我们通常在控制台中运行此编码便可以解析内容。jother编码的形式:js中的escap的编码编码形式:所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)在js里有escap(string)...原创 2019-08-02 20:40:37 · 2687 阅读 · 0 评论 -
php中的$_SERVER变量
我们在做ctf题时经常需要看一些浏览器的请求和反应头,但是我们经常不能很好的了解他们,因此我对接收我们浏览器的请求头有关的后端$_SERVER变量做了一个总结。$_SERVER['HTTP_ACCEPT_LANGUAGE'];//浏览器语言 $_SERVER['REMOTE_ADDR']; //当前用户 IP 。 $_SERVER['REMOTE_HOST']; //当前用户主机名 ...原创 2019-08-02 20:39:53 · 148 阅读 · 0 评论 -
CTF常用函数
我们在做ctf题时经常需要看一些浏览器的请求和反应头,但是我们经常不能很好的了解他们,因此我对接收我们浏览器的请求头有关的后端$_SERVER变量做了一个总结。$_SERVER``[``'HTTP_ACCEPT_LANGUAGE'``];``//浏览器语言$_SERVER``[``'REMOTE_ADDR'``]; //当前用户 IP 。$_SERVER``[``'REMOTE_HOS...原创 2019-05-04 16:43:00 · 883 阅读 · 0 评论