Archivo de la categoría: Seguridad de la Información

Redireccionar una web a HTTPS

En el presente artículo compartiré con ustedes cómo instalar un certificado SSL en un IIS versión 10 (Windows server 2016) y la configuración para que redireccione automáticamente hacia HTTPS.

Es algo muy sencillo, pero habemos muchos que no sabemos sobre estos temas.

Lo primero que haré es importar el certificado SSL en el servidor, para ello utilizaré una herramienta de digicert, si ya han leído algunos artículos de exchange, ahí existe detalle de esta importación.

Nos dirigimos al IIS, seleccionamos el site y el parte derecha seleccionamos Bindings…

Ahora agregamos la configuración https:

En mi caso selecciono la opción Require Server Name Indication, la cual permite instalar varios certificados en un mismo servidor y con una misma IP.

Ahora seleccionamos el certificado importado.

Ahora para la redirección, instalaremos un complemento llamado Rewrite , el cual se añade al IIS y nos permitirá configurar reglas de redirección. La instalación es sencilla, al finalizar posiblemente les pida reiniciar el servidor.

Damos doble clic en URL Rewrite

Agregamos una regla.

Colocamos un nombre y colocamos los valores que se observan en la capturas.

En redirect URL, colocamos la url con HTTPS a donde debería redirigir.

Con estas configuraciones logramos redirigir un web, es decir cuando un usuario coloque en el navegador htttp://www.miweb.com, lo redirija automáticamente hacia https://www.miweb.com.

Saludos, hasta pronto.

 

Recuperar credenciales de un servidor SQL Server 2016

Hace unos días nos encontramos con un inconveniente, nadie recordaba el usuario y clave de un servidor con SQL Server 2016 que usábamos para un ambiente de desarrollo.

Por lo que tuvimos que utilizar un procedimiento que nos permita crear un usuario temporal, asignarle una clave y el rol de Sysadmin.

Importante: Tener en cuenta que el usuario que ejecuta estos comandos debe pertener al grupo de Administradores locales del servidor donde está instalada la instancia SQL.

A continuación detallo los siguientes pasos que seguimos:

  1. Detener la instancia SQL, ya sea por el modo gráfico o por CMD.

2. Iniciar la instancia SQL, en mi caso el nombre de a instancia es la por defecto MSSQLSERVER, pero con los parámetros /m «SQL CMD».

3. Ahora en el mismo CMD con privilegios de administrador, tipeamos SQLCMD, luego crearemos un usuario jdeza y le asignamos una clave.

Una vez creado el usuario, le asignaremos el rol de SYSADMIN.

4. Para finalizar, reiniciamos la instancia MSSQLSERVER.

5. Con estos 4 pasos, ya podemos probar conectarnos al Server SQL.

Si nos dirigimos a Logins, podremos ver que el usuario jdeza se ha creado y tiene el rol de SYSADMIN.

Espero les pueda ayuda en algún momento, por lo menos a mi me ha servido en algunas oportunidades con Microsoft SQL server 2016.

Saludos.

 

Habilitar protocolo de cifrado TLS 1.2

En esta oportunidad enseñaré los datos para habilitar el protocolo de cifrado TLS 1.2 y deshabilitar el 1.0.

Actualmente todas las aplicaciones en IIS que usan TLS 1.0 se recomienda realizar esta configuración para tener una comunicación más segura en nuestras aplicaciones.

Si queremos verificar si nuestra aplicación o servidor ejecuta TLS 1.0, TLS 1.2, podemos hacerlo desde la siguiente URL: https://www.ssllabs.com/ssltest/ , lo únio que debemos hacer es digitar el nombre de nuestra aplicación.

Por ejemplo la siguiente imagen muestra, que tenemos habilitado el protocolo TLS 1.2 y deshabilitado el TLS 1.0, con esto podemos estar tranquilos que nuestra aplicación está intercambiando datos de manera segura.

Para lograr este resultado en nuestro Test, debemos aplicar las siguientes configuraciones en la siguiente ruta de registro de Windows:

1.- Deshabilitar TLS 1.0:

En protocolos, damos clic derecho y creamos nueva llave de registro con el nombre TLS 1.0, luego hacemos clic derecho en TLS 1.0 y creamos dos llaves de registro Client y Server, dentro de Client y Server creamos el Valor de DWORD (32 bits)  Enabled con valor hexadecimal Cero.

2.- Habilitar TLS 1.1 y 1.2: Simplemente debemos crear las siguientes claves de registro:

En protocols, damos clic derecho y creamos nueva llave de registro con el nombre TLS 1.1, luego hacemos clic derecho en TLS 1.1 y creamos dos llaves de registro Client y Server, dentro de Client y Server creamos dos Valores de DWORD (32 bits) Enabled (Valor Hexadecimal Uno) y DisabledByDefault (Valor Hexadecimal Cero)

Nuevamente en protocols, damos clic derecho y creamos nueva llave de registro con el nombre TLS 1.2, luego hacemos clic derecho en TLS 1.2 y creamos dos llaves de registro Client y Server, dentro de Client y Server creamos dos Valores de DWORD (32 bits) Enabled (Valor Hexadecimal Uno) y DisabledByDefault (Valor Hexadecimal Cero)

Al final nuestro registro de windows debería tener la siguiente estructura; con esta configuración tenemos más segura la comunicación entre nuestra aplicaciones.

Espero les sea útil, nos vemos en otra oportunidad.

Importante: La siguiente configuración ha sido aplicada en entornos de windows Server 2008 R2 y Windows 7.

Certificados gratuitos para Exchange

Existen varios proveedores de certificados que otorgan certificados Digitales gratuitos, uno de ellos es StartSSL,  a quién estoy agradecido, ya que gracias a estos certificados puedo realizar laboratorios completos los cuales comparto con ustedes.

Quizás pensemos que por ser gratuitos no son buenos, pues nos equivocamos, ya que estos certificados los he usado en ambientes de producción de clientes con Exchange y Lync y hasta el momento me funciona perfecto.

Bueno vamos al grano y al objetivo este artículo, que es obtener un certificado  digital, en este caso para Exchange.

Lo primero que haremos es ingresar a la página de StartSSL y dar  clic en Start EV Validation Now.

cert1

Siguiente paso seleccionar Sign Up.

cert2

Seleccionamos el país y escribimos nuestro correo electrónico; es recomendable usar el correo que está registrado en nuestro dominio externo de nuestra empresa, pero no hay problema usaremos nuestro correo de hotmail.

Aceptamos los términos y damos clic en enviar código de verificación.

cert3

Abrimos nuestro correo, copiamos el código y pegamos en la siguiente ventana. Luego daremos clic en Obtener el nuevo certificado (OJO: No es el certificado que se instalará en el exchange, es el certificado que usaremos para autenticar con el sitio StartSSL)

cert4

Colocamos una contraseña para la llave privada del certificado con el que haremos la autenticación para ingresar al sitio de StartSsl.

cert5

Seleccionamos en descargar Archivos.

cert6

Nos descarga el certificado con la llave privada para realizar la autenticación con StartSSL.

cert7

Lo que haremos es instalarlo, para ello ejecutamos con el usuario actual de nuestro equipo (puede ser un equipo personal, no el servidor de exchange).

cert8

Seleccionamos el certificado.

cert9

Colocamos la contraseña que se colocó en el paso incial.

cert10

Simplemente damos clic en siguiente.

cert11

Finalizamos.

cert12

Una vez finalizada la instalación nos muestra la siguiente ventana en la web, seleccionamos Login Now.

cert13

Nos muestra una ventana emergente, a la que daremos aceptar.

cert14

Con estos pasos hemos logrado acceder al panel de administración para poder obtener nuestro certificado.

Sin embargo queda validar que somos dueños del dominio, para ellos vamos a Validations Wizard, seleccionamos Validación de dominio y continuar.

cert15

Colocamos el dominio y continuar.

cert16

Aquí debemos seleccionar la cuenta a la que necesitamos que nos envíe el código para verificar que nos pertenece el dominio.

Abrimos el correo que seleccionamos, copiamos y pegamos el código y validamos.

cert17

Todo salió perfecto, ahora seleccionamos en To «Order SSL Certificate»

cert18

En el cuadro agregamos todos los nombres que queremos proteger.

cert19

Si bajamos la página, debemos pegar el CSR antes generado en el Exchange y damos clic en Submit.

cert21

Para descargar el certificado damos clic en Here.

cert22

Por fin hemos descargado el certificado, el cual será instalado en nuestro exchange. En archivo .ZIP veremos que existen varias carpetas, yo usaré el certificado que se encuentra en OtherServers.

cert23

Espero les sea de utilidad, hasta pronto.

Descubrir password con Wireshark

Casi la mayoría de administardores de equipos de networking siguen utilizando el protocolo telnet para conectarse a switch, routers, a pesar que saben que es un protocolo donde los datos viajan sin cifrar y es muy sencillo poder descubrir los usuarios y las contraseñas utilizadas.

En esta oportunidad utilizaré un analizador de paquetes o sniffer llamado WIRESHARK y lo realizaré de manera local, sólo para el objetivo que es demostrar lo sencillo que es descubrir las credenciales.

Lo primero que haremos es descargar el software desde la siguiente ruta  https://www.wireshark.org/download.html, en mi caso descargué el portable 32 bits.

Una vez descargado ejecutamos el software y nos debe de mostrar la siguiente ventana:

En filtro colocamos telnet y aplicamos; con esto le estamos diciendo a Wireshark que me muestre en la ventana sólo los paquetes del protocolo telnet.

0

Luego nos dirigimos a Interfaces.

1

Seleccionamos la interfaz en la que wireshark va realizar la captura de paquetes, en mi caso será mi tarjeta Wireless, la cual está conectada a mi red LAN; luego le damos Start (Iniciar).

2

Ahora con el wireshark ejecutándose realizamos una conexión telnet hacia un dispositivo ya sea un switch, un router u otro.

3

Ingresamos el usuario y la contraseña correcta para conectarnos.

4

Ahora nos dirigimos a la ventana de wireshark y empezamos a analizar los paquetes.

En la siguiente pantalla la IP del equipo remoto 172.16.0.168 no indica que ingresamos el password.

6

Luego nosotros (ip 192.168.11.190) empezamos a digitar el password.

Podremos ver la contraseña letra por letra en los paquetes que envía nuestra Ip, en mi caso son todos los paquetes resaltados de color amarillo.

7

Con este artículo demostramos que el protocolo telnet es muy vulnerable y por ende no se debe utilizar para administrar equipos remotamente.

Es mejor utilizar el protocolo SSH para estos fines.