Freelance softver developeri na meti sjevernokorejskih hakera: Kako izbjeći zamke

Sjevernokorejski hakeri, posebno grupa poznata kao Lazarus, poznati su po sofisticiranim cyber napadima usmjerenim na različite ciljeve, uključujući freelance softver developere. Jedan od zapaženih primjera je kampanja pod nazivom "Operation Dream Job" gdje su hakeri koristili lažne oglase za posao kako bi namamili stručnjake iz IT industrije. Ovi oglasi su često bili postavljeni na profesionalnim mrežama poput LinkedIn-a, a cilj je bio da se žrtve navedu na preuzimanje zlonamjernog softvera maskiranog kao legitimni dokumenti vezani za posao.
U drugom slučaju, Lazarus grupa je koristila lažne profile na GitHub-u kako bi distribuirala zlonamjerne repozitorije. Ovi repozitoriji su sadržavali naizgled bezopasan kod, ali su zapravo uključivali malver dizajniran za krađu podataka i kompromitaciju sistema programera koji su ih klonirali.
Cilj kampanja, kako napominje firma za sajber bezbednost, je kompromitacija proizvođača tehnologije u napadu na lance snabdevanja (proces proizvodnje i distribucije proizvoda ili usluga) koji dovodi do ometanja i krađe intelektualne svojine, osetljivih informacija i ključeva za kripto novčanike.
U nastavku ćemo objasniti kako freelanceri mogu izbjeći ove prevare i šta učiniti ako sumnjaju da je malver već instaliran.
Kako hakeri namamljuju programere?
Hakeri kreiraju lažne profile na popularnim platformama, poput GitHub-a i LinkedIn-a, te kontaktiraju freelance programere s ponudama za rad. Ponude često uključuju projekte slične postojećim radovima programera. Hakeri potom šalju programerima link ka zlonamjernom repozitoriju koji sadrži kod projekta. Kada programer klonira repozitorij, malver se instalira na njihov računar.
Prema izvještaju Security Week-a, "klonirani kod povezuje se s komandnim i kontrolnim (C&C) serverima napadača, koji su hostovani od strane 'Stark Industries LLC', kako bi preuzeo Python skripte dizajnirane za napade na svaku žrtvu."
Malver korišten u ovim napadima uključuje alate kao što su Main99 i Main5346, koji preuzimaju malver poput Payload99/73, Brow99/73 i MCLIP za krađu datoteka i praćenje aktivnosti korisnika. Malver može prikupljati podatke o sistemu, poput informacija o uređaju, korisnička imenima, UUID-ovima, te krasti podatke iz browsera i izvršavati proizvoljni kod.
Kako izbjeći napad prilikom kloniranja repozitorija?
Čak i kada koristite Git, budite svjesni sigurnosnih rizika, posebno kada klonirate repozitorije iz nepoznatih izvora. Evo nekoliko savjeta za zaštitu:
1. Dajte prednost pouzdanim izvorima
Klonirajte repozitorije s pouzdanih izvora, poput poznatih web stranica projekata, službenih GitHub stranica organizacija ili menadžera paketa. Ako morate klonirati iz manje poznatih izvora, istražite vlasnika repozitorija i provjerite povratne informacije zajednice. Budite oprezni ako nešto izgleda sumnjivo.
2. Pregledajte prije pokretanja
Prije nego što pokrenete bilo koji kod, proučite njegovu svrhu. Obratite pažnju na zamagljeni (obfuscated) kod ili naredbe koje pokušavaju pristupiti osjetljivim informacijama. Pregledajte direktorijum .git/hooks za potencijalno zlonamjerne skripte, kao i datoteku .git/config kako biste provjerili ne sadrži li sumnjive skripte ili naredbe.
3. Primijenite sigurne prakse kloniranja
Razmislite o korištenju naredbe git clone --no-local, koja može spriječiti lokalne hooks skripte da se izvrše tokom kloniranja. Također, razmislite o kloniranju repozitorija u sandbox okruženje, poput virtualne mašine ili izolovanog kontejnera, kako biste zaštitili svoj sistem.
4. Ažurirajte sistem
Redovno ažurirajte Git softver, operativni sistem i sigurnosne aplikacije. Zakrpe za sigurnost često ispravljaju ranjivosti koje bi napadači mogli iskoristiti.
5. Koristite sigurnosne alate
Koristite alate za statičku analizu kako biste skenirali kod za potencijalne ranjivosti. Također, redovno pokrećite alate za skeniranje malvera, posebno nakon kloniranja repozitorija iz nepoznatih izvora.
Šta učiniti ako sumnjate da je vaš kod kompromitovan?
Ako sumnjate da je vaš kod hakovan, slijedite ove korake:
- Izolujte sistem. Diskonektujte pogođeni sistem s interneta i mreža kako biste spriječili dalju štetu ili krađu podataka.
- Promijenite sve lozinke povezane s kompromitovanim kodom, uključujući one za razvojne račune, Git repozitorije i online servise.
- Napravite sigurnosne kopije kompromitovanog koda i svih povezanih logova ili datoteka. To će biti ključno za analizu i potencijalne pravne radnje.
- Identifikujte povredu. Sprovedite temeljnu istragu kako biste utvrdili opseg napada. Provjerite neuobičajene aktivnosti, neovlašteni pristup ili izmjene u kodu, commit history-ju i logovima servera.
- Procijenite štetu. Identifikujte ukradene podatke, izmjenjen kod ili kompromitovane sisteme.
- Uklonite ranjivosti. Zakrpite sigurnosne rupe ili ranjivosti u svom kodu i sistemima koje su napadači možda iskoristili.
- Ažurirajte sigurnosne mjere. Poboljšajte sigurnosne postavke, uključujući višefaktorsku autentifikaciju(2FE), ažuriranje sigurnosnog softvera i reviziju kontrola pristupa.
- Obavijestite klijente ako hakovani kod uključuje rad za njih, obavijestite ih brzo i transparentno. Objasnite situaciju, potencijalne posljedice i mjere koje poduzimate.
- Prijavite incident odgovarajućim vlastima, kao što su agencije za cyber sigurnost ili regulatorna tijela za zaštitu podataka.
- Potražite pravni savjet. Ako napad ima pravne posljedice, obratite se advokatu specijaliziranom za sigurnost podataka i cyber napade.
- Revidirajte kod. Pregledajte ga kako biste identifikovali preostale ranjivosti i osigurali sigurnost baze koda.
Zaključak
Sigurnost u freelance razvoju softvera postaje sve važnija, posebno s obzirom na sofisticirane napade koje sprovode hakerske grupe poput ovih iz Sjeverne Koreje. Ove prijetnje nisu više usmjerene samo na velike kompanije – freelanceri, koji često rade sami i nemaju pristup sigurnosnim timovima, postali su laka meta.
Biti freelancer znači imati veću fleksibilnost i slobodu, ali to također podrazumijeva i veću odgovornost za zaštitu vlastitih podataka, koda i klijenata. Kloniranje repozitorija s nepouzdanih izvora, pokretanje neprovjerenih skripti i preuzimanje sumnjivih projekata može dovesti do ozbiljnih posljedica, uključujući krađu podataka, kompromitaciju sistema i gubitak reputacije.
Zato je ključno razviti sigurnosne navike, poput temeljite provjere izvora koda, korištenja sigurnosnih alata, redovnog ažuriranja softvera i postavljanja jakih lozinki uz višefaktorsku autentifikaciju. Pored toga, freelanceri bi trebali biti svjesni taktika socijalnog inženjeringa – ako nešto izgleda predobro da bi bilo istinito, vjerovatno je prevara.
Ako se dogodi napad, brzo djelovanje može umanjiti štetu. Odvajanje kompromitovanog sistema, promjena lozinki, istraživanje napada i prijava nadležnim organima ključni su koraci za oporavak.
Na kraju, sigurnost nije samo tehničko pitanje – to je način razmišljanja. Kao freelancer, važno je stalno se edukovati o novim prijetnjama, pratiti najbolje sigurnosne prakse i ne prepuštati zaštitu slučaju. Samo kroz proaktivni pristup sigurnosti možemo osigurati dugoročnu zaštitu našeg rada, podataka i profesionalne reputacije.
Napomena: Ovaj članak služi isključivo za informativne svrhe i ne predstavlja pravni ili tehnički savjet.