viernes, 21 de junio de 2013

Interactuar con usuario en tarea programada

Hola.

Uno de los problemas comunes, al programar tareas programadas via gpo a todos o parte de los equipos del parque, es que queremos interactuar con el usuario y esto choca con el usuario que debemos poner en la tarea con privilegios para que la tarea sea lanzada.

Pues bien, para que las ventanas y/o scripts salten en la sesión del usuario, debemos hacer que la tarea se ejecute con el usuario localhost\usuarios

Para ello cuando estamos en el menú “General” – debemos elegir el usuario que os he comentado y podéis ver aquí:

image

 

Saludos.

Provocar ventana en tarea programada

Hola.

La forma de hacer que aparezca al usuario una ventana con una información concreta, disparada por una tarea programada es la siguiente:

 

1. Menú Acciones en tarea programada.

2. Crear una nueva acción con las opciones: Iniciar un programa – Powershell en “Programa o script” y en “Agregar argumentos (opcionar"), utilizar el siguiente argumento:

-WindowStyle hidden -Command "& {[System.Reflection.Assembly]::LoadWithPartialName('System.Windows.Forms'); [System.Windows.Forms.MessageBox]::Show('Your_Desired_Message',’texto a aparecer’)}"

 

image

Saludos.

jueves, 20 de junio de 2013

Encontrar cadena de texto en powershell

Hola.

Estoy metido de lleno en un script para lanzar bitocker y me surge la necesidad de saber si el disco está cifrado para crear un if en el script.

Pues bien, la forma más fiable de todas las posibles es encontrar la cadena 0% en la información que devuelve manage-bde, para ello he utilizando:

 

$status=manage-bde c: -status
$id = $status -match "0%" | Out-String

if ($id -like '* 0%*') {
    entonces…
}

 

Saludos.

Cambiar la propiedad de del chip TPM con contraseña aleatoria

Hola.

Pongámonos en situación. Tenemos un equipo con bitlocker activado, en el que para volver a instalar windows y activar Bitlocker, hemos roto la partición y vuelvo a crear otra nueva.

La instalación la haremos sin problema, pero la activación de bitlocker ya no es tan fácil ya que el chip está en modo ON y la contraseña de acceso no la tenemos.

Ante una situación como la descrita y otras muchas donde no somos propietarios o hemos borrado el contenido y password del chip a través de la bios, la solución es la misma. Tenemos que hacernos propietarios de ese chip y para ello, el comando es el siguiente:

  • manage-bde –tpm –takeownership PASSWORD

Para mí y para muchos, ya que he podido comprobar que los foros están repletos de dudas y pocas o ninguna solución, el problema que aprecio es que la password, en un script está en texto plano e incluso, si tienes un parque medianamente extenso, va a ser la misma en todos los equipos.

Es importante subrayar que esta password, no necesitamos conocerla, ya que podemos solucionar cualquier incidencia con la clave de bitlocker que habremos almacenado en archivos de texto o mejor aun, en directorio activo gracias a una gpo correctamente configurada.

Pues bien,  tras las pruebas realizadas :), el comando que os he mostrado anteriormente se puede sustituir por:

  • manage-bde –tpm –takeownership %random%

Esto tiene un problema y es que el random puede ir des 0 a una cantidad de 4 crifras y como manage-bde te obliga a que la contraseña sea de 8 cifras, tampoco nos valdría con un %random%%random%

Pues bien, tras las pruebas realizadas (2), he optado por:

  • manage-bde –tpm –takeownership %time%%random%%random%.

¿Ingenioso eh? :), así tenemos una contraseña fuerte a prueba de auditores quisquillosos.

jueves, 13 de junio de 2013

DNS block list en Windows Server

Hola.

Un olvidado a la hora de aumentar la seguridad de nuestra red es el servicio de blocklist de nuestro DNS, este servicio es administrable en su totalidad e incorpora una lista de direcciones, que para no ahondar mucho más en él, podemos decir que no se resolverán aunque tengamos una entrada host , alias, etc. creada.

El ejemplo más claro lo vemos cuando queremos publicar un servicio proxy pac vía dns y creamos la entrada, que debería resolver wpad.dominio.local por ejemplo.

Captura donde podéis ver que no podemos hacer ping a la dirección:

image

Gestión de la Blocklist

Comandos comunes en la gestión de este servicio son:

  • dnscmd servidor /info /globalqueryblocklist    - Nos enseña la lista de direcciones bloqueadas.
  • dnscmd Servidor /config /globalqueryblocklist nombre nombre nombre …   - Añade una o varias direcciones
  • dnscmd servidor /config /enableglobalqueryblocklist 0|1  - 0 Deshabilida  1 Habilita Blocklist
  • dnscmd /config /globalqueryblocklist  - Vacia la lista de direcciones.

Por defecto tenemos en la lista wpad y Isatap:

image

Y tras el reseteo de la lista:

image Saludos.