# worm trojan e affini, quali difese?

## Biro

Non e' da poco che uso sistemi basati da Linux, ma ho ancora molte

lacune e voglia di conoscenza.

Mi chidevo come si comporta un sistema base contro le minacce della rete

 tipo: worm, trojan, spyware e affini.

Ho capito che un virus e' un programma come un altro e deve essere

eseguito per provocare "danni", che con i privelegi utente credo siano

ben pochi, riferendomi sempre ad avere un pc integro, funzionale,

avviabile.

Quel che non so e' come i vari script, mascherati nelle pag. HTML

possono prendere possesso e avere i privilegi di root su una box linux,

come prevenire e come "navigare" tranquilli.

Basta un firewall? si deve installare un antivirus anche

sotto il pinguino? Far eseguire, emulandoli con wine, programmi quali

spybot o adware ?

Grazie a tutti coloro che mi risponderanno.

PS per ogni cosa che imparo ce ne sono altre cento che fanno capolino...

si finira' mai di "studiare"?

Ciao Ciao gente

----------

## FreeManAtomic

Gli spyware e trojan vari usano vulnerabilita' di windows per eseguirsi, quindi linux != windows, vai tranquillo.  :Smile: 

----------

## bender86

 *Biro wrote:*   

> Quel che non so e' come i vari script, mascherati nelle pag. HTML possono prendere possesso e avere i privilegi di root su una box linux, come prevenire e come "navigare" tranquilli.

 Normalmente questi script sfruttano grosse vulnerabilità di browser e sistema. Non usare il sistema come amministratore e sei praticamente in una botte di ferro.

 *Biro wrote:*   

> Basta un firewall?

 Probabilmente non serve nemmeno quello, basta controllare di non avere servizi aperti sulla rete. Ma se vuoi stare sicuro, mettilo.

 *Biro wrote:*   

> si deve installare un antivirus anche sotto il pinguino?

 Secondo me è inutile, tanto su linux quanto su win.

 *Biro wrote:*   

> Far eseguire, emulandoli con wine, programmi quali spybot o adware ?

 Ovviamente quei programmi sono specifici per windows, anche emulandoli pulirebbero solo il sistema emulato (non ci giurerei nemmeno, secondo me non funzionano). In ogni caso non credo ne avrai bisogno.

----------

## thewally

 *Biro wrote:*   

> Basta un firewall?

 

```
iptables -P INPUT DROP

iptables -P FORWARD DROP

iptables -P OUTPUT ACCEPT

iptables -A INPUT -i lo -s 127.0.0.1 -j ACCEPT

iptables -A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT

```

Ammesso che la sintassi sia corretta, questo dovrebbe andare più che bene per un normale sistema desktop.   :Wink: 

 *Biro wrote:*   

> 
> 
>  si deve installare un antivirus anche
> 
> sotto il pinguino? 
> ...

 

IMHO Se vuoi esagerare con la paranoia (che è sempre la cosa migliore - AMMETTO, lo uso   :Rolling Eyes:  ) installa ClamAV

 *Biro wrote:*   

> PS per ogni cosa che imparo ce ne sono altre cento che fanno capolino...
> 
> si finira' mai di "studiare"?

 

Quella è una possibilità che di da solamente Window$   :Laughing: 

----------

## Cazzantonio

 *Biro wrote:*   

> Ho capito che un virus e' un programma come un altro e deve essere
> 
> eseguito per provocare "danni"

 

I virus, come tutti i programmi, devono essere scritti specificamente per un sistema operativo... i virus multipiattaforma sono rarissimi e in ogni caso sfruttano vulnerabilità di programmi che potresti tranquillamente non aver installato.

Usare gentoo e aggiornare frequentemente (tipo una volta alla settimana/mese) ti assicura che il sistema sia aggiornato e che i programmi da te installati non contengano bachi di sicurezza (altrimenti verrebbero rimossi da portage).

Il software opensource è molto più sicuro di quello closed dal momento che lo aggiorni più spesso e i programmatori rilasciano patch di sicurezza con una velocità incredibilmente superiore. Tutto questo fa si che le probabilità che tu becchi un virus sotto linux (specialmente se non ti logghi come root per le faccende quotidiane) siano praticamente nulle... io piuttosto mi preoccuperei del pericolo meteoriti che del pericolo "virus sotto linux".

 *Biro wrote:*   

> Basta un firewall? si deve installare un antivirus anche
> 
> sotto il pinguino?

 

Tragicamente grazie a windows la maggior parte della gente ignora del tutto cosa sia un firewall... la regola è: "se non sai cosa fa un firewall allora non ti serve"   :Wink:   :Smile: 

Un'altra cosa tragica di windows è che ci ha abituati a trattare il proprio sistema operativo come "nemico" e ad installare programmi tipo "zonealarm" e firewall vari per bloccare i vari tentativi di connessione dei programmi installati sul nostro pc verso l'esterno... su linux niente si connette all'esterno senza che tu glielo dica!   :Very Happy: 

Questo è tutto opensource!   :Smile:  Non esistono adware, spyware, backdoor e funzionalità nascoste!   :Smile:  (se ci fossero, essendo open, qualcuno se ne sarebbe sicuramente acccorto o quantomeno se ne accorgerebbe in un lampo   :Wink:  )

 *Biro wrote:*   

> Far eseguire, emulandoli con wine, programmi quali
> 
> spybot o adware ?

 

Come potrebbe un programma nato per trovare la merda dentro windows riconoscerla sotto linux che è un sistema operativo diverso? 

Comunque dalle considerazioni sopra avrai capito che il software opensource non ha problemi di questo tipo... è per questo motivo che non esistono programmi del genere sotto linux... sarebbero assolutamente e totalmente inutili!   :Very Happy: 

Semmai cerca di ridurre al minimo il numero di programmi non opensource installati   :Wink: 

Inoltre anche gli antivirus che trovi sotto linux (tra cui clamav è ottimo) servono soprattutto per consentire ad un server linux di controllare altre macchine windows in rete (rimuovendo per esempio i virus dalle mail in arrivo) che per trovare virus sotto linux...

Vuoi sapere quanti sono stati nella storia i virus per linux? Meno di una decina... tutti sfruttavano vulnerabilità che sono state risolte in pochi giorni e hanno avuto una diffusione talmente bassa che avranno infettato si è no qualche manciata di pc (contrariamente ai numeri da capogiro delle macchine win infettate). Ovviamente la stragrande maggioranza di questi virus risale a diversi anni fa... quindi ora sarebbero reperti storici piuttosto che virus...

 *Biro wrote:*   

> si finira' mai di "studiare"?

 

No! Sennò dove starebbe il divertimento?   :Very Happy: 

P.S. nel forum di documentazione ho postato uno script per un firewall molto semplice... adatto a pc desktop... provalo se proprio senti di essere nudo senza

----------

## ercoppa

Tempo fa (credo uno o due anni fa) lessi un informazione (su punto informatica mi sembra) in cui veniva descritto come fossero stati bucati server gentoo e qualche settimana prima invece server debian. Qualcuno ha maggiori info, perchè in quel occasione molti misero in discussione la positività di un codice aperto ecc. Poche settimane dopo un famoso hacker/cracker (non chiedetemi il nome) dichiaro che per lui bucare software open source era molto più semplice che bucare un software propritario. Anche molti criticarona la natura open source. Qualcuno mi sa dire qualcosa in più? grazie in anticipo

----------

## Ilvalle

In breve, 

l'opensource è facile da bucare perchè puoi studiare il codice, ed eseguire l'attacco, il C sopratutto, come linguaggio è  fra i non sicuri rispetto ai tipi, ma lasciamo stare perchè.

[OT] Nessun programmatore mai ti assicurerà il proprio codice come sicuro, non lo da perchè non hai mezzi pratici per farlo, se pensi a un architetto lui puo' farlo, in via del fatto che la matematica di gli permette di realizzare strutture che sappiano sostenere la casa ecc. il programmatore invece, non hai mezzi, la matematica non lo aiuto, alcuni paradgmi son vicini, quello funzionale per esempio, altri sono lontanissimi, e questo è uno dei grossi problemi, risolvibili in parte con varie stratedie a livelli molto + alti, lontani, ahimè dalla stesura di codice, come dicevo prima il C è nella classifica messo come non sicuro. [OT]

Il codice che viene rilasciato, patch, aggiornamenti, quello che installiamo ogni giorno sulle nostre macchina, è libero, ma ha dei proprietari,  se volutamente pone del codice maligno, ecco che sappiano subito che è stato lui, chi è il folle che pone del Backdoor (per esempio) sul del codice che studieranno in migliaglia? basta uno se ne accorga e sei fragato !

Una buona soluzione è bucare i reposity, di fatti è sbagliato aggiornare sempre dallo stesso, cambiare evita questo problema.

Concludendo, il codice close invece, è molto + facile nessuno studia quel codice, come farai mai a trovare il codiche maligno che è running mentre stai usando il plugin di java?

Pensa che nei vecchi word/excel vi erano dei giochi, simulatore, flipper labirinto,  se non erro, sulla licenza non hai comprato un gioco hai comprato un editor, un foglio elettronico; del resto cio' dimostra che su qualunque codice close ci puo' essere qualunque cosa...

Per esempio,Stalman ad una conferenza, appunta parlava del update di windows, volano all'esterno tante informazioni che non hai idea, disse, (maledetto parlava in inglese!), Update è una maschera...

Spero di averti chiarito un po le idee...

ciao

valleLast edited by Ilvalle on Mon Jun 05, 2006 9:58 pm; edited 1 time in total

----------

## Cazzantonio

[OT]Ilvalle non voglio fare lo spaccacazzo e prendila come un commento assolutamente bonario... tuttavia non si capisce nulla di quello che hai scritto... e non parlo dei concetti ma dell'italiano   :Smile:  [/OT]

Comunque tornando IT il codice opensource è più facile da analizzare e quindi da bucare nel caso trovi dei bachi... tuttavia è anche vero che essendo più facile da analizzare è anche più semplice trovare i buchi per cui è anche più semplice tapparli.

Il codice closed è sicuramente più difficile da analizzare ma una volta che hai trovato un baco è più difficile che anche i programmatori lo trovino e lo riparino...

Che linux o bsd siano più sicuri di windows è lapalissiano... macosx invece è sicuro perchè poco usato (quindi la solita storia che analizzare il codice closed è più difficile... quindi se sono in pochi...) e perché probabilmente programmato meglio (tutti i bachi sono sempre e soltanto errori di programmazione... un codice perfetto è assolutamente sicuro).

D'altra parte è anche vero che il codice closed ti da solo la garanzia del produttore (chiaro conflitto di interessi... quale produttore pubblicizzerà le insicurezze del proprio software?) mentre quello open ti da la possibilità di cercare i buchi e tapparli se ci sono quindi di principio ti da molte più garanzie.

----------

## =DvD=

esperienza, buon senso, buon senso, esperienza, fortuna.

----------

## randomaze

 *Ilvalle wrote:*   

> il C sopratutto, come linguaggio è  fra i non sicuri rispetto hai tipi, ma lasciamo stare perchè.

 

Non proprio.

In C devi gestire tu l'allocazione di memoria, con altri linguaggi la fai gestire a chi ha implementato il linguaggio.

Va da se che se stai usando un linguaggio scritto con i piedi anche le routine di allocazione/deallocazione della memoria saranno sullo stesso livello.

Certo, nella maggior parte dei casi (per vari motivi) gli algoritmi di gestione della memoria del linguaggio XYZ saranno migliori di quelli scritti da te (o da me...) ma "nella maggior parte dei casi" non é una funzionalità, ma semplice statistica.

 *=DvD= wrote:*   

> esperienza, buon senso, buon senso, esperienza, fortuna.

 

Penso che "buon senso" debba essere messo per primo: Se la tua password di root é "root" direi che non c'é bisogno di scomodare trojan, virus o simili per prendere il controllo del sistema.

Se lasci le password di default dei demoni (ad esempio database) o degli applicativi (ad esempio i CMS in php) ci vuole poco anche li. eccetera.

Il citato caso di compromissione dei server debian, se non ricordo male, era appunto dovuto a una cattiva password.

Quanto al dibattito "codice open vs codice oscuro" credo che di documenti ne sia piena la rete, ma é uno di quei dibattiti dove non c'é una conclusione oggettiva ma solo soggettività.

----------

## Ilvalle

Sperando che l'italiano sia dalla mia parte. Cosa di preciso ti devo rispiegare?

 *Quote:*   

> Ilvalle ha scritto:
> 
> il C sopratutto, come linguaggio è fra i non sicuri rispetto hai tipi, ma lasciamo stare perchè.
> 
> Non proprio.
> ...

 

Mi pemetto di contraddirti, ma il C, come LINGUAGGIO di programmazione, è posto come non sicuro rispetto hai tipi, questo lo dicono dei paradigmi di programmazione. La deallocazione della memoria, primo motivo, il poter accedere al valore dell'area di memoria utilizzando puntatori, la non possibilità di gestire a runtime un qualcosa come le eccezioni in java, e concludendo il controllo statico dei tipi contro il dinamico.

Come vengano implementate le routin poi son i sistemi operativi, che + o meno realizzano le classiche tecniche. Ove cercano il + possibile di eliminare questi problemi.

Per quanto riguarda il mac, la situazione è diversa, per lo meno a livello di kernel, utilizzano un kernel modulare, (NON son i moduli che settiamo nel nostro kernel MONOLITICO).

Questo meccanismo permette un ottima robustezza. Credo si stia divagando un po.

----------

## bender86

 *Ilvalle wrote:*   

> Una buona soluzione è bucare i reposity, di fatti è sbagliato aggiornare sempre dallo stesso, cambiare evita questo problema.

 Credo che i vari checksum e hash vari servano proprio per evitare questo genere di problemi, forse intendevi i server rsync. Bisognerebbe comunque bucare sia un mirror rsync, sia un mirror per i file, e sperare di beccare qualcuno che usi quei due.

----------

## randomaze

 *Ilvalle wrote:*   

> Mi pemetto di contraddirti, ma il C, come LINGUAGGIO di programmazione, è posto come non sicuro rispetto hai tipi, questo lo dicono dei paradigmi di programmazione. La deallocazione della memoria, primo motivo, il poter accedere al valore dell'area di memoria utilizzando puntatori, la non possibilità di gestire a runtime un qualcosa come le eccezioni in java, e concludendo il controllo statico dei tipi contro il dinamico.

 

Sulla base della tua risposta quindi la cosa migliore é evitare di usare linux perché scritto in C, usa orribili tabelle di puntatori e via dicendo (ah giá quelle sono tecniche classiche). Poi non parliamo di demoni come openssh o qmail... inesauribili voragini ai danni alla sicurezza di un sistema per la loro incapacitá di far fronte a un eccezione.

Ribadisco: non ci sono linguaggi insicuri, ci sono programmatori piú o meno capaci e programmi piú o meno testati.

----------

## Ilvalle

Bhè ora credo si stia esagetando, il paragone con le eccezioni era un solo esempio.

Ribadisco che son problemi noti, io primo fra tutti preferisco il C al java. Due linguaggi totalmente diversi, ma di linguaggi di programmazioni se ne potrebbe parlare un sacco, non per altro ci son anche esami all'università, ma questo non mi sembra il luogo adatto

valle

----------

## federico

 *Cazzantonio wrote:*   

> [OT]Ilvalle non voglio fare lo spaccacazzo e prendila come un commento assolutamente bonario... tuttavia non si capisce nulla di quello che hai scritto... e non parlo dei concetti ma dell'italiano   [/OT]
> 
> Comunque tornando IT il codice opensource è più facile da analizzare e quindi da bucare nel caso trovi dei bachi... tuttavia è anche vero che essendo più facile da analizzare è anche più semplice trovare i buchi per cui è anche più semplice tapparli.
> 
> Il codice closed è sicuramente più difficile da analizzare ma una volta che hai trovato un baco è più difficile che anche i programmatori lo trovino e lo riparino...

 

Sottoscrivo entrambe le cose !

Fede

----------

## thewally

 *randomaze wrote:*   

> In C devi gestire tu l'allocazione di memoria, con altri linguaggi la fai gestire a chi ha implementato il linguaggio.
> 
> Va da se che se stai usando un linguaggio scritto con i piedi anche le routine di allocazione/deallocazione della memoria saranno sullo stesso livello.
> 
> 

 

Pienamente d'accordo.

In C se si riesce a sfruttare un bug per mettere mano ad indirizzi della memoria "non proprio ortodossi", tale bug dipenderà dal programma X (quello attraverso cui sfruttiamo il bug).

Se questo avvenisse in Python (è un esempio), la colpa sarebbe da inputare direttamente a chi "implementa il python". In questo caso il problema sarebbe molto più critico perchè sfruttabile da ogni app in python (che utilizzi le routine di allocazione/deallocazione dellla memoria implementate nel python).

Ovviamente, tutti i nostri bei discorsi teorici vanno a farsi benedire quando lo sviluppatore è un cane.   :Wink: 

----------

## misterwine

 *Quote:*   

> la regola è: "se non sai cosa fa un firewall allora non ti serve"

 

D' altra parte l' ho letto anche sul security-handbook di gentoo

http://www.gentoo.org/doc/it/security/security-handbook.xml?full=1#book_part1_chap12

Comunque sono dell' idea che non è il caso di 'sovraccaricare' di lavoro il nostro processore con firewall e antivirus su un sistema linux in ambito desktop. Senza dubbio una buona password di root non fa mai male (con qualche numero e carattere speciale magari). Inoltre penso che stando dietro ad un router si possa stare più tanquilli.

Inoltre in 2 anni che utilizzo lunix (e sono sempre in rete praticamente) non ho mai avuto nessun problema dovuto a virus, troiani ecc. Certo, ogni tanto faccio una scansione con nmap per verificare il corretto uso delle porte (su pc e su router), ma nulla di più... diciamo che più che altro è per mia personale curiosità! Ho provato clamav come antivirus, molto valido... ma  avendo notato che facendo una scansione a settimana non trovava nulla di interessante l' ho rimosso.

----------

## Cazzantonio

 *misterwine wrote:*   

> D' altra parte l' ho letto anche sul security-handbook di gentoo
> 
> http://www.gentoo.org/doc/it/security/security-handbook.xml?full=1#book_part1_chap12

 

Mio dio ma in che lingua è scritta (la guida)?   :Shocked:  Non azzecca nemmeno un congiuntivo!   :Twisted Evil: 

----------

## =DvD=

 *Cazzantonio wrote:*   

> Mio dio ma in che lingua è scritta?   Non azzecca nemmeno un congiuntivo!  

 

tv docet.

Non ci dimentichiamo gli sms  :Sad: 

----------

## GNUtoo

i spyware sono un rischio minore ma presente sotto linux ma solo si executi del software non libero

dicco che e minore perche se non e un driver no a il controlo del tuo pc e e sottomesso ai diriti unix

i virus esistono ma non sono virus come in windows:i virus devono essere executi e come ce solo del software che viene da gentoo non ai rischi

alora a che cosa serve i virus?

simplice:per i pirati

il pirata deve prendere il controllo del tuo pc e poi executare il virus

per prendere il controllo del tuo pc bisogna avere mola patientia e trovare un buco di sicurezza che avra un patch dopo averlo usato...dunque non vai a cercare un bucco di sicurezza unicamente per piratare una personna comunque

per trovare un bucco di sicurezza e molto difficile,non e come windows perche non sei il solo a cercarli

devi analizare il codice che e sicuramente sdja stato  analisato...

c'e anche il fuzz testing ma anche qui si il software e di qualita bisogna avere molto tempo e un computer molto potete perche devi trovare un bucco di sicurezza ma deve anche essere uno che puoi usare

e questo depende molto della qualita del software

dopo questo deve fare dei syscall per acedere al resto del pc

comunque:

*non usare il pre-linking

*i giocchi non sono gerati bene in gentoo

*ce un coso chiamato GLSA che sono le notizie sulle vulnerabilita

*puoi usare Hardened gentoo se sei paranoiaco

con il gentoo hardened puoi:

limitare le cose che fanno i spyware con mecanismi di controllo d'acesso (e anche il software compromesso)

impedire ai bug che cerchi con il fuzzing(cose con la parola buffer) di potere essere uttilisato

----------

## misterwine

 *Quote:*   

> comunque:
> 
> *non usare il pre-linking

 

 :Question: 

Perchè? Diminuisce per caso la sicurezza del sistema?

----------

## GNUtoo

 *misterwine wrote:*   

>  *Quote:*   comunque:
> 
> *non usare il pre-linking 
> 
> Perchè? Diminuisce per caso la sicurezza del sistema?

 

si

su kenrel trap ce la spiegatione

non mi ricordo bene ma penso che una vulnerabilita di un library toca tutti i programmi che lo usano

----------

## GNUtoo

ma devi aver paura degli pirari per fare atentione cosi a la sicurezza

devi anche sapere che la major parte dei att di pirateria sono comesso con dei server che non sono configurati bene

vuole dire che non attacano tanto i bucchi di sicurezza

no so a cosa puo servire tanto sicurezza

magari a essere sicuri di non essere pirato

magari per un server web

magari come hobby

----------

