Contenidos
- Fichero que almacena los credenciales que llegan por método POST
- Script en PowerShell que envía los credenciales
- Ejemplo de fichero con los credenciales que se crea en el servidor
- Script en PowerShell que lee los credenciales almacenados en el servidor y comprueba si puede abrir una aplicación con dichos credenciales
- Si los credenciales son correctos no aparece mensaje de error y se abre la aplicación
- Si los credenciales son incorrectos aparece mensaje de error
- Obtener el password en texto plano
Fichero que almacena los credenciales que llegan por método POST
Cuando llegan los credenciales se almacenan en un fichero cuyo nombre es fichero12.txt, el usuario y el password se separan por el caracter «|».
Script en PowerShell que envía los credenciales
1 2 3 4 5 |
# Almacenar credenciales en una variable y enviarlo por método POST a un servidor $enviar = Get-Credential | Select Username,@{n="Password"; e={$_.password | ConvertFrom-SecureString}} $postParams = @{nombre=($enviar.UserName);pass=($enviar.Password)} $web=Invoke-WebRequest -Uri 'https://jesusninoc.com/no212.php' -Method Post -Body $postParams |
Ejemplo de fichero con los credenciales que se crea en el servidor

Script en PowerShell que lee los credenciales almacenados en el servidor y comprueba si puede abrir una aplicación con dichos credenciales
1 2 3 4 |
# Abrir una aplicación por ejemplo Notepad con los credenciales que se han almacenado en el paso anterior $jsonc = (iwr "https://jesusninoc.com/fichero12.txt").content $cred = New-Object -TypeName PSCredential $jsonc.Split("|")[0],($jsonc.Split("|")[1] | ConvertTo-SecureString) Start-Process notepad -Credential $cred |
Si los credenciales son correctos no aparece mensaje de error y se abre la aplicación

Si los credenciales son incorrectos aparece mensaje de error

Obtener el password en texto plano
1 2 3 4 5 6 7 8 9 |
# Extraer password de tipo SecureString $jsonc = (iwr "https://jesusninoc.com/fichero12.txt").content $cred = New-Object -TypeName PSCredential $jsonc.Split("|")[0],($jsonc.Split("|")[1] | ConvertTo-SecureString) $BSTR = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($cred.Password) $PlainPassword = [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR) $PlainPassword |
