On 07/08/2012 06:59 PM, Marcello Magnifico wrote:
>> Rabbrividiamo... quindi se uno seguisse quest'assurda interpretazione un
>> antivirus andrebbe installato anche su un firewall, su un mainframe, su
>> un router, su una CA isolata da Internet, ...
> 
> E' una interpretazione che considera la pericolosita' di un malware, al
> limite di un singolo file, indipendentemente dall'ambiente
> (immediatamente) circostante. Da una parte capisco le obiezioni finora
> sollevate, nonostante un'affermazione in se' piuttosto pacata (ma il
> tono delle reazioni?).

Sì, scusa (e scusa anche agli altri) se sono sembrato un po' eccessivo o
polemico, ma talvolta mi lascio trasportare dalle "emozioni" e dallo
stress lavorativo, specie con questo caldo. :)

> Dall'altra, un rootkit (che non e' poi cosa tanto
> diversa da uno qualsiasi degli altri malware dai quali un antivirus di
> solito protegge) puo' essere specificamente "posato" anche allo scopo di
> alterare il funzionamento di uno dei sistemi sopra nominati.

Sì, potrebbe, ma se uno riesce a "posare" un rootkit su quel tipo di
macchine significa che le misure minime di sicurezza sono state
disattese in modo decisamente "grave". E se invece le misure di
sicurezza sono state applicate correttamente è altissimamente probabile
che l'antivirus non riesca comunque ad intercettare l'attacco (non dico
tutti i giorni ma quasi mi capitano campioni di malware che non viene
riconosciuto dalla maggior parte degli AV).

> Non e' il
> caso del mainframe (forse; qualcuno ha riferimenti sulle minacce
> software in un tale ambito, che conosco poco?),

Come per tutti i sistemi vi sono bug, e dove vi sono bug vi è
potenzialmente un malware in grado di sfruttarlo. D'altro canto la
rarità della piattaforma, la tipologia di ambienti dove è installato (in
cui la sicurezza è in genere gestita  correttamente a tutti i livelli),
e le politiche di default di quei sistemi, lo rendono un target inadatto
per virus ed affini. In ogni caso anche quei sistemi sono soggetti a
penetration testing e anche in quei sistemi si riescono a trovare
vulnerabilità, ma non è l'antivirus lo strumento che può risolvere i
problemi riscontrati.

> forse potrebbe esserlo nel caso di un firewall.

Nemmeno. Su un firewall non c'è un utente che lavora interattivamente,
quindi un virus per contaminarlo deve necessariamente sfruttare un bug
remoto. Questo vuol dire sfruttare un bug che tendenzialmente si potrà
trovare in un servizio esposto o nel filtering o in quei servizi
avanzati come packet inspection, content filtering, ecc. Nel caso dei
servizi esposti normalmente su un firewall troviamo la management che
però se si sono seguite le best practice non è raggiungibile da nessuno
salvo che da singoli PC abilitati, oppure qualche demone ausiliario tipo
quelli per IKE, ma si presuppone che si tratti di codice molto ben
controllato e testato. Un bug nei servizi di filtering è una rarità
perché è una parte molto ma molto controllata e testata. Avanzano i
sistemi avanzati che effettivamente hanno talvolta mostrato problemi, ma
anche in questo caso non sarebbe l'antivirus sul firewall lo strumento
che ti tutela; un IDS sarebbe più efficace.

>> insomma secondo questa
>> visione dovremmo sostanzialmente inficiare la sicurezza di
>> un'infrastruttura (perché ovviamente installare un antivirus su una CA
>> fatta seriamente ne inficerebbe la sicurezza)
> 
> Ecco, questo e' molto interessante: puoi spiegarne meglio l'impatto?
> Dimostrare puntualmente che un tale software porterebbe svantaggi
> anziche' vantaggi dimostra anche la necessita' di non installarlo.

Una CA (ed è una struttura di CA che ho visto personalmente implementata
anche se è veramente estrema e IMHO ingiustificata) può essere fatta da
una macchina che sta in un ambiente con accesso strettamente
controllato, e che riceve i certificati da firmare attraverso una
connessione seriale restituendo i dati firmati sulla medesima
connessione. E' composta da un kernel minimalissimo e un demone di firma
ospitati su un CD per il boot che contiene il sistema. La chiave di
firma sta su un token esterno. I log vengono stampati su carta da una
vecchia stampante ad aghi con modulo continuo e chi ci deve lavorare lo
fa in console. Non vi è quindi necessità di essere connessi alla rete.

L'installazione di un antivirus comporta l'installazione di nuovo
software che su un sistema siffatto vuol dire aumentare tantissimo la
quantità di codice eseguito (forse più per l'AV che per tutto il resto)
e aumentare pertanto la superficie di attacco. Poi per essere utile un
antivirus deve essere aggiornato, e per aggiornarlo o lo collego alla
rete oppure devo andare con un supporto esterno ogni giorno ad
aggiornare. Nell'uno e nell'altro caso introduco un rischio di contrarre
infezioni che prima non c'era per via dell'aggiornamento.
Il valore aggiunto invece è nullo, perché non esistono virus che si
diffondono via seriale.

>> oppure influire
>> negativamente sul funzionamento di un'apparato (p.es. un router basato
>> su openwrt che ha risorse limitate) perché qualcuno dice che l'antivirus
>> sia una misura si sicurezza minima.
> 
> Avere un clamav a bordo di un openwrt sarebbe poi tanto diverso
> dall'avere un tripwire?

Sì; le risorse computazionali necessarie sono sensibilmente diverse.

>> E' valutabile la sua installazione anche su desktop e server MacOSX e
>> Linux che erogano servizi o che sono usati dagli utenti per la
>> navigazione o comunque per comunicare con il mondo esterno, ma in questo
>> caso non è da considerare misura minima ma cautela aggiuntiva dato che
>> vi sono strumenti più indicati.
> 
> Viene da domandarsi se, in almeno alcuni casi, tali strumenti (sto
> pensando, per dirne una, ad un setup dedicato di SElinux) non si possano
> considerare equiparabili pur non portando la parola "antivirus" nel nome
> o nella descrizione.

Certo che sì... è proprio questo il punto: per ogni tipo di minaccia
esiste uno strumento maggiormente idoneo per contrastarla.
L'antivirus va benissimo per certi tipi di minaccia e non per altri,
quindi imporlo per tutti i sistemi vuol dire non comprendere il concetto
di cui sopra.

>> In (quasi) tutti gli altri casi l'antivirus è una misura di sicurezza
>> tendenzialmente inutile quando non addirittura dannosa.... rappresenta
>> una rete di protezione caduta massi installata in un deserto sabbioso.
> 
> Questo dipende dalla visione, o meglio dalla statistica, che ciascuno di
> noi ha in mente per un certo tipo di rischio. Pensando al PC vulgaris (o
> anche al server) con Windows, il rischio e' senz'altro l'infezione
> occasionale. Pensando ad altri sistemi, il rischio diventa un attacco
> oppure un vero e proprio atto di sabotaggio dall'interno.

E difatti in questi casi l'antivirus non può nulla.

> Quest'ultimo
> non viene, forse, considerato spesso ma e', per quanto improbabile, una
> eventualita' reale, con modalita' aleatorie che non assicurano di essere
> "parato" a priori, in ogni caso. Un virus e' uno strumento buono come un
> altro, a quello scopo.

No, non è uno strumento buono come un altro. Se ho la possibilità di
mettere un virus su un sistema correttamente protetto, al 99% ho anche
la possibilità di disabilitare l'antivirus o comunque di renderlo
inoperativo nei confronti della minaccia.

> Volendo proseguire nel ruolo di avvocato del diavolo, cioe' domandandosi
> a che cosa dovrebbe mai servire un antivirus anche dove nessuno
> penserebbe di installarlo, viene da rispondersi che un attaccante
> scaltro potrebbe utilizzare un dato sistema anche solo come veicolo, per
> depositarvi materiali che serviranno altrove.

Ma qui il problema è a monte... perché è stato in grado di mettervi quel
materiale? Se è un sistema che non è pensato per l'accesso diretto degli
utenti perché un utente c'è riuscito? E come l'antivirus potrebbe
intervenire in quel contesto?
Per esempio se ho un web server le directory accedibili da web non
devono essere generalmente scrivibili e dove lo sono deve essere imposto
un controllo. Per accorgersi di un upload che esuli dai controlli non
serve un antivirus anche perché per esempio nulla potrebbe nel caso di
un file compresso con password (e difatti una gran parte dei file
dedicati al "riuso" sono protetti da password) e potrebbe avere
tantissime difficoltà anche solo a riconoscere una variante nuova di un
virus. Un HIDS invece potrebbe rivelarsi più efficace.

> Ovviamente se l'architettura e' diversa e magari non esiste nemmeno un
> antivirus (o un malware corrispondente) il problema non si pone. Siamo
> sicuri che si intendeva questo quando fu posto l'interrogativo? 

Per come l'ho capito io sì. Ma considerando la mia situazione di
rinco...nimento e la necessità di ferie potrei anche aver preso bisi per
fave.

> Se come me hai in mente un server LAMP e' probabile che vada proprio
> come descrivi. Ma chi ha detto che un antivirus debba essere l'unica
> misura (minima non vuol dire unica, stiamo attenti alle parole perche'
> quando si tratta di legge e' con quelle che rimaniamo fregati),
> piuttosto che essere li' per poter dire "magari non capita, ma intanto
> si poteva mettere e c'e'"? Nell'ambito del 615 ter, integrity check e
> ids ci stanno benissimo, tra l'altro.

Se una misura di sicurezza con un costo di 20 offre una protezione dal
90% delle minacce e l'aggiunta di un altra protezione con costo 20 offre
una protezione aggiuntiva del 9%, spenderne altri 20 per aggiungere 0,1%
un inutile spreco.
Per fare un esempio ipotizzando l'installazione LAMP, possiamo
ragionevolmente ritenere che un antivirus da solo offrirebbe una
protezione da un (sparo) 40% delle minacce. Una configurazione accurata
e soprattutto una gestione corretta della sicurezza offre una protezione
dal 90% delle minacce e costa tanto quanto un antivirus (in termini di
tempo), l'aggiunta di un NIDS e di un HIDS può offrire un ulteriore
9%... L'antivirus in questa siturazione ha un costo in termini di
risorse ragguardevole, ma per il 99.9% sarebbe inutile in quanto gli
altri accorgimenti già proteggono dalle medesime minacce (p.es. la
semplice corretta gestione del patching rende inefficaci la stragrande
maggioranza dei virus in the wild; il chiudere tutte le comunicazioni
verso l'esterno rende vane tutte le minacce che si appoggiano a reverse
shell o a IRC, ecc.ecc.).
Dato che il 100% di sicurezza non è raggiungibile in nessun caso
l'obbiettivo deve essere quello di fare il meglio possibile in funzione
del target e delle possibilità, anche economiche. Il meglio lo si fa
scegliendo le strategie e gli strumenti corretti.

> La mia visione in proposito, forse non abbastanza chiara nel post
> d'origine ma certamente mutuata da una esperienza piuttosto varia, e'
> "tendenzialmente necessario, non a priori sufficiente".

La mia visione invece è "necessario in tutti gli ambienti nel quale è
una misura idonea per il tipo di minacce che interessano il sistema".

Per esempio ho un cliente che intorno al 2003/2004 aveva implementato
un'infrastruttura Terminal Server ma non voleva buttare i vecchi PC con
W95 anzitempo.
La soluzione che ha implementato è stata quella che sui vecchi PC W95 ha
fatto togliere il lettore CD ed il floppy (il boot da usb ai tempi non
esisteva), ha fatto reinstallare da zero il PC impostando la partenza
automatica del client Terminal Server, l'USB non era supportato dal
sistema operativo, ha creato sullo switch una VLAN dedicata configurando
il dhcp relay e impostando le ACL in modo tale da lasciare passare solo
il traffico DNS verso i due server DNS e la 3389 verso la farm terminal
server. Ovviamente il traffico da tutto il mondo verso quella VLAN era
tutto bloccato.
Da notare che il cliente aveva ed un'attenzione particolare per la
sicurezza specie a livello di networking, quindi sugli switch c'era
attiva la port security e tutte le porte non utilizzate erano in shutdown.

Ora, in questa situazione qual era l'utilità dell'antivirus su quelle
macchine? Te la saresti sentita di far spendere 2000 euro all'anno
(erano circa 30 PC) per le licenze per ritrovarti con PC più lenti e la
necessità di aprire svariate porte sia in ingresso che in uscita per
fare l'aggiornamento dell'antivirus?

> E' questione di
> stile, desiderare lavorare a maglie strettissime oppure no. In qualsiasi
> discorso di sicurezza finiscono per rientrare, prima o poi, anche
> criteri di praticita', economicita' e gestione; a tal punto che,
> volendo, un sistema "military grade" lo si potrebbe mettere in piedi ma
> poi nessuno sarebbe disposto a lavorarci oppure costerebbe troppo con le
> risorse correnti.

Giusto. E difatti spesso l'antivirus diventa una comoda scusa per non
implementare anche quelle politiche di sicurezza che da sole sarebbero
magari sufficienti.

-- 
Flavio Visentin
GPG Key: http://www.zipman.it/gpgkey.asc

There are only 10 types of people in this world:
those who understand binary, and those who don't.
________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List

Rispondere a