[overthewire] Bandit Level 9 → Level 10

moon_security·2025년 2월 28일

[OverTheWire] Bandit

목록 보기
11/32

문제 목표!

The password for the next level is stored in the file data.txt in one of the few human-readable strings, preceded by several ‘=’ characters.

이번 문제는 비밀번호가 여러 개의 =기호로 시작하는 문자열에 기록되어 있답니다.
이번에는 cat 말고 more 명령어를 사용하여 파일을 읽어보겠습니다.

bandit9@bandit:~$ more data.txt
??%?P??????A???#=??C??LMS6v??pL?d?M
?s:?e?y??W?Ĵ?)??LB?Ԧ????\???J
?]T?????;Ec?׻?+^?{~?S??t?u??Zϒ??^^^K?W??&?Y5}|???9g_$k|?^?Q??????u\? w??h!]v?y?	?O???3*????bm??[?w?Y4w?S?G
?i??re--u?vU?}#?䧣5R?!SL?4?i?<2+??$??z?;?d^)??F?C??nM?y?a?:m?Rk??ڴ??:?y6@?ѳ?'?K?:f???
?i??YX娬?????FEʓ?F#X[??7$'0^?J?C%?^h#%EG?8????)????^0?
U V??F>??̧V*?k??x??      ?E?W??o6aͫ?D?dL?ʲ??     [?L}??ڲcHF?j:=n?#????J;)I?3?3z????د??
t?R8???0??
??<K󻻨_>??퇡f??w???}X?K?[?`??Λ?)JJ
                                 j	Fq/??????pQR??/OZ[4'?7-?Z?e˪2??qG:??E??
???A?W?T[??<?tuԫi?0?O?Od?^?'??D#?P?򩡊X4	?r??ѻ????z<?V???
?D??]???
        ???????h#!??Q??????J??s?V?zl7????POl%Y]?H??a?^?UvTo?D?|?@T????^?N????8?g??}??b?}???^u#W?C???
??????V??#?DOܸ8??;t??e??s??9????0
1+(??C@r?n???h??7B	?H?????Mc?v"{?\ܥ??2?Pۆ?\??+Ҿ??S??̜?@^?UCy??db*Nz}?xR=??@wS??{??"h??)???Z"?*z?????(??&??Ufx??h??g?^?
Wc?cR???dI?c???Z?cc5M?????!U??J??Р9?$W???3Üϡ??%?۟??H??`oaT????)????f??W??*o	??(5?ڐ??>7??/:?MǨK????=H???#?W§2k??p?ߖ?"o??
?y?=I{މL??Í????\???W?d? ?q???Rw4?"???K"?)K???
                                             ?k???????#???X????`?oxI??????
h[?J?-X?٪?nKr߾|-?F?q?*>?g?
:zr0??
?W????c|Ղ???*???E??<$?Æ?g??X??PH???<??????? ? ?Uv5?u?o?G[?T???
6???ƾ3ʿ?9;???ɸ^q"?|YIb?q?Z
                          ?P?4T??oa???)?!S:%_????yG@q-?7N?zK??K.?W??fl6?d??&<?l^L?3?Og{?A?????
??&?S_?kR????O?

흠... 이런 느낌이군요.
이런 난해한 글자들 속에서 비밀번호를 어떻게 찾아야 할까요?

문제 풀이!

이 문제에서는 strings 명령어가 필요합니다.
strings는 바이너리 파일에서 사람이 읽을 수 있는 문자열을 추출합니다.
한 번 사용해 볼까요??

bandit9@bandit:~$ strings data.txt 
h!]v
r>)1
v0i)b 
B:PyZ
#0/u
dyaE
F#X[
7$'0'T
^^^K
Y5}|
9g_$
^h#%EG
	Fq/
/OZ[4'
D#?P
POl%
}========== the
db*Nz
cc5M
`oaT
E:zr0
!S:%_
yG@q-
-c5N
xHp\
wS>n
^B~9
Q!vw
'5jl
. \,
66exg
h^Ad
,`Cd80
UB;N
U@j?
p\l=
te24
UNvlE
...

알파벳, 숫자, 특수기호 등 사람이 읽을 수 있는 데이터가 추출됐습니다.
여기서 몇 개의 === 문자로 시작한다고 했으니 grep 명령어를 사용하면 될 것 같습니다.

bandit9@bandit:~$ strings data.txt | grep ===
}========== the
3JprD========== passwordi
~fDV3========== is
D9========== FGUW5ilLVJrxX9kMYMmlN4MgbpfMiqey

비밀번호 찾기 완성 :)

profile
모의해킹 & 보안 공부 기록 블로그

0개의 댓글