OSWE Review
Al haber aprobado el examen hace muy poco realizaré un review un poco más extenso a los anteriores y trataré de explicar cuales son los pasos que seguí para prepararme para esta certificación. El contenido del curso se actualizó hace un par de meses atrás, pueden ver el contenido en el siguiente enlace: https://www.offensive-security.com/documentation/awae-syllabus.pdf A la fecha este curso ha sido el más duro que he tomado, puede ser por mi experiencia previa a la revisión de código y ver perspectivas de caja blanca.
¿Revisión en caja blanca?
Cuando tomé el curso no pensé que seria completamente una perspectiva de caja blanca, tomé el curso por 30 días (lo cual creo que fue un error), si bien logré terminar el curso, no terminé todos los ejercicios extras lo cual me jugó en contra al enfrentarme al examen. La perspectiva del curso no es mi día a día laboral, leer líneas y líneas de código para seguir los flujos de la aplicación en búsqueda de vulnerabilidades en software real me llevó a aprender demasiadas cosas. Gran parte del curso hay que leer código y personalmente no estaba acostumbrado, esto me gustó y mientras avanzaba en los diferentes módulos era realmente gratificante ver los exploit que se van creando.
Preparación
Cómo decía anteriormente, tomé el curso por 30 días, pero el examen aun no estaba disponible (pagué cuando recién había salido el curso), esto me jugó en contra ya que no me acordaba de muchas cosas cuando tomé el examen (fallé mi primer intento). Esto me llevó a esforzarme más, tomar nota de lo que me faltaba aprender y no decaer ante el fracaso. Cómo me seguí preparando
Tomé un par de cursos de programación por Udemy (para soltar los dedos), si bien programo, necesitaba aprender sobre los lenguajes que entran en el curso y entender los diferentes flujos, los cursos que tomé son los siguientes:
- https://www.udemy.com/course/node-de-cero-a-experto/
- https://www.udemy.com/course/python-sin-fronteras-html-css-mysql/
- https://www.udemy.com/course/crea-sistemas-web-asp-net-core-mvc-entity-framework-ajax/ (este no lo recomiendo, no me gustó)
Luego sentirme más cómodo, haber soltado los dedos, haber programado un par de cosas para practicar, volví a tomar el curso, pero por 60 días. En esta ocasión realicé todo el curso nuevamente y todos los ejercicios adicionales. Además, automaticé todos los exploit que se enseñan en el curso, esto me ayudo mucho para seguir aprendiendo.
Adicionalmente, levanté un par de máquinas virtuales con diferentes bases de datos y aplicaciones (desarrolladas por mí) para practicar el material del curso. Esto también fue de bastante ayuda, ya que me permitía seguir aprendiendo, tanto programando la vulnerabilidad como explotándola. Recomiendo, ir tomando notas de todos los puntos del curso, por ejemplo: instrucciones GREP para búsqueda de vulnerabilidades. Traté de ser lo más ordenado posible con cada uno de los módulos y con todo lo que iba realizando. Esto me ayudó no solo en mi examen sino cada vez que iba avanzando en el curso.
El examen
El examen es bastante duro (a mi parecer), hay varios review en internet que son bastante completos (leí bastantes antes de tomar el mío) y cada uno es diferente en la forma de enfrentar el desafío, creo enormemente que va a depender de la experiencia previa de la persona. Si bien, el curso entrega todo lo necesario para abordar el examen como corresponde.
Al ser un examen grabado, compartí mis 3 pantallas (ayuda mucho tener 3 y no 2) y cada vez que me paraba por un descanso debía avisar, al igual que al volver. Afortunadamente, tengo un espacio de trabajo cómodo donde me puedo encerrar sin problemas.
Algunos consejos:
- Ser ordenado, tanto en las notas del curso como en los avances del examen.
- Tomar descansos (15 a 20 min) para poder despejar la mente. (entre medio me jugué unos fifas).
- La noche anterior dormí bien, traté de descansar lo que más pude.
- Me compré unas energéticas y tomé mucha agua.
- Cuando las cosas no funcionan pensar fuera de la caja, realizar una revisión y volver a empezar (creo que esto es muy importante).
- Personalmente me costó identificar las diferentes vulnerabilidades, pero no su explotación.
- Nunca rendirse.
Conclusiones
Agradecer a Offsec por el gran curso, a mi me enseñó mucho, fue muy entretenido, estudié bastante (me costó) y sobre todo me llevó a esforzarme más.
Recomiendo el curso a todas las personas que quieran empezar a realizar research de aplicaciones WEB, la metodología que entrega es muy buena y me abrió la mente para seguir avanzando.
Quiero también dejar un review que considero importante (o al menos a mí me ayudó):
- https://forum.hackthebox.eu/discussion/2646/oswe-exam-review-2020-notes-gifts-inside
Por último, estos 2 github que también fueron de utilidad:
- https://github.com/timip/OSWE
- https://github.com/deletehead/awae_oswe_prep