Exploit VS Reverse Engineering VS PenTest [cerrado]

2

Para comenzar, permítame decirle que estoy intentando encontrar mi camino en infoSec ... Quiero saber qué camino seguir. Mi fondo es la base de datos básica de programación CRUD (HTML Php, JavaScirpt, Java, etc ...)

Acabo de leer un artículo cnn sobre una violación importante de datos de Yahoo Dicen que era "un individuo" patrocinado por algún estado ...

Así que pensé que la persona podría ser un pentester, un ingeniero inverso (es decir, un investigador de vulnerabilidades), un escritor de exploits ...

Mi pregunta es: ¿qué recomendaría a un principiante que hiciera si su objetivo es pasar del "conocimiento cero (es decir, ese conocimiento es mi fondo de programación actual)" al "conocimiento experto"?

Por ejemplo, para las vacaciones de verano (de 3 a 4 meses sin escuela sentado en casa estudiando infosec), ¿cómo debo estudiar al menos uno de los campos siguientes para alcanzar un nivel intermedio al final de las vacaciones de verano ?:

  • explotar la escritura (me gusta ese campo porque sé un poco de programación);
  • ingeniería inversa (investigación de vulnerabilidad);
  • pentesting;
  • nombre cualquier campo adicional que no conozco

... algún tipo de hoja de ruta con libros de texto si es posible.

    
pregunta John Sebastian 22.09.2016 - 23:23
fuente

1 respuesta

0

Hay varios trabajos técnicos y no técnicos en infosec, pero para los desarrolladores web, con su perfil, le recomendaría que lea sobre las aplicaciones web y sus fallas.

Por lo general, Pentest es una actividad de varios pasos, cuando es ejecutada por un equipo, tal vez solo unos pocos miembros tengan un buen conocimiento sobre más de un campo. La escritura de exploits es realmente vaga, si planea escribir desbordamientos de búfer (pila, montón), la base del ensamblaje es fundamental, pero si mantiene su enfoque en las aplicaciones web, eso no será necesario.

No hay muchos libros o recomendaciones en la web para un libro completo final que lea y obtenga mágicamente todo el conocimiento. Por lo general, lo que leerá es la documentación técnica de la aplicación, las páginas de manual y los libros en su campo. Para un buen comienzo, instale DVWA, familiarícese con el código, comprenda las vulnerabilidades en su campo de estudio (php / java), aprenda cómo explotarlo. Sería más fácil comenzar por pasar horas depurando tu shellcode en gdb. Deja esos pasos para otro momento y verás los resultados más rápido.

Paralelamente a eso, sigue recopilando versiones antiguas de software, acostúmbrate a docker y vagrant, porque lo usarás mucho para construir tus entornos de prueba.

Y mantén la regla mágica de que deberías saber cómo realizar ciertas actividades para ser alguien capaz de ejecutar una evaluación de vulnerabilidad en ese campo. En realidad, a menudo se le preguntará "¿pero cómo lo arreglamos?", Si solo imprime y envía un informe de escaneo, nunca podrá ponerse en contacto con ese tipo de actividad.

Además de las habilidades técnicas, pasará la mayor parte del tiempo explicando el impacto de una vulnerabilidad para un cliente y cómo solucionarlo. Sucede mucho, un tipo que exporta un informe de Nessus a PDF y lo envía por correo electrónico. Esto generalmente no es algo que los gerentes de TI estén atentos, una vez que trabajé para una compañía que solo desea una segunda opinión, el resultado, su principal base de datos Oracle fue pwned en cuestión de un día, Con todos los hosts en el camino comprometido también. Ahora imagine su reputación en el mercado, después de 2 años de enviar por correo los informes de Nessus que dicen que el ambiente es 100% correcto, que terminaron su contrato con la otra compañía en el mismo día. Pero eso es lo que sucede cuando las personas no trabajan en su área de especialización. Ese auditor es un excelente profesional, con mucho conocimiento sobre procesos internos, ISOs, PCI y políticas de seguridad, ocurren errores, pero nunca tocó una base de datos Oracle, un servidor Open VPN, un enrutador Cisco y un servidor Windows. Sin una comprensión profunda de un tema, no podrá realizar un pentest completo en esa plataforma. Como ejemplo, lo mismo ocurrirá conmigo si intento realizar una evaluación de vulnerabilidad en un Solaris, lo que ocurrirá es una gran cantidad de búsquedas en Google y varias tareas ejecutadas porque he leído al respecto, en otras palabras, sería mejor resultados simplemente ejecutando Nessus, porque mis testículos carecerían de consistencia y es posible que deje algo atrás.

Otro campo que te puede interesar es la respuesta al incidente. Si también pudo obtener un título en derecho, o si conoce a un buen abogado con quien asociarse, podrá realizar la respuesta completa. Pero tendrá que ser versátil, saber bloquear un ataque DDoS, escribir una regla de firewall, arreglar un archivo php dentro de un servidor de producción, analizar los registros de aplicaciones antiguas para generar una lista blanca en cuestión de minutos. Básicamente es mitigar el ataque, recuperarse del ataque, reunir pruebas, hacer los aspectos legales de la actividad y ayudar a los investigadores con su evidencia reunida.

Al igual que todo tipo de negocios, debe pensar cuál es el valor de su trabajo para sus clientes, y una evaluación de prueba / vulnerabilidad debería resultar en una mejor comprensión del nivel de seguridad de su cliente, dando como resultado lo que realizó la prueba, cómo realizó la prueba, qué encontró y qué debe hacer su cliente para archivar el nivel de seguridad que se necesita .

    
respondido por el OPSXCQ 23.09.2016 - 00:46
fuente

Lea otras preguntas en las etiquetas