Perché 'cd' è limitato in rbash / restricted bash?

5

Il manuale di bash dice:

A restricted shell behaves identically to bash with the exception that the following are disallowed or not performed:

Changing directories with the cd builtin.

Perché non è permesso? Quali buchi di sicurezza si chiudono / Quali attacchi aiuta a prevenire?

    
posta Michael Thorpe 27.07.2016 - 14:35
fonte

1 risposta

6

Di per sé, questa misura molto probabilmente non ha molto senso, tuttavia devi mettere da parte l'altra limitazione per capire il suo ruolo, in particolare (citando la pagina che hai linkato):

  • Specifying command names containing slashes.
  • Specifying a filename containing a slash as an argument to the . builtin command.
  • Specifying a filename containing a slash as an argument to the -p option to the hash builtin command.

L'obiettivo di queste limitazioni è garantire che tu esegua solo i comandi il cui percorso appartiene alla variabile di ambiente $PATH , e nel caso in cui questa variabile includa la directory corrente ( . ) cambiando la directory corrente in quella contenente il il binario desiderato consentirebbe di aggirare queste limitazioni "slash".

Inoltre, impedire all'utente di cambiare la directory corrente gli impedirà anche di eseguire erroneamente o maliziosamente un comando che avrà un comportamento diverso a seconda della directory corrente, e in particolare a seconda del contenuto della directory corrente (è comune per alcuni comandi cercare i file di configurazione o di profilo predefiniti, ad esempio nella directory corrente). Ciò offre un certo livello di garanzia sul comportamento del comando che verrà eseguito.

    
risposta data 27.07.2016 - 18:58
fonte

Leggi altre domande sui tag