Crypto2

נכתב על ידי Narcissus

Crypto2

הורדנו וחילצנו את BSidesTLV2018-Crypto2.7z וקיבלנו את Anorak’s Invitation.txt. כשפתחנו את הקובץ ראינו המון זבל:

¨I}K[:'} -3 ’®} f}@F-}fž z
}fF G
F3 zFK} Ò'l ê¼Ò” G
F[ zFf} l: '® z
F' ”¼F[ g fžG 
FÒKO ’:Ú” ”
} å„m”Fž”. , z’ž o”Go' o' -3 
 l}:¶” z’”#
om #’KG„:mž z
Fm ”
} '}ê Ú66F” ' K„ÖF o' :m -3 ÆolF: gF}O, Ò'm:Ú'#om G
’G ÕÒ-}ž M’66 OÒ[ ¼’O l }l l¶fo'® ”¼F ' ¼”.
,’O 
FÒKl „‚ MÒÙÙ OÒ[, :g #„ÚKž}. >IFK3„m} 
’l. ×} êÒ ”
F ÆolF:’-F O}ž mFK fFž˜„m â6} ‚„f #fF’”o'® ”¼F     È,v, Ò -’žoÆFÙ[ @Ú6G kÙÒ3FK „mÙ 'F ®’-} G¼Ò” ¼ÒO ®fÒl¶ÒÙÙ3 }Æ„ÙÆFO  '”: ”
} ®Ù„’Ù63 'FGz„fñFO IoK”¶ÒÙ K}ÒÙ G[ @:” :‚ ¼Ú-’moG[ m„z ¶}O „m ’ O’o63 ’žo. é¼F ¶m˜f}åFOF'”}l Ú#å} :‚ G¼} "CÈv ¼Òl -’OF ×ÒÙ6olÒ[ „'F „‚ ”
} zF’6G
 }” ˜F:˜Ù} om G
F z„fÙl.
...

תהינו מה זה Anorak’s Invitation, אז גיגלנו ומצאנו ספר. אחרי ניתוח של הטקסט גילינו שהם לקחו את הפרק הראשון של הספר שמצאנו, הוסיפו דגל בסופו והצפינו את זה באמצעות צופן החלפות רבים-ליחיד. הבנו את זה בגלל שהם לא שינו את אורכי המילים, כלומר בין כל רווח היו אותם מספר אותיות גם בטקסט המוצפן וגם במקורי.

הדגל המוצפן שיש לנו היה: \x07voO}\x1cJ\xbe\x19\xbb\xd8\xdd\xd8\x1a\xdd\xa0\xee\u203a\u0160\xe6\xee\xd4, אנחנו גם יודעים שהמבנה של כל הדגלים זה: BSidesTLV{flag}. אז כבר יש לנו חלק מהדגל:

'\x07'     = 'B'
'v'     = 'S'
'o'     = 'i'
'O'     = 'd'
'}'     = 'e'
'\x1c'     = 's'
'J'     = 'T'
'\xbe'     = 'L'
'\x19'     = 'V'
'\xbb'     = '{''
'\xd8'     = '?''
'\xdd'     = '?''
'\xd8'     = '?'
'\x1a     = '?'
'\xdd'     = '?'
'\xa0'     = '?'
'\xee'     = '?'
'\u203a'= '?'
'\u0160'= '?'
'\xe6'     = '?'
'\xee'     = '?'
'\xd4'     = '}'

החלפנו את כל התוים שידועים לנו לתוים המקוריים. עכשיו נותר למצוא את השאר.

שינינו קצת את מבנה הטקסט המוצפן כדי להקל על מציאת הפסקה המקורית, לדוגמה הפסקה הראשונה שצרפנו קודם נראית כעת כך:

¨IeK[:'e -3 ’®e fe@F-efž z$efF G$F3 zFKe Ò'l ê¼Ò” G$F[ zFfe l: '® z$F' ”¼F[ g fžG $FÒKd ’:Ú” ”$e å„m”Fž”. , z’ž si”Gi' i' -3 $ le:¶” z’”#$im #’KG„:mž z$Fm ”$e 'eês Ú66F” ' K„ÖF i' :m -3 ÆilF: gFed, Ò'm:Ú'#im G$’G ÕÒ-ež M’66 dÒ[ ¼’d l el l¶fi'® ”¼F ' ¼”.$,’d $FÒKl „‚ MÒÙÙ dÒ[, :g #„ÚKže. >IFK3„me $’l. ×e êÒs ”$F ÆilF:’-F dež mFK fFž˜„ms â6e ‚„f #fF’”i'® ”¼F     È,S, Ò -’žsiÆFÙ[ @Ú6G kÙÒ3FK „mÙ 'F ®’-e G¼Ò” ¼Òd ®fÒl¶ÒÙÙ3 eÆ„ÙÆFd  '”: ”$e ®Ù„’Ù63 'FGz„fñFd IiK”¶ÒÙ KeÒÙ G[ @:s” :‚ ¼Ú-’miG[ m„z ¶sed „m ’ d’i63 ’žis. é¼F ¶m˜feåFdF'”el sÚ#åess :‚ G¼e "CÈS ¼Òl -’dF ×ÒÙ6ilÒ[ „'F „‚ ”$e zF’6G$ es” ˜F:˜Ùe im G$F z„fÙl.

והטקסט המקורי:

Everyone my age remembers where they were and what they were doing when they first heard about the contest. I was sitting in my hideout watching cartoons when the news bulletin broke in on my video feed, announcing that James Halliday had died during the night. I’d heard of Halliday, of course. Everyone had. He was the videogame designer responsible for creating the OASIS, a massively multiplayer online game that had gradually evolved into the globally networked virtual reality most of humanity now used on a daily basis. The unprecedented success of the OASIS had made Halliday one of the wealthiest people in the world.

בגלל שזה טקסט די ארוך טיפלנו רק בפסקאות הרלוונטיות.

כשחיפשנו את התו \xd8 מצאנו שהוא מופיע 3 פעמים, פעמים בדגל ופעם אחת בפסקה השלישית מהסוף:

T$}', :m G$F FÆ}mom® „g í}K¶ÒK3 î, ¬çØc, Ò' ÒÆ’”’f’ž '’@} ’k˜}ÒfFl ’G G$F ”:˜ :g G¼F È#„KFâ„’Kl, ‚:K G¼} ê$:6F ê:K6O ”: ž}}.     g”}f ‚ IF Ù:'® 3}ÒKž, G$F ‡:kk}f äF3 $Òl go'’Ù6[ â}F' ‚„ÚmO, â3 ’' Fo¼”}F'-[}’K-„6l ñ l 6 Io'® om ’ ”K’oÙFf k’KÖ „' G¼F „Ú”ÖofGž „‚ "ñÙ’¼:-’ ‡ ”3.

ובמקור:

Then, on the evening of February 11, 2045, an avatar’s name appeared at the top of the Scoreboard, for the whole world to see. After five long years, the Copper Key had finally been found, by an eighteen-year-old kid living in a trailer park on the outskirts of Oklahoma City.

בדקנו מה התו המתאים ומצאנו שזה 4. המשכנו ככה עד שקיבלנו את רוב הדגל: BSidesTLV{4948941›671}.

אך הייתה לנו בעיה נוספת, התו \u203a הופיע בטקסט המוצפן רק פעם אחת וגם בפעם הזאת זה היה בדגל. למזלנו נראה שכל הדגל מורכב רק ממספרים אז יכולנו לבצע "ברוטפורס" במערכת של ה-ctf.

Success