Extraido del Manifiesto Hacker, The Mentor, 1986



Documentos relacionados
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

Guía de AirPrint. Esta documentación es para modelos de inyección de tinta. Versión 0 SPA

AMECI Asociación Mexicana de Ciberseguridad. Pentesting Versión 2018-V2.01 AM-PTES Modalidad: e-learning Ficha técnica

abrir además ahí ahora algo alguno alto amor años

Configurar las alertas del correo electrónico en el Cisco VPN 3000 Concentrator

Declaración de variables (integer, single, double, boolean, etc.) en Visual Basic. Dim. Ejemplos. (CU00309A)

Guía de AirPrint. Esta Guía del usuario corresponde a los modelos siguientes: DCP-J552DW/J752DW, MFC-J285DW/J450DW/J470DW/J475DW/ J650DW/J870DW/J875DW

Pantalla inicial de cpanel

Guía de Google Cloud Print

Framework Atlas. Introducción. Unidad de Arquitectura y Soporte de Aplicaciones Área de Aplicaciones Especiales y Arquitectura de Software DIAS

PROGRAMA DE ESTÍMULOS A LA INNOVACIÓN

Gestor de Cocina. Versión 5.0. Pack de módulos de Empleados. Guía de contenidos

Cómo utilizar los comandos standby preempt y standby track

Extraido del Manifiesto Hacker, The Mentor, 1986

Preguntas Frecuentes SIPRED para el Dictamen Fiscal

Seguridad en Redes: Network Hacking

Seguridad en Redes: Network Hacking

Técnico en Seguridad Informática. Informática, Diseño y Programación

Es la estructura que permite ejecutar los comandos solamente si se cumple una determinada condición. La sintaxis más usual:

QUÉ ES BABEL ENTERPRISE?

Fco. J. Rodríguez Montero

Configuración de traducción de dirección de red: Introducción

BRYAN HUMBERTO LOPEZ CARVAJAL UNIVERSIDAD DE SAN BUENAVENTURA SECCIONAL MEDELLÍN FACULTAD DE INGENIERÍAS INGENIERÍA ELECTRÓNICA MEDELLÍN

Enrutamiento estático

Instalación Servicio SSH CentOS 6.5/RHEL 6.2 GESTIÓN DE REDES DE DATOS

Cuando el precio es definido por lista de precio deberá estar indicado en la lista correspondiente, y será independiente del precio del producto.

Software de administración de la impresora

Práctica 1 Pasa la calculadora

Módulos Joomla Flash noticias de actualidad, contenido más leído o más popular y artículos archivados. (CU00433A)

Introducción a MATLAB

PRÁCTICA 4. EL ENTORNO DE UN ROBOT EN C++

TALLER DE PREPARACIÓN PARA EL EXAMEN DE CERTIFICACIÓN PMP

Curso de Automatización y Robótica Aplicada con Arduino

Uso de centinelas para la toma de decisiones. Esquemas y diagramas de flujo. Ejemplos resueltos. (CU00167A)

ATLAS MANUAL DE USUARIO DEL INSTALADOR INNO SETUP 5 Versión 1.0 UNIDAD DE ARQUITECTURA DE SOFTWARE DE APLICACIONES

PROTOCOLO DE INTERNET VERSIÓN 6

FOR REFERENCE ONLY DO NOT COPY. Social Emotional Health Module. Módulo de Salud Emocional Social SUPPLEMENT 1

GUIA PARA LA INVESTIGACION DEL MERCADO LABORAL

CIDAR (Container ID Automatic Reader)

Funciones & Estructuras de control

Fibroline El presente proyecto

Introducción a MATLAB

Escuela Técnica Superior de Ingeniería Informática Departamento de Lenguajes y Sistemas Informáticos. Triggers

SMS Marketing CENTROS DEPORTIVOS. Expertos en SMS Marketing

La ayuda y referencia de Visual Basic y otros recursos como herramientas para los programadores. (CU00306A)

Modificaciones de los Sistemas ATC Automatizados Debido a la Implantación de la RVSM

CEFIRE: Curso Administración de APACHE

Copyright 2009 Buongiorno S.p.A. Guía de uso

Los Elementos Indispensables en la Formación de Intérpretes

GoToAssist Guía de actualizaciones para representantes. Citrix Online. De la versión 9.0 a la versión 10.0

Objetivos y Temario CURSO SQL SERVER 2012

1 de 11. vtools. Telf. (+34) velneo.es

Capítulo I. Introducción

BASH Scripting. Contenidos. BASH: Bourne-Again SHell. Hola mundo!

nom Manual de Cierre de Ejercicio 2015 GUÍA PRÁCTICA: PAGAS EXTRAS

Empleo. CURSO FORMATIVO Desarrollo WEB con Ruby on rails. Coordinador Académico Antonio José Martín Sierra

1.4. CONFIGURAR PRESENTACIONES PARA SU IMPRESIÓN O GUARDADO

PERFIL COMPETENCIA ANALISTA DESARROLLADOR DE APLICACIONES DE SOFTWARE (TIC-PROG)

INSTITUTO POLITÉCNICO NACIONAL ESCUELA SUPERIOR DE INGENIERÍA MECÁNICA Y ELÉCTRICA INGENIERÍA EN COMUNICACIONES Y ELECTRÓNICA

Podemos acercarnos al mundo de la seguridad separando dos entornos: Seguridad en equipos informáticos Seguridad en redes

GUÍA DEL SELLO DE EXCELENCIA EUROPEA

obit Objetivos de Control para la Información y Tecnologías Relacionadas

La siguiente gráfica muestra cada uno de los ítems que podemos encontrar en la interfaz gráfica COM.

TELKIA. Especificación, SMSBROKER HTTP Protocol TELKIA. Versión: 2.5 Fecha: Page 1

Funciones. Resumen del contenido

DIPLOMADO ADMINISTRACION DE LINUX Y MOTORES DE BASES DE DATOS LIBRES

GUIA DE PROCEDIMIENTOS Y FUNCIONES ALMACENADOS EN MYSQL

Microsoft Outlook. Microsoft Outlook

Bienvenido a JAZZTEL Internet Móvil. Guía de instalación rápida. Módem JAZZTEL (WU-260)

INTRODUCCIÓN 3 REQUISITOS DEL SISTEMA..4 DESCARGA DEL SOFTWARE...5 PASOS DE LA INSTALACIÓN 7. Consideraciones..12

Configuración de protocolos TCP/IP

Seguridad y Linux. David Fernández Vaamonde III Jornadas sobre el sistema operativo Linux

Cortafuegos. Enrique Arias. Departamento de Sistemas Informáticos Escuela Superior de Ingeniería Informática Universidad de Castilla-La Mancha

AHORA ORACLE A SU ALCANCE

Guía de Navegación Campus Lares BIENVENIDOS AL CAMPUS VIRTUAL LARES

Estructuras de control. Secuencial, condicional y repetitivas.

Guía de papel. Tamaños, tipos, pesos y capacidades de papel admitidos. Tipos y pesos de papel admitidos por la impresora

Nueva ISO 14001:2015: Cómo afrontar los principales cambios

LUA scripting NXA standard functions

ANUNCIO DE CONTRATO DE SUMINISTROS Muebles de oficina y de organización de eventos - UfMS/lOTP/0042/2013

Amplíe las fronteras de su negocio J

Diseño de algoritmos paralelos

Manual Configuración de Adobe Reader para la validación de la firma de un documento

Análisis y Diseño de Sistemas Departamento de Sistemas - Facultad de Ingeniería

QUÉ ES JAVASCRIPT? PRINCIPALES USOS. SERVIDOR Y CLIENTE. HTML, CSS Y PROGRAMACIÓN. EFECTOS DINÁMICOS (CU01103E)

Objetivo: Lecturas Previas: Introducción:

Práctica de laboratorio 8.3.5: Configuración y verificación de ACL nombradas y extendidas

CLAVE ASIGNATURA REQUISITOS HORA/SEMANA CREDITOS TI-8 PROGRAMACION II 80% DE ASISTENCIA 4 6

El Sistema la informará el saldo de su cuenta. Al oprimir la tecla Acepta el sistema vuelve al menú de la aplicación.

Sistema de control y optimización de comunicaciones para centros educativos

Sesión No. 12. Contextualización INFORMÁTICA 1. Nombre: Editor de Publicaciones (Microsoft Publisher)

SQL Injection. 1º Edición - 11 y 12 de Mayo Montevideo, Uruguay

FICHA DE DINÁMICAS PARA LAS REUNIONES ACTIVIDAD Y TU CÓMO TE MUEVES?

Acceso a un sistema con Backtrack 4

Adaptador Inalámbrico Altas Prestaciones

EJERCICIOS PARTE I: 1. Cómo se llamaba anteriormente a las hojas de cálculo? 2. Qué es una hoja electrónica de cálculo?

María: Cerramos la tienda a las ocho todas las noches, pero cerramos las puertas más temprano.

Automatización de pruebas funcionales Proyecto GXportal. Ignacio Esmite Nicolás Farías Mauricio Farías

Dirigido a: Incluye: Conocimientos Previos: Objetivos General: Objetivos Especificos: Estrategias Instruccionales:

DISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999

Transcripción:

Yes, I am a criminal. My crime is that of curiosity. My crime is that of judging people by what they say and think, not what they look like. My crime is that of outsmarting you, something that you will never forgive me for. ( Si, soy un criminal. Mi crimen es la curiosidad, juzgar a la gente por lo que dice y piense, no por su aspecto. Mi crimen es superarte, algo por lo que nunca me vas a perdonar. ) Extraido del Manifiesto Hacker, The Mentor, 1986

Guía de la Presentación (Buanzo's Memory Pointers) Primera Parte Nmap - Qué es Nmap? - Groso, pero... Para qué me sirve? - Y qué, yo te cambio el SSH de puerto... - Ejemplos Prácticos Segunda Parte Nmap Scripting Engine - Qué es el NSE? - Qué es LUA? - Para qué puede servir? - Cómo se crea un script NSE? - A ver, mostrame un par de scripts... - Ronda de Preguntas y Respuestas - Agradecimientos

Qué es Nmap? "Nmap es, ante todo, Software Libre." Los servicios funcionan en puertos. Los puertos se ven en direcciones IP, las direcciones IP se encuentran en equipos, los equipos están detrás de firewalls, y en el medio hay muchos routers. Y después, vos. Nmap es la aplicación que utilizás para descubrir muchos detalles acerca de todo eso. Más sencillamente, Nmap es un analizador de puertos y servicios, que incluye algunos tipos de análisis y funcionalidad extra que hará a las delicias del... investigador.

Groso, pero... Para qué me sirve? Sirve para saber que tipo de software se encuentra escuchando conexiones detrás de cada combinación IP/puerto, o si desde nuestro punto de vista está filtrado o no. Nos permite conocer la potencial versión del software, e incluso adivinar el sistema operativo remoto, con lo que la lista de vulnerabilidades a aprovechar se achica. Con las últimas mejoras, como el Qscan, permite realizar análisis muy avanzados, lográndose determinar NATs, Firewalling, Proxies Transparentes, todo gracias a las discrepancias de Round Trip de los paquetes. Nmap incluso permite realizar sondeos via proxies.

Y qué, yo te cambio el SSH de puerto...! Y a mi qué!? ESO van a responder ustedes, porque Nmap NO se basa en el número de puerto para detectar el servicio, sino que realiza pruebas concretas: utiliza cada protocolo en cada puerto y analiza las respuestas. De esta manera, Nmap ayuda a que la seguridad que se implemente no sea mediante obscuridad.

Ejemplos Prácticos * Descubrir OS y Software remoto - Sólo en puertos 22,25 y 80: nmap -A -p 22,25,80 $OBJETIVO - Según nmap-services: nmap -A -F $OBJETIVO - En un rango de IP: nmap -A -F 24.232.150.0/32 (Si hay tiempo, ejemplos durante la charla según indiquen los asistentes).

Qué es el NSE? Es, literalmente, el motor de scripting integrado a Nmap, y que permite agregar funcionalidad interactiva avanzada. Esto significa que Nmap, gracias al NSE, puede realizar tareas que solo Nessus y Metasploit, entre otras alternativas privativas, brindaban. Por ejemplo, se podría hacer un script que se ejecute sólo si el puerto 80 o un servicio web es descubierto, y realizar alguna tarea puntual, como determinar la versión de PHP instalada y reportarla en los resultados.

Qué es LUA? LUA es un lenguaje diseñado para ser embebido en otras aplicaciones, para extender la funcionalidad de las mísmas. (Y no pregunten por NASL!) function explode(d,p) local t,ll,l t={} ll=0 while true do l=string.find(p,d,ll+1,true) esto es un REM :P if l~=nil then table.insert(t, string.sub(p,ll,l-1)) ll=l+1 else table.insert(t, string.sub(p,ll)) break end end return t end

Para qué puede servir? * Exploits automatizados / inteligentes * Obtener información de los servicios remotos * Encontrar errores de configuración * Realizar pruebas de stress * Monitorear estado de servicios * Cruzar información obtenida con fuentes externas (whois, axfr, traceroute, etc) * Enviar alertas por mail, SMS * Preparar café, o viajar en el tiempo. * Cualquier cosa, bah.

Cómo se crea un script NSE? Ante todo, lo principal es basarse en un script ya existente, para evitar tener que aprender de cero algunas particularidades de LUA, y para no reinventar la rueda. Luego, un script NSE debe definir las siguientes constantes y funciones: CONSTANTES: id, description y tag. FUNCIONES: portrule y action La función portrule devuelve TRUE sólamente si el script debe ser ejecutado. La función action es el script en sí, y devolverá un mensaje que será mostrado junto con el id, siempre y cuando portrule haya indicado TRUE.

Cómo se crea un script NSE? id="open Proxy Test" description="test if remote proxy is open to usage tags = {"intrusive"} portrule = function(host, port) if ( port.number == 3128 or port.number == 8080 or port.service == "http-proxy" or port.service == "squid-proxy" ) and port.protocol == "tcp" then return true else return false end end

Cómo se crea un script NSE? action = function(host, port) local socket = nmap.new_socket() local retval = socket:connect(host.ip, port.number, port.protocol) socket:send("get http://www.google.com HTTP[...] ) status, result = socket:receive_lines(1) if (status == false) or (result == "TIMEOUT") then [...] else [...] retval = Open Proxy Found end socket:close() return retval end

Novedades del próximo release: Este Lunes 20061113 se libera la potencial Beta Final del NSE, y trae documentación (finalmente!), e incorpora PCRE. Para las próxima versión, que ya será parte de Nmap, tendrá una librería de funciones estándar, incorporando conceptos de programación funcional, o sea, una buena cantidad de funciones vinculadas a patterns ( leer del socket hasta encontrar /pattern/ ). SITIO de Nmap NSE (Diman Todorov): http://xover.mud.at/~diman/nmap/

Agradecimientos A mi hijo Damián. A mi futura esposa, Erica. A Vampii. A 2600, por la frecuencia. A todos los que hicieron posible que yo esté acá: RMS, Vinton Cerf, etc, no estos chabones de cafelug :P Y especialmente a...

USTEDES por no asesinarme durante... ni despues... de esta charla. Adios! Arturo 'Buanzo' Busleiman www.buanzo.com.ar www.vivamoslavida.com.ar www.futurabanda.com.ar buanzo@buanzo.com.ar