[ Home | Liste | F.A.Q. | Risorse | Cerca... ]


[ Data: precedente | successivo | indice ] [ Argomento: precedente | successivo | indice ]


Archivio: Novembre 2003 ml@sikurezza.org
Soggetto: R: La programmazione sicura "dei poveri"
Mittente: Fausto Pasqualetti
Data: 12 Nov 2003 17:42:12 -0000
Un chroot dell'enviroment apache + python?
Almeno se c'e' qualcuno che entra con un exploit nel cgi 
Deve faticare molto di piu'.
Ti consiglio gli ottimi articoli su Linux & Co. Su come operare
E i vari how to in rete ovviamente.
A proposito sempre su Linux & Co. Leggevo un articolo su systrace di
BSD...
Su linux si possono implementare policy sulle systemcall (A meno di
patch sul kernel)? 
Questa potrebbe essere una soluzione.
A presto

Fausto

-----Messaggio originale-----
Da: Michele Albrigo [mailto:michele.albrigo@xxxxxxxx] 
Inviato: lunedì 10 novembre 2003 9.34
A: ML Sikurezza
Oggetto: La programmazione sicura "dei poveri"


Ciao a tutti, questione tecnica stavolta.
Mi trovo a dover installare su un server web un'applicazione non open 
source. Il server ha su "la solita roba", quindi debian stable e apache,

piu' un po' di accorgimenti per incrementarne la sicurezza, ma niente di

speciale e niente di nuovo. L'applicazione che devo usare e' BSCW, si 
tratta di un cgi scritto in Python e distribuito sotto forma di bytecode

compilato (per fare un paragone, pensate di avere un'applicazione java e

di avere solo i .class). La storia della sicurezza di quest'applicazione

e' relativamente buona (pochi bug e corretti rapidamente), quindi in 
linea di massima mi fido.

Veniamo al punto.

Ho trovato in giro librerie che servirebbero per incrementare la 
sicurezza di alcune funzioni usate nella scrittura di svariati 
programmi, rimpiazzando le funzioni che lavorano su stringhe e buffer 
con versioni dotate di maggiori controlli e medesime funzionalita'. 
Idealmente, dovrei poter modificare i sorgenti dell'applicazione che mi 
interessa, ad esempio apache, richiamare, a livello di #include, gli 
header di queste librerie, che mi forniranno le corrispondenti funzioni 
"protette" (ok, e che magari mi sbrombano l'applicazione al punto che 
non funziona piu', funziona male oppure diventa meno sicura di prima...)

e modificare il codice dove queste vengono usate per adattarlo alle 
nuove funzioni (in teoria, se le funzioni sono fatte bene, la 
riscrittura del codice sorgente potrebbe essere automatizzata quasi del 
tutto).
Nel mio caso, pensavo di usare queste librerie per produrre una versione

"hardened" di python, con cui far girare BSCW. Eventualmente si potrebbe

studiare anche un "hardening" di apache, ma in genere e' fatto bene 
(dove per bene intendo "al di la' di quello che le mie capacita' 
potrebbero migliorare").
So bene che non e' questa la via maestra per migliorare la sicurezza di 
un software, pero' in casi come questo, in cui non c'e' accesso al 
sorgente di un'applicazione (e bisogna fidarsi del produttore), potrebbe

essere utile blindare un po' tutto quello che gli sta attorno...

Quindi le domande:
1) secondo voi vale la pena di provare questo genere di hardening su 
Python? e su apache?
2) qualche libreria da suggerirmi?
3) se vale la pena, qualcuno che ci sta a darmi una mano?

A voi la palla!
Michele Albrigo


________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List

________________________________________________________
http://www.sikurezza.org - Italian Security Mailing List




[ Home | Liste | F.A.Q. | Risorse | Cerca... ]

www.sikurezza.org - Italian Security Mailing List
(c) 1999-2005