Salut, Habr.
Les 7 et 9 février 2019, la phase de qualification du concours s'est déroulée sur le site des cybertalents, l'objectif est de rechercher des cyber-talents pour Oman et l'Arabie Saoudite. Des personnes d'autres pays, selon les règles de l'événement, participent en dehors de la compétition. Sous chat - analyse de certaines tâches.

Le concours se compose de 9 tâches, quatre d'entre elles sont de niveau de difficulté «facile», quatre sont «moyennes», une est «difficile». Pour chaque tâche, 50, 100 et 200 points sont donnés, respectivement. Les tâches sont également classées. Vous trouverez ci-dessous une solution à certains problèmes.
Retour aux sources
Web Analytics simple
pas beaucoup d'options. Pas besoin d'ouvrir un lien depuis un navigateur, il y a toujours une manière différente
Étant donné un lien comme example.com/somepage. Lorsque vous cliquez dessus, nous sommes redirigés (301 déplacés de manière permanente) vers la même page avec une barre oblique à la fin, et elle, à son tour, redirige vers google.com:

Essayons la requête POST sur la deuxième page:

var _0x7f88=["","join","reverse","split","log","ceab068d9522dc567177de8009f323b2"];function reverse(_0xa6e5x2){flag= _0xa6e5x2[_0x7f88[3]](_0x7f88[0])[_0x7f88[2]]()[_0x7f88[1]](_0x7f88[0])}console[_0x7f88[4]]= reverse;console[_0x7f88[4]](_0x7f88[5])
Passez doucement le code via JS embellissez:
function reverse(_0xa6e5x2) { flag = _0xa6e5x2['split']('')['reverse']()['join']('') } console['log'] = reverse; console['log']('ceab068d9522dc567177de8009f323b2')
Drapeau:
2b323f9008ed771765cd2259d860baec
J'aime les images
Médecine légale numérique facile
Un pirate nous a laissé quelque chose qui nous permet de le suivre dans cette image, pouvez-vous le trouver?
L'image est jointe à la tâche:
Lien d'imageSolutionOuvrez dans l'éditeur hexadécimal. Notez que le format
png a une bande-annonce «IEND» (49 45 4E 44). Nous regardons à la fin:

Il est observé que des informations supplémentaires sont ajoutées à la fin du fichier. La première hypothèse est base32, car toutes les lettres dans un seul cas. Déchiffrer:
FLAG{Not_Only_Base64}
J'aime ce mec
Moyen, ingénierie inverse des logiciels malveillants
Pouvez-vous trouver le mot de passe pour obtenir le drapeau?
Fichier Dan
SolutionIgnorez le fichier via Detect It Easy:

Ouvrez DNSpy x86
Le fichier est vraiment très petit et se compose d'un événement utilisateur - Button_Click:
string value = new string(new char[] { this.Letters[5], this.Letters[14], this.Letters[13], this.Letters[25], this.Letters[24] }); if (this.TextBox1.Text.Equals(value)) { MessageBox.Show(new string(new char[] { this.Letters[5], this.Letters[11], this.Letters[0], this.Letters[6], this.Letters[26], this.Letters[8], this.Letters[28], this.Letters[11], this.Letters[14], this.Letters[21], this.Letters[4], this.Letters[28], this.Letters[5], this.Letters[14], this.Letters[13], this.Letters[25], this.Letters[24], this.Letters[27] })); }
De plus, la chaîne est déclarée dans la classe actuelle:
public char[] Letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ{}_".ToCharArray();
Il existe deux solutions - en statique et en dynamique. Tout d'abord, nous résolvons par la méthode statique:
Lorsque nous nous assurons que le programme n'est pas dangereux, nous pouvons le déboguer en dynamique. Nous mettons un point d'arrêt (point d'arrêt, point d'arrêt) au début de la méthode, regardons dans les variables locales, obtenons la valeur de la variable, après quoi nous obtiendrons un message avec un drapeau.
Pavillon:
FLAG{I_LOVE_FONZY}
Juste une autre conférence
Informations générales simples
la célèbre conférence sur la cybersécurité organisée par l'OWASP dans différents endroits