Anatoly Demidovich cum să obțină parola de la pscredential

Și salvați-l într-un fișier pentru o utilizare ulterioară. De ce este necesar? Cel puțin pentru a nu introduce parola de fiecare dată cu mâinile. Aș prefera un fișier CSV. Și este de dorit să criptați parola folosind un algoritm criptografic de încredere. Mai întâi, salvați numele de utilizator și parola în câmpurile corespunzătoare ale instanței obiectului PSCredential.

Luați în considerare câteva modalități de introducere a datelor:

- în caseta de dialog:

Anatoly Demidovich cum să obțină parola de la pscredential

Anatoly Demidovich cum să obțină parola de la pscredential

Anatoly Demidovich cum să obțină parola de la pscredential

Anatoly Demidovich cum să obțină parola de la pscredential

Anatoly Demidovich cum să obțină parola de la pscredential


Fiți atenți la ieșirea din consolă a proprietăților obiectului: numele de utilizator este numele meu, parola este System.Security.SecureString.

Se pare că parola noastră este protejată în siguranță.

Trimiteți datele într-un fișier CSV pentru stocare.

Vom executa codul de câteva ori.

Anatoly Demidovich cum să obțină parola de la pscredential


Citiți conținutul fișierului CSV.

Anatoly Demidovich cum să obțină parola de la pscredential


Se pare ca o herring - parola este criptata.

Transformați datele de la CSV fișier într-un obiect PSCredential cazuri, de ce a crea obiecte folosind un constructor, și să încerce să transforme proprietatea parolei fiecare obiect într-un șir de caractere.

Anatoly Demidovich cum să obțină parola de la pscredential


Ciudat, iar metoda ToString () este.

Anatoly Demidovich cum să obțină parola de la pscredential


Și acum atenție, priviți-vă mâinile.

Anatoly Demidovich cum să obțină parola de la pscredential

Concluzie - parola din această formă nu este sigură pentru stocare.

"Ce ar trebui să fac?", Mă întrebați :).

Să acordăm atenție sistemului [System.Security.SecureString] la șirul criptat [System.String] - ConvertFrom-SecureString.
Am folosit-o în procesul de pregătire a unei parole pentru export într-un fișier CSV.

Cmdlet oferă câteva opțiuni pentru criptare: Key și SecureKey.
Vă sugerăm să utilizați ca cheie o serie de octeți, constând din 16, 24 sau 32 (implicit) elemente - 128, 192 sau 256-biți respectiv.

Amintiți-vă toate elementele matricei - supărătoare.
Simplificați: vom scrie o funcție care va primi 4 cifre (ca un cod PIN - puteți să-l amintiți cel puțin) și să returnați o matrice de octeți de o anumită lungime.

Simplu algoritmul sa dovedit, puteți (chiar trebuie să) construi propriul dvs. - cât de mult imaginația permite.
Testăm funcția.

Anatoly Demidovich cum să obțină parola de la pscredential


Scriem un script nou: înainte de a exporta datele într-un fișier CSV, criptează parola cu algoritmul AES. după care după câteva secunde încercăm să o citim.

Anatoly Demidovich cum să obțină parola de la pscredential


Pare bine.
Să ne schimbăm codul PIN și să executăm din nou scriptul.

Anatoly Demidovich cum să obțină parola de la pscredential


Evident: parola, criptată pentru prima dată (cu altă cheie), nu am putut obține.

Vom reveni la valoarea inițială a "codului PIN" și pentru a ne asigura că totul funcționează conform destinației, vom executa scenariul a treia oară.

Anatoly Demidovich cum să obțină parola de la pscredential


Rezultatul - prima și a treia parolă, în al doilea rând - o eroare, după cum este necesar.

Pentru asta îți spun rămas bun. Toată lumea.

P.S. În opinia mea, soluția de aproape orice problemă, inclusiv hacking algoritmul criptografic, este o chestiune de timp și de buget.

Articole similare