原标题:一句话木马的套路
0×01 前言
尽最大努力在一文中让大家掌握一些有用的 WEBSHELL 免杀技巧。
0×02 关于 eval 于 assert
关于 eval 函数在 php 给出的官方说明是
eval 是一个语言构造器而不是一个函数,不能被 可变函数 调用
可变函数:通过一个变量,获取其对应的变量值,然后通过给该值增加一个括号 ,让系统认为该值是一个函数,从而当做函数来执行
通俗的说比如你 这样是不行的 也造就了用 eval 的话达不到 assert 的灵活,但是在 php7.1 以上 assert 已经不行
关于 assert 函数
assert 回调函数在构建自动测试套件的时候尤其有用,因为它们允许你简易地捕获传入断言的代码,并包含断言的位置信息。当信息能够被其他方法捕获,使用断言可以让它更快更方便!0×03 字符串变形
字符串变形多数用于 BYPASS 安全狗,相当对于 D 盾,安全狗更加重视”形”
一个特殊的变形就能绕过安全狗,看看 PHP 手册,有着很多关于操作字符串的函数
ucwords //函数把字符串中每个单词的首字符转换为大写。 ucfirst //函数把字符串中的首字符转换为大写。 trim //函数从字符串的两端删除空白字符和其他预定义字符。 substr_replace //函数把字符串的一部分替换为另一个字符串 substr //函数返回字符串的一部分。 strtr //函数转换字符串中特定的字符。 strtoupper //函数把字符串转换为大写。 strtolower //函数把字符串转换为小写。 strtok //函数把字符串分割为更小的字符串 str_rot13 //函数对字符串执行 ROT13 编码。
<