C'è una ragione per cui / proc / interrupts è leggibile da tutto il mondo?

5

Leggendo questo documento di ricerca recente su come utilizzare le informazioni da /proc/interrupts a attaccare un sistema, mi chiedevo se c'è un motivo particolare per cui /proc/interrupts è leggibile da tutto il mondo. Effettivamente la mia macchina Arch Linux riporta

ls -al /proc/interrupts 
-r--r--r-- 1 root root 0 24. Mai 18:03 /proc/interrupts

Fa male rendere questo file leggibile solo per root?

    
posta Florian 24.05.2016 - 19:11
fonte

2 risposte

5

È leggibile in tutto il mondo ora perché è stato reso leggibile da un mondo quando è stato creato vent'anni fa. Non ho fatto ricerche sulla storia (che probabilmente esiste solo nella testa di Linus Torvalds), ma è probabile che questo file sia leggibile da tutto il mondo perché non ci sono ragioni ovvie per farlo. Dopo tutto, non contiene alcuna informazione confidenziale: solo alcune configurazioni di sistema e alcune statistiche sulle prestazioni ...

La sottigliezza è che mentre catturare un'istantanea di /proc/interrupts è innocua, leggerla in un ciclo stretto non lo è, perché questo rivela la velocità delle sequenze di tasti che a sua volta perde un bel po 'di informazioni su ciò che è stato digitato.

I canali secondari non hanno ricevuto molta attenzione al di fuori della crittografia fino a qualche anno fa, quando i mercati delle app diventavano mainstream e tutti e loro nonna eseguivano il codice scaricato da siti ombrosi come App Store o Google Play. Quindi non sono sorpreso che tali problemi (che già esistevano nei tipici sistemi multiutente negli anni '90) ora vengano pubblicizzati e studiati in modo più approfondito nel contesto degli smartphone.

Cambiare lo statu quo non è una decisione facile dal momento che il kernel di Linux ha alcune inclinazioni alla retrocompatibilità molto forti. Le informazioni in /proc/interrupts sono utili quando esegui il debug dell'applicazione o del codice del driver o dei problemi di prestazioni del sistema.

Limitare l'accesso a /proc/interrupts non bloccherebbe completamente il canale laterale, solo un modo relativamente conveniente per osservarlo. È anche possibile osservare i tempi di battitura dei tasti osservando quando è pianificato il processo che li legge e ciò che un utente malintenzionato deve fare è più o meno ciò di cui ha bisogno il programma top (e visualizza, se si aumenta solo la frequenza di aggiornamento di 1Hz predefinita ).

    
risposta data 24.05.2016 - 22:01
fonte
4

Sembra che il problema sia stato segnalato nel 2011 . Inoltre, una patch ha proposto di rendere /proc/interrupts leggibile solo da root.

Leggendo il thread, sembra che ritengano che le distribuzioni dovrebbero cambiare il permesso di /proc/interrupts se lo volessero. Un problema è stato sollevato sul fatto che può essere complicato forzare chiunque a montare procfs a modificare le autorizzazioni. Anche l'autore della patch ha chiesto perché questo non è l'impostazione predefinita, ma non è stata fornita alcuna risposta (fino a ora come so)

    
risposta data 24.05.2016 - 21:35
fonte

Leggi altre domande sui tag