Manipulation af kontosaldo ved hjælp af kodeinjektorer
Denne undersøgelse skitserer et nyligt svindelscenarie, delt af en af DetACT-klienterne og undersøgt af DetACT-analytikere, hvor cyberkriminelle brugte social engineering, fjernadgangssoftware og browsermanipulation til at bedrage en bankkunde.
Målet var at vinde tillid ved at vise en falsk kontosaldo, hvilket i sidste ende muliggjorde svigagtige transaktioner og kryptovaluta-relaterede svindelnumre. Denne artikel har til formål at informere svindelefterforskere om nye teknikker inden for manipulation af digitale grænseflader.
Sådan udspillede svindelen sig: En narrativ beretning
Offeret, en midaldrende person med begrænset teknisk ekspertise, blev kontaktet af, hvad der lignede en legitim helpdesk. Opkalderen hævdede, at der havde været mistænkelig aktivitet på offerets bankkonto og tilbød at hjælpe med at sikre systemet. Tonen var presserende, men professionel nok til at vinde offerets tillid.
Under opkaldet anmodede svindleren om fjernadgang til offerets computer ved hjælp af Google Remote Desktop. Da adgangen var givet, guidede svindleren offeret til at installere en browserudvidelse under dække af at øge onlinesikkerheden. Den pågældende udvidelse var "Code Injector", der er tilgængelig i Chrome Web Store. Uden offerets viden tillod dette værktøj angriberen at ændre det indhold, der blev vist i deres webbrowser.
Med udvidelsen installeret injicerede angriberen et script, der simulerede en falsk banksaldo på landingssiden for netbanken. Det viste beløb var langt højere end det, der faktisk var på kontoen. Denne kunstige visning tjente til at overbevise offeret om, at de havde midlerne til rådighed til at deltage i, hvad der sandsynligvis var et kryptovalutainvesteringssvindelnummer.
Vigtigste resultater fra undersøgelsen
Da offeret senere kontaktede banken om irrelevante mistænkelige kreditkorttransaktioner, opdagede svindelteamet, at den saldo, som kunden henviste til, ikke matchede nogen backend-optegnelser.
Yderligere undersøgelse afslørede:
- Den falske saldo blev kun vist på netbankens landingsside og var ikke til stede, når man navigerede til transaktions- eller kontooplysningersider.
- Saldoformateringen brugte amerikanske tusindseparatorer (kommaer), hvilket var uforeneligt med det europæiske talformat og pegede på manipulation.
- Chrome-browseren på offerets enhed havde udvidelsen "Code Injector" installeret, hvilket tydeligt indikerede manipulation af den lokale side.
- Offeret bekræftede, at de havde modtaget fjernhjælp i slutningen af november eller begyndelsen af december, hvilket stemte overens med tidslinjen for det manipulerede saldoskærmbillede.
- Alle loginforsøg og transaktioner stammede fra offerets egne enheder.
- Store kreditkorttransaktioner blev autentificeret ved hjælp af sikre metoder.
- Efterforskere har mistanke om, at offeret ubevidst godkendte disse via QR-koder, der blev vist under skærmdeling, i den tro, at aktiviteten var legitim.
Kodeinjektor - funktionalitetsundersøgelse
En kodeinjektor er en browserudvidelse eller et værktøj, der giver brugerne mulighed for at indsætte brugerdefineret kode - normalt JavaScript - på websider, når de indlæses i browseren. Dette kan bruges til at ændre, hvordan et websted ser ud eller opfører sig på brugerens skærm. Selvom det ofte bruges af udviklere til test eller personlig tilpasning, kan det også misbruges til at ændre webstedsindhold på vildledende måder, f.eks. ved at vise falske kontosaldi.
Kodeinjektorer er i sig selv ikke ulovlige – de kan være legitime værktøjer, der bruges af udviklere eller avancerede brugere til at teste eller tilpasse websteder i deres egne browsere.
Deres brug bliver dog ulovlig, når de installeres uden brugerens informerede samtykke eller bruges til at manipulere webindhold med vildledende formål, såsom at forfalske en bankkonto eller fremme svindel. I sådanne tilfælde kan deres implementering udgøre computermisbrug, svindel eller en overtrædelse af privatlivslovgivningen.
Selvom udvidelsen ikke længere er tilgængelig i Chrome-webbutikken (se skærmbillede), kan koden stadig downloades i Firefox-tilføjelsesbutikken, i Edge-butikken, og den fulde kode findes på Github: hxxps://github[.]com/Lor-Saba/Code-Injector
DetACT-analytikere downloadede koden og udpakkede filerne for at finde ud af mere om dens indre funktioner. De udpakkede filer indeholder den fulde kildekode til "Code Injector"-udvidelsen, inklusive vigtige JavaScript-filer, der styrer, hvordan den indsætter scripts på websider.
Særligt relevante filer er:
- /script/main/inject.js — kernescriptet, der er ansvarlig for at indsprøjte kode.
- /script/main/background.js — håndterer baggrundsopgaver og muligvis regler eller udløsere for injektioner.
- /script/main/browser-action.js — relateret til brugerinteraktioner med udvidelsen.
- /manifest.json — definerer udvidelsestilladelser og de websider, den kan tilgå. Findes i alle udvidelser som en obligatorisk fil.
Når vi undersøger inject.js-filerne, bemærker vi følgende: inject.js-scriptet i Code Injector-udvidelsen er ansvarlig for at indsætte brugerdefineret JavaScript, CSS eller HTML på websider, der vises i browseren. Det gør det muligt for udvidelsen at ændre indholdet af ethvert websted baseret på foruddefinerede regler.
Nøglefunktionalitet
JavaScript Injection (injectJS)
Scriptet kontrollerer, om en regel indeholder et link til en ekstern JavaScript-fil. Hvis det er tilfældet, indlæser det filen og sikrer, at browseren ikke cacher den ved at tilføje et tidsstempel. Hvis der ikke angives et link, indsprøjter det JavaScript-kode direkte på websiden ved at oprette et <script>-tag og tilføje det til sidens <head>-sektion. Se skærmbilledet nedenfor for koden.
CSS-injektion (injectCSS)
Dette fungerer på samme måde som JavaScript-injektion. Udvidelsen kan enten indlæse et eksternt stylesheet eller direkte indsprøjte rå CSS på siden. Dette gøres ved at oprette et <link>- eller <style>-element.
HTML Injection (injectHTML)
Selvom den ikke vises fuldt ud i forhåndsvisningen, kan udvidelsen også indsætte rå HTML i sidens DOM, hvilket giver den mulighed for at tilføje eller erstatte synlige elementer på webstedet.
Potentiel misbrug
Denne funktion giver en angriber mulighed for visuelt at manipulere websider, som offeret ser dem.
For eksempel:
Angriberen kan ændre saldofelter på netbanksider for at vise falske beløb.
Elementer som sikkerhedsadvarsler eller transaktionsoplysninger kan skjules eller ændres.
Udvidelsen kan simulere falske beskeder, knapper eller bekræftelser for at vildlede offeret.
Disse ændringer påvirker kun, hvad der vises i offerets browser. De faktiske data på bankens backend forbliver uændrede.
Anbefalinger
Denne case viser, hvordan svindlere kombinerer social engineering med simple tekniske værktøjer, såsom fjernsessioner, udvidelser og QR-koder, for overbevisende at manipulere ofre.
Vær opmærksom på tilfælde, hvor kunder rapporterer mistænkelige saldi eller leverer skærmbilleder, der ikke matcher backend-data. Hvis du er i kontakt, så stil opfølgende spørgsmål vedrørende brugen af fjernskrivebordssessioner og installation af udvidelser/tilføjelser.
Bemærk venligst, at der findes mange andre udvidelser, der tilbyder den samme funktionalitet i browserbutikker og på Github, for eksempel Kode Injector og Scripty. Undervis kunderne i, at en browserudvidelse eller et tilføjelsesprogram aldrig er nødvendigt for at løse bankproblemer.
Brug Client-Side-Detection-scripts til at opdage manipulation foretaget af kodeinjektorer.