Memorizza i codici di password utilizzando Powershell? DPAPI / AES

2

Sto facendo uno script che richiede di avere un sacco di IP del server e le loro password memorizzate in un file.

Volevo usare DPAPI di Windows, ma dato che possiamo facilmente recuperare la versione in testo normale non è molto buona.

Ho quindi provato a usare AES.
Ora la mia domanda è: come, usando AES, potrei memorizzare le chiavi (1 per ogni IP?) In modo che lo script possa decifrare le password, ma è difficile per qualcuno non autorizzato leggere il file contenente le password?

    
posta Svart 25.04.2016 - 16:21
fonte

1 risposta

3

DPAPI memorizza i dati protetti crittografati con la chiave DPAPI dell'utente, che viene a sua volta crittografata con una derivata (tramite PBKDF2) della password NTLM. Inoltre, le informazioni chiave relative a DPAPI sono memorizzate in un'area di memoria protetta all'interno del sottosistema di sicurezza (LSA), rendendo particolarmente difficile compromettere le chiavi master al di fuori di un contesto amministrativo.

Le due principali preoccupazioni nel modello di minaccia di DPAPI sono gli attacchi offline (ad esempio il disco rigido rubato) o un utente malintenzionato che tenta di compromettere i dati protetti da DPAPI di un altro utente. Entrambe queste minacce sono adeguatamente protette contro DPAPI.

Il timore che DPAPI consenta un facile recupero dei dati è infondato; il fatto che sia possibile recuperare le informazioni è dovuto al fatto che l'utente è stato registrato come utente legittimo. Effettuare l'accesso come qualsiasi altro utente renderebbe impossibile tutto ciò, come si farebbe per recuperare i dati protetti da DPAPI da un'immagine disco offline (a meno che non si conosca la password dell'utente che ha salvato i dati).

Qualsiasi soluzione implementata da te con AES (o qualsiasi altro codice) sarà meno sicura in questi casi.

Detto questo, se il modello di sicurezza dell'applicazione prevede l'assegnazione di password di servizio agli utenti in un file di testo crittografato, c'è ben poco da impedire loro di decodificarlo e ottenere le password. Sembra un candidato per aver loro autenticare i sistemi di back-end con i loro account utente individuali o avere un servizio di intermediazione a cui gli utenti si autenticano e che possono quindi effettuare richieste di servizio back-end per loro conto.

    
risposta data 25.04.2016 - 16:32
fonte

Leggi altre domande sui tag