Categorías
Uncategorized

Trabajar como profesional autónomo.

Ser autónomo o emprendedor no es fácil y en ocasiones se van sumando situaciones con clientes que te obligan a valorar si realmente tu estrategia está encaminada a conseguir tus objetivos a mediano/largo plazo, lo cual en mi opinión es sano y una estupenda forma de avanzar. Hacer una «autoevaluación» e identificar los puntos de mejora y potenciar las cosas que crees que estás haciendo bien es algo que cualquier profesional debería hacer con frecuencia. En este post os voy a contar unos pocos casos de las experiencias que he tenido en las últimas 2 semanas para que os hagáis una idea de lo que hay en este sector y cómo lo vemos muchos profesionales que como yo, trabajamos por cuenta propia. Esto no solo en ciberseguridad, me refiero a la informática en general. Tengo muchos colegas que se dedican al desarrollo y la administración de sistemas que tienen experiencias muy parecidas. A lo mejor esto arroja un poco de luz sobre algunos de los motivos por los que muchos profesionales deciden marcharse a otros países o prueban otras cosas. Son experiencias que no pretenden ser una critica ni una queja, intento evitar ambas cosas porque me parecen un desperdicio inútil de energía que podría invertir en otras cosas. De hecho, a toro pasado me hacen mucha gracia cuando las recuerdo y comento con otros colegas, pero creo que puede resultar interesante para cualquier profesional que ahora mismo se este planteando «dar el salto» y trabajar como autónomo. Aquí van.

Cliente A:

Tras 2 meses de conversaciones, de tire y afloje, de llamadas y correos, decide cancelar el proyecto porque asegura que el pentest en el entorno de red que han solicitado tiene que ser más completo y no solo lo que se ha pasado en la oferta. Cito palabras textuales parte de su respuesta, la parte que más le preocupa a ellos:
«Me parece muy bien el enfoque y la metodología pero y si encuentras algo qué hacemos? se reporta pero no se soluciona? creo que nos deberías implementar correctivos para los problemas que identifiques«.
Le contesto, a grandes rasgos, que si quiere soluciones concretas tengo que valorarlo y que es un presupuesto independiente.
Eso le ha echado para atrás porque pretende que encuentre y corrija sus problemas por el mismo precio. Claro que sí hombre, siguiente.

Cliente B:

Tras confirmarme que está de acuerdo en las condiciones económicas para una auditoría (incluyendo los términos del pago), me pide oferta formal y una vez la tiene dicen que ya no les cuadra la forma de pago y quieren que les emita factura con pago previsto a 90 días una vez finalizados los trabajos porque «siempre lo han hecho así y es la forma en la que trabajan con sus colaboradores». El proyecto dura 3 meses, por lo que desde el principio hasta el final tendría que esperar 6 meses para recibir el pago correspondiente. Evidentemente esto va a /dev/null. Siguiente.

Cliente C:

Me pide una formación con un temario idéntico al que he creado para otra empresa con la que suelo colaborar y que son su competencia directa. Ese temario responde a un proyecto de formación que ha pedido un cliente (organismo público mediante licitación) y evidentemente, por el que ambas empresas están compitiendo. Los de la empresa C se han enterado que soy el formador de su competencia y han intentado «pillarme» aún sabiendo la estrecha relación que tengo con su competencia. Cabe resaltar que el temario se encuentra disponible en la web de la empresa con la que suelo colaborar, así que «C» simplemente ha copiado y pegado ese temario el cual me sé de memoria porque lo he creado yo y me han preguntado que cuanto cobro por esa formación. El nombre de la empresa C es «Mi morro S.A». Le contesto simplemente que ese temario, que ha copiado y pegado textualmente de la web, lo imparto para la empresa que son su competencia y que no puedo. Otro a /dev/null

Cliente D:

Me pide un curso avanzado con 25 horas de duración en una tecnología muy concreta la cual saben que domino y precisamente por eso me han contactado. Pues me dice que primero hay que hacer una prueba técnica para ver si «tengo los conocimientos necesarios». Por mi parte no habría problema, le contesto. Luego me dice que además de eso, hay que desarrollar y redactar contenidos, crear un entorno completo de prácticas en AWS y estar atento a un foro todos los días durante 3 meses para ver si surgen preguntas y dar soporte a los alumnos. Tarifa? Entre 20 y 30 euros la hora, son 25 horas de formación y todo lo demás, por supuesto lo quieren por la cara. Pero oye, que son flexibles siempre y cuando no se salga de ese rango, eh?. Qué majos son, qué flexibilidad y qué poca vergüenza. Siguiente.

Cliente E:

Me pide un pentest en una tienda online. Me mosquea ver que es una «empresa» que me pide que haga un pentest completo (incluyendo post-explotación) sobre un dominio que no es el suyo. Pido autorización por parte de la organización que administra ese dominio y me dicen que «ELLOS tienen autorización de hacer lo que quieran y que ellos me autorizan a mi, que no me preocupe». Pido que me enseñen esa autorización y una reunión con el cliente final, me dicen que no es posible por «confidencialidad». Pido que firmemos un NDA para que no haya ningún problema y verificar que efectivamente, lo que me piden se puede hacer. Insisten en que no es posible ni con un NDA firmado por ambas partes. Así obviamente no pienso hacer nada. Siguiente letra en el abecedario.

Cliente F:

3 meses antes este cliente reserva varias semanas para una formación en ciberseguridad en las mañanas. Comunicación prácticamente nula las semanas previas al inicio de la formación. Faltando 2 días para comenzar me escriben un correo diciendo que se cancela porque no hay alumnos suficientes. Ya lo veía venir y por supuesto, no deje de aceptar propuestas de otros clientes en esas fechas por mucho que estuviesen «reservadas», así que ya tenia esas jornadas cubiertas con otros proyectos pero y si me hubiese fiado de ellos desde el primer momento? pues eso.

Cliente G:

Se trata de una editorial muy conocida en España y América Latina que tiene publicados probablemente cientos de libros sobre varias ramas de la informática (no solo seguridad informática). Me dice la persona que me contacta que buscan a un redactor para varios temas de ciberseguridad. Me escribe un mensaje que perfectamente podría cubrir varias páginas, un copy-paste que seguro ha enviado a otros profesionales para ver si alguno pica. En ese mensaje insiste en lo grande que es su editorial, el gran prestigio, reconocimiento, honor y oportunidades de negocio que ganaría escribiendo para ellos. Le contesto que muy bien, pero que no me ha indicado las condiciones de la colaboración. Me responde otra vez con algo muy parecido al texto anterior aunque bastante más corto (aquí ya le ha tocado escribir), eludiendo claramente mi pregunta sobre las condiciones económicas, así que insisto. Ya ve que no puede eludir más el tema y me contesta que al autor le corresponde un %14 de los beneficios brutos, menos impuestos obviamente. Sabe que es muy poco y sin yo decirle nada, me empieza a hablar de lo mucho que cuesta producir y vender libros, que si la piratería, que si los gastos de envío, que si la pandemía, que si los distribuidores, etc. Pase de perder el tiempo contestando, la verdad. A llorar a la llorería.

En fin, todo esto en las últimas 2 semanas y ojo, tengo historias de estas para escribir 4 libros en lo que llevo trabajando como profesional autónomo. Afortunadamente, aún hay muchas más letras en el abecedario y de hecho, me quedan haciendo falta letras para enumerar otras empresas que SÍ son serias y respetan las relaciones que tienen con sus colaboradores externos. Son precisamente esas empresas con las que me siento a gusto colaborando y lo hago con asiduidad, con el máximo compromiso y cariño por mi parte porque se buscan exactamente los mismos objetivos. Como ocurre en cualquier tipo de relación tiene que haber respeto, si eso no existe difícilmente se puede llevar a buen puerto un proyecto del tipo que sea. Aunque abundan empresas como las que he indicado antes, hay muchas otras con las que das lo mejor de ti porque sabes que merece la pena y no solo desde el punto de vista económico, sino también desde el profesional. Si eres freelance/emprendedor y estás empezando, probablemente ya lo haces pero si no, lo mejor que te puedo aconsejar desde mi experiencia es que aprendas a identificar cuáles clientes realmente son interesantes de cara a tus objetivos y cuáles no, en base a eso prioriza tu tiempo y energía de la mejor manera posible. Eso es precisamente lo que intento hacer y aunque debo admitir que es difícil, lo considero necesario para progresar.

No he mencionado nada sobre el tema de los impuestos y las obligaciones que cualquier autónomo/empresario debe cumplir si reside en España. Ese es otro tema que me produce mucha menos gracia que los casos que contaba anteriormente, pero lo dejaré para otra ocasión. Supongo que ya tienes suficiente «motivación» en este post.

Un saludo y Happy Hack!
Adastra.

Categorías
Hacking Programacion Services - Software Web Applications

Herramientas SAST para auditoría de código y SecDevOps – Parte 2

Demostración en vídeo de este post

En este segundo post sobre herramientas SAST para auditoría de código estático, se hablará sobre dos herramientas más: SonarQube y NodeJSScan. El primer post lo puedes leer en el siguiente enlace, en el cual se han descrito las funcionalidades de Security Code Scan e Insider.

SonarQube.

Se trata de uno de los proyectos open source más difundidos y potentes del mundo para auditoría de código. Es una herramienta que soporta múltiples lenguajes de programación, cuenta con una consola de administración web fácil de manejar y una buena cantidad de complementos que extienden las reglas que se encuentran cargadas por defecto en la herramienta. Si bien la versión comercial de SonarQube merece mucho la pena dadas las características que aporta, la versión open source suele ser suficiente en mayoría de los casos. La instalación y uso de esta herramienta no es tan simple como en el caso de las otras herramientas descritas en el post anterior, ya que es necesario instalar y configurar el servidor web y una base de datos para que la herramienta pueda funcionar correctamente, algo que hay que hacer casi de manera obligada si se utiliza esta herramienta para múltiples proyectos y se quiere tener un mejor control de los trabajos que se van realizando, no obstante si lo que se busca es ejecutar la herramienta para una prueba puntual o contra un proyecto especifico y sin ajustar ningún tipo de detalle relacionado con el rendimiento, la mejor opción es utilizar Docker ya que se puede crear un contenedor que cuente con todo ya configurado para su uso.

Es importante tener en cuenta que para usar SonarQube es necesario configurar adecuadamente los complementos en función del lenguaje de programación, algo que se puede hacer desde la interfaz de administración. Por otro lado, cuando se crea un proyecto, si se trata de una aplicación desarrollada en .Net o Java, es necesario ejecutar el «core» de SonarQube, una herramienta externa que se encargará de compilar el código, realizar el análisis y enviar los resultados al servidor central de SonarQube, en realidad es un proceso sencillo y las indicaciones sobre cómo hacerlo aparecen en la página final del asistente en la creación del proyecto.

NodeJSScan

Los proyectos desarrollados en Node.JS tienen características que les hacen bastante particulares y por lo tanto, los defectos y vulnerabilidades que se pueden presentar también lo son. En este sentido, la herramienta NodeJSScan es una solución open source que permite detectar problemas relacionados con la seguridad, desempeño y malas prácticas de desarrollo en proyectos Node.JS. Se puede instalar fácilmente en cualquier sistema con Node.JS instalado o utilizar el despliegue gratuito que se encuentra disponible online en el siguiente enlace. Para usar la herramienta online es necesario contar con una cuenta en Docker Hub y por supuesto, se puede usar si se trata de prácticas pero desde luego no lo recomendaría sobre un proyecto que se utiliza en una empresa o está sujeto a algún tipo de licencia comercial ya que es necesario subir un ZIP con el código entero. La mejor alternativa en ese caso, es descargar la herramienta, instalar y probar localmente.

El proceso es simple, aunque dependiendo del tamaño de la aplicación y la cantidad de ficheros a analizar puede tardar algunos minutos. Cuando termina, enseña un informe completo de los defectos encontrados con un muy buen nivel de detalle.

Como ocurre con otras herramientas de código estático, pueden producirse falsos positivos y evidentemente, la habilidad y conocimientos del analista son cruciales. Como resulta evidente, el perfil indicado para realizar este tipo de actividades es el de una persona con conocimientos en desarrollo de software y seguridad informática, especialmente seguridad web ya que muchos proyectos están orientados precisamente a aplicaciones web.

Espero que estos posts te resulten interesantes y que te motiven para aprender más sobre desarrollo de software seguro.

Un saludo y Happy Hack!
Adastra.

 

Categorías
Hacking Programacion Services - Software Web Applications

Herramientas SAST para auditoría de código y SecDevOps – Parte 1

Demostración en vídeo de este post

Una de las labores definidas en el S-SDLC es la ejecución de pruebas de seguridad, entre las que se incluyen las pruebas de análisis estático para la detección temprana de posibles defectos. Evidentemente, el «éxito» o «fracaso» de estas herramientas radica en las reglas que tengan definidas ya que, después de todo, su funcionamiento se basa en la aplicación de patrones que de antemano se sabe que representan una vulnerabilidad, defecto o mala práctica. Son herramientas fundamentales que ahorran tiempo cuando se encuentran bien configuradas y «afinadas», pero como ocurre con las herramientas de pentesting, no hacen magia y siempre es necesario ejecutar inspecciones manuales para descartar falsos positivos o detectar problemas en el código que la herramienta ha sido incapaz de encontrar. Aún así, a la hora de realizar auditorías de código es vital conocer las principales herramientas que se encuentran disponibles y en todo caso, utilizar varias, ya que es posible que los problemas o defectos que no encuentra una, sí que los pueda detectar otra. Un recurso interesante para conocer las principales herramientas SAST y los lenguajes que soportan es la guía de Source Code Analisis Tools del OWASP, la cual incluye un listado completo de este tipo de herramientas, tanto comerciales como open source. En este primer post se hablará de dos herramientas que resultan interesantes: Security Code Scan y Insider.

Security Code Scan.

Se trata de una herramienta que permite el análisis de proyectos basados en .NET. Es un proyecto libre y se puede instalar de varias maneras, como extensión desde el marketplace del Visual Studio .NET, como componente standalone o utilizando NuGet. Personalmente recomiendo utilizarlo como una extensión de Visual Studio .NET ya que si tienes que hacer una auditoría de código en una solución basada en .NET la mejor alternativa para ello es utilizar el IDE oficial, además de que la extensión se integra muy fácilmente en las soluciones cargadas en el IDE. En la página oficial se encuentran descritos los diferentes procesos de instalación y las ventajas de cada uno.

Es una herramienta capaz de detectar defectos de todo tipo, desde malas prácticas en la gestión de parámetros de entrada hasta problemas más profundos en una solución .NET. Junto con Puma Scan, en mi opinión es la mejor alternativa que se encuentra disponible para proyectos en DotNet.

Insider

Se trata de una herramienta muy sencilla que se ejecuta desde línea de comandos y cuenta con un conjunto de reglas precargadas para diferentes lenguajes de programación, entre los que se incluyen Java/J2EE, Javascript, C#, entre otros. Es capaz de detectar problemas a nivel global, pero no es capaz de detectar problemas específicos en dichos lenguajes. Esto se debe a que las reglas que vienen precargadas están enfocadas a los problemas más comunes descritos en el OWASP Top 10, pero no en problemas específicos o malas prácticas que se pueden presentar en cada uno de los lenguajes de programación que soporta. No obstante, es un proyecto que no requiere ningún tipo de configuración previa y se puede descargar desde la página de GitHub. Otro de los beneficios de Insider es que cuenta con un GitHub Action que permite ejecutar pruebas sobre un repositorio de forma automática y gratuita en cuanto se ejecuta una operación PUSH en el repositorio.
La forma más rápida de empezar a utilizar la herramienta es con uno de los binarios precompilados que se encuentran disponibles en el repositorio, el cual, como se puede apreciar en la siguiente imagen, admite una serie de parámetros que hacen que la herramienta sea fácil de manejar.

Se puede especificar el lenguaje con el parámetro «tech» y el directorio donde se encuentra el código fuente del proyecto con el parámetro «target». Por otro lado, una buena práctica consiste en indicar cuáles directorios o tipos de ficheros deben excluirse del análisis, esto se puede indicar con la opción «-exclude». Aquí normalmente se especifican los tipos de ficheros que no se deben analizar por parte de la herramienta, algo que a la larga ahorra tiempo ya que la herramienta se centrará unicamente en los ficheros con código fuente que interesa analizar. Cabe resaltar que la herramienta analiza los contenidos de todos los ficheros que se encuentra, da igual que sean imágenes, librerías o ejecutables, por ese motivo normalmente hay que incluir múltiples veces  la opción «-exclude».


Finalmente, los resultados que aporta la herramienta se enseñan en la terminal y se guardan en el directorio donde se ha ejecutado en dos ficheros separados, report.html y report.json. En dichos ficheros se podrá ver en detalle qué defectos y vulnerabilidades ha sido capaz de detectar la herramienta sobre el código.

Tal como se puede apreciar en la lista de herramientas SAST disponible en el OWASP, hay muchas más alternativas, sin embargo algunos proyectos se encuentran abandonados o son comerciales, lo cual nos deja con una lista que no suele ser superior a 10 utilidades realmente potentes y que cuentan con una comunidad que apoya, difunde y mejora la herramienta. En el siguiente post mencionaremos otras dos herramientas SAST que además de ser libres, ayudan en la ejecución de auditorias de código profesionales.

Un saludo y Happy Hack!
Adastra.

Categorías
automatizacion Hacking Services - Software Web Applications

Preparación de un entorno con Docker para Hacking web.

Demostración en vídeo de este post

 

Una de las primeras cosas que hacen falta cuando se está aprendiendo cualquier cuestión relacionada con el Hacking en general, es un entorno para realizar las pruebas y poner en práctica lo que se va aprendiendo. En este sentido, a día de hoy existen muchas alternativas para ello, desde plataformas online con retos preparados para «pegarse» unas horas de entretenimiento como HackTheBox o TryHackMe, hasta máquinas virtuales que ya se encuentran preparadas para casos muy particulares, como las que se encuentran en VulnHub. Te encuentras con entrenamientos prácticos como los que ofrecemos en Securízame  sobre temas como DFIR y Red Team, los cuales te ayudan a mejorar tus habilidades.
Si bien todas ellas son alternativas estupendas y una buena manera de aprender de verdad, en ocasiones lo que se necesita es una aplicación para entender como funciona una vulnerabilidad especifica y en este sentido, hay una buena cantidad de aplicaciones web vulnerables por diseño que ayudan en este objetivo, pero es común encontrarse con el problema de que hay que instalar y configurar de dichas aplicaciones. Por ejemplo, si se trata de una aplicación web con el stack típico basado en Apache+PHP+MySQL, será necesario instalarlo todo y luego, empezar a instalar cada aplicación web de forma independiente. En la medida en la que se vayan metiendo más aplicaciones, poco a poco se va haciendo más difícil la gestión de librerías y otros componentes, ya que si algo tienen algunas de las aplicaciones web vulnerables por diseño más conocidas es que muchas son antiguas y pueden haber problemas de incompatibilidades con librerías entre otras cosas.
Como el tiempo es un bien preciado y muy probablemente no merece la pena desperdiciarlo en la instalación/configuración de aplicaciones web que tienen vulnerabilidades comunes, la mejor alternativa es preparar un entorno completo con Docker para Hacking web.
Como verás en este post, no es una labor compleja y tiene el beneficio de que se puede hacer muy fácil y rápidamente, además, puedes montarlo todo en una máquina virtual. A continuación, detallo los pasos que se pueden seguir para conseguir el objetivo de tener un entorno para hacer pruebas de Hacking web plenamente funcional.

 

Pasos para la construcción

1. Un sistema operativo basado en Linux.

En este punto cualquier distribución que brinde comodidad y potencia a la hora de trabajar es suficiente. Siempre lo he dicho, en mi caso concreto la distribución que siempre uso y que cumple con mis expectativas es Debian, sin embargo hay que reconocer que otras distribuciones basadas en Red Hat también son una estupenda elección.

2. Instalación de Docker.

En este sentido, es un proceso más bien sencillo, ya que Docker se encuentra soportado por múltiples plataformas y distribuciones basadas en Linux, por lo tanto su instalación no requiere mucho esfuerzo y el procedimiento se encuentra bien documentado en la página web oficial.

3. Instalación de Docker-Compose.

En algunos casos las aplicaciones levantan varios contenedores y estos son gestionados por medio de «compose». Por este motivo también será necesario instalar este componente, aunque es incluso más fácil hacerlo que el propio Docker Engine. Las instrucciones se encuentran disponibles en el siguiente enlace.

4. Selección de las aplicaciones web a instalar.

Evidentemente se deben seleccionar herramientas que se encuentren «Dockerizadas», es decir, que cuenten con un Dockerfile que se pueda construir con el típico comando «docker build» o que haya una imagen construida en un repositorio público como «Docker Hub». En este sentido, me he tomado la libertad de generar un listado corto de las aplicaciones web vulnerables por diseño que cumplen con este requisito y que hacen parte del «path» que se sigue cuando se aprende sobre Hacking web.

  1. DVJA (Damn Vulnerable Java Application) -> https://github.com/appsecco/dvja
  2. BodgeIT Store -> https://github.com/psiinon/bodgeit
  3. Damn Vulnerable NodeJS Application -> https://github.com/appsecco/dvna
  4. Juicy Shop (mi favorita) -> https://github.com/bkimminich/juice-shop
  5. Mutillidae -> https://github.com/BLTSEC/mutillidae-docker
  6. Java Vulnerable Lab -> https://github.com/CSPF-Founder/JavaVulnerableLab/
  7. WebGoat -> https://github.com/WebGoat/WebGoat

Hacen falta muchas, está claro. Sin embargo lo bueno que tiene la construcción de un entorno basado en Docker es que se pueden ir añadiendo más aplicaciones web vulnerables en la medida en la que se van necesitando o descubriendo. A lo mejor aparece una aplicación vulnerable que no conocías y quieres probarla rápidamente, montar todo de esta manera es mucho más cómodo y conveniente.

5. Selección de puertos y automatización.

En este punto la propuesta que te haría es definir un conjunto de puertos que estén vinculados específicamente a cada aplicación web vulnerable que tengas en tu entorno. De esta manera, sabrás qué aplicación atacar/probar en un momento determinado. Por otro lado, dada la simplicidad de estas labores, se puede automatizar de varias formas, por ejemplo creando un script en batch que ejecute los comandos de creación y ejecución de contenedores de forma secuencial o utilizando el SDK de Docker, tal como te lo comentaba un par de post sobre cómo controlar Docker desde tus scripts en Python
Por ejemplo, podrías ejecutar algo como lo siguiente en tu programa:

docker run – -rm -p 8081:8080 -it -d – -name bodgeit psiinon/bodgeit
docker run – -rm –name webgoatandwolf -d -p 8082:8080 -p 9090:9090 -e TZ=Europe/Amsterdam webgoat/goatandwolf
docker run – -rm -it -d -p 8083:80 vulnerables/web-dvwa
docker run – -rm -it -d -p 8084:3000 bkimminich/juice-shop
docker run – -name dvna -p 8085:9090 -d appsecco/dvna:sqlite

Si ejecutas las instrucciones anteriores tendrás un entorno con cinco contenedores y ahora, si abres un navegador web y accedes a los siguientes puertos verás lo siguiente:
http://IP:8081/                       ->         BodgeIT
http://IP:8082/WebGoat    ->         WebGoat
http://IP:8083/                       ->         Damn Vulnerable Web Application
http://IP:8084/                       ->         Juice Shop
http://IP:8085/                       ->         Damn Vulnerable Node Application

 



Los puertos se han puesto de forma secuencial pero se puede elegir cualquiera, lo importante es tener un mapeo que permita saber luego con qué puerto se puede acceder a cada aplicación del entorno.
A partir de este punto, ahora es cuestión de ejecutar ataques directos contra las aplicaciones web descritas utilizando las herramientas y conocimientos adquiridos sobre hacking web.
Si este post te ha gustado y quieres saber más sobre explotación en aplicaciones web utilizando herramientas como ZAP te recomiendo que te apuntes a las formaciones disponibles en la plataforma de TheHackerWay, concretamente los cursos de ZAP Básico, ZAP Avanzado y Hacking contra APIs REST te pueden resultar interesantes. Si estás pensando en acceder a las tres formaciones te recomiendo que te adquieras al paquete completo ya que de esa manera te resultará más económico.

Un saludo y Happy Hack!
Adastra.

 

Categorías
Explotación de Software Hacking Networking Services - Software

Hacking ético en Securízame 2021: Formato híbrido y una nueva formación sobre hacking en redes Windows.

Algunos ya sabéis que los últimos años hemos estado realizando formaciones sobre Hacking ético en Securízame y desde el año pasado, por razones evidentes, hemos realizado este plan formativo en formato online utilizando la plataforma disponible para ello en Securízame. En esta ocasión, hemos abierto la convocatoria para el segundo semestre el 2021 en formato híbrido, es decir, que los alumnos podrán acceder a los cursos de forma online o asistir presencialmente a la academia en Madrid. Para los que no lo conocéis, deciros que es una formación completa que va desde conceptos básicos/intermedios en el primer curso y luego conceptos avanzados en el segundo, para posteriormente, realizar  entrenamientos en un entorno preparado con una buena cantidad de máquinas vulnerables. También quiero contaros que además de poder realizar esta formación de forma presencial (con aforo limitado) tenemos un nuevo curso muy interesante sobre Explotación y Post-explotación en sistemas Windows. Se trata de una formación un tanto especial ya que es un «mix» entre los entrenamientos que solemos hacer y los cursos. La dinámica se basa en explicar los conceptos de ataques y vulnerabilidades en dichos entornos, realizar pruebas y a continuación los alumnos tienen acceso a un entorno personalizado (completamente independiente del de otros alumnos) para ejecutar esas mismas pruebas. En este curso partimos del escenario típico en el que un atacante se encuentra en una máquina fuera del dominio de un Directorio Activo y a partir de ese punto, comenzamos a enumerar, detectar estaciones de trabajo y características del entorno. Empezamos con la explotación de componentes vulnerables, elevación de privilegios y posteriormente movimientos laterales. Al final podréis ver cómo haceros con el control de un dominio Active Directory entero y sus correspondientes controladores de dominio.

En la imagen anterior tenéis de forma muy resumida las fechas y precios de cada curso, entrenamientos y la certificación RTCP, la cual es presencial y se realiza en la academia de Securízame en Madrid.
A continuación podrás ver los detalles concretos de cada una de estas formaciones:

Además, las dos primeras formaciones las tienes disponibles en formato «online++» con vídeos grabados de las clases que se han impartido en el último semestre del 2020, es decir, se trata de formaciones completamente actualizadas, en las que tendrás recursos disponibles en la plataforma y podrás realizar consultas por medio de correo electrónico. Si te resulta interesante este formato, tienes más información en los siguientes enlaces:

Finalmente, si lo que te interesa es la parte de seguridad defensiva, blue team y DFIR, también hay un plan de formaciones disponible en Securízame y la certificación IRCP impartida por Lorenzo Martínez.
A continuación tienes más información sobre cada uno de los cursos de dicho plan de formaciones.

De momento esto todo, espero verte en Securízame en cualquiera de las formaciones que se encuentran ahora mismo disponibles. Todas estas formaciones están orientadas al mundo laboral, por lo tanto todo lo que aprendas lo podrás aplicar en tu puesto de trabajo. Con estas formaciones podrás adentrarte en el mundo del pentesting y Hacking ético en profundidad.

Un saludo y Happy Hack!
Adastra.

Categorías
Hacking

TheHackerWay ahora disponible en Youtube

Algunos ya lo habéis visto con el post que se ha publicado ayer, he decido crear un canal de YouTube para ir subiendo demostraciones prácticas en vídeo de cada uno de los post técnicos que se van publicando por aquí. Como habéis podido comprobar, en prácticamente todas las entradas hay capturas de pantalla en las que se enseña la ejecución de comandos, código u otros elementos. En algunos casos es difícil capturar el contexto completo de una herramienta sólo con un par de imágenes, por ese motivo el formato vídeo resulta interesante y una alternativa para aquellos que preferís ver este tipo de cuestiones en vídeo. He pensado que será un canal con vídeos cortos, ya que una de las cosas que no me gusta de YouTube es precisamente la cantidad de tiempo que se pierde en vídeos que duran varios minutos o incluso horas sobre cosas que se pueden aprender rápidamente leyendo, sin embargo el rumbo que tome el canal dependerá de vosotros y las sugerencias/recomendaciones que me hagáis, de momento lo veo como un recurso complementario de este blog. Lo tenéis disponible en el siguiente enlace: https://www.youtube.com/channel/UCfdoAz4Da93ShewsqyJYxhg
Evidentemente, lo acabo de crear y no hay ni un solo suscriptor, así que si consideráis interesante esta idea podéis suscribiros y activar las notificaciones para ver cada publicación que se vaya haciendo.
Por mi parte poco más, espero que hayáis tenido un buen verano y os leo en comentarios o mensajes que me enviéis por medio de Twitter, Telegram, LinkedIn etc.

Un saludo y Happy Hack!
Adastra.

Categorías
Hacking Hacking Python Networking

Network Hacking con Impacket – Parte 6

Demostración en vídeo de este post

Se han escrito 5 posts relacionados con el uso de los scripts en Impacket y dado que da para mucho más, aquí va la sexta parte. Para que tengas una referencia de los posts anteriores y los puedas leer o releer, a continuación podrás ver los enlaces a cada una de las partes que se han publicado hace algunas semanas.

Network Hacking con Impacket – Parte 1
Network Hacking con Impacket – Parte 2
Network Hacking con Impacket – Parte 3
Network Hacking con Impacket – Parte 4
Network Hacking con Impacket – Parte 5

En este post se seguirán explorando otras utilidades interesantes que se encuentran en el directorio de «examples» de la herramienta, las cuales  ayudan a ejecutar procesos de enumeración y en algunos casos, apoyan en la ejecución de ataques de diversos tipos.

Sniffing de tráfico utilizando PCAP con sniff.py.

Se trata de una utilidad sencilla que permite la captura de tráfico en una interfaz de red concreta. Este script utiliza la librería PCAP para realizar estas labores y además soporta la especificación BPF para filtrar los paquetes que se capturan. Es importante tener en cuenta que el programa no funcionará si no se encuentra instalada la librería PCAP en el entorno donde se ejecuta pero en todo caso, se puede instalar muy fácilmente con el comando «pip install pcap».
Todo lo que pasa por parámetro al script se toma como un filtro BPF, así que a diferencia de otros scripts disponibles en Impacket, éste no tiene opciones que permitan controlar su comportamiento y cuando se ejecuta, lo primero que hace es listar las interfaces de red disponibles y pedir al usuario que seleccione una de ellas.

 

Sniffing de tráfico utilizando raw sockets con sniffer.py.

Esta utilidad es similar a la anterior, pero con la diferencia de que utiliza sockets crudos en lugar de PCAP, lo que significa que no tiene ningún tipo de dependencia para poder ejecutarlo correctamente. Hay que tener en cuenta que tanto en este script como en el sniff.py se requieren permisos de administrador para poder manipular sockets, acceder a las interfaces de red y gestionar conexiones, por lo tanto su uso resulta conveniente en procesos de post-explotación cuando ya se ha conseguido elevar privilegios en un sistema y es posible subir el script a dicho entorno.

Volcado de endpoints RPC con rpcdump.py

Es una utilidad que simplemente se encarga de volcar todos los endpoints RPC en el sistema objetivo utilizando DCERPC. Como otras de las herramientas disponibles en Impacket, es necesario indicar un usuario y contraseña, así como la IP del sistema a enumerar. No requiere ningún tipo de configuración o librería adicional. Se puede ejecutar de la siguiente forma:

rpcdump.py «dominio/usuario:password»@IP_OBJETIVO

Si el proceso de autenticación se puede llevar a cabo correctamente, se podrá apreciar un listado con todos los endpoints RPC disponibles en el sistema objetivo.

Exfiltración de información sensible con samrdump.py

Esta utilidad resulta interesante en procesos de post-explotación ya que se comunica con el servicio SAMR (Security Account Manager Remote) para extraer información sensible como cuentas en el sistema y sus propiedades. Esta información puede ser útil en un proceso de enumeración local o de dominio.

Las utilidades explicadas en este post son muy generales y sencillas, de hecho, sus funcionalidades se encuentran descritas en un conjunto amplio de herramientas de pentesting pero resulta interesante conocerlas. En los siguientes posts de esta serie se verán scripts orientados a enumeración en entornos de directorio activo y ataques a Kerberos, cuestiones en las que las clases y utilidades Impacket se desenvuelven muy bien.

Un saludo y Happy Hack!
Adastra.