1 dossier pour le CTF
Faites 1 seul dossier pour tout le CTF, et tout ira dedans. Rien ne doit trainer en dehors à la fin de la journée
1 dossier par type de challenge
Dans le dossier du CTF, faites un sous dossier par type de challenge: Reverse, OSINT, Forensics…
1 dossier par challenge
Faites 1 dossier pour chaque challenge, avec le nom du challenge, le nombre de points (utile pour savoir lequel rapportera le plus) et mettez-le dans le bon dossier de "type de challenge"
Ne dumpez pas tous les challenges
Ne créez ce dossier de challenge que lorsque vous attaquez le challenge. Inutile de faire toute la hiérarchie de dossier avant de commencer vos challenges.
Préfixez (TODO) si vous bloquez
Quand vous mettez un challenge de côté (pour la nuit, ou même pour une heure), préfixez le nom du dossier avec "TODO". Cela permettra de vite savoir quels challenges sont "en cours". Retirez le préfixe une fois flaggué
1 challenge à la fois
Ne faites qu'un challenge à la fois. Si vous voulez passer à un autre, mettez "TODO" sur le premier, fermez tout ce qui le concerne, et attaquez le second, sinon, vous vous mélangerez les pinceaux
Choisissez votre challenge
Faites les challenges pour lesquels le titre vous inspire, ou dont l'énoncé vous parle. Si aucun des deux ne vous attire, ne créez pas de dossier pour ce challenge et prenez-en un autre
Soyez attentif
Toute information de l'énoncé (titre, nom des fichiers, contexte) peut être utile: soyez attentif, car ils ne sont souvent pas choisis au hasard (même si, parfois, certaines sont des fausses pistes)
Screenez très souvent!
Prenez souvent des screens (avec la touche Impr Ecran), de l'écran entier: vous aurez peut-etre besoin d'une information en arrière-plan. Faites un screen chaque fois que vous faites un truc, même s'il foire: vous ferez le tri plus tard
Screenez vos notes
En screenant souvent, vous pouvez vous permettre de noter un commentaire (dans un terminal ou autre): il se retrouvera sur votre screen, sans casser votre workflow, et vous pourrez le relire plus tard
Screenez l'énoncé
Prenez un screen de l'énnoncé du challenge, histoire de pouvoir le retrouver pour vos writeups (copier/coller marche aussi, mais c'est plus long je trouve qu'un appui sur une touche du clavier et "click", screen prise)
Récupérez vos screens
A la fin de chaque session de travail sur un challenge, récupérez les screens se trouvant dans Images/ et mettez-les dans un sous-dossier "screens" du dossier du challenge. Ne mettez pas directement ces screens dans le dossier du challenge: vous en aurez vite beaucoup, ca sera le foutoir
Nommez bien vos fichiers
Nommez les fichiers avec ce qu'ils font: notes.txt (que j'appelle souvent flag.txt) avec vos prises de note, decoder.php pour le code principal permettant de chopper le flag, 128code.php s'il permet de déchiffrer le code 128, etc
Lecture seule des fichiers du challenge
Quand le challenge vous donne des fichiers à télécharger, gardez-en une copie en .orig
ou mettez-les en lecture seule: cela évitera une modification malencontreuse qui pourrait vous
empêcher de trouver le flag
Si vous tournez en rond depuis longtemps après avoir fait plein d'essais,
n'hésitez pas à re-télécharger les fichiers pour être sûr de ne pas les avoir changés
Gardez les fichiers foirés
Conservez vos essais, même foirés, dans un sous dossier du challenge (disons "foirades1,2,3…") car vous pourriez, plus tard, vous demander si vous avez déjà testé telle ou telle approche, ou revenir sur un script précédent pour être sûr de ne pas l'avoir mal fait
Gardez les fichiers du challenge
Conservez aussi les fichiers donnés par le challenge: il arrive qu'un challenge soit "réinitialisé",
avec de nouvelles données, et avoir conservé les anciens fichiers peut alors vous aider :)
Par exemple, au 404CTF 2022, le challenge "Un point c'est tout", basé sur du RSA,
a été réinitialisé car les valeurs p et q ont été divulguées:
il était alors trivial de résoudre le challenge avec les anciens fichiers,
et d'obtenir le flag qui parlait des "points fixes": vous avez alors un indice pour la nouvelle
version (réinitialisée) du challenge
Notez bien le flag
Quand vous trouvez un flag (même juste "possible"), notez-le dans votre fichier flag.txt et ensuite, copiez/collez-le dans le site du CTF. Vous aurez ainsi tous les flags dans vos notes (en cas de perte de votre compte par exemple), et vous n'aurez pas de mauvaise surprise si votre connexion est en rade (et c'est chouette pour vos writeups)
Writeups
Je déconseille de faire le writeup immédiatement après avoir résolu un challenge:
ça bouffe du temps, et vous avez la tête dans le guidon, votre writeup sera incomplet.
Privilégiez un "temps mort" pour faire vos writeups: si vous coincez depuis un moment
sans flagguer et sans nouvelle idée, c'est le bon moment de reprendre vos flags passés
et de faire votre prose
Changez d'approche
Quand vous coincez sur un flag, essayer de changer d'approche: le brute force marche mal?
il y a sans doute autre chose, essayez un reverse. Impossible de décoder un texte?
peut-etre qu'il n'est pas codé, mais chiffré et qu'il faut une clef.
Au besoin, passez à un autre challenge
Piffez! Faites simple!
Alors, non, n'entrez pas des flags au hasard, mais tentez des approches, même si elles paraissent absurdes! Un PIN de 8 chiffres? essayez les dates du CTF/de l'organisateur. Un mot de passe à trouver? essayez un brute force, lettre à lettre. Un hash à casser? Essayez rockyou avec ou sans rules…
Aidez-vous du niveau du challenge
Si un challenge "Facile" vous résiste alors que vous avez plié les autres, peut-etre cherchez-vous trop compliqué. Si vous avez résolu des challenges "Moyens", vous savez quels types et quels niveaux de connaissances ils requièrent. Cela peut vous aider à ne pas faire trop compliqué
Faites autre chose
Si vous coincez, faites autre chose. J'ai plusieurs fois flaggué en changeant d'activité: trouver une nouvelle idée en passant le balais, en faisant la vaisselle ou en sortant au ciné, cela arrive! Idem en discutant avec d'autres personnes, sur des sujets autres que le CTF.
A la fin, pillez le CTF
Une fois le CTF terminé, ne vous gênez pas pour, cette fois, récupérer les énoncés et les fichiers
de tous les challenges que vous n'avez pas fait, et que vous auriez aimé réussir.
Vous pouvez les faire sans limite de temps.
Récupérez aussi le scoreboard et vos résultats, pour l'année prochaine.
Gardez le contact
Ca peut être bien de garder le contact avec les autres participants (je suis coupable: je ne le fais pas vraiment), alors, n'hésitez pas! Mon twitter et mon Discord sont en bas de page