RITSEC CTF 2018 Nobody uses the eggplant emoji
Crypto & Network & Etc/Crypto Practice 2019. 11. 7. 03:15문제에서 제공해주는 암호문은 다음과 같다.
이모티콘과 _ 문자로 이루어진 암호문인데 암호문에서 사용된 이모티콘의 개수를 확인해보면 26개이고 이는 알파벳 개수임을 알 수 있다.
이를 토대로 다음 코드를 통해 이모티콘을 우선 알파벳으로 치환해줬다.
# -*- encoding: utf-8 -*-
enc_data = "🤞👿🤓🥇🐼💩🤓🚫💪🤞🗣🙄🤓🥇🐼💩🤓😀✅😟🤓🍞🐼✅🚫💪🥇🤓🐼👿🤓🚫💪😟🤓👿😾😀😯🤓👿🤞✅🔥🚫🤓🥇🐼💩🤓👻💩🔥🚫🤓😀🗣🔥🍞😟✅🤓🚫💪😟🔥😟🤓🚫💪✅😟😟🤓💔💩😟🔥🚫🤞🐼🗣🔥😭🤓🍞💪😀🚫🤓🤞🔥🤓🥇🐼💩🤓🗣😀👻😟🤢🤓🍞💪😀🚫🤓🤞🔥🤓🥇🐼💩✅🤓💔💩😟🔥🚫🤢🤓🍞💪😀🚫🤓🤞🔥🤓🚫💪😟🤓😀🤞✅🤓🔥🐙😟😟😎🤓👀😟😾🐼🤬🤞🚫🥇🤓🐼👿🤓😀🗣🤓💩🗣😾😀😎😟🗣🤓🔥🍞😀😾😾🐼🍞😭🤓🥇🐼💩✅🤓👿😾😀😯🤓🤞🔥🤡🤓😀👿✅🤞🤬😀🗣_🐼✅_😟💩✅🐼🐙😟😀🗣_🔥🍞😀😾😾🐼🍞_🍞🐼🍞_🚫💪😟✅😟🔥_😀_😎🤞👿👿😟✅😟🗣🤬😟🤓"
result = []
for i in enc_data:
if "_"!=i:
result.append(i)
result = list(set(result))
for i in range(0,len(result)):
enc_data = enc_data.replace(result[i],chr(97+i))
print(enc_data)
result = nvlfuilwmnzalfuilsetlquewmfluvlwmtlvcsxlvneowlfuilpiowlszoqtelwmtotlwmettlkitownuzorlqmswlnolfuilzsptblqmswlnolfuielkitowblqmswlnolwmtlsnelodtthlytcujnwfluvlszlizcshtzloqsccuqrlfuielvcsxlnoglsvenjsz_ue_tieudtsz_oqsccuq_quq_wmteto_s_hnvvtetzjtl
출력 된 결과를 보면 단순 치환 암호 아니면, 비즈네르일 것 같아서 아래 사이트에 돌려보니 다음과 같은 결과가 나왔다.
https://www.guballa.de/substitution-solver
ifsyousthingsyousaresworthysofsthesflamsfirdtsyousjudtsandwersthedesthreesquedtiondpswhatsidsyousnajevswhatsidsyoursquedtvswhatsidsthesairsdbeekszelocitysofsansunlakensdwallowpsyoursflamsidxsafrican_or_eurobean_dwallow_wow_thered_a_kifferences
복호화가 어느 정도 되긴 했는데, 일부 문자들이 제대로 나오지 않았다. 그래서 조금 더 효율 좋은 사이트를 찾아보다 위 사이트 이상으로 복호화가 깔끔하게 나오는 곳을 못 찾았다. 그래서 그냥 어차피 복호화 된 문자열에서 정상적인 단어들이 많으니까 아래 사이트에서 수동으로 짜 맞췄다.
https://www.dcode.fr/monoalphabetic-substitution
Flag = RITSEC{african_or_european_swallow_wow_theres_a_difference}
'Crypto & Network & Etc > Crypto Practice' 카테고리의 다른 글
Plaid CTF 2015 Strength (0) | 2019.11.11 |
---|---|
TokyoWesterns CTF 2019 baby_rsa (0) | 2019.11.11 |
KCTF Operation 1 (0) | 2019.11.08 |
HackZone VII 2019 CTF Legacy (0) | 2019.11.08 |
TG:Hack 2019 CTF Josefssons Final Exam (0) | 2019.11.07 |