Sulla Programmazione

Quattro chiacchere sulla programmazione e sulle bit-tecnologie con Fabrizio Cipriani

La maledizione del virus fantasma: bagle e l'errore 720

Qualche giorno fa il mio portatile viene infettato dal virus bagle.aj, un malefico organismo informatico (in gergo trojan) che si configura come proxy sulla macchina del povero malcapitato e permette ad hacker non meglio precisati di celarsi dietro al vostro ip per lanciare i loro attacchi.

Sulle prime la reazione è stata di ironica sufficienza, mista ad una certo fastidio per il contrattempo. Poi sono stato colto da una forte compassione per il virus, visto che aveva avuto il coraggio di attaccare il MIO computer, completamente inconsapevole del massacro che l'aspettava. Mi preparo quindi a scovare, sbeffeggiare, schiacciare e disintegrare il bacillo.

La compassione cambia in sorpresa quando mi accorgo che non riesco a terminare i processi attivati dal trojanone (permesso negato), che qualsiasi anti-virus conosciuto viene immediatamente disabilitato, che nel registry apparentemente non ci sono entries che rivelano il virus, e che riavviando in modalità provvisoria ottengo schermata blu e riavvio.

Non solo, il virus si installa come programma autorun sulla mia chiavetta usb, e, prima che me ne accorga, ecco infettato anche il mio desktop.

La rimozione

Trovo il modo di terminare i processi sospetti (Process Explorer) ma il virus è talmente ramificato che gli effetti non scompaiono. Decido di passare alle maniere forti: installo una seconda versione di windows xp sul mio desktop, da lì lancio l'antivirus e il problema è risolto: per fortuna il malefico non aveva avuto il tempo di fare molti danni.

Passo al portatile, provo con lo stesso metodo ma mi accorgo che il programma di installazione di xp non riconosce i due hard disk sata. Al grido di "Malefico bacillo, non l'avrai vinta così facile!" mi doto di un cd linux Ubuntu che rabbiosamente installo in una nicchia del secondo hard disk del portatile (naturalmente Ubuntu riconosce perfettamente i sata) e lancio una scansione completa con Avast per linux.

Bene, passo a windows e il virus è sparito. Mi libero dei suoi rimasugli, gli concedo una onorevole sepoltura (d'altra parte quel bastardo era maledettamente sofisticato) e mi rimetto al lavoro.

Gli effetti collaterali

Provo ad attivare la connessione internet e la scheda wireless non si connette più al mio router. La maledizione del trojanone continua a colpire pure dopo la sua morte! Mi accorgo che il servizio di configurazione automatica della rete wireless, lo "Zero Configuration reti senza fili" non è avviato. Provo ad avviarlo manualmente e mi avverte che non riesce a trovare una delle dipendenze, in particolare il "Protocollo I/O modalità utente su NDIS".

Sguinzaglio Google, e vado a scoprire che il virus disabilita l'avvio del servizio NDIS modalità utente modificando un'entry del registry, in particolare questa:

HKLM\SYSTEM\CurrentControlSet\Services\Ndisuio

Il trojanone pone il valore della chiave Start a 4 (disable) mentre il valore di default è 2 (Auto load) o 3 (Start on demand).

Ripristino il valore della chiave a 2, ed ecco miracolosamente che il wireless riprende a funzionare.

Ok, forse ce l'abbiamo fatta. Bene, riprendo a lavorare e tutto va bene per un paio di giorni quando, fuori di casa, provo ad usare la mia pc card con modem UMTS connessa alla porta PCMCIA per collegarmi a TIM. E succede che, subito dopo essersi connesso, durante l'autenticazione, il mio programma di comunicazione riaggancia.

La maledizione! Il fantasma del virus aleggia sopra il mio portatile irridendo i miei tentativi... Mi metto a fare il troubleshooting anche di questo problema. Per eliminare ogni intermediario, configuro una connessione che effettui un collegamento al provider con la mia pc card senza usare alcun software di comunicazione.

Con inquietudine, percependo la presenza che si diverte ai miei sforzi, prima configuro la stringa di connessione nel modem (la pccard deve essere inserita ed inizializzata, poi pannello di controllo, opzioni modem, click sul modem, proprietà, avanzate, campo "comandi di inizializzazione addizionali"), che per tim è:

AT+CGDCONT=1,"IP","ibox.tim.it";

Poi creo una nuova connessione (pannello di controllo, connessioni di rete, crea una nuova connessione), impostata manualmente, usando il modem remoto corrispondente alla mia pc-card. Il numero di telefono da chiamare per tim è *99#, i campi username e password devono rimanere vuoti.

Lanciando la connessione ottengo:

Errore 720 - impossibile stabilire una connessione con il computer remoto

In corrispondenza dell'apparizione della dialog, mi sembra di sentire una agghiacciante risata ed ho l'impressione di essere investito come da uno spiffero d'aria gelata... Il virus fantasma!

Decido di rimandare a dopo la ricerca di un acchiappafantasmi sulle pagine gialle, e vado a vedere la documentazione tecnica relativa all'errore. Scopro che si tratta di un problema di configurazione del protocollo PPP.

La pulizia finale

Scopro anche che l'unico modo per riparare il protocollo PPP e quello di lanciarsi in una complicata procedura di disinstallazione e reinstallazione dei WAN Miniport per il PPP ed l'IP. Non trovando altre alternative, mi imbarco nell'impresa:

  1. Apro la gestione delle periferiche (Gestione del computer, proprietà, Hardware) e dal menu "Visualizza" attivo la visualizzazione delle periferiche nascoste
  2. Mi assicuro che sotto "Schede di rete" siano elencati il WAN Miniport IP e il WAN Miniport PPTP (se non sono elencati, occorre andare direttamente al punto 9)
  3. Apro il registry (Start, esegui, regedit)
  4. Trovo la chiave:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}
  5. Faccio un backup di tutta la chiave (menu file, esporta chiave di registro)
  6. Cerco tra le sottochiavi che hanno la colonna dati DriverDesc uguale a WAN Miniport (IP) e WAN Miniport (PPTP). 
  7. Cancello entrambe le sottochiavi, sia quella che ha come DriverDesc WAN Miniport (IP), sia quella che ha WAN Miniport (PPTP)
  8. Ritorno alla gestione delle periferiche e disinstallo entrambi i WAN Miniport (click con il pulsante destro, disinstalla)
  9. Vado in c:\windows\inf, faccio un backup del file netrasa.inf, apro il file originale e commento le linee (aggiungendo un punto e virgola all'inizio di ciascuna linea) a partire da "ExcludeFromSelect" fino a MS_NdisWanNbfIn,MS_NdisWanNbfOut (inclusa), nella sezione [ControlFlags].
  10. Poi reinstallo i WAN Miniport: pannello di controllo, installazione nuovo hardware, lasciare selezionato "si" sotto "L'hardware è già collegato al computer", seleziono l'opzione "Aggiungi nuova periferica hardware", installa l'hardware manualmente, seleziono schede di rete, poi Microsoft, ed aggiungo entrambi i WAN Miniport, uno alla volta (non è necessario riavviare tra uno e l'altro).
  11. Dopo l'installazione riavvio
  12. Su internet consigliano di eseguire anche, dal prompt dei comandi, un reset del protocollo tcp/ip digitando:
    netsh int ip reset c:\reset.log
  13. Altro reboot, et voilà la pccard riprende a funzionare.

Le operazioni di installazione dei nuovi sistemi operativi, la pulizia, le varie ricerche su internet e il ripristino del funzionamento dei servizi wireless e ppp mi hanno preso in tutto più di una giornata di lavoro (spezzata in varie serate passate davanti a portatile e pc), abbastanza per consolidare la mia convinzione che i virus non devono MAI essere sottovalutati (casomai non foste ancora convinti), e abbastanza per scrivere questo articolo sperando che possa essere di aiuto a qualcuno, e che come me possa sconfiggere:

LA MALEDIZIONE DEL VIRUS FANTASMA

Comments