[CTF permanent pour les débutants] Setodanote CTF web writeUp! Recommandé pour avoir un sentiment de CTF!

[CTF permanent pour les débutants] Setodanote CTF web writeUp! Recommandé pour avoir un sentiment de CTF!

Cette fois, je vais essayer le Web Setodanote CTF.
"Setodanote CTF: https://ctfexh.setodanote.net/about "

Le Setodanote CTF est un CTF permanent qui a été tenu en 2021, et en termes de difficulté, il équivaut à un niveau d'introduction.
Si quelqu'un pense à commencer le CTF, je pense que vous l'apprécierez si vous l'essayez!

Veuillez noter que l'explication est des spoilers.

Livres de référence recommandés
Le jour de la première journée de la première fois est en cours! / /
Amazone
Auteur: ipusiron
¥3,850 (À partir de 21:11 le 07/08/2025 | Recherche Amazon)
Le jour de la première journée de la première fois est en cours! / /
Amazone
Auteur: Justin Seitz, auteur: Tim Arnold, supervisé par: Mantani Nobutaka, Traduction: Arai Yu, Traduction: Kakara Hirosei, Traduction: Murakami Ryo
¥3,520 (À partir de 12:26 le 07/09/2025 | Recherche Amazon)
Le jour de la première journée de la première fois est en cours! / /
Amazone
table des matières

Corps

Lorsque j'ai ouvert l'URL ci-dessus, j'ai été emmené à l'écran suivant.

En recherchant le corps parce que le titre est le corps, j'ai trouvé un drapeau qui a été commenté!

Répondre

drapeau {section_9}

Tête

Quand j'ai ouvert l'URL ci-dessus, j'ai eu un écran comme ceci:

Ensuite, je cherchais l'en-tête, et quand j'ai trouvé un drapeau!

Répondre

drapeau {juste_a_whisper}

puni_puni

Celui-ci est un peu spécial. C'est un problème de punycode.
La punycode est l'une des méthodes de codage qui convertissent les chaînes Unicode en alphabets, nombres et traits de traits pour permettre l'utilisation de noms de domaine internationalisés dans le DNS existant!

Vous pouvez le convertir sur le site comme celui ci-dessus.
Quoi qu'il en soit, j'ai essayé de le convertir.

Les drapeaux sont San, San, PE, U, N, Y, C, O, Dy, Yon, Yon, Yon, Yon, la notation de Katakana est en lettres minuscules, tandis que la notation d'Hiragana est en nombre à demi-largeur. Veuillez supprimer les drapeaux car les virgules sont des caractères délimités.

Il semble que vous devriez créer un drapeau basé sur cette phrase.

Répondre

Flag {33punycode44}

Erreur

Il apparaît que des informations confidentielles ont été divulguées à partir du site créé.

Heureusement, il nous donne un indice poli: "Tout est ouvert ici. Si vous le suivez, vous serez sûr de trouver ce que vous recherchez."

À en juger par ce qui précède, je pensais que ce n'était pas une liste de répertoires.
Donc, pour l'instant, regardons les répertoires visibles "/ actifs /" et "/ images /".

J'ai jeté un coup d'œil à "/ Assets /", mais il semble qu'il n'y ait aucune information à ce sujet.

Il y avait un drapeau dans "/ images /"!

Répondre

Flag {you_are_the_laughing_man, _aren't_you?}

tkys_royale

Lorsque j'ai ouvert l'URL ci-dessus, j'ai obtenu un formulaire de connexion.

Quoi qu'il en soit, en regardant la source, j'ai découvert un utilisateur de test.

Quand je me suis connecté, on m'a dit: "Vous devez être connecté en tant qu'administrateur pour trouver le drapeau."
Vous pouvez être en mesure de vous connecter à l'aide du nom d'utilisateur "addmin".

Juste pour être en sécurité, j'ai essayé de me connecter avec "admin: admin" ou "admin: pass123", mais cela n'a pas fonctionné.
Ensuite, essayez l'injection SQL.

Admin: 'ou 1 = 1; #

J'ai pu me connecter et obtenir le drapeau!

Répondre

Flag {sqli_with_b1rds_in_a_b34utiful_landscape}

Estimé

Il semble que des informations confidentielles aient été divulguées sur le blog. Quand j'ai regardé l'URL, j'ai vu le blog.

J'ai clairement trouvé un article d'excuses pour cet incident.
En termes de contenu, il semble y avoir un drapeau dans l'image.

La convention de dénomination de l'image semble être "yyyymmdd001b.jpg".

Les images inappropriées sont un jour avant le 3 juin 2021, donc ce sera le 2 juin 2021.
Cette image devrait probablement être "20210602001b.jpg".

J'ai réussi à obtenir l'image.

Je cherchais beaucoup d'ici, mais quand j'ai agrandi la section PC de l'image, j'ai trouvé un drapeau. . .

Répondre

Flag {the_flag_ ne pourrait pas_lion_to_end_up_in_other_peoples_photos}

Mx.flag

L'URL ci-dessus a un site Web de type lettre.

Après avoir regardé diverses choses, j'ai remarqué que Favicon.png était chargé.
Cependant, si vous regardez attentivement, le favicon n'est pas affiché, il semble donc suspect.

Lorsque j'ai vérifié la méta-information à l'aide d'Exiftool, il semble que l'image n'était qu'un TXT.

┌── (hackLab㉿hackLab) - [~] └─ $ exiftool favicon.png Numéro de version Exiftool: 12.65 Nom de fichier: Favicon.png répertoire :. Taille de fichier: 122 octets Date de modification du fichier / Heure: 2023: 08: 24 09: 49: 22 + 09: 00 Date d'accès au fichier / Heure: 2023: 08: 24 09: 49: 22 + 09: 00 Fichier Inode Date / heure: 2023: 08: 24 09: 49: 28 + 09: 00 Permitions de fichiers: -RW-R-R- RIDE Type de fichier: TTX Type de fichier Permitions: REM Type: Texte / Plain Mime Encodage: US-ASCII Newlines: Windows CRLF Ligne Count: 3 Word Count: 10

Donc, lorsque j'ai vérifié le contenu, j'ai pu trouver le drapeau.

┌── (hackLab㉿hackLab) - [~] └─ $ cat favicon.png // Flag {mr_flag_hiding_in_the_favicon} console.table ({place: "favicon.png", png: "false", drapeau: "true", "moi"});

Répondre

Flag {mr_flag_hiding_in_the_favicon}

Réorienter

Il y avait un site de blog. Cela s'appelle Redirection, donc je vais regarder vers les redirections.

<script>!function(){var ref = document.referrer;var domain = ref.match(/^http([s]?):\/\/([a-zA-Z0-9-_\.]+)(:[0-9]+)?/)[2];if(domain == "www.google.com" || domain == "www.google.co.jp" ){location.href = atob('Li9iV0ZzYTJsMC5odG1s');}}();</script>

J'ai trouvé que le décodage dans la base64 redirige vers "./bwfsa2l0.html".

Il est difficile de rediriger, donc j'utiliserai des testeurs API.

<!DOCTYPE HTML><html><head><title>commencer</title><noscript><meta http-equiv=refresh content="1; URL=./noscript.html"></noscript><script> !function() { var params = new URL(window.location.href).searchParams; if(Array.from(params).length > 0){ location.href = './bm9mbGFn/?'+params; }else{ location.href = './bWFsa2l0.html?callback=wantFlag&data1=2045&data2=0907&data3=BiancoRoja&data4=1704067200'; } }(); </script></head><body><p>Découvrez le drapeau.</p></body></html>

Lorsque j'ai vérifié le contenu du HTML auquel j'ai été redirigé, il semble que je redirige davantage.

if (array.from (params) .length> 0) {location.href = './bm9mbgfn/?'+Params; } else {location.href = './bwfsa2l0.html?callback=wantflag&data1=2045&data2=0907&data3=Biancoroja&data4=1704067200'; }

Pour autant que vous puissiez voir ci-dessus, vous devez faire une demande comme suit:

./bm9Mbgfn/?callback=wantflag&data1=2045&data2=0907&data3=biancoroja&data4=1704067200

Faisons une demande.

<html><head><title>Suivant</title><noscript><meta http-equiv=refresh content="1; URL=../noscript.html"></noscript><script> !function() { var params = new URL(window.location.href).searchParams; location.href = '../bmV4dG5leHQ/?'+params }(); </script></head><body><p>Pas de drapeau ici. Allez à Suivant.</p></body></html>

Il semble être à nouveau redirigé.
Les paramètres sont redirigés vers "../bmv4dg5lehq/" avec les mêmes paramètres.

<html><head><title>Prochain</title><noscript><meta http-equiv=refresh content="1; URL=../noscript.html"></noscript><script> !function() { var params = new URL(window.location.href).searchParams; location.href = '../b25lLXR3by10aHJlZQ/?'+params }(); </script></head><body><p>Pas de drapeau ici aussi. Allez à Suivant.</p></body></html>

Il semble qu'il soit toujours redirigé.
Nous redirigerons le système comme nous l'avons fait jusqu'à présent.

<html><head><title>Point de ramification</title><noscript><meta http-equiv=refresh content="1; URL=../noscript.html"></noscript><script> !function() { var params = new URL(window.location.href).searchParams; if (params.get('callback') == 'getFlag') { location.href = '../dGFjaGlrb21hX2thd2FpaV95b25l/?' + params; }else{ location.href = '../ZGFtbXlmbGFn/?' + params; } }(); </script></head><body><p>Vous avez besoin des paramètres corrects pour obtenir le drapeau.</p></body></html>
if (params.get ('callback') == 'getflag') {location.href = '../dgfjaglrb21hx2thd2fpav95b25l/?' + params;

Je veux saisir ceci, donc je vais transformer le paramètre de rappel en getflag et le laisser rediriger.

<html><head><title>Allez! Allez! Allez! Allez!</title><noscript><meta http-equiv=refresh content="1; URL=../noscript.html"></noscript><script> !function() { var params = new URL(window.location.href).searchParams; var callback = params.get('callback'); var data1 = params.get('data1'); var data2 = params.get('data2'); var data3 = params.get('data3'); var data4 = params.get('data4'); if (callback == 'getFlag' && data1 == "2045" && data2 =="0907" && data3 == "BiancoRoja" && data4 =="1704067200") { location.href = 'https://noisy-king-d0da.setodanote.net/?'+params; }else{ location.href = '../ZGFtbXlmbGFn/hint.html?'+params; } }(); </script></head><body><p>Oui! Allez à Suivant.</p></body></html>

Cela semble être le dernier. Redirigeons les paramètres tels qu'ils sont.

if (callback == 'getflag' && data1 == "2045" && data2 == "0907" && data3 == "biancoroja" && data === "1704067200") {emplacement.href = 'https://noisy-king-d0da.setodanote.net/?'+Params;
<!DOCTYPE html><body><h1>Beau travail !!</h1><p> Flag {analyz1ng_bad_red1rects}</p></body>

J'ai le drapeau!

Répondre

Flag {analyz1ng_bad_red1rects}

résumé

Cette fois, j'ai essayé le Web Setodanote CTF!
Comme c'est pour les débutants, cela ressemblait plus à la résolution de puzzles que d'utiliser des connaissances, mais je pense que c'est une première étape amusante vers le démarrage du CTF.

Références et sites

-

Partagez si vous le souhaitez!

Qui a écrit cet article

Ceci est un blog que j'ai commencé à étudier la sécurité de l'information. En tant que nouvel employé, je serais heureux si vous pouviez regarder avec un cœur large.
Il y a aussi Teech Lab, qui est l'occasion d'étudier le plaisir en programmation, donc si vous êtes intéressé par le développement de logiciels, assurez-vous de jeter un œil!

table des matières