随笔分类 -  web题

摘要:无参数命令执行 详见我的另一篇博客 传入变量进行命令执行 可以传入c=$nice=include$_GET["url"]?>&url=php://filter/read=convert.base64-encode/resource=flag.php 实验一下 实验源代码如下: 结果如下: 发现并没有 阅读全文
posted @ 2021-11-08 15:27 无据 阅读(852) 评论(0) 推荐(0)
摘要:源代码如下 可以看到他过滤了$和_ 而且payload的长度不能超过35,针对这样的情况,P神也做出了解决 PHP7下简单解决问题 PHP7前是不允许用($a)();这样的方法来执行动态函数的,但PHP7中增加了对此的支持。所以,我们可以通过('phpinfo')();来执行函数,第一个括号中可以是 阅读全文
posted @ 2021-11-08 10:50 无据 阅读(100) 评论(0) 推荐(0)
摘要:最近刷题看到了P神的这篇博客,不得不说里面的思路真的是让人大吃一惊,所以复现记录一下 源代码如图 可以看到过滤了所有的字母和数字,那么怎么绕过呢 基本思路,将非字母,数字字符经过各种变换,最后能构造出a-z中的任意一个字符,然后再利用PHP允许动态函数执行的特点,拼接出一个函数名,然后动态执行即可 阅读全文
posted @ 2021-11-08 10:23 无据 阅读(124) 评论(0) 推荐(0)
摘要:无参数的命令执行 应用场景,当可以进行命令执行的时候,如有eval()函数的时候但是对参数有过多限制就可以使用无参数的命令执行 show_source(next(array_reverse(scandir(pos(localeconv()))))); 对函数进行讲解 scandir('.')这个函数 阅读全文
posted @ 2021-11-01 14:57 无据 阅读(467) 评论(0) 推荐(1)
摘要:信息搜集总结 源代码泄露 这里主要是各种源码泄露: '.git','.svn','.index.php.swp','.index.php.swo','.index.php.swn','.DS_Store','phpinfo.php','index.php.old','index.php.temp' 阅读全文
posted @ 2021-11-01 10:32 无据 阅读(50) 评论(0) 推荐(0)
摘要:地址解析绕过 成因 在php中url_parse和curl对地址的解析不同,如对地址http://xxx@127.0.0.1@baidu.com url_parse会解析成baidu.com 而curl会请求127.0.0.1,高版本中的PHP中修复了但是可以加空格绕过 即构造http://xxx@ 阅读全文
posted @ 2021-10-30 09:02 无据 阅读(192) 评论(0) 推荐(0)
摘要:本题是在2021第五空间中出现的 具体的源代码如下: require 'sinatra' require 'digest' require 'base64' get '/' do open("./view/index.html", 'r').read() end get '/upload' do o 阅读全文
posted @ 2021-09-24 10:08 无据 阅读(170) 评论(0) 推荐(0)
摘要:__wakeup()函数用法: wakeup()是用在反序列化操作中。unserialize()会检查存在一个wakeup()方法。如果存在,则先会调用__wakeup()方法。 漏洞成因: O:7:"Student":3:{s:9:"full_name";s:8:"zhangsan";s:5:"s 阅读全文
posted @ 2021-09-17 10:18 无据 阅读(223) 评论(0) 推荐(0)
摘要:漏洞成因:preg_replace()函数的功能为替换正则匹配的字符 Eg: $slug = preg_replace('/[^a-z0-9-]/', '', $string); 正则替换,把$string中所有非小写字母或数字的字符给替换成空'', 就是删除非小写字母或数字的其他字符。 漏洞: 有 阅读全文
posted @ 2021-09-17 10:13 无据 阅读(642) 评论(0) 推荐(0)
摘要:关于/proc/目录Linux系统上的/proc目录是一种文件系统,即proc文件系统。与其它常见的文件系统不同的是,/proc是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,用户可以通过这些文件查看有关系统硬件及当前正在运行进程的信息,甚至可以通过更改其中某些文件来 阅读全文
posted @ 2021-09-17 10:05 无据 阅读(267) 评论(0) 推荐(0)
摘要:最近参加羊城杯,遇到了一道题本来的思路是绕过preg_match()函数读取secret.php文件,然后从secret.php中给的函数构造pop链使用反序列化的知识点进行命令执行,从而得到flag 但是问题是第一步就出现了问题,绕过preg_match()就绕不过去记录一下:我搜索到的常用的绕过 阅读全文
posted @ 2021-09-13 14:55 无据 阅读(9457) 评论(1) 推荐(0)
摘要:关于==和 ==是比较两个值,如果类型相同就比较值,如果类型不同就转换类型进行比较 是强相等,是要比较两者的类型也要一样 问题就出在==的类型转换上 行比较。 <?php var_dump("admin"==0); //true var_dump("1admin"==1); //true var_d 阅读全文
posted @ 2021-09-08 10:31 无据 阅读(88) 评论(0) 推荐(0)
摘要:首先源代码如下 <?php class Modifier { protected $var; public function append($value){ include($value); } public function __invoke(){ $this->append($this->var 阅读全文
posted @ 2021-08-28 09:41 无据 阅读(134) 评论(0) 推荐(0)
摘要:file_get_contents() 作用就是将文件读到字符串中 file_get_contents(path,include_path,context,start,max_length) | 参数 | 描述 | | | | | path | 必需。规定要读取的文件。 | | include_pa 阅读全文
posted @ 2021-08-27 10:57 无据 阅读(348) 评论(0) 推荐(0)
摘要:一直学pop链,原理是懂的,但是就是做不出来题目,这次好好总结一下,直接上题目,研究的是 [EIS 2019]EzPOP 这道题还是很有难度的 源代码如下: 1 <?php 2 error_reporting(0); 3 4 class A { 5 6 protected $store; 7 8 p 阅读全文
posted @ 2021-08-27 10:34 无据 阅读(294) 评论(0) 推荐(0)
摘要:首先打开网址之后是一个文件上传 直接上传一句话木马 <?php @eval($_POST['attack']);?> 然后我们抓包改成Content-Type:image/jpeg 之后又发现其对文件后缀名进行了限制过滤了(绕过的方法php3,php4,php5,phtml,pht) 发现php3, 阅读全文
posted @ 2021-08-01 15:48 无据 阅读(580) 评论(0) 推荐(1)