RSS |

Blog de Omar

Just another WordPress weblog

Advertisement

Archive for the ‘ Ethical Hacking ’ Category

Como todos los finales de año, las noticias en Internet nos muestran las contraseñas más absurdas y ridículas utilizadas en el mundo. Una de las más renombradas viene de la empresa SPLASHDATA (https://www.splashdata.com/), empresa de seguridad que tiene soluciones para gestionar la contraseña de personas naturales y empresas.

Resulta por lo menos curioso que una empresa que cuenta con soluciones que gestionan contraseñas de terceros, haya realizado una estadística de las peores contraseñas. Los mal pensados y paranoicos pensarían que la empresa SPLASHDATA gestiona, fisgonea las contraseñas y las procesan para obtener estadísticas. Personalmente no confío en almacenar mis contraseñas en la nube y que otros gestionen mis contraseñas, para eso prefiero utilizar soluciones como KeePass (https://keepass.info/).

KUNAK, ha desarrollado un cuadro de las peores contraseñas más utilizadas por las organizaciones privadas y públicas peruanas durante el año 2018, información basada en los proyectos de Ethical Hacking que ha realizado la empresa en el último año y en foros privados relacionados al tema.

image

Los resultados del año 2018 en el mundo

La empresa SPLASHDATA nos muestra el siguiente resultado, de las contraseñas más utilizadas en el año 2018.

image

Sobresale como siempre la infame e infaltable “123456”, contraseña que ha sido utilizada desde mucho antes que existieran las computadoras personales y cuyo uso sigue vigente tras el paso de los años.

Más interesante aun, es la estadística de los últimos ocho (08) años de las contraseñas más utilizadas, en donde la contraseña “123456” se erige como vencedor indiscutible.

clip_image004

Estadísticas en el Perú

La motivación de la realización de este documento, resulta en aterrizar las estadísticas mundiales a la realidad peruana y es que como todos debemos imaginar, en el Perú casi nadie nadie realmente utilizaría contraseñas como: “sunshine”, “iloveyou”, “princess”, “football” y menos “donald”; y es que, aunque en el Perú Donald Trump no sea el personaje más querido y adorado por todos los peruanos, Donald pasa extremadamente desapercibido por estos lares.

image

Contexto peruano

Antes de mostrar los resultados de las contraseñas más utilizadas en el Perú, debemos hacer algunas aclaraciones sobre lo que hemos identificado en base a la gestión de contraseñas en organizaciones peruanas. Las características que debemos resaltar corresponden a la mayoría de las organizaciones, no a todas claramente, pero si a la mayoría de las empresas peruanas.

  1. La mayoría de las empresas gestionan la contraseña con el Directorio Activo de Microsoft. Si señores, Microsoft ha triunfado en el Perú y salvo extrañas y marcianas excepciones, las empresas peruanas usan Microsoft.
  2. Las contraseñas de servidores (Windows y Unix), equipos de comunicaciones (switches, routers, etc) y servicios (bases de datos, servicios web, etc), son gestionadas por los sysadmins, en archivos del tipo Excel o Word. Si señores, aunque hemos intentado persuadir a las organizaciones de ésta mala práctica, los sysadmins aun almacenan clandestinamente sus contraseñas en archivos Excel, Word o peor aún, en archivos TXT. Archivos que son transferidos entre administradores casi de contrabando por la red.
  3. Finalmente, las empresas peruanas suelen utilizar Single Sign On (SSO) para casi todos sus servicios, es decir, la misma contraseña con la que ingresamos al computador, es la misma que utilizamos para ingresar al correo electrónico, ingresar a la red VPN e ingresar a casi todos los servicios que se exponen en Internet.

Si estás leyendo esto y hasta el momento te sientes identificado, este post definitivamente es para ti.

Los resultados en el Perú

Sin más preámbulo, veamos los resultados de las peores contraseñas utilizadas en el Perú y que son la prueba fehaciente que aún nos falta mucho para madurar en ciberseguridad.

image

Aunque algunas personas necesiten una provisión de aire para asimilar los resultados, esto es lo que nos arroja la estadística en el Perú (en la parte inferior de este documento encontrarán los detalles técnicos que dieron estos resultados). Parece increíble, lo sabemos, pero resulta mejor conocer la realidad para tratar de cambiarla.

Lo más resaltante de los resultados es lo siguiente:

  1. En el Perú somos unos fanáticos de la palabra “password”, somos tan fanáticos que hemos buscados combinaciones que no resultan de uso común en otras partes del mundo.
  2. En el Perú somos unos respetuosos de la política de seguridad, ¡sí señores! Y es que los incisivos apuntes realizados por los Oficiales de Seguridad de Información no han sido despilfarrados. La política de seguridad de la mayoría de las empresas debe cumplir por lo menos tres (03) de los cuatro (04) siguientes criterios:

Longitud mínima de 08 caracteres

Caracteres alfanuméricos

Al menos una mayúscula

Al menos un carácter especial

Aunque aún no hayamos advertido, claro que cumplimos con la política de seguridad porque ahora solemos utilizar contraseñas del tipo:

Noviembre2018

Diciembre2018

Enero2019

Empresa2018

Empresa2019

Empresa2020

3. Y finalmente, la última atrocidad característica de las contraseñas peruanas, es que colocamos como contraseña el mismo nombre de usuario, característica muy utilizada sobre todo en servicios de red, por ejemplo, es muy común identificar un usuario de Base de Datos llamado “app_logistica” cuya contraseña es idéntica.

Conclusiones

  1. Las organizaciones peruanas, por lo general, aún están hacen uso de contraseñas débiles, dentro de la que destacan variables de la palabra “PASSWORD”.
  2. Un patrón de contraseña muy utilizado en las organizaciones peruanas está asociado al nombre de la organización, seguido del año. Por ejemplo, si la empresa es KUNAK, las contraseñas utilizadas serian Kunak2018, Kunak2019 y/o Kunak2020.
  3. Finalmente, otro patrón de contraseña identificados en las organizaciones peruanas corresponde al nombre del mes seguido del año. Por ejemplo, Noviembre2018, Diciembre2018 y la próxima contraseña será Enero2019.

image

    Popularity: 1% [?]

    Señores, les traje algunos recuerditos de la última EKOPARTY 20018 que se realizó en setiembre de este año. Y es que si pensaron que no me acordaba de ustedes ( ̶e̶s̶t̶a̶b̶a̶n̶ ̶e̶n̶ ̶l̶o̶ ̶c̶o̶r̶r̶e̶c̶t̶o̶) estaban muy equivocados.

    Aunque las bases son muy sencillas, toca colocarlas para que luego ninguna persona  ̶d̶e̶s̶e̶s̶p̶e̶r̶a̶d̶i̶t̶a̶ ̶y̶ ̶r̶o̶m̶p̶e̶ ̶b̶o̶l̶a̶s̶  se sienta vulnerada:

    • Fecha del sorteo: Jueves 11 de Octubre
    • Horario: 20:00 (-5GMT ) esta es hora peruana
    • ¿Quienes pueden ganar?: peruanos (sólo peruanos, enviar los souvenirs a otro país tendría un costo superior al valor del producto sorteado)
    • ¿Cómo hago para ganar?
      1. Darle “Me gusta” a la imagen del sorteo (https://www.facebook.com/El.Palomo.Seguridad.Informacion/)
      2. Comenta invitando a un amigo para que también participe.
      3. Comparte el post del sorteo.

    ¿ Y qué sorteamos?

    Pues sorteamos tres (03) souvenirs, aunque no existe algún orden de importancia entre lo sorteado, esta es la manera más ordenada para hacerlo.

    • Primer premio: una (01) camiseta color ploma que dice “BYTE ME”
    • Segundo premio:  una (01) camiseta color negro que  dice “EKOPARTY”
    • Tercer premio: una taza + stickers de la EkoParty.

    ¿Quién ocupa el primer, segundo y tercer puesto?

    • Nadie  ̶e̶s̶t̶o̶ ̶e̶s̶ ̶u̶n̶a̶ ̶d̶i̶c̶t̶a̶d̶u̶r̶a̶, del total de personas que cumplan con las condiciones del sorteo, obtendré al azar un listado de tres (03) ganadores y de esos tres suertudos, también estableceré un orden al azar para determinar el ganador del primer, segundo y tercer premio del concurso.

    Aquí dejo algunas fotos de los souvenirs sorteados para una mayor referencia. Mucha suerte a todos.

    IMG_4521 IMG_4523
    IMG_4530 IMG_4586

    Popularity: 2% [?]

    Señores, sin  mucho más que decir, les adjunto la presentación del evento “ISACA Student Group – PUCP 2016”.

    banner

     

    Descarga la presentación: [AQUÍ]

    Popularity: 6% [?]

    portada

     

    Realizar hacking es más fácil de lo que parece o al menos eso es lo que trato de hacer parecer con este blog y hago lo propio cada vez que dicto capacitaciones en diversas empresas. Lo cierto es que lo único que necesitamos muchas veces es tan sólo un momento de lucidez, un momento de espiración, un poco de alcohol y dejar que las ideas fluyan a la buena o a la mala (cuando el cliente nos mete presión peor que Diego Godín cuando defiende a su selección) .

    Después de una semana de agonía donde vi caer una vez mas a la selección peruana por las clasificatorias Rusia 2018, he decidido escribir sobre unas de las técnicas que suelo utilizar cuando nos solicitan realizar pruebas de Ingeniería Social, sólo necesitamos mezclar algunas técnicas del tipo spear phishing y obtendremos resultados muy interesantes. Vamos a utilizar un programa que todos suelen utilizar, el estúpido y sensual EXCEL.

    ¿Cómo lo vamos hacer?

    1. Primero, la idea es  utilizar Ingeniería Social para esto, hay que hacer que nuestro archivo Excel llegue a las manos de nuestra amigo víctima y que sea lo suficientemente creíble para que pueda ser abierta (aquí esta el ingenio y el verdadero trabajo).
    2. Una vez que nuestro causa víctima haya abierto el archivo, todo cae por su peso, producto de la ingenuidad, de la estupidez confianza que tienen las personas para ejecutar MACROS en los archivos Excel. Hay que admitirlo, a las personas les gusta Excel, al diablo con las Bases de Datos Oracle, MySQL, etc; la mejora base de datos para el común de los mortales un archivo XLS.
    3. El archivo Excel contiene una pequeña encuesta pero detrás de esto se ejecuta una MACRO muy linda, la macro hace lo siguiente:
      1. Crea unos archivos tipo LOGS en el directorio D:\ del computador, estos archivos sólo los utilizo como evidencia de que se puede ejecutar cualquier comando.
      2. La MACRO ejecuta comandos FTP y realiza una conexión a un servidor externo en Internet y envía archivos hacia un lugar lejano, muy lejano.
      3. Finalmente, la MACRO buscar archivos con una extensión específica, para la prueba de concepto (POC) sólo busca archivos PDF en el directorio D:\ ¿quieren algo más sofisticado? pues esfuércense un poquito.

    4. Finalmente, aparece un mensaje de agradecimiento indicando que han enviado los datos solicitados para la encuesta. A veces hasta te nuestro súper amigo víctima envía un correo indicando que ya respondió la encuesta y que merece un ascenso por ser tan proactivo.

    Les dejo una imagen de la encuesta que se me ocurrió para el evento de ISACA del año 2015, cuando dabas CLIC en el botoncito “Enviar Encuesta” has sido OWNEADO.

    2

     

    Dejen volar su imaginación: algunas variantes interesantes

    1. Que tal si …. obtenemos las contraseñas de las redes Wireless que almacenan los computadores.

    Se me ocurre que en vez de ejecutar un simple IPCONFIG como en el ejemplo anterior, ejecutamos un comando para obtener las contraseñas en texto claro de las redes inalámbricas almacenadas en el computadores de nuestra víctima.

    3

     

    Y ya está, no necesitamos hacer mucho esfuerzo para obtener la contraseña de la red inalámbrica, además,  imaginemos un hacker un poco más interesado y preocupado en poder obtener información seguro que ya realizó algo de wardriving previo al envío del archivo Excel. Aquí puedes aprender como realizar wardriving de manera rápida y sencilla [AQUÍ].

     

    2. Que tal si…. ejecutamos comandos interesantes

    Y finalmente, se me ocurren ejecutar comandos interesantes para obtener información del computador de una organización y que puede servirnos para ir escalando privilegios en otros computadores de la organización, a continuación alguno de los comandos que podríamos utilizar:

    1. Net user: Para obtener los usuarios locales del sistema operativo o para agregar usuarios.
    2. Net localgroup Administradores [Administrators]: Para obtener los usuarios que pertenecen al grupo de Administradores
    3. Arp –a: Para obtener el listado de direcciones IP con las que ha estado en comunicación el computador.
    4. Netsh advfirewall firewall show rule name=all: Para obtener las reglas del firewall del computador.
    5. dir /s/b  D:\*.pdf: Para buscar archivos PDF en el directorio D:\ del computador de manera recurrente.
    6. Lo que sea fruto de tu imaginación.

    4

     

    ¿Cómo prevenimos este tipo de ataques?

    1. Si nos encontramos en un dominio, es decir, nuestra computadora se encuentra attachada a un Active Directory, podemos configurar una GPO que deshabilite la ejecución de Macros.

      5
      Nota: Debes deshabilitar las macros para programa de Office, es decir, deshabilitar para Microsoft Word, Microsoft Excel, Microsoft Power Point, etc. Los excel son los mas peligrosos por lo general porque son los mas comunes.

      Nota2: Hay forma de sacarle la vuelta a la aplicación a la aplicación de la política del AD, toca guardar el archivo Excel en la Trusted Location, que son directorios donde la GPO no aplica. Absurdo por todos lados.

      7

    2. En general, no me da ninguna confianza ejecutar ningún archivo que contiene una MACRO. El mensaje de advertencia es tan grande que desanima a cualquiera abrir un archivo de este tipo. No lo abras!!

    6

     

    Listo señores, el resto de lo que pueden hacer con Excel se los dejo a su imaginación. Nos vemos y happy hacking!! wq!

     

    ************************************************************

    Popularity: 13% [?]

    1Después de mucho tiempo me tomo algo de tiempo para escribir, sin más preámbulo voy a escribir sobre puertas traseras en sistemas operativos basados en Linux. Las puertas traseras o backdoors son mecanismos de acceso que se instalan o configuran en un servidor para poder tener un acceso  rápído y facil al después de haber tenido acceso al mismo. Hace algún tiempo escribí sobre backdoors en sistemas Operativos Windows, aquí puedes ver los posts:

    • Making Metasploit Backdoors – Parte 1 [AQUÍ]
    • Making Metasploit Backdoors – Parte 2 [AQUÍ]

    Algunas premisas:

    Antes de que inicies a leer este POST, debes tener en cuenta lo siguiente sobre los backdoors:

    1. Un backdoor se puede instalar cuando el sistema ya ha sido vulnerado (obvio pero lo digo por si acaso).
    2. Si alguna vez te dejaron un computador Linux por unos momentos, este post es para PARA TI.
    3. Un backdoor puede ser instalado si es que tenemos un acceso físico al computador. Por ejemplo: “Te dejo la compu un momento, voy al baño”, es aquí donde puedes aprovechar, es tu momento.
    4. La idea de un backdoor es pase lo mas desapercibido posible, es decir, que el sysadmin no sospeche que podemos acceder a su computador/servidor cuando nosotros querramos.

    Bueno, sin más preámbulo iniciemos con los métodos para backdoorizar un sistema Linux.

     

    Los archivos utilizados en este POST lo pueden descargar desde: [AQUÍ]

    Método 01: Setuid Backdoors

    Un poco de teoría

    Todos hemos escuchado hablar de los permisos en Linux, verdad? obvio que sí pero de pronto algunos nunca escucharon de los permisos GETUID, SETUID y STICKY. Pues este mecanismo de backdoor está asociado a SETUID.

    ¿Entonces en que consiste el SETUID?

    El SETUID es un bit que permite a las aplicaciones ejecutarse con los permisos de su propietario. El concepto puede sonar muy abstracto pero si ponemos un ejemplo es más facil entender, vamos a crear un archivo llamado TEST.C y lo compilamos.

    image

     

    Ahora vamos a ejecutar el archivo TEST con un usuario distinto al de ROOT y veremos que los comandos CAT /ETC/SHADOW y LS /ROOT no se ejecutarán debido a que no cuentan con los permisos requeridos. Sin embargo, si le asignamos el bit SETUID se logran ejecutar los comandos debido a que ahora cuentan con los permisos de su propietario, es decir, de ROOT.

    image

     

    Le asignamos el bit SETUID y vemos que se puede ejecutar los comandos.

    image

     

    Este es sólo un resumen  rápido del bit SETUID pero si aún te quedan dudas de como funciona puedes revisar los siguientes enlaces:

    Ahora sí el BACKDOOR

    Bueno, ahora que ya vimos algo de la teoría necesaria, vamos a plantar el backdoor en el servidor utilizando SETUID. Vamos a crear un pequeño programa en C en donde se ejecutar una shell con los permisos de ROOT al invocarlo, es decir, cada vez que un usuario diferente a ROOT ejecute este archivo vamos a obtener una SHELL con los permisos de ROOT. Lo que toca es colocar (o esconder) este ejecutable en un lugar en donde nadie pueda sospechar que exista y asi podremos tener una shell para acceder como ROOT cuando quisieramos.

     

    image

     

    Algunos son mas ingeniosos, es decir, imaginemos que tenemos un Sysadmin algo curioso y encuentra un ejecutable con un nombre extraño y lo ejecuta, caramba!! habremos sido descubiertos y tendremos que buscar una buena excusa para argumentar porque dejamos un backdoor. Debido a eso podemos ser un poco más ingeniosos y hacer parecer nuestro ejecutable malicioso un ejecutable conocido e inofensivo. Miran el siguiente ejemplo:

     

    image

     

     

    Método 02: Backdoors en Archivos .deb

    Los archivos con extensión DEB son los paquetes utilizados por distribuciones Linux basados en Debian. Digamos que es algo así como un .EXE en Windows (algo así). Cuando los archivos .DEB son instalados ejecutan unos comandos de postinstalación, basicamente para borrar algunos archivos temporales creados durante la instalación, pues lo que vamos hacer es editar esos comandos que se ejecutan POST instalación para beneficiarnos. A continuación los pasos para colocar un backdoor en un archivo .DEB:

     

    1. Vamos a utilizar un archivo .DEB que sepamos que el sysadmin va a instalar, digamos que tenemos acceso al repositorio de instaladores que normalmente usa el sysadmin y vamos a colocarle un backdoor.
    2. Vamos a utilizar el archivo sudo.c que creamos en el ejemplo anterior para colocarlo dentro de la nueva estructura del archivo .DEB. Aquí vamos:

     

    • Descargarmos un paquete, en este caso el freesweep.deb pero puede ser cualquiera. Fijense que le hemos puesto la opción –download-only para que no se instale sino que sólo se descargue.
    • Creamos una carpeta de trabajo llamada /tmp/prueba/work y sobre esa carpeta vamos a trabajar y modificar el archivo .DEB

    image

     

    • Ahora toca crear el archivo POSTINST que se ejecuta después de instalar el paquete .DEB, en el archivo POSTINST hemos añadido una línea para que nuestro backdoor funcione.

    image

     

    • Finalmente, el sysadmin instala el paquete y la instalación generará el archivo /usr/share/menu/freesweep.old en el servidor. Este archivo luego puede ser utilizado por un usuario de menos privilegios para obtener una shell con permisos del usuario ROOT.

    image

    Algunos detalles:

    El segundo método utilizado es algo tedioso si es que vemos que el resultado es el mismo que el primer método, obtener un ejecutable que nos permite acceder como ROOT; además hay ciertas desventajas:

    • El ejecutable malicioso llamado SUDO tendría que haber sido compilado en el mismo servidor o en un servidor con la misma infraestructura (lo que nos quita algo de tiempo)
    • Tardamos mucho en el segundo método, por lo que el primer método por ser más rápido seria a todas luces mucho mas conveniente. Sin embargo, que tal si colocamos un ejecutable que intente conectarse remotamente a través de NETCAT o a través de una conexión reversa. Ese mecanismo es ya conocido y está en portal web de Offensive Security así que no pienso repetirlo en el blog pero sí en el video de manera rápida.

     

    Conclusiones:

    1. Nunca le dejes tu computador desbloqueado a nadie, menos con privilegios de ROOT.
    2. Si tu computador Linux ya ha sido vulnerado lo más probable es que te hayan dejado algún backdoor y no te des cuenta. Y si tienes algún ROOTKIT pues….. mejor dile adiós a tu sistema operativo.
    3. Trataré (no prometo nada) escribir más seguido.

     

    *****************************************************

    Popularity: 10% [?]