侧边栏壁纸
博主头像
蔚然小站博主等级

未来会有的,不要辜负了梦想

  • 累计撰写 39 篇文章
  • 累计创建 15 个标签
  • 累计收到 29 条评论

目 录CONTENT

文章目录

记一次emby修改版火绒报毒的分析尝试

皮蛋熊
2023-09-26 / 0 评论 / 0 点赞 / 732 阅读 / 3314 字
温馨提示:
本文最后更新于 2023-09-26,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

起因

刚听说embyServer已经更新到了4.7.14.0,于是兴起尝试,点开了我熟悉的那个docker页面,照常进行了更新,也就是如下页面: lovechen/embyserver 一切更新完之后,准备看看有啥变化没?忽然我的火绒弹警告拦截了2个病毒。 火绒拦截病毒 一个是embyServer中的apiclient.js,另一个是connectionmanager.js,这忽然让我神经紧绷,是不是作者开始放毒了?

于是我将所有文件从docker中拉出来,再用火绒扫了一遍,果不其然,还有一个: 火绒拦截病毒

理论上破解emby压根没必要动到apiclient.js这个文件,这里就引入我的浮想联翩了,作者加密这个文件到底意欲何为?

探索

既然这些个东西报毒了,我们先看看是报毒的名字是SVM:TrojanDownloader/JS.MalBehav.gen!D,根据名字看起来是用Script Virtual Machine加密的一个木马下载者病毒。 打开这个apiclinet.js看看,果然基本加密到几乎完全不可读的状态。 源码不可读 不过最开头提供了一个重要信息jsjiami.com.v7,来,让我们查查这个玩意。 发现是个什么最牛JS加密,我这里就要看看有多牛,这里找到一个解密网站: obfuscator解码 看看能不能把他直接脱开。 结果是可以,这里直接将其脱开了,大概从402KB变为了186KB,解混淆过后的js文件已经不报毒了。 源码 我尝试着找了一会没发现有太多的关键作案信息,是有一部分和源码不同了,但我不觉得这部分代码符合病毒的定义,这部分有可能是解密后一部分逻辑和原来有细微差异。

所以回到connectionmanager.js 这上面,看看有啥差异没。

还原代码,补齐一部分名字后发现,似乎没有什么特别的东西。 破解思路和网上流行的一致,就是代替原来的网址返回一个lifetime的固定值。 源码对比

这里其实破解一下直接构造就可以了。 也即是把原来的这一段:

          return fetch("https://mb3admin.com/admin/service/registration/getStatus", {
            method: "POST",
            body: key,
            headers: {
              "Content-Type": "application/x-www-form-urlencoded"
            }
          }).then(function(response) {
            return response.json()
          })
        }(info.SupporterKey).then(function(statusInfo) {

修改为这样子就可以了。

          return fetch("/", {
            method: "POST",
            body: key,
            headers: {
              "Content-Type": "application/x-www-form-urlencoded"
            }
          }).then(function(response) {
            return '{"deviceStatus": "0","planType": "Lifetime","subscriptions": {"home": "emby.com","key": 345345216}}'
          })
        }(info.SupporterKey).then(function(statusInfo) {

但我实在想不通lovechen为啥要加密已经是共识的东西,而且为啥要加密一个和破解不相干的文件(可能我能力和眼力有限,没能找出关键点)。

同时我在网上找了多个作者的apiclient.js都和原版一致,表明大家都没有动这个文件。

结论

初始文件火绒报毒,解混淆后不报毒,根据我自己的分析来看,这大概率是火绒对于这个js混淆的误报,没什么大问题。受限于个人知识和技能的匮乏,没能找到有效的信息表明lovechen的修改版中存在可疑点,但加密一个和破解不相干的文件,同时火绒还报毒的情况下,着实让人琢磨不透作者想干嘛。建议心里有担心的用户换用其他大佬的修改版。

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区