7 lecciones aprendidas del diseño de DEF CON Cloud Village CTF

7 lecciones aprendidas del diseño de DEF CON Cloud Village CTF

7 lecciones aprendidas del diseño de DEF CON Cloud Village CTF PlatoBlockchain Data Intelligence. Búsqueda vertical. Ai.

Los eventos Capture the Flag (CTF) son divertidos y educativos, y brindan a los profesionales de la ciberseguridad una forma de flexibilizar sus habilidades de piratería informática mientras aprenden nuevos conceptos en un entorno constructivo y seguro. Los CTF bien diseñados exponen a las personas y los equipos a desafíos operativos, rutas de ataque novedosas y escenarios creativos que pueden aplicarse más adelante en su trabajo como profesionales de la seguridad ofensiva y defensiva.

Pero no todos los CTF son iguales, y para diseñar una competencia de CTF exitosa se necesita mucho más que simplemente plantear los desafíos. Junto con los desafíos de diseño técnico, también existen consideraciones operativas relacionadas con la configuración del entorno y la ejecución real de la competencia, la planificación creativa necesaria para configurar un juego atractivo y la consideración de detalles relacionados con la gamificación de los desafíos, como las compensaciones en cómo puntuar. se establece la estructura.

“Como diseñador, quiero que [el CTF] sea desafiante y divertido. Quiero recompensar a las personas que son inteligentes, que realmente trabajan en ello y que son persistentes”, dice Jenko Hwong, investigador principal del equipo de Threat Research Labs de Netskope y líder del equipo del DEF CON Cloud Village CTF del año pasado. "También tiene que ser práctico para nosotros llevarlo a cabo".

Divertida y práctica fue la mentalidad que Hwong aportó al DEF CON CTF, un evento masivo de varios días que contó con más de 400 personas y equipos probando el desafío y un equipo de 20 personas trabajando bajo su mando para dirigir el evento. Hwong, investigador veterano y participante experimentado del CTF, nunca había dirigido un CTF antes de este evento. Una de sus mayores esperanzas para su primer intento en el trabajo era aumentar la relevancia y el realismo de los desafíos del evento, que a veces pueden ser un problema en los CTF de hoy.

“A veces en estos CTF te enfrentas a un desafío realmente difícil, pero ¿cuál es el punto de esto? Será un problema de descifrado o cifrado, donde el evento dice: 'Aquí hay algo, buena suerte', y luego tienes que pasar por todos estos obstáculos que tal vez no estén completamente divorciados de la realidad pero que en realidad no encajan en una realidad más grande. argumento”, afirma. “Entonces, cuando recibí la llamada, pensé: 'entremos, descubramos una buena historia y un buen conjunto de desafíos que serán divertidos pero que también tengan sentido y tal vez se relacionen con el mundo real de las pruebas de penetración de la investigación'. medidas defensivas, lo que está sucediendo en el mundo real'”.

Sin embargo, mientras se sumergía en el proyecto, una cosa que encontró especialmente desafiante es la poca información que existe sobre la ejecución de CTF. La mayoría de los artículos provienen de participantes que califican un evento y explican cómo resolvieron los desafíos, pero rara vez se ofrece información sobre las mejores prácticas en la realización de un evento. Como resultado, dijo que él y su equipo tuvieron que hacer un montón de trabajo creando desafíos casi desde cero.

"La comunidad generalmente comparte muchísimo, entonces, ¿por qué no compartimos los desafíos del CTF?" él dice. "Pienso que podemos hacerlo mejor."

Con ese espíritu de compartir con la comunidad de seguridad, comparte algunas lecciones importantes que su equipo aprendió a lo largo del camino para que otros a cargo del diseño del CTF puedan aprender y comprender el proceso. Su objetivo es volver a realizar el evento y aprovechar lo que aprendieron el año pasado. También espera que otros compartan sus mejores prácticas, e incluso detalles técnicos, para que toda la comunidad de seguridad pueda mejorar la calidad de los CTF que se ofrecen.

Contar historias es clave

Hwong dice que su equipo de DEF CON Cloud Village estaba muy interesado en crear una historia que fuera atractiva y divertida. Dice que pensó en la historia como un guión de película con escenarios cibernéticos realistas incorporados. Para el evento eligieron un tema de 'Gnomos' que era divertido y gracioso. Pero lo importante no era sólo la escritura de la historia, sino también cómo se planificaban los desafíos técnicos dentro de la historia.

"La historia de los duendes y los gnomos abarcaba todo, pero lo importante era idear escenarios razonables que podrías encontrar como profesional de la seguridad, incluidas rutas de ataque y defensas razonables que encontrarías", dice. "Cuanto más podamos hacer eso como diseñadores de CTF, mejor será para el aprendizaje y más divertido será el CTF".

Adopte un enfoque de desarrollo de software

Los creadores de CTF definitivamente deberían adoptar un enfoque de desarrollo de software para diseñar los elementos técnicos de su desafío, recomienda Hwong.

"Hay que pensar en el diseño, la implementación y las pruebas", dice, y explica que él y su equipo aprendieron por las malas lo difícil que puede ser probar desafíos en un entorno CTF complejo que los participantes pueden manipular de numerosas maneras. .

"Lo que sucedió (y asumo la culpa como creador principal por no guiar las pruebas) es que no pasamos la prueba negativa, así como las comprobaciones de viabilidad", dice. “Parte de esto es que no tuvimos tiempo suficiente para realizar pruebas, por lo que seguí bloqueando algunos entornos mientras el desafío estaba en marcha para que algunos de los desafíos no fueran demasiado fáciles y no hubiera lagunas. Creo que en un momento dado, durante una o dos horas, terminé haciendo algo irresoluble en cierto paso”.

Entonces, una de las grandes lecciones que aprendió es que los diseñadores de CTF deben aportar rigor en el desarrollo de software que abarque todo el trabajo de prueba y viabilidad.

Rigor operativo... y un poco de cafeína

La meticulosidad en el desarrollo de software no es la única capacidad técnica que debe ponerse a prueba. La tripulación que dirige un CTF también necesita un gran rigor operativo.

"Teníamos gente fabulosa ejecutando los servidores y las cuentas de AWS y las cuentas de Google y Azure y asegurándonos de que todo siguiera funcionando y que estuviéramos monitoreando todo", dice. “Todo eso tiene que ser manejado. Y si lo ignoras, podría significar que algo falla, se rompe o tienes problemas de rendimiento”.

Uno de los problemas operativos que encontraron fue que experimentaron cierta colisión entre los participantes y los desafíos, ya que el equipo operaba con la restricción de que no podían crear un entorno independiente para cada participante en AWS, Google y Azure.

"Debido a que estaba en el mismo entorno, les ayudó en otros desafíos y si tienes un desafío que requiere cambiar el entorno, entonces tienes personas pisándose los pies unos a otros, cambiando un objeto compartido", dijo, explicando que él y su El equipo tuvo que restablecer las políticas a medida que avanzaba el CTF para que los participantes no se encontraran entre sí.

Él y su equipo están tratando de aprender de la experiencia para encontrar un método práctico (desde la perspectiva del tiempo, el esfuerzo y los gastos) para brindar a los participantes un entorno verdaderamente aislado sin hacer que todo el CTF sea menos viable porque las cosas se rompan o tarden una eternidad en ejecutarse.

Finalmente, Hwong dice que en el frente operativo, los corredores de espectáculos de CTF también deben ser conscientes de la comunicación constante que deberán facilitar entre su equipo y los participantes.

“Estaba en Discord después de medianoche y dije: 'Tengo una charla que dar mañana, ¿te irías a dormir?'”, bromeó Hwong, quien explicó que los participantes tendrán preguntas y van a Haga ping a los organizadores para obtener consejos y sugerencias a todas horas.

Diseñar diferentes niveles de dificultad es difícil

Lograr los niveles de dificultad correctos de los desafíos y crear un sistema de puntuación justo puede ser más difícil de lo que un organizador novato del CTF pueda pensar inicialmente, advirtió Hwong. Explicó que algunos de los niveles que su equipo diseñó como más fáciles fueron más difíciles de completar para los participantes de lo que habían anticipado, mientras que algunos de los niveles más desafiantes fueron terminados con éxito por más participantes de lo esperado.

De la mano del desafío de nivelar la dificultad está encontrar un sistema de puntuación que tenga sentido. Después de su experiencia en DEF CON, Hwong es partidario de crear algún tipo de sistema de puntuación Bell Curve. Pero dice que el problema no es tan sencillo como establecer una curva. También está la cuestión de normalizar y equilibrar la ventaja que tienen los grandes equipos de la CTF a la hora de acumular puntos de desafío, una cuestión sobre la que uno de los participantes le brindó comentarios después del evento.

“Entonces, si tus desafíos se pueden dividir y realizar en paralelo con varios jugadores, si tengo 10 personas, seré 10 veces más rápido. Y eso supone una ventaja”, afirma. “Su punto era que una especie de puntuación dinámica lo nivela un poco. Si hay cosas en las que es realmente bueno, puede que sea el único que las resuelva y obtendrá el máximo de puntos. La curva de campana lo recompensará frente a la escala, no necesariamente importa si es algo en su timonera de experiencia en términos de 10 contra uno. Hay algunas cosas discutibles aquí que tenemos que resolver”.

Una posibilidad es hacer que los desafíos sean secuenciales, pero la desventaja de esto es que podría hacer que el FTL sea demasiado rígido y lineal, y podría crear un cuello de botella o dependencias que podrían hacer estallar uno o más desafíos. Hwong dice que también le encantaría ver que más CTF recompensen a los participantes por técnicas como cuán sigilosamente operan en un entorno o puntos de atraque si dejan demasiadas huellas y huellas dactilares, y esa es un área que le gustaría explorar mientras diseña eventos futuros. .

Sin embargo, de todos modos, la puntuación dinámica es algo que podría aliviar algunos de los problemas de nivelación y él y su equipo están persiguiendo eso para el próximo año.

Los equipos azules necesitan más desafíos CTF divertidos

Después de trabajar en su primer CTF, Hwong también cree cada vez más que estos eventos no hacen lo suficiente para desafiar e involucrar realmente a los participantes del equipo azul.

“Los ejercicios del equipo azul tienden a ser así: 'Tenemos un entorno mal configurado con muchas vulnerabilidades. ¿Puedes ir a arreglarlos?'”, dice. ”Y lo que hacen es simplemente probar si esas configuraciones se cambian o no o si puedo acceder a este depósito público. Y tan pronto como lo hagas privado, sabremos que lo arreglaste y obtendrás puntos. Sería mucho mejor hacer cosas además de eso, como por ejemplo, si estás comprometido, hay un atacante en tu entorno, tienes que encontrarlo y expulsarlo. Entonces, hay un incidente en este momento y, mientras el atacante tenga credenciales y haga cosas, es posible que pueda detectarlo. Ese es tu trabajo como participante. Y hasta que no revoques su acceso, no lo resuelves y no obtienes el máximo de puntos”.

Ese tipo de escenarios son más difíciles de realizar, pero son más realistas para los defensores y harán que los CTF sean más valiosos para ellos, dice, explicando que eso está en su radar para la próxima vez.

Los CTF necesitan componentes más novedosos y relevantes.

Hwong también desafía a los diseñadores de CTF (y a él mismo) a incorporar información más nueva sobre exploits y vulnerabilidades en sus desafíos. Esta fue una de las cosas en las que deseaba tener más tiempo para sumergirse en su primera participación en DEF CON Cloud Village y que está decidido a mejorar para el próximo año.

“Esta es una de las áreas en las que los FFC pueden ser más una herramienta de aprendizaje y capacitación”, explica. "Nos encantaría utilizar ideas relevantes y hazañas recientes de investigadores que ocurrieron a principios de año o incluso presentadas en DEF CON".

'Bloques de construcción' del CTF para mejorar la 'reutilización'

Finalmente, una de las lecciones más importantes que Hwong dice haber aprendido es que la industria necesita encontrar más formas de crear componentes reutilizables para CTF tal como lo hacen los desarrolladores de software para las aplicaciones. Sueña con ayudar a organizar un repositorio abierto en GitHub de pequeños ejercicios de código que puedan formar los componentes básicos de la creación de un CTF.

“Aún tendrás que personalizarlo y agregarle tu propio toque, pero la idea es eliminar el primer 60% para que los organizadores del CTF puedan concentrarse en cosas realmente novedosas. De esa manera nadie reinventa la rueda”, afirma. "Y luego el 40% restante puede agregar nuevas técnicas, escenarios e historias".

Sello de tiempo:

Mas de Lectura oscura