miércoles, 28 de abril de 2021

Rewrite de URL en NGINX



Cómo hacer un rewrite de una URL en NGINX.



Hace años, las URL solían ser del tipo:

https://www.web.com/noticias.php?id=1284

Esto pasó de moda y hoy en día es habitual que las URL sean del tipo:

https://www.web.com/noticia/1284

NGINX nos permite crear URL modernas mediante su instrucción rewrite.

Si volvemos al caso anterior, podemos lograrlo en NGINX usando este código:

rewrite ^/noticia/(.*) /noticias.php?id=$1 last;

Donde la sintaxis es:

rewrite regex replacement [flag];

- regex lee la expresión regular introducida por el usuario en la URL.
- replacement se refiere a la "parte real", los archivos del servidor con sus variables GET.
- flag: puede ser uno de estos cuatro valores

• last: deja de procesar el rewrite y busca el siguiente regex.
• break: deja de procesar el rewrite.
• redirect: realiza un redirect con código 302.
• permanent: realiza un redirect permanente con código 301.

Los rewrite se pueden emplazar dentro de un bloque location o de un bloque server en NGINX.


Fuente:

http://nginx.org/en/docs/http/ngx_http_rewrite_module.html
0

miércoles, 21 de abril de 2021

Extraer clave privada de un fichero PFX de un IIS



Comprobar si un certificado en formato PFX tiene un password asociado.



Puede que alguien nos pida instalar un certificado en un servidor Linux y que este haya generado el certificado originalmente en un servidor Windows. Desde el IIS de Windows, no se puede exportar una clave privada como .key, por lo que tendremos que dar algunos tumbos para dar con la clave privada.


Exportar clave privada (IIS)


Abrimos el Microsoft Management Console (mmc).

Ir a File > Add/Remove Snap-in.

Doble clic en Certificates.

Seleccionar Computer account.

Seleccionar Local computer y clic en Finish.

Ir a Console Root > Certificates > Certificate Enrollment Requests.

Clic derecho en el certificado y seleccionar All Tasks > Export.

Selecciona Yes, export the private key.

Selecciona Personal Information Exchange – PKCS #12.

Entra un password para proteger tu private key (obligatorio).

Seleccionar la ubicación dodne guardar la private key.

Clica Finish.

La clave privada se exporta como archivo .pfx.


Convertir .pfx a .key


Ahora toca convertir el pfx en .key. Para ello, podemos usar la utilidad openssl en Windows/Linux:

HOST# openssl pkcs12 -in archivo.pfx -nocerts -out archivo.key

Donde archivo.pfx es el origen y archivo.key el fichero que se generará.

Listo, ya tenemos el fichero .key listo para usar el certificado en un servidor que ejecute Linux.
0

miércoles, 14 de abril de 2021

Ver cuándo cambió la contraseña un usuario



Cómo ver qué día cambió la contraseña de Windows un usuario local o de dominio.



Hay ciertas situaciones en las que nos puede interesar averiguar cuándo un usuario cambió su contraseña por última vez, como por ejemplo un incidente de seguridad.

Para ver esta información desde Windows, podemos usar el comando "net user" seguido del nombre de usuario, en caso de cuentas locales.

Para averiguar lo propio en cuentas de dominio, podemos usar "net user" seguido del nombre de usuario seguido de la opción /domain.

Ejemplo de cuenta de usuario local:

C:\Users\Administrador>net user Administrador Nombre de usuario Administrador Nombre completo Comentario Cuenta integrada para la administración del equipo o dominio Comentario del usuario Código de país o región 000 (Predeterminado por el equipo) Cuenta activa No La cuenta expira Nunca Ultimo cambio de contraseña 30/03/2021 18:18:36 La contraseña expira 29/10/2021 13:33:23 Cambio de contraseña 30/03/2021 18:18:36 Contraseña requerida Sí El usuario puede cambiar la contraseña Sí Estaciones de trabajo autorizadas Todas Script de inicio de sesión Perfil de usuario Directorio principal Ultima sesión iniciada 07/12/2010 8:23:21 Horas de inicio de sesión autorizadas Todas Miembros del grupo local *Administradores Miembros del grupo global *Ninguno Se ha completado el comando correctamente.

Como se observa, el último cambio de contraseña se produjo el día 30/03/2021.
0

miércoles, 7 de abril de 2021

Actualizar versión de SSH en Linux



Cómo actualizar la versión de SSH en un servidor con Linux.



Las versiones tempranas de OpenSSH 7.x que encontramos en multitud de sistemas Linux relativamente modernos contienen bugs que hacen saltar todas las alarmas en las auditorías de seguridad, con problemas tipo "OpenSSH user enumeration vulnerability".

Para resolver estos problemas, podemos actualizar la versión de SSH compilando el código fuente de una versión superior con los pasos que mostraré a continuación.

El sistema que muestra el problema mencionado tiene la siguiente versión de SSH instalada:

HOST # ssh -V OpenSSH_7.6p1, OpenSSL 1.1.0i-fips 14 Aug 2018

Para descargar versiones más actuales de OpenSSH para Linux, podemos ir a la web de SSH:

https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/

Desde el servidor, podemos descargar una de las versiones, en este caso será la versión 8.8, con wget:

HOST # wget https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gz --2021-09-29 10:35:53-- https://cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-8.8p1.tar.gz Resolving cdn.openbsd.org (cdn.openbsd.org)... 151.101.130.217, 151.101.194.217, 151.101.2.217, ... Connecting to cdn.openbsd.org (cdn.openbsd.org)|151.101.130.217|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 1815060 (1.7M) [application/octet-stream] Saving to: ‘openssh-8.8p1.tar.gz’ openssh-8.8p1.tar.gz 100%[==========>] 1.73M --.-KB/s in 0.06s 2021-09-29 10:35:53 (27.5 MB/s) - ‘openssh-8.8p1.tar.gz’ saved [1815060/1815060]

Descomprimimos el fichero descargado:

HOST # tar xvf openssh-8.8p1.tar.gz

Entramos el directorio que se ha creado, con "cd openssh*".

A continuación, compilamos el código fuente:

HOST # ./configure HOST # make HOST # make install

Cuando acabe la compilación ya correrá la nueva versión de SSH en el sistema (v8.8):

HOST # ssh -V OpenSSH_8.8p1, OpenSSL 1.1.0i-fips 14 Aug 2018

A partir de este momento ya no debería saltar ningún error relativo a SSH en la siguiente auditoría.
0