cari esperti di sicurezza: vorremmo creare un server web molto sicuro. siamo impressionati dalla complessità e complessità di molte soluzioni, ma non si applicano a noi. siamo un piccolo negozio.
per sicurezza, intendiamo un sito web aperto da php o perl basato su internet che limita la vulnerabilità di intrusione nei confronti di hacker sofisticati e remoti in un altro paese. non significa protezione contro le persone che rubano fisicamente il computer. non significa mantenere i miei clienti al sicuro.
come molti piccoli negozi, non abbiamo la manodopera e l'attenzione per monitorare costantemente tutto. dobbiamo supporre che i nostri dipendenti del server commettano errori ogni volta. dobbiamo anche presumere che ci mancheranno le correzioni di sicurezza, o anche che abbiamo scritto noi stessi il codice sciatto. abbiamo bisogno di questo per essere semplice e infallibile. e stupidi che abbiamo. beh, chiamali non sofisticati e ingenui.
per prima cosa, vogliamo che il server internet avviasse una distro da un dispositivo di sola lettura. il modo più economico per farlo è tramite CD. il disco rigido sarà probabilmente rimosso. Devo ancora trovare un SSD moderno con un vero switch di sola lettura. (alcune unità flash USB ce l'hanno.) Ciò significa che non ci sarà l'installazione di root-kit sul dispositivo root. quando riavvio, tutta la memoria temporanea verrà cancellata. Sarò perfettamente pulito.
in secondo luogo, ci chiediamo se possiamo o dobbiamo aggiungere più sicurezza. in rare occasioni, abbiamo bisogno di accedere al computer che esegue il server web tramite ssh, bash o eseguire qualcosa sudo --- ma questo è raro. Voglio installare un pulsante hardware sul computer che consente o non consente questo. Posso scrivere una funzione collegabile o uno script di shell che restituisce 0 se il pulsante è disinserito o 1 se è impegnato. quindi, penso di aver bisogno di modificare il codice che esegue ssh, bash, sudo, ecc. hanno solo bisogno di essere incapsulati per controllare prima 0 o 1 sul pulsante. oppure, potrei modificare il driver del file system ext4 per far passare solo determinati programmi se il pulsante è premuto, ma questo sembra eccessivo.
Penserei che se uno dei nostri pazzi ha dato a un hacker remoto l'account di root e la password, ma il pulsante è spento e l'unità è di sola lettura, c'è ancora meno danno che potrebbero fare.
Non vedo un modo semplice per impedire a un hacker di localizzare qualcosa nella RAM, almeno fino al prossimo riavvio.
la mia domanda chiave ora è: c'è un modo comune per avvolgere un elenco di shell e altri programmi di accesso remoto per funzionare solo quando il mio pulsante viene premuto?
consiglio apprezzato.
saluti,
/ IAW
PS: e se qualcuno conosce un SSD con switch di sola lettura, faccelo sapere.