Sì, esattamente JavaScript. Ho appena incontrato un tale worm e ho provato a decodificarlo.
Qual è il problema reale:
Il recente worm Facebook funziona facendo in modo che gli utenti visitino una pagina, il che li fa inserire una stringa JavaScript nella barra degli indirizzi e quindi eseguirla.
Quindi, NON copiare MAI del codice JavaScript nella barra degli indirizzi. Questo è il problema principale. E non fare clic su alcun link di cui non ti fidi. O almeno apri quei link in una nuova finestra usando la modalità Privacy (Firefox) o la modalità di navigazione in incognito (Chrome) in modo che non sia in grado di accedere alla tua sessione di Facebook.
Cosa hanno fatto i nostri hacker per impedire alle persone di rendersi conto di ciò che stanno facendo?
Sfuggire alla sceneggiatura
La stringa che copi nella barra degli URL si collega principalmente a un altro JavaScript che viene eseguito. Questo script è in realtà decodificato in entità. Quindi, invece di usare i caratteri stringa, l'intero script è stato inserito in una stringa ed è fuggito in modo che nessun essere umano potesse leggerlo in primo luogo.
Ad esempio, se avessi una funzione molto dannosa, la sfuggirei e l'utente vedrebbe solo:
funzione% 20Test% 28% 29% 20% 7B% 20alert% 20% 28% 22LOL% 22% 29% 3B% 20% 7D
e senza escape sarebbe
test funzionale () {alert ("LOL"); }
Pertanto, lo script annulla "se stesso" prima di essere eseguito.
Offuscandolo
Ora sta diventando brutto: prima di fuggire, il codice JavaScript malvagio viene offuscato, con nomi di funzioni simili _____x
e variabili come aLDIWEJ
. Questo ha ancora senso per JavaScript, ma è del tutto illeggibile per l'uomo. Questo viene fatto, ancora una volta, per mascherare le intenzioni dei nostri hacker di Facebook.
A questo punto, il codice potrebbe essere simile a questo:
Cosa fa la sceneggiatura
Bene, quello che fa questo script è prendere la tua attuale sessione di Facebook. Poiché hai effettuato l'accesso al sito, può fare qualsiasi cosa a tuo nome. Ad esempio, le cose che può fare tramite l'API di Facebook sono:
- creando un evento come "OMG, posso vedere chi mi ha pedinato!"
- chiacchierando con le persone
- invio di aggiornamenti di stato
- eccetera.
Tutto questo accade chiamando alcune delle pagine API di Facebook (alcune pagine PHP, ho dimenticato quale).