Max Krupyshev, CEO de CoinsPaid, frecuentemente hace referencia en sus discursos públicos al hecho de que la seguridad es una de las principales prioridades de la empresa. En la práctica, se busca garantizar la seguridad del dinero y los datos personales de los clientes, cumplir con las normas reglamentarias y proteger los intereses de los usuarios.
Varios departamentos son responsables de la seguridad en CoinsPaid. Hace un par de meses, el equipo tuvo la oportunidad de conocer a un nuevo empleado, un hacker de sombrero blanco ético; por supuesto, estábamos ansiosos por hablar con un especialista tan singular. A petición del especialista, los editores de CP Media mantendrán en secreto su identidad.
Nota: existe una creencia generalizada en la web de que los términos “sombrero blanco” y “sombrero negro” tienen su origen en las películas clásicas del oeste, donde los personajes buenos solían usar sombreros blancos y los malos, sombreros negros.
— ¿Cómo te interesaste en el hacking ético? ¿Qué te impulsó a comenzar una carrera como hacker de sombrero blanco?
— Es difícil decir que tenía una idea prefabricada del hacking ético o de sombrero blanco en mi cabeza. Cuando los foros eran populares, muchas veces me percaté de que se creaban hilos o se publicaban comentarios utilizando mi nombre. Al principio, hice un esfuerzo por descubrir qué andaba mal e incluso cómo estaba sucediendo, y desde entonces mi interés aumentó.
No me considero como teniendo una carrera completa de sombrero blanco en este momento. Supongo que es algo de lo que las personas que están activamente involucradas en el desarrollo de herramientas para prevenir o descubrir vulnerabilidades pueden presumir con toda honestidad. Aquellos que realizan extensas investigaciones y exploran nuevos vectores de ataque; como James Kettle o Gareth Heyes, por ejemplo.
— ¿Podrías describir tu enfoque hacia la evaluación de seguridad o las pruebas de penetración? ¿Cómo identificas y priorizas las vulnerabilidades a fin de abordarlas
— En su mayor parte, la metodología y el enfoque se describen en estos documentos:
- Guía de pruebas de seguridad web de OWASP: para la parte web;
- Seguridad en aplicaciones móviles de OWASP: para la parte móvil.
Estos documentos enumeran los principales puntos que deben ser abordados. Además de estos enfoques, se incluyen listas de verificación de seguridad relacionadas con la tecnología específica que se está investigando.
Estas son las prácticas estándar que forman la base del proceso principal, además de las preferencias personales en herramientas y automatización; algunos desarrollan su propio escáner, otros automatizan por completo una vulnerabilidad en particular, etc.
Al estudiar un proyecto, lo primero que se debe verificar son todas las vulnerabilidades evidentes y automatizadas, luego los especialistas proceden a probar los errores comunes relacionados con el tipo de sistema. La mayoría de las vulnerabilidades comienzan con un error o un comportamiento no estándar.
— ¿Podrías darme un ejemplo de un problema de seguridad particularmente desafiante con el que tuviste que lidiar como hacker de sombrero blanco?
— Bueno, hubo una vulnerabilidad de Java Deserialize corregida por Acunetix (un escáner de vulnerabilidades). Sin embargo, no proporciona una carga abierta, por lo que puede eliminarse o explotarse aún más. Inicialmente, tuve que buscar a ciegas con certificados y proxy durante un tiempo considerable, todo para eliminarlo y utilizarlo de manera individual. Después, tuve que escribir un script independiente para generar carga y descubrir la cadena de gadgets utilizada, es decir, la secuencia de funcionalidades que representa la vulnerabilidad.
Hubo un caso divertido que describe de manera honesta los pasos que debes enfrentar en el proceso. El host examinado tenía una función que requería pasar la dirección de la base de datos utilizada como argumento, y por defecto, la dirección hacía referencia a la estructura interna del banco de pruebas. Existían múltiples vulnerabilidades en dicha funcionalidad que podían ser probadas, pero en ese caso de estudio, deseaba eliminar el nombre de usuario y la contraseña utilizados para acceder a la base de datos. Cualquier explotación debía realizarse desde direcciones fijas donde se tenía una máquina remota. Al principio, configuré únicamente un túnel a través de la máquina controlada, accedí al contenedor de la base de datos de forma local y verifiqué la configuración: todo estaba perfecto, las credenciales se transmitieron sin problemas y pude eliminarlas fácilmente cuando lo hice localmente, pero no pude hacerlo de forma remota. Simplemente no pude establecer una conexión. Estaba bastante seguro de que la autenticación en el lado del servicio funcionaba bien porque podía ver las solicitudes que llegaban. Tuve que revisar cada paso de la cadena y probar todas las variaciones posibles. Nada ayudó, ningún resultado, y realmente quería rendirme, pero luego recordé el firewall que había instalado en la mañana, y todo se alineó 🙂
— ¿Cómo te mantienes al día sobre las últimas amenazas de seguridad y las formas de prevenirlas? ¿Asistes a conferencias, lees publicaciones de la industria o participas en comunidades en línea?
— Estoy suscrito a numerosos investigadores de seguridad en Twitter y participo activamente al publicar y discutir sobre los vectores que están ganando popularidad y criticidad allí.
Las conferencias han perdido algo de relevancia, ya que ver las grabaciones de estas resulta más rentable, especialmente porque puedes reproducirlas localmente y analizar el proceso con tranquilidad.
Más allá de eso, existen salas de chat en Telegram y Discord e informes abiertos sobre vulnerabilidades. Si una vulnerabilidad crítica existiese, todo el mundo se enteraría.
— ¿Cuál es tu experiencia trabajando con diferentes programas de software? ¿Qué herramientas prefieres usar?
— Por supuesto, puedo contarte más sobre las herramientas que yo mismo usé. Si hablamos de la dirección web, BurpSuite, nuclei y Acunetix se encuentran entre los grandes escáneres y un montón de software simplemente genial como ffuf, SQLmap, httprobe, SSRFmap, assetfinder y waybackurls.
Existen numerosas herramientas, cada una de las cuales merece atención individual, permitiéndote adentrarte en diferentes tipos de vulnerabilidades y realizar un análisis exhaustivo de calidad.
— ¿Cuáles son algunos de los programas de formación o materiales de capacitación que realizaste relacionados al hacking ético o la seguridad?
— Tomé eLearnSecurity, PortSwigger y un poco de HackTheBox (HTB). En mi opinión, PortSwigger y HTB son dos de las mejores opciones gratuitas para obtener capacitación práctica en seguridad.
Cuando realizo pruebas prácticas de cualquier tecnología o método de protección, suelo utilizar bancos de pruebas preconfigurados, es decir, sistemas estándar que contienen vulnerabilidades. Esta siempre es una oportunidad para probar una vulnerabilidad específica y profundizar en la comprensión de su explotación.
— ¿Puedes compartir algún consejo o recomendación para personas u organizaciones que buscan mejorar su seguridad?
— Esa es una pregunta muy difícil para mí. Quizás lo más importante es no pasar por alto los detalles más pequeños, ya que cuando se combinan, pueden hacer que las vulnerabilidades sean mucho más críticas. Puedo decir que el OWASP-TOP-10 refleja perfectamente los errores típicos.
— ¿Cuál es tu perspectiva sobre la evolución del hacking ético en los próximos años? ¿Qué nuevos desafíos u oportunidades anticipas?
— Cualquier nuevo sistema o idea técnica se convierte en un objetivo potencial para los ataques de hackers, lo que me lleva a creer que habrá una cantidad incontable de ellos. Por lo tanto, está claro que el hacking ético solo ganará impulso. Actualmente existen numerosas plataformas que permiten la monetización de este proceso mediante condiciones y reglas previamente acordadas, beneficiando a todas las partes involucradas.