Quali sono le implicazioni per la sicurezza della riscrittura di SSH_ORIGINAL_COMMAND per consentire l'esecuzione rsync dal processo cron di rsnapshot?

3

Abbiamo il seguente file authorized_key che eseguiamo la sincronizzazione tra tutti i nostri host da utilizzare con il nostro cron job rsnapshot:

from="192.168.1.337",no-port-forwarding,no-X11-forwarding,no-agent-forwarding,no-pty,\
command="rsync --server --sender -logDtprRe.iLsfxC --numeric-ids -- . \"${SSH_ORIGINAL_COMMAND#* . }\"" \
ssh-rsa AAAAB3NzaC1yc2EA...ER9+vQ== [email protected]

L'ultimo argomento può differire da host a host (il che significa che puoi accedere a qualsiasi file che ti piace).

  • C'è un modo più sicuro di utilizzare rsnapshot in un cronjob?
  • Usare le doppie virgolette per risparmiare ragionevolmente contro l'iniezione di argomenti?
  • Esiste la possibilità di leggere i dati rilevanti tramite / proc o / sys?
  • Il server rsync può modificare i file sull'host?
  • sta ottenendo password e amp; le chiavi private da dentro i file (file di configurazione, / etc / password) sono stati rsynced l'unico attacco ragionevole (suppongo che avremmo bisogno di un reverse encfs mount sull'host per mitigare questo rischio)?

Nota: gli argomenti (incluso --server --sender) sono copiati da ciò che rsync all'interno di chiamate rsnapshot su SSH, questo è anche il motivo per cui sono abbastanza insicuro se qualcuno, ad es. potrebbe ad es. cancella / sovrascrivi i file arbitrari tramite il protocollo rsync (ad es. / root / ssh / authorized_keys) rendendo l'intero sforzo inutile.

    
posta till 16.01.2018 - 23:13
fonte

0 risposte

Leggi altre domande sui tag