Disinfetta il computer dopo il sequestro di Homeland Security [chiuso]

74

Sono volato dall'estero verso gli Stati Uniti e tutte le mie apparecchiature elettroniche sono state sequestrate da Homeland Security, compreso il mio computer portatile, dischi rigidi esterni, unità flash, ecc.

Dopo più di un mese ho finalmente recuperato le mie cose. Ho 2 domande:

  1. È noto se Homeland Security abbia mai installato spyware, virus, dispositivi di tracciamento, ecc. sui computer sequestrati?

  2. Che cosa dovrei cercare, quali misure dovrei prendere per disinfettare le mie cose, cosa faresti?

EDIT: non riesco a riformattare, masterizzare hard disk, ecc. come alcuni hanno suggerito perché è molto importante lavorare sul laptop, cioè sul software su cui ho lavorato per oltre un anno.

Sì, ho avuto i backup di tutti i miei dati. Sfortunatamente, i backup erano tutti con me e ne hanno sequestrati tutti (2 dischi rigidi esterni, 3 unità flash USB). Quindi il solo utilizzo dei backup non è un'opzione.

Inoltre, qualcuno ha detto che le persone non possono aiutarmi senza infrangere le leggi. Non sono a conoscenza di alcuna legge che dichiari illegale rimuovere spyware / malware / virus o che sia illegale rimuovere tutto ciò che il governo ha messo sul tuo computer.

EDIT: Credo che potrei riformulare la domanda come "come faresti per ottenere il codice sorgente che hai scritto (file di testo) dal computer in modo sicuro, in modo sicuro? qualcosa di insolito, e poi trasmetterlo o in qualche modo metterlo su un altro computer? "

    
posta user91785 12.11.2015 - 19:09
fonte

11 risposte

78

Dato che il tuo portatile era in possesso di un'entità governativa con intenzioni sconosciute nei tuoi confronti per una durata prolungata, non c'è davvero alcun modo per ripristinarlo in uno stato pienamente affidabile.

Se ritieni che il DHS degli Stati Uniti sia ostile, l'unica procedura sicura per andare avanti con include:

  1. Supponiamo che tutti i dati sul laptop e tutti gli altri hardware confiscati siano compromessi.
    • Cambia tutte le password per gli account che potrebbero essere stati memorizzati / memorizzati sui dispositivi.
    • Cambia tutte le password per altri account che utilizzano la stessa password degli account che potrebbero essere stati memorizzati / memorizzati nella cache sui dispositivi.
    • Annulla tutti i meccanismi di pagamento che potrebbero essere stati memorizzati / memorizzati nei dispositivi.
    • Comunicare avvisi sulla privacy appropriati a terze parti potenzialmente interessate.
  2. Si supponga che il laptop e tutti gli altri hardware confiscati siano stati modificati per consentire la futura raccolta di dati o il controllo del sistema da parte del DHS statunitense o delle agenzie correlate.
    • Distruggi i dispositivi. Non acquisire alcuna immagine di backup o copiare alcun file. Basta bruciare / distruggere / polverizzare / schiacciarli così come sono.
    • Acquista hardware / software di ricambio da una fonte attendibile, attraverso una supply chain affidabile e ricostruisci da zero.
    • Se esistono backup attendibili (backup che non sono stati confiscati e non accessibili da remoto con credenziali che potrebbero essere state archiviate / memorizzate nella cache su dispositivi confiscati), ripristinare i dati da tali fonti secondo necessità.

Qualsiasi cosa a parte questo lascia aperte molte possibilità estremamente indesiderabili:

  1. U.S.. DHS può continuare ad avere accesso ai tuoi account online e / o alle risorse finanziarie.
  2. Uno o più dispositivi potrebbero avere malware persistente che consente al DHS statunitense o alle agenzie correlate di spiarti o controllare i tuoi sistemi. E sei di nuovo al # 1.
  3. I file memorizzati su uno dei tuoi dispositivi potrebbero avere malware che si installerà automaticamente all'apertura. Quindi vedi # 2.
  4. L'hardware o il firmware di uno dei tuoi dispositivi potrebbe essere stato modificato per includere malware, che potrebbe installarsi da solo in seguito alla connessione a un altro dispositivo. Vedi di nuovo # 2.
  5. Eventuali progetti software sui quali stavi lavorando e / o gli strumenti che utilizzi per compilarli potrebbero essere stati modificati per includere malware. Torna nuovamente al punto # 2 e aggiungi ulteriore impatto ai tuoi clienti se non viene rilevato e risolto prima della distribuzione.

Dovresti controllare le 10 leggi di sicurezza immutabili . La legge n. 3 si applica certamente. Supponendo che abbiano sfruttato quella legge, probabilmente puoi scommettere sulla legge n. 1 & # 2 si applicano anche.

Law #1: If a bad guy can persuade you to run his program on your computer, it's not your computer anymore
Law #2: If a bad guy can alter the operating system on your computer, it's not your computer anymore
Law #3: If a bad guy has unrestricted physical access to your computer, it's not your computer anymore

Consulta anche la 10 leggi sull'immutabile regolamentazione della sicurezza . Qui, la legge n. 4 è più a proposito.

Law #4: It doesn't do much good to install security fixes on a computer that was never secured to begin with

    
risposta data 12.11.2015 - 20:25
fonte
37

Questa è una grande domanda.

In sostanza, una volta che un dispositivo è stato catturato da un avversario con il livello di sofisticazione di uno stato nazionale, in particolare gli Stati Uniti, quel dispositivo e tutti i dati contenuti non possono essere considerati attendibili. L'unico approccio sicuro è non fidarsi di quel dispositivo e distruggerlo.

Le falle di Snowden hanno esposto i vari metodi con cui il governo americano può compromettere i computer. Ciò include l'installazione di errori hardware nella tastiera stessa, la GPU o altri componenti che rendono il computer completamente rootato e compromesso anche se un O / S viene reinstallato. Hanno anche installato dei trasmettitori radio per sconfiggere i computer "air-gapped" che non si connettono mai a Internet esfiltrando i dati via radio nascosta. Il discorso di Jacob Appelbaum sull'argomento è molto informativo: I highly suggerisci di guardare questo video mentre dettaglia i vari dispositivi che il governo è noto utilizzare. È anche disponibile un sommario di Wikipedia .

Ora è possibile che gli agenti di Homeland Security non abbiano piantato nessuno di questi dispositivi e non abbiano le stesse capacità dell'NSA. Tuttavia, non può essere escluso.

Sebbene sia possibile recuperare alcuni dati dal disco rigido estraendoli e inserendoli in un contenitore USB / utilizzando un cavo SATA-USB, questo comporta dei rischi. Vorrei utilizzare un computer monouso e usa e getta per leggere l'unità ... il firmware o il controller dell'unità potrebbe aver installato malware in esso che tenterà di infettare qualsiasi computer in cui è collegato.

Per contrastare questo, consiglierei di acquistare un dispositivo di duplicazione hardware forense (noto come duper di blocchi di scrittura). Quindi, collega l'unità SATA al tuo computer e clonalo su un altro disco. Quindi, copiare i file da quel disco clonato su un altro computer. Questo dovrebbe impedire un compromesso basato sul firmware.

Tuttavia ... non si può garantire un tipo di worm, ecc. non è stato inserito nei file stessi. Copiando su più dispositivi, e non utilizzando il dispositivo originariamente utilizzato per collegare il disco rigido a, si riduce al minimo le possibilità di un compromesso prolungato; ma c'è ancora una possibilità che qualcosa non funzioni con i file. AntiVirus ecc non aiuterà contro attacchi sofisticati come questo.

Ecco perché il computer non può più essere considerato affidabile. È possibile prendere provvedimenti come il duplicatore hardware per ridurre al minimo la possibilità di problemi.

Anche questa storia potrebbe essere nota: link .. famoso hacker ottiene il suo computer ispezionato al confine dal DHS, e la sua conclusione è stata ritenuta molto valida:

“I can’t trust any of these devices now,” says Marlinspike, who prefers not to divulge his legal name. “They could have modified the hardware or installed new keyboard firmware.”

    
risposta data 12.11.2015 - 20:19
fonte
28

A seconda del tuo livello di paranoia su questo e della quantità di codice, all'estremo puoi passare a un metodo LOW-TECH per eludere tutto ciò che è stato fatto.
Acquista una stampante economica. Collegalo al tuo laptop. Stampa il tuo codice sorgente come risme e risme di testo. Stampa qualsiasi grafica, layout, ecc. Stampa le impostazioni utente necessarie. Distruggi il laptop e la stampante.

Ovviamente ora devi reinserire tutto il tuo codice sorgente, ricreare la tua grafica e così via, ma non devi in effetti re-inventare alcun IP e non c'è nessuna connessione elettronica per nessuno tracciare.

    
risposta data 12.11.2015 - 21:01
fonte
18

1) Quindi non c'è modo di sapere che non hanno. Mi sembra che sia un po 'superiore al loro stipendio (e avrebbero il tempo di farlo?). Dipende dal tuo livello di paranoia. Se i tuoi pensieri fluiscono come un flusso tranquillo dopo il primo giorno di primavera, copia i dati su una nuova macchina e vai avanti con la vita. Se ti chiedi se i cani che ululano nei tuoi pensieri siano messaggeri per il principe delle tenebre, brucia tutto in un falò alimentato da termiti.

2) Per me personalmente, distruggerei l'attrezzatura, piangere sulla sua tomba e andare avanti. Con backup che non sono fisicamente su di me. Tuttavia, la maggior parte dei dati che tengo sulle mie macchine vive nel cloud o sono sostituibili.

Se questo lavoro è davvero inestimabile, è necessario un controllo. Innanzitutto, estrai l'unità dal portatile e collegalo in un ambiente isolato: un nuovo computer senza rete. Un pratico CD Linux Live dandy è perfetto per questo. Montare l'unità in questione e cercare tra i file: vedi qualcosa di strano? Manca qualcosa? Qualche strano file di Windows? Usare Clam AV è anche una buona scelta. Ci sono nuovi file che non riconosci? Cancellali

Farò anche la copia in piccoli pezzi durante il Live CD di Linux. A meno che non siano abbastanza sofisticati da mettere il malware Windows e Linux lì, eviterete che programmi di sorveglianza vengano riprodotti automaticamente e trovino una nuova casa. Non posso sottolineare abbastanza: so cosa stai copiando . Controlla il tuo progetto - Eventuali nuove aggiunte che non ricordi?

Dopodiché, usa un ambiente Windows pulito e fai attenzione a qualsiasi attività sospetta. Crea una buona politica di sicurezza e la prossima volta crittografa le tue unità! Oh, e lancia tutto quando avrai recuperato i dati. Gli attacchi del firmware sono reali.

    
risposta data 12.11.2015 - 20:13
fonte
6

Come altri hanno sottolineato, per il codice sorgente devi fare molto di più che copiarlo in modo sicuro - devi essere in grado di rilevare la manomissione. E per questo è necessario fare una sostanziale revisione del codice.

Se il codice è molto complesso, o non ne sai abbastanza a sufficienza per farlo, hai un'altra opzione: crowdsource la tua recensione. Basta pubblicare il codice come open source e invitare le persone a trovare l'impianto. Immagino che alcune persone apprezzino la sfida.

    
risposta data 13.11.2015 - 01:18
fonte
3
  1. Ottieni un altro computer (fidato)
  2. Prendi due adattatori USB / seriali e un cavo null modem (per collegarli). È improbabile che il tuo computer attendibile sia sfruttabile da remoto tramite una connessione seriale. Collega un adattatore a ciascun computer.
  3. Sul computer attendibile, esegui cat /dev/ttyS0 > hd.img . (La tua scheda seriale potrebbe non essere / dev / ttyS0, potresti voler controllare in qualche modo)
  4. Connetti i due computer.
  5. Sul computer non attendibile, esegui cat /dev/sda > /dev/ttyS0 (o qualsiasi disco rigido che vuoi proiettare e qualunque sia l'adattatore seriale chiamato su quel computer)
    (Se quel computer non è già in esecuzione su Linux, quindi usa un Live CD o un Livehade live throwaway)
  6. Al termine, ctrl-C processo del gatto del computer fidato (poiché continuerà ad attendere ulteriori dati).

(Se hai più dischi che vuoi fotografare, collegali al computer inaffidabile e ripeti la procedura)

Ora dovresti avere un'immagine del disco rigido e l'hai ottenuta senza rendere vulnerabile il tuo computer fidato. Poiché il contenuto dell'immagine non è affidabile, non avvialo in una macchina virtuale .

Potresti aprirlo con un editor esadecimale e provare a cercare i dati che desideri, ma ci vorrà per sempre per mettere insieme i file.

Invece, scrivi un programma (in un linguaggio sicuro per la memoria come Java o Python) per analizzare le strutture dati del filesystem ed estrarre i file che vuoi. Assicurati di rivedere ogni file estratto in un editor esadecimale prima di utilizzarlo per qualsiasi altra cosa, nel caso sia stato manomesso. (Non usare nemmeno cat . xxd va bene fintanto che non è impostato per visualizzare caratteri ASCII)

Distruggi computer e dispositivi inaffidabili (inclusi tutti i Live USB che hai usato su quel computer); non sai che non hanno aggiunto alcun dispositivo di localizzazione. Hanno (probabilmente) fatto in passato , quindi questa preoccupazione non è ingiustificata.

    
risposta data 13.11.2015 - 06:45
fonte
2

Non ho mai affrontato questo scenario; comunque da quello che so funziona la procedura di pulizia inversa. Avvia il supporto esterno e copia i file di lavoro con cura uno alla volta, controllandoli man mano che procedi. Quindi riformattare.

Sii contento che i sistemi aggiornati non abbiano attacchi tramite file di testo o di immagine (almeno quelli conosciuti). Se compaiono processi misteriosi, invia i tuoi file di lavoro per l'analisi del malware. Se ne hai, il DHS si pentirà di averti bersagliato e sprecato il loro malware più sofisticato su un target a bassa priorità.

    
risposta data 12.11.2015 - 22:13
fonte
2

Per riferimento futuro, sia per te che per gli altri, ti consiglio di eseguire un hashing SHA256 completo di tutti i file sul computer e del firmware, prima e dopo tale viaggio. Assicurati di lasciare l'elenco hash SHA1 a casa.

Vorrei anche raccomandare che per i viaggi fuori porta si prenda un portatile più vecchio che hai cancellato e che abbia ricevuto una nuova installazione del sistema operativo scelto prima del viaggio. Prendi solo i file che ti servono. I file più piccoli devono essere ospitati sul cloud o accessibili da remoto. I file più grandi dovrebbero essere crittografati individualmente e dati nomi innocui e estensioni di file non standard che non rivelano il loro scopo.

Prima di tornare, dovresti rimuovere tutti i file a cui non vuoi che gli agenti doganali accedano.

Per lo meno, questi passaggi restringeranno l'attenzione per determinare quali file potrebbero essere stati aggiunti / modificati / cancellati.

    
risposta data 13.11.2015 - 17:32
fonte
1

Come indicato in altre risposte, potrebbero esserci spyware nel BIOS o altrimenti nascosti nell'hardware modificato. (Ad esempio, in teoria, si può immaginare un attacco complesso in cui un processore viene sostituito da un chip che emula il processore originale ma fa anche altre cose per scopi di spionaggio.)

Per essere assolutamente sicuri di aver rimosso uno spyware del genere richiederebbe esperienza nell'elettronica, e anche in quel caso, il tempo necessario per farlo potrebbe valere più del valore dell'hardware.

Tuttavia, il recupero di data (codice non eseguibile), specialmente di testo semplice, da esso è possibile, purché non si esegua mai il codice che proviene, direttamente o indirettamente, dalla macchina compromessa (inclusi eventuali file scritto direttamente dall'hardware dal laptop compromesso). Ciò significa:

  1. Non è possibile utilizzare il laptop stesso per copiare i dati.
  2. Non è possibile ripristinare il codice compilato (supponendo che non si stia per smontare e leggere tutto a fondo).
  3. Qualsiasi codice sorgente che si recupera deve essere ispezionato manualmente. Se è il tuo codice, controllare la presenza di spyware dovrebbe essere fattibile, ma richiede molto tempo.
  4. I due punti sopra riportati si applicano a tutti i tipi di documenti che possono includere macro o script (ad esempio documenti Microsoft Word ed Excel).
  5. È possibile ripristinare i tipi di documento che supportano le macro utilizzando software attendibile per verificare e rimuovere le macro.

Collegheresti il disco rigido a una nuova macchina, per copiarne il contenuto e dopo lo eliminerai.

Esiste ancora il rischio di attacchi di sovraccarico del buffer nei documenti, il targeting di una particolare applicazione che è possibile utilizzare per visualizzare il documento. Un'eventuale difesa contro questi (a parte il controllo delle vulnerabilità note) sarebbe utilizzare le applicazioni meno comuni (e non quelle che sono state installate sul laptop, poiché sono quelle che si aspettano che tu usi) per visualizzare i documenti, o convertendoli in un altro formato (utilizzando il software di una fonte attendibile per farlo), e possibilmente indietro.

I dischi rigidi dal laptop compromesso potrebbero avere firmware modificato, ma questo non può direttamente causare l'esecuzione del codice sulla macchina che si usa per copiare da essi (potrebbe alterare i dati man mano che vengono letti o scritti). Sebbene in teoria, potrebbe avere un exploit di sovraccarico del buffer destinato a un driver del disco.

Idealmente, tutte le operazioni di copia e conversione (e rimozione delle macro) dovrebbero essere eseguite su una macchina che dovresti reinstallare (o eliminare) in seguito. (Un Raspberry Pi o simile è veloce da configurare e può essere sacrificabile).

    
risposta data 13.11.2015 - 00:08
fonte
1

Vuoi copiare il codice sorgente dalla macchina compromessa senza il rischio di infettare il tuo nuovo computer?

Facile:

  1. Accedi a una rete WiFi aperta
  2. Copia i tuoi Sourcecode-Files su un servizio cloud di storage gratuito (o paste-bin)
  3. scarica i file sorgente con il tuo computer di casa
  4. Controlla attentamente tutte le tue fonti di manomissione (il che è piuttosto improbabile, perché di solito penserebbero che hai copie di backup da qualche parte e non darebbe fastidio, ma dipende dalla complessità del tuo software)

In questo modo non hai alcuna connessione diretta dalla (possibilmente) macchina compromessa al tuo computer di casa. Gli unici file trasferiti sono file di testo non elaborati e controllati a mano. Quindi l'unico vettore di attacco rimasto è il codice subdolo nei file codice sorgente. L'unico modo per essere a prova di proiettili contro quello sarebbe riscrivere ogni metodo in un nuovo Progetto. Guarda il vecchio codice sorgente e scrivi ogni metodo di nuovo con alcune correzioni minori e ripulisci.

    
risposta data 13.11.2015 - 17:15
fonte
0

Altri hanno coperto i pericoli & problemi qui perfettamente quindi non ho intenzione di provare a riprodurlo. Volevo solo aggiungere un suggerimento dopo l'inevitabile revisione del codice. Mi rendo conto che la domanda riguarda il santing del computer, ma suggerirei che è necessario prendere provvedimenti anche per quanto riguarda il codice.

Quindi supponiamo che tu abbia trattato tutto l'hardware come se fosse un totale cancellato e ostile, e devi recuperare il codice da esso. Sono già stati suggeriti come estrarre il codice e portarlo su un'altra macchina usando una stampante "throw-away" e diciamo che l'hai fatto (avrei rimosso fisicamente l'adattatore wireless dalla macchina compromessa prima di avviarlo come precauzione aggiuntiva troppo).

Quindi hai digitato nuovamente il codice e l'hai già rivisto per le modifiche e ne sei soddisfatto. Il passo in più che vorrei fare ora è anche assumere che il codice sia stato esaminato e debba essere riesaminato a livello funzionale e, se necessario, cambiando.

Questo potrebbe essere il modo in cui esegui l'hash e memorizzi le password, forse un meccanismo di licenza se ne possiede uno, o forse il tuo codice comunica via Internet con gli utenti in un modo particolare. Sto solo pensando che se stavo trasportando il codice che gestiva qualcosa che sarebbe interessante per un attore dello stato nazione, guarderei a modificarlo in modo che se hanno raccolto qualcosa dal suo funzionamento interno, la prossima volta vedono in uso si comporterà in modo diverso a come si aspetterebbero che si comporti.

tl; dr

Suggerirei di riflettere sulla funzionalità del codice che stavi trasportando; un attore potenzialmente ostile otterrebbe benefici dall'avere una comprensione di come funziona? In tal caso, considera come attenuerai il fatto che qualcuno abbia questa conoscenza.

Si presume, naturalmente, che il codice che stavi trasportando avrebbe potenzialmente interessato per loro.

Nota finale; questo passaggio sarebbe necessario nella mia mente anche se avessi ripristinato il codice da un backup sicuro noto, come è il modo in cui funziona il codice che è stato esposto.

La tua situazione non sembra molto divertente a prescindere - buona fortuna per sistemare tutto.

    
risposta data 13.11.2015 - 12:08
fonte

Leggi altre domande sui tag