<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://hacks4vvy.github.io/feed.xml" rel="self" type="application/atom+xml" /><link href="https://hacks4vvy.github.io/" rel="alternate" type="text/html" /><updated>2026-04-29T01:50:27+00:00</updated><id>https://hacks4vvy.github.io/feed.xml</id><title type="html">Data Analysis &amp;amp; Insights</title><subtitle>Blog personal sobre análisis de datos, visualización y ciencia de datos</subtitle><author><name>Julian Ortega García</name></author><entry><title type="html">Data Analysis &amp;amp; Automation: Ingeniería de Dashboards Dinámicos en Excel</title><link href="https://hacks4vvy.github.io/an%C3%A1lisis%20de%20datos/automatizacion-datos-excel/" rel="alternate" type="text/html" title="Data Analysis &amp;amp; Automation: Ingeniería de Dashboards Dinámicos en Excel" /><published>2026-04-28T10:00:00+00:00</published><updated>2026-04-28T10:00:00+00:00</updated><id>https://hacks4vvy.github.io/an%C3%A1lisis%20de%20datos/automatizacion-datos-excel</id><content type="html" xml:base="https://hacks4vvy.github.io/an%C3%A1lisis%20de%20datos/automatizacion-datos-excel/"><![CDATA[<h3 id="el-desafío-del-negocio">El Desafío del Negocio</h3>
<p>El objetivo de este proyecto fue transformar un flujo de datos transaccionales desordenados (formato CSV) en una herramienta de <strong>Business Intelligence</strong> centralizada. El reto principal consistió en normalizar información inconsistente y automatizar la generación de reportes para permitir una toma de decisiones estratégica en tiempo real.</p>

<h3 id="metodología-y-herramientas">Metodología y Herramientas</h3>
<p>Para este desarrollo utilicé <strong>Microsoft Excel</strong> como motor analítico, aplicando técnicas de ingeniería de datos para asegurar que el sistema fuera escalable. El proceso cubrió desde la ingesta de archivos planos hasta la creación de una interfaz interactiva de usuario.</p>

<h3 id="habilidades-técnicas-aplicadas">Habilidades Técnicas Aplicadas</h3>
<p>A través de una arquitectura robusta, se implementaron las siguientes soluciones:</p>
<ul>
  <li><strong>Ingesta y Normalización:</strong> Limpieza profunda de archivos CSV y estructuración de tablas.</li>
  <li><strong>Lógica Dinámica:</strong> Uso de funciones avanzadas de búsqueda y agregación multicriterio.</li>
  <li><strong>Diseño de Interfaz:</strong> Maquetación funcional (Wireframing) y visualización de alto impacto.</li>
</ul>

<hr />

<h3 id="fase-1-ingesta-y-normalización-de-datos-csv">Fase 1: Ingesta y Normalización de Datos (CSV)</h3>

<p>El proceso comienza con la recepción de información en formato plano. Como se observa en la comparativa, los datos iniciales carecen de estructura, lo que impide cualquier análisis técnico.</p>

<div style="text-align: center;">
  <img src="/assets/images/csv-datos-crudos.png" alt="Datos CSV Crudos" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Estado inicial: Información agrupada en una sola cadena de texto.</i></p>
</div>

<p>Para transformar este caos en una arquitectura funcional, apliqué un flujo de normalización:</p>
<ul>
  <li><strong>Parseo de Datos:</strong> Uso de “Texto a columnas” para delimitar variables (<code class="language-plaintext highlighter-rouge">Producto</code>, <code class="language-plaintext highlighter-rouge">Marca</code>, <code class="language-plaintext highlighter-rouge">Origen</code>).</li>
  <li><strong>Enriquecimiento Geográfico:</strong> Uso de tipos de datos de Excel para extraer automáticamente la <strong>Población</strong>.</li>
  <li><strong>Estructuración de Tablas (<code class="language-plaintext highlighter-rouge">Ctrl + T</code>):</strong> Conversión a objeto Tabla para asegurar la dinamicidad de las fórmulas.</li>
</ul>

<div style="text-align: center;">
  <img src="/assets/images/tabla-limpia-excel.png" alt="Tabla Normalizada" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Resultado final: Estructura de datos optimizada y lista para el análisis.</i></p>
</div>

<hr />

<h3 id="fase-2-inteligencia-de-búsqueda-y-lógica-aritmética">Fase 2: Inteligencia de Búsqueda y Lógica Aritmética</h3>

<p>Una vez estructurada la base, implementé una capa de lógica para la extracción de KPIs y recuperación de información:</p>

<ul>
  <li><strong>Agregación Multicriterio:</strong> Uso de <code class="language-plaintext highlighter-rouge">SUMAR.SI.CONJUNTO</code> para reportes basados en múltiples condiciones.</li>
  <li><strong>Motores de Búsqueda:</strong> Implementación de <code class="language-plaintext highlighter-rouge">BUSCARV</code> para consultas dinámicas de atributos.</li>
  <li><strong>Lógica Condicional:</strong> Uso de la <strong>Función SI</strong> con referencias absolutas para categorizar automáticamente registros críticos.</li>
</ul>

<div style="text-align: center;">
  <img src="/assets/images/funciones-suma-excel.png" alt="Funciones de Suma" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2); margin-bottom: 10px;" />
  <img src="/assets/images/motor-busqueda-excel.png" alt="Motor BUSCARV" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Implementación de lógica analítica y recuperación dinámica de información.</i></p>
</div>

<hr />

<h3 id="fase-3-diseño-de-interfaz-y-maquetación-wireframing">Fase 3: Diseño de Interfaz y Maquetación (Wireframing)</h3>

<p>Antes de integrar las gráficas finales, desarrollé un <strong>boceto estructural</strong> utilizando figuras y formas nativas de Excel. Esta fase de maquetación permitió definir la jerarquía de información y asegurar una experiencia de usuario fluida.</p>

<div style="text-align: center;">
  <img src="/assets/images/boceto-dashboard-excel.png" alt="Boceto Dashboard" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Maquetación funcional: Definición de espacios para KPIs, gráficos y controles de filtro.</i></p>
</div>

<hr />

<h3 id="fase-4-arquitectura-de-reportes-e-interactividad">Fase 4: Arquitectura de Reportes e Interactividad</h3>

<p>Tras procesar los datos, utilicé <strong>Tablas Dinámicas</strong> para generar el motor analítico, permitiendo cruzar variables de Mes, Cliente y Región.</p>

<h4 id="control-de-datos-multifiltro">Control de Datos Multifiltro:</h4>
<p>Para maximizar la interacción, integré controles que responden en tiempo real:</p>
<ul>
  <li><strong>Segmentación de Datos (Slicers):</strong> Filtros táctiles para navegar por marcas y productos.</li>
  <li><strong>Escala de Tiempo (Timeline):</strong> Control cronológico para auditorías por año y mes.</li>
</ul>

<div style="text-align: center;">
  <img src="/assets/images/segmentacion-datos-excel.png" alt="Segmentadores" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Interactividad: Sincronización de filtros para una exploración de datos fluida.</i></p>
</div>

<hr />

<h3 id="visualización-final-dashboard-de-alto-impacto-dark-mode">Visualización Final: Dashboard de Alto Impacto (Dark Mode)</h3>

<p>El resultado final es una herramienta de <strong>Business Intelligence</strong> diseñada bajo un esquema de “Modo Oscuro” para mejorar la legibilidad y estética profesional.</p>

<div style="text-align: center;">
  <img src="/assets/images/dashboard-final-excel.png" alt="Dashboard Final" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Interfaz final interactiva: Control total sobre KPIs de rendimiento y ventas.</i></p>
</div>

<h4 id="hallazgos-clave-del-proyecto">Hallazgos Clave del Proyecto:</h4>
<ul>
  <li><strong>Rendimiento Humano:</strong> Identificación inmediata del TOP 5 de vendedores y su contribución al ingreso total.</li>
  <li><strong>Análisis Territorial:</strong> Visualización de las regiones con mayor volumen de órdenes para optimización logística.</li>
  <li><strong>Mix de Productos:</strong> Desglose porcentual de participación de mercado por marca mediante gráficos de anillos dinámicos.</li>
</ul>

<hr />

<h3 id="-conclusiones-e-insights-de-negocio">💡 Conclusiones e Insights de Negocio</h3>

<p>La implementación de este Dashboard permitió centralizar la operación en tres pilares:</p>

<ul>
  <li><strong>Eficiencia Operativa:</strong> Reducción del tiempo de generación de reportes manuales en un 90%.</li>
  <li><strong>Precisión de Datos:</strong> Eliminación del error humano mediante la automatización de la lógica de búsqueda y suma condicional.</li>
  <li><strong>Escalabilidad:</strong> El sistema es capaz de absorber nuevos registros de ventas simplemente actualizando la fuente, manteniendo la integridad de todas las gráficas.</li>
</ul>

<blockquote>
  <p><strong>Nota técnica:</strong> Este enfoque demuestra que Excel, bien estructurado, funciona como una base de datos relacional capaz de alimentar interfaces de alta fidelidad para la toma de decisiones.</p>
</blockquote>]]></content><author><name>Julian Ortega García</name></author><category term="Análisis de Datos" /><category term="Excel" /><category term="VBA" /><category term="Dashboards" /><category term="Automatización" /><summary type="html"><![CDATA[El Desafío del Negocio El objetivo de este proyecto fue transformar un flujo de datos transaccionales desordenados (formato CSV) en una herramienta de Business Intelligence centralizada. El reto principal consistió en normalizar información inconsistente y automatizar la generación de reportes para permitir una toma de decisiones estratégica en tiempo real.]]></summary></entry><entry><title type="html">Análisis de Rentabilidad: Desempeño y Márgenes de Productos en SQL y Power BI</title><link href="https://hacks4vvy.github.io/an%C3%A1lisis%20de%20datos/Analisis/" rel="alternate" type="text/html" title="Análisis de Rentabilidad: Desempeño y Márgenes de Productos en SQL y Power BI" /><published>2026-04-16T10:00:00+00:00</published><updated>2026-04-16T10:00:00+00:00</updated><id>https://hacks4vvy.github.io/an%C3%A1lisis%20de%20datos/Analisis</id><content type="html" xml:base="https://hacks4vvy.github.io/an%C3%A1lisis%20de%20datos/Analisis/"><![CDATA[<h3 id="el-desafío-del-negocio">El Desafío del Negocio</h3>
<p>En este proyecto, abordé la necesidad de transformar datos transaccionales brutos en información estratégica. El objetivo principal fue identificar la rentabilidad real de cada producto, cruzando el volumen de ventas con los costos de producción para detectar áreas de oportunidad en el catálogo.</p>

<h3 id="metodología-y-herramientas">Metodología y Herramientas</h3>
<p>Para este análisis utilicé <strong>SQL</strong>, enfocándome en la agregación de datos y el cálculo de métricas financieras clave. El proceso incluyó la limpieza de datos y la consolidación de tablas de ventas, productos y costos.</p>

<h3 id="métricas-clave-calculadas-kpis">Métricas Clave Calculadas (KPIs)</h3>
<p>A través de consultas avanzadas, logré extraer:</p>
<ul>
  <li><strong>Margen de Ganancia:</strong> La diferencia real entre el precio de venta y el costo.</li>
  <li><strong>Volumen de Órdenes:</strong> Cantidad de veces que un producto fue solicitado (frecuencia de compra).</li>
  <li><strong>Monto Total Vendido:</strong> Impacto directo en los ingresos de la empresa.</li>
</ul>

<h3 id="implementación-técnica-snippet-de-código">Implementación Técnica (Snippet de Código)</h3>

<p>Aquí presento la lógica de SQL utilizada para consolidar la información:</p>

<div style="text-align: center;">
  <img src="/assets/images/codigo-sql-rentabilidad.png" alt="Código SQL" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Captura de pantalla de la consulta SQL ejecutada.</i></p>
</div>

<h3 id="validación-y-calidad-de-datos">Validación y Calidad de Datos</h3>
<p>Antes de proceder con la visualización, realicé una fase de validación para asegurar la integridad de la información:</p>

<ul>
  <li><strong>Tratamiento de Nulos:</strong> Utilicé la función <code class="language-plaintext highlighter-rouge">ISNULL</code> para asegurar que los productos sin ventas registradas muestren un valor de <code class="language-plaintext highlighter-rouge">0</code> en lugar de campos vacíos, manteniendo la consistencia del reporte.</li>
  <li><strong>Precisión de Cálculos:</strong> Verifiqué que el <strong>Monto Total Vendido</strong> coincida con la sumatoria de las líneas de detalle (<code class="language-plaintext highlighter-rouge">LineTotal</code>), asegurando que no existan discrepancias entre las tablas de productos y ventas.</li>
  <li><strong>Integridad de Productos:</strong> Gracias al uso de <code class="language-plaintext highlighter-rouge">LEFT JOIN</code>, validé que el 100% del catálogo de productos esté representado, permitiendo identificar no solo los productos exitosos, sino también aquellos con <strong>nula rotación</strong>.</li>
</ul>

<blockquote>
  <p><strong>Nota técnica:</strong> Se aplicó un <code class="language-plaintext highlighter-rouge">CAST</code> a los montos totales para manejar la precisión decimal, garantizando que los valores financieros sean exactos para su posterior análisis en Power BI.</p>
</blockquote>

<div style="text-align: center;">
  <img src="/assets/images/resultgrid.png" alt="Código SQL" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Captura de pantalla de la consulta SQL ejecutada.</i></p>
</div>

<div style="text-align: center;">
  <img src="/assets/images/result-grid-null.png" alt="Código SQL" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Captura de pantalla del tratamiento de nulos.</i></p>
</div>

<h3 id="visualización-en-power-bi-análisis-de-ingresos-por-producto">Visualización en Power BI: Análisis de Ingresos por Producto</h3>

<div style="text-align: center;">
  <img src="/assets/images/visualizacion-powerBI.png" alt="Código SQL" style="border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.2);" />
  <p><i>Captura de pantalla Gráfica de barras.</i></p>
</div>

<p>Tras procesar los datos, utilicé <strong>Power BI</strong> para generar una gráfica de barras que permite identificar rápidamente los productos que más contribuyen al flujo de caja de la empresa.</p>

<h4 id="hallazgos-clave-del-dashboard">Hallazgos Clave del Dashboard:</h4>
<ul>
  <li><strong>Liderazgo de la línea Mountain:</strong> Se observa claramente que las bicicletas <strong>Mountain-200 (Black y Silver)</strong> son los “productos estrella”, liderando las ventas con montos que superan los <strong>4 millones</strong>, muy por encima de las líneas Road y Touring.</li>
  <li><strong>Preferencia de Color y Talla:</strong> El modelo <em>Mountain-200 Black, 38</em> es el producto con mayor desempeño total. Este dato es vital para que el equipo de compras asegure stock de estas variantes específicas.</li>
  <li><strong>Comparativa de Categorías:</strong> Mientras que las bicicletas de montaña dominan el Top 6, los modelos de carretera (<em>Road</em>) empiezan a aparecer a partir de los 2.5 millones, lo que sugiere una oportunidad para analizar si esto se debe a una menor demanda o a un precio de venta más bajo.</li>
</ul>

<h3 id="-conclusiones-e-insights-de-negocio">💡 Conclusiones e Insights de Negocio</h3>

<p>Tras realizar el análisis, se identificaron tres pilares estratégicos para la toma de decisiones:</p>

<ul>
  <li><strong>Identificación de “Productos Estrella”:</strong> Se detectaron artículos con <strong>alto margen y alta frecuencia de órdenes</strong>, los cuales deben ser el foco de las campañas de marketing.</li>
  <li><strong>Optimización de Precios:</strong> El reporte reveló productos con <strong>alto volumen de ventas pero bajo margen</strong>, sugiriendo una revisión en la estrategia de precios o negociación con proveedores.</li>
  <li><strong>Eficiencia en Inventario:</strong> Identificamos productos con <strong>baja rotación (pocas órdenes)</strong>, lo que permite a la gerencia decidir sobre liquidaciones para reducir costos de almacenamiento innecesarios.</li>
</ul>

<p>Al saber exactamente qué modelos generan el grueso de los ingresos, la gerencia puede optimizar los recursos de marketing y logística hacia los productos de alto rendimiento, como la serie Mountain-200.</p>]]></content><author><name>Julian Ortega García</name></author><category term="Análisis de Datos" /><category term="SQL" /><category term="KPI" /><category term="Rentabilidad" /><summary type="html"><![CDATA[El Desafío del Negocio En este proyecto, abordé la necesidad de transformar datos transaccionales brutos en información estratégica. El objetivo principal fue identificar la rentabilidad real de cada producto, cruzando el volumen de ventas con los costos de producción para detectar áreas de oportunidad en el catálogo.]]></summary></entry><entry><title type="html">Pentester Mentor Junior</title><link href="https://hacks4vvy.github.io/archivo/PMJ/" rel="alternate" type="text/html" title="Pentester Mentor Junior" /><published>2026-04-15T10:00:00+00:00</published><updated>2026-04-15T10:00:00+00:00</updated><id>https://hacks4vvy.github.io/archivo/PMJ</id><content type="html" xml:base="https://hacks4vvy.github.io/archivo/PMJ/"><![CDATA[<h3 id="programa-pentester-mentor-junior">Programa Pentester Mentor Junior</h3>

<p>Esta certificación es impartida por la academia <a href="https://www.hacker-mentor.com/">Hacker Mentor</a>  <strong><code class="language-plaintext highlighter-rouge">(Cibersecurity/Pentesting)</code></strong>.</p>

<p>Pentester mentor Junior es un programa el cual me ayudó a iniciar en el mundo del hacking ético y el pentesting. Llamó mi atención porque utilizan una metodología de enseñanza gamificada, la cual permite a los estudiantes generar competencia al recibir puntuación y premios por desempeño al realizar pruebas de pentesting a <strong>servicios web</strong>, <strong>redes</strong>, <strong>sistemas operativos</strong>, <strong>bases de datos</strong> etc, en forma de retos, pero con problemáticas de la vida real.</p>

<p>Los premios consistían en desbloquear algunos cursos que son de pago, los cuales se otorgaban sólo a los primeros lugares de la competencia. Para estar dentro de los primeros lugares había que entregar un reporte de pentesting dentro del tiempo límite, el cual para sumar puntos tenía que estar redactado y desarrollado de manera correcta incluyendo capturas de pantalla específicas que demostraran lo que se realizó durante la prueba de penetración, las vulnerabilidades encontradas, credenciales e información susceptible a corromper y de ser posible mitigarlo proporcionando parches de seguridad, firewalls etc.</p>

<p>Este programa me ayudó a arrancar con las bases principales como fundamentos de redes, conceptos y generalidades de ciberseguridad, comandos de linux y máquinas virtuales.</p>

<p>La siguiente certificación me fue otorgada después de concluir este curso:</p>

<p><img src="/assets/images/CertificadoPMJ.png" alt="Panel principal" /></p>

<p>Después de concluir el curso PMJ y obtener el reconocimiento,  realicé la siguiente certificación <strong>Ethical hacking Certified Associate (EHCA)</strong> la cual complementó lo aprendido en el curso de Pentester Mentor Junior.</p>

<p><img src="/assets/images/EHCA.png" alt="Panel principal" /></p>

<p>Los siguientes retos fueron los que realicé en el curso intensivo de PMJ:</p>

<p><img src="/assets/images/reto01.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto001.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto2.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto02.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto3.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto4.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto5.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto6.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto7.png" alt="Panel principal" /></p>

<p><img src="/assets/images/reto8.png" alt="Panel principal" /></p>]]></content><author><name>Julian Ortega García</name></author><category term="Archivo" /><category term="HMA" /><summary type="html"><![CDATA[Programa Pentester Mentor Junior]]></summary></entry><entry><title type="html">Resolución Kio</title><link href="https://hacks4vvy.github.io/archivo/KIO/" rel="alternate" type="text/html" title="Resolución Kio" /><published>2026-04-14T00:00:00+00:00</published><updated>2026-04-14T00:00:00+00:00</updated><id>https://hacks4vvy.github.io/archivo/KIO</id><content type="html" xml:base="https://hacks4vvy.github.io/archivo/KIO/"><![CDATA[<p>El presente artículo es para dar algunos tips principales sobre pentesting poniendo de ejemplo la primer máquina de la certificación <a href="https://www.hacker-mentor.com/blog/que-es-pentester-mentor-junior">PMJ</a></p>

<h2 id="reconocimiento-de-red">Reconocimiento de Red</h2>

<p>El ataque desde el inicio se planea con un buen <strong>escaneo</strong>, un buen escaneo y una buena identificación de una vulnerabilidad te ahorrará horas de complicación.</p>

<p>Lo primero es saber nuestra dirección ip con el comando ifconfig</p>

<p><img src="/assets/images/1.png" alt="Panel principal" /></p>

<p>Después se utiliza el comando sudo arp-scan -l</p>

<p>El reconocimiento ARP (Address Resolution Protocol) es un proceso utilizado por los dispositivos de red para asociar direcciones IP (Protocolo de Internet) con direcciones MAC (Control de Acceso al Medio) en una red local.</p>

<p>Cuando un dispositivo en una red local desea enviar un paquete a otro dispositivo, necesita conocer la dirección MAC del destino para enviar el paquete a través de la red. El proceso de reconocimiento ARP se utiliza para determinar la dirección MAC del dispositivo de destino.</p>

<p>El reconocimiento ARP funciona mediante la emisión de una solicitud de ARP a través de la red local para solicitar la dirección MAC correspondiente a una dirección IP determinada. Si el dispositivo de destino está en la misma red local, responderá a la solicitud de ARP con su dirección MAC. Si el dispositivo de destino no está en la misma red local, la solicitud de ARP se enviará al router predeterminado de la red, que luego intentará determinar la dirección MAC del dispositivo en otra red.</p>

<p><img src="/assets/images/2.png" alt="Panel principal" /></p>

<p><strong>Suplantación de MAC</strong></p>

<p>Nota: Cuando se realice un análisis siempre es recomendable cambiar la dirección MAC porque hay elementos de seguridad que se pegan y no sólo bloquean la ip del equipo, sino también la MAC. (se cambia antes de conectarse o prender la máquina)</p>

<p>Esto también permite saltar los NAC (Network Access Control)</p>

<p><img src="/assets/images/4.png" alt="Panel principal" /></p>

<p>La herramienta por excelencia o navaja suiza para escaneos es nmap</p>

<p>Usaremos el comando sudo nmap -sN + dirección de red.</p>

<p>El argumento “-sN” en Nmap se refiere a la técnica de escaneo de puertos “TCP Null Scan”, o reconocimiento por ping. Esta técnica de escaneo envía paquetes TCP sin establecer ninguno de los bits de control TCP, como el bit SYN, FIN o RST. Sirve para determinar si un puerto está abierto, cerrado o filtrado.</p>

<p>Si el puerto de destino está abierto, no se enviará una respuesta ya que el servidor no sabrá cómo interpretar el paquete. En cambio, si el puerto está cerrado, el servidor enviará una respuesta RST para indicar que el puerto está cerrado.</p>

<p>El escaneo TCP Null Scan es una técnica de escaneo sigilosa, ya que no establece ninguna conexión TCP y no deja registros en los registros de la red. Sin embargo, algunos firewalls pueden detectar y bloquear el escaneo TCP Null Scan. Esta técnica es útil para identificar los puertos que están abiertos y disponibles para posibles ataques.</p>

<p><img src="/assets/images/5.png" alt="Panel principal" /></p>

<p><img src="/assets/images/6.png" alt="Panel principal" /></p>

<p>Aquí muestra la dirección ip de la máquina kio y de mi máquina virtual kali.</p>

<p>Para no mandar ping al host se utiliza el comando sudo nmap -Pn + direccion de red.</p>

<p>Esta manera manda a reconocer puerto por puerto. El comando “nmap -Pn” utiliza la opción “-Pn” para saltar la detección de hosts para determinar los dispositivos activos en una red. Esta técnica se utiliza para escanear redes donde los hosts pueden estar ocultos o no responder a las solicitudes de ping. Si se establece esta opción, Nmap asume que todos los hosts especificados están activos y escanea todos los puertos especificados en cada uno de ellos.</p>

<p><img src="/assets/images/7.png" alt="Panel principal" /></p>

<p>También se utiliza el comando sudo nmap -Pn -p- + dirección de red.</p>

<p>El comando <code class="language-plaintext highlighter-rouge">nmap -Pn</code> se utiliza para indicarle a Nmap que no realice una detección de hosts (ping) antes de comenzar a escanear los puertos. En otras palabras, desactiva la comprobación de la conectividad de los hosts objetivo.</p>

<p>La opción “-p-“ indica a Nmap que escanee todos los puertos posibles en los hosts especificados. Esta opción escaneará todos los puertos del 1 al 65535 en cada host especificado en el rango de direcciones IP.</p>

<p>En resumen, el comando “nmap -Pn -p-“ se utiliza para realizar un escaneo completo de todos los puertos de un rango de direcciones IP, sin realizar una detección previa de los hosts activos. Este tipo de escaneo puede ser útil para identificar rápidamente todos los servicios disponibles en una red o para realizar un análisis exhaustivo de seguridad en una red específica. Sin embargo, es importante tener en cuenta que este tipo de escaneo puede ser intensivo en términos de recursos y tiempo, por lo que es recomendable tener cuidado al usarlo en redes grandes o con restricciones de ancho de banda.</p>

<p><img src="/assets/images/8.png" alt="Panel principal" /></p>

<p><img src="/assets/images/9.png" alt="Panel principal" /></p>

<p>Si se comienza a recibir que está abierto desde el puerto 1 hasta el 65000 hay que parar el escaneo porque se puede estar frente a un elemento de seguridad, este puede ser un IPS o un IDS y hay que tener precaución.</p>

<p>Se puede añadir la bandera -vvv (vervose) al comando para visualizar que es lo que está pasando y escaneando. El comando completo sería:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nb">sudo </span>nmap <span class="nt">-Pn</span> <span class="nt">-p-</span>  <span class="nt">-vvv</span> + dirección de red.
</code></pre></div></div>

<p>También se pueden escanear puertos en específico:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nb">sudo </span>nmap <span class="nt">-Pn</span> <span class="nt">-p80</span> <span class="nt">-T5</span> <span class="nt">-vvv</span> + dirección de red.
</code></pre></div></div>

<p>Este comando escanea el puerto 80 a una velocidad de 5 que es rápida y con verbose para visualizar lo que se está escaneando.</p>

<p><img src="/assets/images/10.png" alt="Panel principal" /></p>

<p>Otro comando para ver la versión del puerto que se analiza el cual es la bandera -sV :</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nb">sudo </span>nmap <span class="nt">-sV</span> <span class="nt">-vvvv</span> <span class="nt">-p80</span>,22,111,139,443,1024 <span class="nt">-T4</span>  + direccion
</code></pre></div></div>

<p><img src="/assets/images/11.png" alt="Panel principal" /></p>

<p><img src="/assets/images/12.png" alt="Panel principal" /></p>

<p>De aquí en adelante de acuerdo a las versiones de los puertos se puede explotar o buscar exploits en google.</p>

<p>Si se utiliza el mismo comando pero con -oA kio se puede guardar la salida en la carpeta kio</p>

<p><img src="/assets/images/13.png" alt="Panel principal" /></p>

<p>A simple vista no se ve nada, pero  para el análisis se crearon archivos con comandos de grep o “grepeables” encima de un archivo para poder buscar.</p>

<p><img src="/assets/images/14.png" alt="Panel principal" /></p>

<p>Una vez creados estos archivos. Con el comando <strong>xsltproc kio.xml -o kio.html</strong> se visualizará el análisis de manera detallada a través de firefox.</p>

<p><img src="/assets/images/15.png" alt="Panel principal" /></p>

<p><img src="/assets/images/16.png" alt="Panel principal" /></p>

<p>Esto puede servir bastante para un informe que se requiera. Transforma de un xml a un tema de html.</p>

<p>Este mismo comando hace una comparación de fingerprinting o huellas que tiene el servidor para saber de que sistema operativo es el servidor con la bandera -O</p>

<p>El comando “nmap -O” es utilizado para realizar la detección del sistema operativo (OS, por sus siglas en inglés) de un host o dispositivo en una red. El comando envía una serie de paquetes de prueba al dispositivo y analiza las respuestas para determinar el sistema operativo que está siendo utilizado.</p>

<p>El objetivo principal de la detección del sistema operativo es obtener información sobre los sistemas que se encuentran en la red, lo que puede ser útil para realizar tareas de administración y mantenimiento de la red. Además, puede ser útil para identificar vulnerabilidades específicas de un sistema operativo y tomar medidas para proteger la red.</p>

<p><img src="/assets/images/17.png" alt="Panel principal" /></p>

<p><img src="/assets/images/18.png" alt="Panel principal" /></p>

<p>Otra manera de identificar el sistema operativo sin nmap  es a través del comando  ping + la direccion de red.</p>

<p><img src="/assets/images/19.png" alt="Panel principal" /></p>

<p>Cuando el TTL (Time-to-Live) se muestra como 255 en una respuesta a un ping, significa que el host de destino está en la misma red local que el host que envió el ping.</p>

<p>El valor TTL se establece en 255 en el paquete ICMP (Internet Control Message Protocol) que se utiliza para el ping, y cada vez que el paquete atraviesa un router, el valor del TTL se reduce en 1. Si el valor del TTL llega a 0, el paquete se descarta y no se entrega.</p>

<p>En una red local, los paquetes no necesitan atravesar un router para llegar a su destino, por lo que el valor del TTL no se reduce en ningún momento y se mantiene en su valor original de 255. Esto es porque los paquetes en la misma red local no necesitan ser enrutados y, por lo tanto, no necesitan pasar por ningún router.</p>

<p>Poner comando nmap –help para ver todos los comandos y acciones que se pueden realizar.</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>nikto <span class="nt">-h</span> http://192.168.188.131
</code></pre></div></div>
<p><img src="/assets/images/20.png" alt="Panel principal" /></p>

<p>El comando “nikto” es una herramienta de seguridad de red de código abierto que se utiliza para escanear servidores web en busca de vulnerabilidades y posibles amenazas de seguridad. Es capaz de detectar una amplia variedad de vulnerabilidades, como inyecciones de SQL, archivos expuestos, vulnerabilidades en aplicaciones, entre otros.</p>

<p>La herramienta “nikto” realiza una serie de pruebas de seguridad en el servidor web, como la enumeración de archivos y directorios, la búsqueda de vulnerabilidades conocidas en aplicaciones web, la revisión de la configuración del servidor web y la comprobación de la seguridad del servidor SSL.</p>

<p>Es una herramienta útil para los profesionales de la seguridad cibernética, los administradores de sistemas y los investigadores de seguridad, ya que puede ayudarles a identificar y corregir las vulnerabilidades en los servidores web y evitar posibles ataques.</p>

<p>Después de utilizar el comando nikto se va a desplegar información acerca del servidor.
Si copias y pegas la parte seleccionada /usage/ y lo abres el navegador poniendo la dirección de red se visualizará lo siguiente.</p>

<p><img src="/assets/images/21.png" alt="Panel principal" /></p>

<p><img src="/assets/images/22.png" alt="Panel principal" /></p>

<p>“Fuzzing” (también conocido como “prueba de penetración basada en mutaciones”) es una técnica de prueba de seguridad de software que implica enviar datos aleatorios o semi-aleatorios a una aplicación para ver cómo maneja esos datos y si es vulnerable a errores o vulnerabilidades. El objetivo del fuzzing es encontrar vulnerabilidades en una aplicación que puedan ser explotadas por un atacante para tomar el control de la aplicación o del sistema en el que se ejecuta.</p>

<p>El proceso de fuzzing implica generar datos de entrada aleatorios o semi-aleatorios y enviarlos a la aplicación, observando cómo la aplicación responde a cada entrada. La entrada puede ser datos como cadenas de caracteres, números, archivos, protocolos de red, entre otros. El objetivo es identificar fallas de seguridad en la aplicación, como errores de programación, excepciones no controladas, fugas de memoria, entre otros.</p>

<p>El fuzzing puede ser una técnica muy efectiva para identificar vulnerabilidades en aplicaciones y es una herramienta comúnmente utilizada por los profesionales de la seguridad cibernética y los investigadores de seguridad para evaluar la seguridad de las aplicaciones. Es importante destacar que el fuzzing debe ser realizado de forma ética y legal, y el objetivo debe ser mejorar la seguridad del software en lugar de causar daño a la aplicación o al sistema en el que se ejecuta.</p>

<p><img src="/assets/images/23.png" alt="Panel principal" /></p>

<p>Msfconsole es la consola principal de la herramienta Metasploit Framework, un framework de pruebas de penetración de código abierto que se utiliza para desarrollar y ejecutar exploits contra sistemas informáticos para evaluar su seguridad.</p>

<p>Msfconsole es una interfaz de línea de comandos que permite a los usuarios interactuar con la base de datos de Metasploit, configurar y lanzar módulos de explotación, y administrar sesiones remotas en sistemas comprometidos. La consola es una herramienta potente que proporciona a los usuarios un amplio conjunto de funciones, desde la exploración de vulnerabilidades hasta la creación de exploits personalizados.</p>

<p>Al utilizar Metasploit Framework y msfconsole, los profesionales de seguridad y los investigadores de vulnerabilidades pueden probar la seguridad de sus propios sistemas, identificar debilidades en los sistemas de terceros, y ayudar a asegurar los sistemas que protegen. También se puede utilizar para probar la efectividad de las defensas de seguridad en lugar de para atacar sistemas no autorizados.</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>nikto <span class="nt">-h</span> http://192.168.188.131
</code></pre></div></div>
<p>Metasploit ayudará a identificar parámetros después de haber usado el comando nikto y así escoger que exploit elegir de acuerdo a la enumeración que se presenta.</p>

<p><img src="/assets/images/24.png" alt="Panel principal" /></p>

<p>1.-Se empieza poniendo search seguido de lo que necesitamos ver, en este caso TRACE.
2.-Después se utiliza la palabra use seguido del número a elegir., en este caso sería: use 2</p>

<p><img src="/assets/images/25.png" alt="Panel principal" /></p>

<p><img src="/assets/images/26.png" alt="Panel principal" /></p>

<p>El comando “show options” es un comando utilizado en la consola de Metasploit Framework que muestra una lista de opciones configurables para un módulo específico.</p>

<p>Los módulos en Metasploit Framework son piezas de código que se utilizan para explotar o realizar pruebas de penetración en sistemas informáticos específicos. Cada módulo tiene opciones configurables que pueden personalizarse para adaptarse a las necesidades de una tarea específica.</p>

<p>Cuando se ejecuta un módulo en la consola de Metasploit Framework, el comando “show options” proporciona una lista de las opciones configurables para ese módulo, como la dirección IP del objetivo, el puerto, el nombre de usuario y la contraseña. Los usuarios pueden utilizar este comando para ver qué opciones están disponibles para un módulo específico y personalizar las opciones necesarias para adaptarse a su situación específica.</p>

<p>Una vez que se han personalizado las opciones del módulo, el usuario puede ejecutar el comando “exploit” para iniciar la ejecución del módulo en el objetivo. En resumen, el comando “show options” es una herramienta útil para explorar y personalizar los módulos en Metasploit Framework antes de utilizarlos para llevar a cabo pruebas de penetración en sistemas informáticos.</p>

<p><img src="/assets/images/27.png" alt="Panel principal" /></p>

<p>Después se debe usar el comando set RHOSTS + dirección de red. Después volver a escribir el comando show options para visualizar los cambios en el RHOSTS como se observa en la imágen anterior.</p>

<p>Después de eso se escribe el comando exploit o run, en su defecto.</p>

<p><img src="/assets/images/28.png" alt="Panel principal" /></p>

<p>Aqui muestra que la dirección ip y el puerto 80 son vulnerables al Cross-site Tracing</p>

<p>Si una dirección de red con el puerto 80 es vulnerable al XST, significa que un atacante puede utilizar esta técnica de ataque para robar información confidencial de los usuarios que acceden al servidor web a través de esa dirección. Por lo tanto, es importante que los administradores de sistemas y los desarrolladores web implementen medidas de seguridad adecuadas para proteger sus sitios web contra este tipo de vulnerabilidad.</p>

<p>En particular, el XST se aprovecha de la funcionalidad de seguimiento de solicitudes de los navegadores (llamada “trace”) para interceptar información de cookies y tokens de autenticación que se transmiten a través de una conexión HTTP. El puerto 80 es el puerto predeterminado utilizado por los servidores web para atender las solicitudes HTTP.</p>

<p>El módulo auxiliar realiza un escaneo y funciona para reconocimiento, indicando que el exploit va a funcionar.</p>

<p>En Metasploit, un “módulo auxiliar” es una herramienta que se utiliza para realizar una variedad de tareas de seguridad, que van desde la exploración y el análisis de vulnerabilidades hasta la recopilación de información y la ejecución de ataques específicos. Los módulos auxiliares se utilizan a menudo como complementos a los módulos de explotación y post-explotación en una campaña de penetración.</p>

<p>Algunos ejemplos de módulos auxiliares incluyen:</p>

<ul>
  <li>
    <p>Escaneo de puertos: Este tipo de módulo puede utilizarse para descubrir los servicios que se están ejecutando en una red determinada, identificar los puertos abiertos y evaluar la exposición de una red a los ataques.</p>
  </li>
  <li>
    <p>Fuzzing: Estos módulos se utilizan para enviar entradas aleatorias o malformadas a una aplicación o servicio web para descubrir vulnerabilidades en el mismo.</p>
  </li>
  <li>
    <p>Recopilación de información: Estos módulos pueden utilizarse para recopilar información sobre un objetivo específico, como la versión del sistema operativo, los puertos abiertos, la configuración de red, entre otros.</p>
  </li>
  <li>
    <p>Ataques específicos: Los módulos auxiliares también pueden utilizarse para realizar ataques específicos, como la inyección de SQL, la explotación de vulnerabilidades de día cero, la suplantación de identidad (phishing), entre otros.</p>
  </li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>+Apache/1.3.20 appears to be outdated <span class="o">(</span>current is at least Apache/2.4.54<span class="o">)</span><span class="nb">.</span> Apache 2.2.34 is the EOL <span class="k">for </span>the 2.x branch.
+OpenSSL/0.9.6b appears to be outdated <span class="o">(</span>current is at least 3.0.7<span class="o">)</span><span class="nb">.</span> OpenSSL 1.1.1s is current <span class="k">for </span>the 1.x branch and will be supported <span class="k">until </span>Nov 11 2023.
</code></pre></div></div>

<p><img src="/assets/images/29.png" alt="Panel principal" /></p>

<p>El comando “dirb” es una herramienta de enumeración web que se utiliza para realizar un escaneo de directorios y archivos en un servidor web determinado. Este comando se utiliza con la dirección de red de un sitio web para descubrir qué archivos y directorios están disponibles públicamente en el servidor web. Se puede utilizar el comando dib seguido de la direccion ip o poniendo el dominio del sitio web que se desea escanear.</p>

<p>El comando dirb examinará los archivos y directorios en el sitio web y producirá una lista de los recursos que se pueden encontrar. Esta lista puede ser muy útil para los analistas de seguridad para identificar vulnerabilidades de seguridad en el sitio web, como la exposición de archivos confidenciales, directorios con permisos de escritura, entre otros.</p>

<p>Es importante tener en cuenta que, aunque el comando dirb puede ser útil para los profesionales de la seguridad, también puede ser utilizado maliciosamente para realizar ataques cibernéticos.</p>

<p>Otra herramienta que funciona bien en este caso es:
dirbuster</p>

<p>Se abrirá una ventana como esta:</p>

<p><img src="/assets/images/30.png" alt="Panel principal" /></p>

<p>En browse se pueden agregar los diccionarios. Los diccionarios se encuentran en el directorio usr/share/wordlists/</p>

<p><img src="/assets/images/31.png" alt="Panel principal" /></p>

<p>Se puede agregar a file extension que busque archivos php, zip,rar y después hay que dar start. Iniciará el escaneo y tardará aproximadamente unos 30 min o más, pero esta es la manera gráfica de realizar el escaneo.</p>

<p><img src="/assets/images/32.png" alt="Panel principal" /></p>

<p>El reporte se guarda en algún directorio de elección en kali linux</p>

<p>Otra herramienta de Fuzzing es wfuzz.</p>

<p>wfuzz realiza una serie de solicitudes HTTP personalizadas y automatizadas al sitio web objetivo, y utiliza una lista de palabras o diccionario para intentar descubrir archivos ocultos, directorios y parámetros no válidos.</p>

<p>En otras palabras, wfuzz es una herramienta de fuerza bruta que puede ser utilizada por los profesionales de seguridad para descubrir posibles vulnerabilidades en la aplicación web, tales como inyección SQL, vulnerabilidades de cross-site scripting, archivos y directorios sensibles expuestos, etc.</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>wfuzz <span class="nt">-c</span> <span class="nt">--hc</span><span class="o">=</span>404 <span class="nt">-t</span> 200 <span class="nt">-w</span> /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt http://192.<span class="k">***</span>.<span class="k">***</span>.<span class="k">***</span>/FUZZ
</code></pre></div></div>
<p><img src="/assets/images/33.png" alt="Panel principal" /></p>

<p>Estos son algunos de los parámetros que pueden ser utilizados con la herramienta “wfuzz” en la línea de comando. A continuación, se explica el significado de cada uno de ellos:</p>

<ul>
  <li>
    <p>“-c”: Este parámetro se utiliza para establecer el número de conexiones que se van a realizar simultáneamente durante la prueba. Por ejemplo, si se establece “-c 10”, entonces se realizarán hasta 10 conexiones simultáneas al objetivo durante la prueba.</p>
  </li>
  <li>
    <p>”–hc=404”: Este parámetro se utiliza para indicar cuál es el código de estado HTTP que se considerará como respuesta válida por parte del objetivo. En este caso, se ha establecido que sólo se considerará una respuesta válida si el código de estado es 404 (página no encontrada). Esto puede ser útil para ignorar las respuestas 200 (OK) o 302 (Redirección) que no son relevantes para el objetivo de la prueba.</p>
  </li>
  <li>
    <p>“-t 200”: Este parámetro se utiliza para establecer un tiempo límite para cada solicitud realizada durante la prueba. En este caso, se ha establecido un límite de tiempo de 200 segundos. Esto significa que si una solicitud tarda más de 200 segundos en obtener una respuesta, wfuzz la ignorará y pasará a la siguiente solicitud.</p>
  </li>
  <li>
    <p>“-w”: Este parámetro se utiliza para indicar la ubicación del diccionario de palabras que se utilizará durante la prueba. En este caso, “-w” se utiliza para especificar la ubicación del archivo de palabras que se utilizará para realizar la prueba. El archivo de palabras puede ser un archivo de texto simple que contiene una lista de palabras o frases que se probarán durante la prueba.</p>
  </li>
</ul>

<p>El comando wfuzz arrojó este resultado</p>

<p><img src="/assets/images/34.png" alt="Panel principal" /></p>

<p>Otra herramienta es whatweb</p>

<p>“WhatWeb” es una herramienta de análisis de huellas digitales de sitios web que se utiliza para identificar las tecnologías utilizadas en un sitio web y obtener información sobre la configuración y la estructura del sitio. La herramienta utiliza técnicas de análisis automatizado y heurísticas para determinar qué tecnologías se están utilizando en un sitio web, incluyendo el sistema de gestión de contenido (CMS), el servidor web, el lenguaje de programación, el sistema operativo y otros detalles técnicos.</p>

<p>“WhatWeb” funciona mediante la emisión de solicitudes HTTP y el análisis de las respuestas del servidor. La herramienta utiliza una base de datos de huellas digitales y patrones para identificar los detalles técnicos del sitio web y puede ser muy útil para los profesionales de seguridad que buscan identificar vulnerabilidades y riesgos potenciales en un sitio web. Además, la herramienta también puede ser utilizada por los investigadores y los profesionales de marketing para recopilar información sobre la competencia y las tendencias del mercado en el ámbito digital.</p>

<p>Da una premisa de lo que podría estar pasando dentro del servidor, que servidor web está montado, el tipo de versión y tipo de servidor. Sirve patra hacer un reconocimiento.</p>

<p>Otra herramienta a utilizar es con el siguiente comando:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>ffuf <span class="nt">-u</span> http://192.<span class="k">***</span>.<span class="k">***</span>.<span class="k">***</span>/FUZZ <span class="nt">-w</span> /usr/share/dirbuster/directory-list-2.3-medium.txt <span class="nt">-e</span> .txt
</code></pre></div></div>
<p><img src="/assets/images/35.png" alt="Panel principal" /></p>

<p>NESSUS</p>

<p>Nessus es una herramienta de escaneo de vulnerabilidades y gestión de vulnerabilidades de red que se utiliza para identificar y evaluar vulnerabilidades en sistemas informáticos y redes. Fue desarrollado por Tenable, una empresa de ciberseguridad, y es una de las herramientas de seguridad de red más populares y ampliamente utilizadas en la industria.</p>

<p>Nessus utiliza una amplia variedad de técnicas de escaneo, incluyendo escaneos de puertos, escaneos de vulnerabilidades, pruebas de intrusión y evaluaciones de cumplimiento de políticas para identificar posibles vulnerabilidades en los sistemas y redes de destino. La herramienta puede realizar escaneos de vulnerabilidades en sistemas operativos, aplicaciones web, bases de datos, servidores de correo electrónico, dispositivos de red, sistemas SCADA/ICS y otros componentes de infraestructura de red.</p>

<p>Nessus también cuenta con una amplia gama de funciones de gestión de vulnerabilidades, que permiten a los usuarios rastrear y priorizar las vulnerabilidades encontradas, así como proporcionar recomendaciones y orientación sobre cómo mitigar los riesgos identificados. La herramienta también puede integrarse con otros sistemas de gestión de seguridad de la información, como SIEM y GRC, para una mejor visibilidad y gestión de la seguridad.</p>

<p><img src="/assets/images/36.png" alt="Panel principal" /></p>

<p><img src="/assets/images/37.png" alt="Panel principal" /></p>

<p>Reconocimiento SMB</p>

<p>SMB (Server Message Block) es un protocolo de red utilizado para compartir archivos, impresoras y otros recursos entre computadoras en una red. El reconocimiento SMB se refiere a la técnica utilizada por los atacantes para identificar los sistemas que tienen el servicio SMB activo y configurado de forma incorrecta, lo que puede permitir el acceso no autorizado a los recursos compartidos en el sistema.</p>

<p>El reconocimiento SMB se puede realizar mediante varias herramientas, como Nmap, Metasploit y otras herramientas de exploración de redes y vulnerabilidades. Estas herramientas envían solicitudes al puerto TCP 445, que es el puerto utilizado por el servicio SMB, para obtener información sobre los sistemas que están escuchando en este puerto.</p>

<p>Una vez que un atacante ha identificado un sistema con el servicio SMB activo y configurado de forma incorrecta, puede intentar explotar las vulnerabilidades conocidas en el protocolo SMB para obtener acceso no autorizado al sistema y los recursos compartidos. Las vulnerabilidades en SMB han sido utilizadas en varios ataques notables, como el ransomware WannaCry y NotPetya.</p>

<p>Es importante asegurarse de que los sistemas en una red tengan el servicio SMB configurado de manera segura y se apliquen los parches de seguridad para las vulnerabilidades conocidas en SMB para evitar ataques de reconocimiento SMB y otros ataques que exploten vulnerabilidades en SMB.</p>

<p><img src="/assets/images/38.png" alt="Panel principal" /></p>

<p><img src="/assets/images/39.png" alt="Panel principal" /></p>

<p>Los resultados del script de host sugieren que el escaneo ha identificado un sistema llamado “KIOPTRIX” y ha intentado negociar el protocolo SMB2, pero la negociación ha fallado.</p>

<p>El resultado <code class="language-plaintext highlighter-rouge">_nbstat</code> indica que se ha utilizado el comando <code class="language-plaintext highlighter-rouge">nbtstat</code> para obtener información de NetBIOS del sistema escaneado. La respuesta indica que el nombre de NetBIOS del sistema es “KIOPTRIX”, pero no se ha podido identificar el usuario de NetBIOS ni la dirección MAC.</p>

<p>El resultado <code class="language-plaintext highlighter-rouge">_smb2-time</code> indica que el script ha intentado negociar la conexión con el sistema utilizando el protocolo SMB2, pero ha fallado. El protocolo SMB2 es una versión más reciente del protocolo SMB que se utiliza en sistemas operativos modernos, como Windows Vista, Windows 7 y versiones posteriores. El resultado puede significar que el sistema no es compatible con SMB2 o que la negociación ha fallado por otros motivos, como la falta de permisos o la configuración incorrecta de SMB.</p>

<p>Es importante tener en cuenta que los resultados del script de host pueden proporcionar información útil, pero no deben considerarse como una evaluación completa de la seguridad del sistema escaneado. Se deben realizar pruebas adicionales y se deben tomar medidas adecuadas para proteger el sistema y la red en general.</p>

<p>Abriremos metasploit con el comando msfconsole y se pondrá search smb</p>

<p><img src="/assets/images/40.png" alt="Panel principal" /></p>

<p><img src="/assets/images/41.png" alt="Panel principal" /></p>

<p>Se utilizará el número 105</p>

<p><img src="/assets/images/42.png" alt="Panel principal" /></p>

<p>Identifica que la versión del protocolo SMB en un servidor SMB en la red es 2.2.1a</p>

<p>El comando <strong>set RHOSTS (dirección IP)</strong> se utiliza en la herramienta de prueba de penetración Metasploit Framework para establecer la dirección IP del host remoto objetivo que se va a escanear o atacar.</p>

<p>El término <strong>RHOSTS</strong> significa “Remote Hosts”, que se traduce como “Hosts Remotos” en español, y es una variable utilizada por Metasploit para especificar una o varias direcciones IP de destino que se van a escanear o atacar.</p>

<p>La opción <strong>set</strong> se utiliza para establecer o cambiar el valor de una variable en el contexto actual de Metasploit. Al utilizar <code class="language-plaintext highlighter-rouge">set RHOSTS &lt;dirección IP&gt;</code>, se establece la dirección IP del host remoto como el valor de la variable RHOSTS.</p>

<p>Una vez que se ha establecido la dirección IP del host remoto objetivo, Metasploit Framework puede utilizar los módulos correspondientes para realizar diversas pruebas de vulnerabilidades y ataques en el host remoto, como escaneo de puertos, escaneo de vulnerabilidades, ejecución remota de código, entre otros.</p>

<p><img src="/assets/images/43.png" alt="Panel principal" /></p>

<p>SearchSploit es una herramienta que se utiliza para buscar exploits y vulnerabilidades conocidas en sistemas y aplicaciones específicas.</p>

<p>Samba es una implementación de software libre del protocolo de archivos compartidos de Microsoft Windows. La versión 2.2.1a de Samba es una versión antigua y ya no se utiliza ampliamente.</p>

<p>Por lo tanto, al buscar “searchsploit samba 2.2.1a”, es probable que se muestren los exploits conocidos para esa versión específica de Samba. Es importante tener en cuenta que, como se trata de una versión antigua, es posible que las vulnerabilidades hayan sido parcheadas en versiones más recientes de Samba.</p>

<p><img src="/assets/images/44.png" alt="Panel principal" /></p>

<p>Se vuelve a abrir metasploit en la terminal y se pone search trans2open</p>

<p>Search Trans2Open es un módulo de Metasploit que busca una vulnerabilidad conocida en el protocolo Trans2 de Samba. El protocolo Trans2 se utiliza en Samba para proporcionar diversas funciones, como la enumeración de archivos y directorios compartidos.</p>

<p>Este módulo de Metasploit utiliza una técnica de desbordamiento de búfer para explotar una vulnerabilidad en el protocolo Trans2. Si la vulnerabilidad es explotada con éxito, un atacante remoto puede ejecutar código malicioso en el sistema objetivo con los permisos del usuario que ejecuta el servicio Samba.</p>

<p>Es importante tener en cuenta que este módulo solo funciona contra sistemas que tengan una versión vulnerable de Samba y que no hayan sido parcheados.</p>

<p>En este caso se puede escoger el módulo 1 y 3. Usaremos el 1.</p>

<p><img src="/assets/images/45.png" alt="Panel principal" /></p>

<p>Debido a que el payload que utilizamos para realizar el exploit no funcionó se tiene que buscar otro, por lo que se utiliza el comando show payloads el cual arrojará una lista.</p>

<p><img src="/assets/images/46.png" alt="Panel principal" /></p>

<p>Se escribe set payload linux/x86/shell_  y se presiona el tabulador para que muestre las opciones que se pueden utilizar a partir de lo ya escrito.</p>

<p>El payload a utilizar será el número 33. Después se escribe show options para ver las opciones disponibles y configurar el módulo</p>

<p><img src="/assets/images/47.png" alt="Panel principal" /></p>

<p>En este caso no se tiene que configurar nada ya que el host y los puertos en los que se intenta hacer explotar la vulnerabilidad ya están configurados. (por lo regular solo se pone el RHOSTS) la dirección ip del sistema a vulnerar.</p>

<p><img src="/assets/images/48.png" alt="Panel principal" /></p>

<p>Después solo se escribe run o exploit para correr el programa. Y como se aprecia en la imágen ya se logró la explotación haciendose root del sistema Kioptrix.</p>

<p>Se utiliza bash -i para iniciar una sesión interactiva y se coloca el comando:
find / -name  bandera*.txt 2&gt;/dev/null</p>

<p><img src="/assets/images/49.png" alt="Panel principal" /></p>

<p>Utilizando el comando cat se abren los archivos .txt donde están las banderas.</p>

<p><img src="/assets/images/50.png" alt="Panel principal" /></p>

<p>Otra forma de realizar la explotación es a traves del comando searchsploit mod_ssl</p>

<p><img src="/assets/images/51.png" alt="Panel principal" /></p>

<p>En este caso se utilizará la última versión del exploit</p>

<p><img src="/assets/images/52.png" alt="Panel principal" /></p>

<p><img src="/assets/images/53.png" alt="Panel principal" /></p>

<p>La copia tiene que estar donde están los demás exploits.</p>

<p><img src="/assets/images/54.png" alt="Panel principal" /></p>

<p>El comando a utilizar es: gcc -o OpenFuck 47080.c -lcrypto</p>

<p><img src="/assets/images/55.png" alt="Panel principal" /></p>

<p><img src="/assets/images/56.png" alt="Panel principal" /></p>

<p><img src="/assets/images/57.png" alt="Panel principal" /></p>

<p><img src="/assets/images/58.png" alt="Panel principal" /></p>

<p><img src="/assets/images/59.png" alt="Panel principal" /></p>

<p><img src="/assets/images/60.png" alt="Panel principal" /></p>

<p><img src="/assets/images/61.png" alt="Panel principal" /></p>

<p><img src="/assets/images/62.png" alt="Panel principal" /></p>

<p><img src="/assets/images/63.png" alt="Panel principal" /></p>

<p><img src="/assets/images/64.png" alt="Panel principal" /></p>

<p><img src="/assets/images/65.png" alt="Panel principal" /></p>

<p><img src="/assets/images/66.png" alt="Panel principal" /></p>

<p><img src="/assets/images/67.png" alt="Panel principal" /></p>]]></content><author><name>Julian Ortega García</name></author><category term="Archivo" /><category term="KIO" /><summary type="html"><![CDATA[El presente artículo es para dar algunos tips principales sobre pentesting poniendo de ejemplo la primer máquina de la certificación PMJ]]></summary></entry><entry><title type="html">TryHackMe</title><link href="https://hacks4vvy.github.io/archivo/TryHackMe/" rel="alternate" type="text/html" title="TryHackMe" /><published>2026-04-13T00:00:00+00:00</published><updated>2026-04-13T00:00:00+00:00</updated><id>https://hacks4vvy.github.io/archivo/TryHackMe</id><content type="html" xml:base="https://hacks4vvy.github.io/archivo/TryHackMe/"><![CDATA[<h2 id="tryhackme">TryHackme</h2>

<p>Actualmente, estoy utilizando la plataforma TryHackme.</p>

<p>Esta herramienta me permite practicar en diferentes entornos simulados y enfrentar retos de seguridad cibernética que ayudan a entender mejor las vulnerabilidades de los sistemas y a fortalecer mi capacidad de detectar, explotar y corregir fallas.</p>

<p>Para la parte de <strong>Active Directory</strong> este recurso es muy bueno.</p>

<p>En estos siguientes enlaces se puede  filtrar por <strong>Active Directory</strong> para obtener un listado de máquinas que se pueden hacer:</p>

<ul>
  <li><a href="https://ippsec.rocks/?#">Ippsec</a></li>
  <li><a href="https://htbmachines.github.io/">S4vitar</a></li>
</ul>]]></content><author><name>Julian Ortega García</name></author><category term="Archivo" /><category term="THM" /><summary type="html"><![CDATA[TryHackme]]></summary></entry><entry><title type="html">IT SUPPORT GOOGLE</title><link href="https://hacks4vvy.github.io/archivo/ITSUPPORTGOOGLE/" rel="alternate" type="text/html" title="IT SUPPORT GOOGLE" /><published>2026-04-12T00:00:00+00:00</published><updated>2026-04-12T00:00:00+00:00</updated><id>https://hacks4vvy.github.io/archivo/ITSUPPORTGOOGLE</id><content type="html" xml:base="https://hacks4vvy.github.io/archivo/ITSUPPORTGOOGLE/"><![CDATA[<h2 id="certificado-profesional-serie-de-5-cursos">Certificado profesional: serie de 5 cursos</h2>

<ul>
  <li><strong>Aspectos básicos de la asistencia técnica</strong></li>
  <li><strong>Los bits y bytes de las redes informáticas</strong></li>
  <li><strong>Sistemas operativos y tú: Convertirse en un usuario avanzado</strong></li>
  <li><strong>Administración de sistemas y servicios de infraestructura de TI</strong></li>
  <li><strong>Seguridad informática: defensa contra las artes oscuras digitales</strong></li>
</ul>

<p>Esta certificación es impartida por la academia <a href="https://www.coursera.org">Coursera</a>  <strong><code class="language-plaintext highlighter-rouge">(IT SUPPORT)</code></strong>.</p>

<p>El programa utiliza una combinación de clases en video, pruebas y laboratorios de práctica para enseñar a los estudiantes.</p>

<p>El certificado está disponible a través de la licencia internacional de Creative Commons Attribution 4.0.</p>

<h3 id="características">Características</h3>

<p>Esta certificación se caracteriza por:</p>

<ul>
  <li>Tener una estimación de 6 meses con 10 horas a la semana.</li>
  <li>Combinación de clases en video, pruebas, laboratorios de práctica y widgets</li>
</ul>

<p><img src="/assets/images/ITSUPPORTGOOGLE.png" alt="Panel principal" /></p>]]></content><author><name>Julian Ortega García</name></author><category term="Archivo" /><category term="ITSUPPORT" /><summary type="html"><![CDATA[Certificado profesional: serie de 5 cursos]]></summary></entry><entry><title type="html">Aprobar el eJPT a la primera</title><link href="https://hacks4vvy.github.io/archivo/ejPTAprove/" rel="alternate" type="text/html" title="Aprobar el eJPT a la primera" /><published>2023-05-15T00:00:00+00:00</published><updated>2023-05-15T00:00:00+00:00</updated><id>https://hacks4vvy.github.io/archivo/ejPTAprove</id><content type="html" xml:base="https://hacks4vvy.github.io/archivo/ejPTAprove/"><![CDATA[<p>El presente artículo es tomado del repositorio de <a href="https://hacknotes.github.io">Johny Chafla</a> y contiene una guía del procedimiento a llevar acabo para aprobar con éxito el examen de la certificación <a href="https://elearnsecurity.com/product/ejpt-certification/">eJPT</a>.</p>

<h2 id="barrido-de-ping">Barrido de ping</h2>

<p>Una vez te conectes por <strong>VPN</strong> al laboratorio, lo primero que deberías hacer es un reconocimiento al sistema, encontrando activos, para lo cual los siguientes comandos te serian de ayuda:</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>nmap <span class="nt">-sn</span> 10.10.10.0/24
fping <span class="nt">-a</span> <span class="nt">-g</span> 10.10.10.0/24 2&gt;/dev/null
</code></pre></div></div>
<h2 id="escaneo-exhaustivo">Escaneo exhaustivo</h2>

<p>Ya en este punto, después de tener tu lista de host activos, lo siguiente que deberías hacer es un escaneo más exhaustivo, es decir listar los puertos abiertos con los que cuentan los host, así mismo como los servicios y versiones que están corriendo en ellos. No olvides ir guardando todos tus escaneos y datos relevantes encontrados.</p>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>nmap <span class="nt">-p-</span> <span class="nt">--open</span> <span class="nt">-n</span> <span class="nt">-v</span> <span class="nt">-T5</span> 10.10.14.16 <span class="nt">-oN</span> puertos
<span class="nb">sudo </span>nmap <span class="nt">-sS</span> <span class="nt">--min-rate</span> 200 <span class="nt">-p-</span> <span class="nt">--open</span> <span class="nt">-n</span> <span class="nt">-v</span> <span class="nt">-Pn</span> 10.10.14.16 <span class="nt">-oN</span> puertos
nmap <span class="nt">-sV</span> <span class="nt">-sC</span> <span class="nt">-p21</span>,22,80 10.10.14.16 <span class="nt">-oN</span> serviciosVersiones
nmap <span class="nt">--script</span><span class="o">=</span>vuln <span class="nt">-p22</span>,21,80,445 <span class="nt">-v</span> 10.10.14.16 <span class="nt">-oN</span> vulnScan
nmap <span class="nt">--script</span><span class="o">=</span>smb-vuln<span class="k">*</span> <span class="nt">-p445</span> <span class="nt">-v</span> 10.10.14.16 <span class="nt">-oN</span> smbScan
</code></pre></div></div>
<p>En esta etapa también debes ir realizando un reconocimiento a todos los servicios y puertos listados con los comandos anteriores, algunas cosas que deberías probar dependiendo el puerto y/o servicio seria:</p>

<h3 id="servicios-web"><strong>Servicios Web</strong></h3>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>nmap <span class="nt">--script</span><span class="o">=</span>http-enum <span class="nt">-p80</span> 10.10.14.16 <span class="nt">-oN</span> webScan
wfuzz <span class="nt">-c</span> <span class="nt">--hc</span><span class="o">=</span>404 <span class="nt">-w</span> /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt <span class="nt">-u</span> https://10.10.14.15/FUZZ
wfuzz <span class="nt">-c</span> <span class="nt">--hc</span><span class="o">=</span>404 <span class="nt">-w</span> /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt <span class="nt">-u</span> https://10.10.14.15/FUZZ.php
</code></pre></div></div>

<ul>
  <li><strong>XSS</strong></li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>&lt;script&gt;alert<span class="o">(</span>xss<span class="o">)</span>&lt;/script&gt;
&lt;h1&gt;H1&lt;/h1&gt;
</code></pre></div></div>

<ul>
  <li><strong>SQLMap</strong></li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>sqlmap <span class="nt">-u</span> <span class="s2">"http://10.10.14.12/file.php?id=1"</span> <span class="nt">-p</span> <span class="nb">id
</span>sqlmap <span class="nt">-u</span> <span class="s2">"http://10.10.14.12/file.php?id=1"</span> <span class="nt">-p</span> <span class="nb">id</span> <span class="nt">--dbs</span>
sqlmap <span class="nt">-u</span> <span class="s2">"http://10.10.14.12/file.php?id=1"</span> <span class="nt">-p</span> <span class="nb">id</span> <span class="nt">-D</span> dbname <span class="nt">--tables</span>
sqlmap <span class="nt">-u</span> <span class="s2">"http://10.10.14.12/file.php?id=1"</span> <span class="nt">-p</span> <span class="nb">id</span> <span class="nt">-D</span> dbname <span class="nt">-T</span> table_name <span class="nt">--dump</span>
</code></pre></div></div>

<h3 id="enumeración-de-smb"><strong>Enumeración de SMB</strong></h3>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>smbclient <span class="nt">-L</span> 10.10.14.12 <span class="nt">-N</span>
smbmap <span class="nt">-H</span> 10.10.14.12 <span class="nt">-u</span> <span class="s1">'null'</span>
nmap <span class="nt">--script</span><span class="o">=</span>smb-vuln<span class="k">*</span> <span class="nt">-p445</span> 10.10.14.15 <span class="nt">-oN</span> smbScan
smbmap <span class="nt">-H</span> 10.10.14.15 <span class="nt">-R</span> backups <span class="nt">-u</span> <span class="s1">'null'</span>
smbclient //10.10.14.15/backups
</code></pre></div></div>
<h3 id="enumeración-de-ftp"><strong>Enumeración de FTP</strong></h3>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>nmap <span class="nt">--script</span><span class="o">=</span>ftp-anon <span class="nt">-p21</span> 10.10.14.12
ftp 10.10.14.12
<span class="nb">cd</span> ..
</code></pre></div></div>
<h2 id="explotación">Explotación</h2>

<p>En esta fase es en la cual debes aprovechar de los resultados anteriores obtenidos, con esos resultados podrás buscar posibles exploits o maneras de aprovecharte de ellos, como por ejemplo:</p>

<h3 id="ftp---fuerza-bruta">FTP - Fuerza Bruta</h3>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>hydra <span class="nt">-l</span> admin <span class="nt">-P</span> passlist.txt ftp://192.168.0.1
hydra <span class="nt">-L</span> userlist.txt <span class="nt">-P</span> passlist.txt ftp://192.168.0.1
</code></pre></div></div>
<p class="notice--danger"><strong>Pista:</strong> 
Después de encontrar lo que te solicitan podrías necesitar <strong>unshadow</strong> y <strong>john</strong></p>

<h3 id="reverse-shell">Reverse Shell</h3>

<p>Si te basas en los resultados anteriores y te ayudas de <strong>Google</strong> o <strong>searchsploit</strong> necesitarás:</p>

<ul>
  <li><strong>nc</strong>
    <div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>nc <span class="nt">-nlvp</span> 443
</code></pre></div>    </div>
  </li>
  <li><strong>metasploit</strong>
    <div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>msfconsole
</code></pre></div>    </div>
    <h3 id="enumeración-de-windows">Enumeración de windows</h3>
  </li>
</ul>

<p>Una vez hayas comprometido el activo, deberás enumerar lo, los siguientes comandos te serán de gran ayuda:</p>
<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="nb">dir</span> /b/s <span class="s2">"</span><span class="se">\*</span><span class="s2">.conf*"</span>
<span class="nb">dir</span> /b/s <span class="s2">"</span><span class="se">\*</span><span class="s2">.txt*"</span>
<span class="nb">dir</span> /b/s <span class="s2">"</span><span class="se">\*</span><span class="s2">secret*"</span>
route print
netstat <span class="nt">-r</span>
fsutil fsinfo drives
wmic logicaldisk get Caption,Description,providername
</code></pre></div></div>

<h2 id="post-explotación">Post Explotación</h2>

<p>Ahora, una vez hayas realizado todo lo anterior, deberías preocuparte por descubrir nuevos activos y repetir los pasos anteriores si fuese necesario.</p>

<h3 id="wireshark">Wireshark</h3>
<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>ip.addr<span class="o">==</span>192.168.12
ip.src <span class="o">==</span> 192.168.2.11
ip.dst <span class="o">==</span> 192.168.2.15
</code></pre></div></div>
<h3 id="ip-route">IP Route</h3>
<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>ip route add 10.10.10.0/24 via 10.10.11.1 dev tap0
</code></pre></div></div>
<h2 id="recomendaciones">Recomendaciones</h2>
<ul>
  <li><strong>No</strong> olvides revisar el material que te entregan antes del examen.</li>
  <li>Si deseas ver solo los comandos necesarios o alternativos para el examen, revisa mi <a href="https://github.com/hacknotes/eJPT-Cheatsheet">eJPT - Cheatsheet</a></li>
</ul>]]></content><author><name>Julian Ortega García</name></author><category term="Archivo" /><category term="eJPT" /><summary type="html"><![CDATA[El presente artículo es tomado del repositorio de Johny Chafla y contiene una guía del procedimiento a llevar acabo para aprobar con éxito el examen de la certificación eJPT.]]></summary></entry></feed>