Table des matières
Objectif
Répondre en inversant la chaîne de caractères reçue.
Solution
- Écrire un bash script
reverse.sh
qui:
- Inversera la chaîne de caractères de la question (marquée par
>>>
). - Et tracera dans un log le déroulement.
#!/bin/bash
LOGFILE="./log.log"
if [ -f "$LOGFILE" ]; then
rm $LOGFILE
fi
while read question
do
echo $question >> $LOGFILE
if [[ $question == ">>> "* ]]; then
echo ${question:4} | rev | tee -a $LOGFILE
fi
done
-
Installer un pipe nommé
./backpipe
(mkfifo ./backpipe
). -
Traiter les requêtes reçues avec le script
reverse.sh
et retourner les réponses via le pipe nommé. Cela à l’aide de la ligne de commande suivante :
nc localhost 4000 < ./backpipe | bash ./reverse.sh > ./backpipe
Résultat
Le déroulement est tracé dans le fichier log.log
.
Le flag recherché se trouve à la fin du fichier.
cat log.log | tail -n 1
Le log contient :
>>> ANSSI
ISSNA
Well done, continue!
>>> Agence
ecnegA
Well done, continue!
>>> nationale
elanoitan
Well done, continue!
>>> Oui
iuO
Well done, continue!
>>> Bonjour
ruojnoB
Well done, continue!
>>> France
ecnarF
Well done, continue!
>>> baguette
etteugab
Well done, continue!
>>> cassoulet
teluossac
Well done, continue!
>>> no2M8vqJ
Jqv8M2on
Well done, continue!
>>> tumgmHQ9
9QHmgmut
Well done, continue!
>>> LiGgWGWm
mWGWgGiL
Well done, continue!
>>> lhmqAVwG
GwVAqmhl
Well done, continue!
>>> 2YY8jPMB
BMPj8YY2
Well done, continue!
>>> viQWPAAp
pAAPWQiv
Well done, continue!
>>> tHKkE2IY
YI2EkKHt
Well done, continue!
>>> 4PcctOaU
UaOtccP4
Well done, continue!
>>> lWNLQn2yVXielyMCTblYKxEFk3Ny2FiA
AiF2yN3kFExKYlbTCMyleiXVy2nQLNWl
Well done, continue!
>>> ncsm6bh6yv9A5FDtXQLvzhGFPuebSVu0
0uVSbeuPFGhzvLQXtDF5A9vy6hb6mscn
Well done, continue!
>>> gdaiB7zX0aO89KFlm8QjIOA1P0boxdch
hcdxob0P1AOIjQ8mlFK98Oa0Xz7Biadg
Well done, continue!
>>> pVeafOWxvATLpGMU0Ojjy4fs8Ol4d5t8
8t5d4lO8sf4yjjO0UMGpLTAvxWOfaeVp
Well done, continue!
>>> xlVdCPTDNz1aEwmM62Mktz8mjRcQyHLb
bLHyQcRjm8ztkM26MmwEa1zNDTPCdVlx
Well done, continue!
>>> amJrXSzQ9qUc9bITqcdwfUQb4l4WoMy7
7yMoW4l4bQUfwdcqTIb9cUq9QzSXrJma
Well done, continue!
>>> tqnQpADBoeU2lVgJ0xI6oiCM4NEqMIop
poIMqEN4MCio6Ix0JgVl2UeoBDApQnqt
Well done, continue!
>>> dJ124DaktYRmAOGptXlsMmij9oQtkoKI
IKoktQo9jimMslXtpGOAmRYtkaD421Jd
Well done, continue!
Congratulations!! Here is your flag:
FCSC{7b20416c4f019ea4486e1e5c13d2d1667eebac732268b46268a9b64035ab294d}