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


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


Archivio: Luglio 2003 ml@sikurezza.org
Soggetto: rattoppare un'applicazione
Mittente: Francesco Toscan
Data: 14 Jul 2003 11:51:33 -0000
Salve,

sono alle prese con un'applicazione scritta decisamente SENZA pensare al fattore sicurezza, installata in una ditta per cui sono consulente e che presenta un bel numero di problematiche. Naturalmente l'obiettivo è chiudere quel che è possibile chiudere.

Dunque, l'ambiente è questo: l'applicazione è scritta in cobol versione 6. L'applicazione è divisa in due "parti": una parte funziona via web, l'altra tramite interfaccia grafica dedicata, scritta sempre in cobol.

L'interfaccia comunica con l'applicazione tramite una porta tcp in range non privilegiato, la 5632, bindata da runcbl, una componente del baraccone runtime cobol.
La parte web funziona come il più banale ed orrido CGI: l'utente apre una pagina, viene avviata /bin/sh che a sua volta avvia l'interprete cobol che a sua volta esegue il programma cobol desiderato.


Dunque, al momento mi trovo in queste condizioni:

- runcbl, il processo che tiene la 5632/tcp, gira come root
- gli archivi con i dati di questa applicazione hanno fantastici permessi settati a 777
- tutti i programmi dell'applicazione hanno gli stessi identici permessi
- idem dicasi per gli script web


Un divertente effetto collaterale del fatto che runcbl giri sotto root è che tutti gli script cobol avviati da apache girano come root: presente un bell' http://facciamoci_del_male/script?input_doloroso con il tutto che diventa /bin/sh /interprete_cobol programma.cobol input_doloroso che finisce per diventare root(programma.cobol input_doloroso) ?
Ricordiamo anche che l'applicazione in questione è per suo normale utilizzo esposta ad internet.


Dopo queste ed altre considerazioni ho chiesto alla ditta produttrice del software di fare qualcosa e...

- se settano civilmente i permessi sugli archivi, la loro applicazione "non funziona" (1)
- idem dicasi per i programmi (1)
- la acucobol sostiene che i loro runtime devono girare come utente root altrimenti non funzionano (boooh qualcuno mi spieghi perchè) (1)


La macchina su cui gira il tutto è una linux, una redhat 9 per la precisione.
Pe limitare i danni ho tentato di far girare il tutto in una jail sotto FreeBSD, peccato che cobol non giri correttamente sotto emulazione linux.


Tenendo purtroppo fermi i 3 punti di cui sopra, qualcuno ha un'idea su come limitare i danni in una situazione del genere? Qualcosa di simile in linux alle jail di FreeBSD?

Grazie a presto,

f.

1) >>demenziale<<

________________________________________________________
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