반응형

암호학 79

[EZCTF] More Sense - 암호학 / 모스부호

뭔가 귀여운 느낌의 암호학 문제였다. 당연하지만 대회 이름처럼(EZCTF) 문제도 아주 쉽다. 문제 설명을 보면 This is too easy! 라면서 쉬움을 어필하고 있다. 문제 파일로 문제 제목과 같은 이름의 More Sense.txt 파일이 주어진다. BB BBBBB ABA AAA AAABB AABBAB BABB BBBBB AAB ABA AABBAB ABB AAAAB BABB AABBAB BBBBB AAB BBAAA AABBAB BBBBB AABA AABBAB AAAA AAABB ABA AAABB More Sense.txt 파일을 열어보면 위와 같은 내용이 들어있다. 처음에 이걸 봤을때 알파벳 A와 B로 이루어진 것을 보고 Bacon cipher 라고 생각을 했었다. Bacon cipher는 위 그..

CTF/암호학 2022.05.20

[EZCTF] OMG - 암호학 / Linux

특이했던 암호학 문제 사실 이 문제는 대회에서 암호학으로 분류되어 있긴 했지만 MISC(기타등등)에 더 어울리는 것 같다. 문제 설명도 읽어보면 귀여운데 이 문제에 대해서 죄송하고, 나 자신도 이거 만드는데 짜증났다고 적혀있다. 실제로 보면 조금 당황스럽긴 한 문제다. 문제 파일로 OMG 라는 이름의 바이너리 파일이 주어진다. Notepad++ 라는 도구를 이용해서 해당 파일을 열어보면 그냥 OMG 라는 단어가 수백개 써있는 모습이 보인다. (Notepad++는 다양한 기능이 내장되어 있는 성능 좋은 메모장이다.) 그런데 자세히 보면 OMG 단어가 무작위 하게 적혀 있는게 아니라 어떤 규칙이나 패턴이 있는것 처럼 보인다. 리눅스 환경에서 보면 조금 다르지 않을까 싶어서 OMG 파일을 칼리 리눅스로 복사한..

CTF/암호학 2022.05.19

[UMDCTF] Fragile Foundations - 암호학 / Base64

쉬웠던 암호학 문제 제목이 Fragile Foundations 인데 Foundation 이라는 단어가 '기초' 라는 의미가 있기 때문에 아마도 말장난처럼 Base64 인코딩을 사용하지 않았을까 추측했다. 문제파일로 ciphertext 라는 바이너리 파일이 주어진다. 해당 파일을 notepad++로 열어보면 이런 내용이 들어있다. 알파벳 대소문자 + 숫자로 이루어진걸 보니 Base64로 인코딩된게 맞는거 같다. 확실한건 맨 끝을 보면 되는데 맨 끝에 == 으로 끝나면 Base64로 인코딩된 것이다. 참고로 이 파일은 txt 파일 치고 용량이 꽤 된다. CyberChef(https://gchq.github.io/CyberChef)에서 Base64를 쉽게 디코딩 할 수 있다. ciphertext 파일을 Inp..

CTF/암호학 2022.05.08

[UMDCTF] Low Effort Required - 암호학 / RSA

RSA와 관련된 암호학 문제였다. 사우스 보스턴에 있는 어느 레스토랑에서 public key와 ciphertext를 발견했는데 해독할 수 있냐고 물어본다. 문제파일로 ciphertext, public_key 그리고 encrypt.py 파일이 주어진다. 40030182544273856015788999062464973403472186630147528555052489762516210821795493031619376345647069575950526306492922573846162431037037824967074058132327917359025595463728944947118480605422897682821384491771926743103021286982319660969379132360886299787840185..

CTF/암호학 2022.05.01

[UMDCTF] Baby's First Crypto - 암호학 / Ascii

암호학 문제 문제 제목이 Baby's First 인것과 달리 생각을 조금 해야하는 문제였다. 물론 푸는 스킬 자체는 그렇게 어렵지 않다. 문제파일로 ciphertext 라는 이름의 바이너리 파일이 주어진다. 해당 파일을 HxD를 이용해서 열어보면 이런 내용이 들어있다. 일단 사람이 알아볼 수 없는 글자들이다. 어떻게 디코딩을 해야하나 고민하면서 XOR도 해보고 이것저것 해보다가 CyberChef에 들어가서 주어진 암호문의 각 문자들에서 16진수 D(10진수 13)를 빼봤더니 (https://gchq.github.io/CyberChef) 맨 앞에 플래그 포맷인 UMDCTF가 보였다. 문제는 뒤쪽에 있는 이상한 문자들이었는데 밑줄친 6개의 값들이다. 08 02 03 이런 값들이 D 보다 작은 값이기 때문에 ..

CTF/암호학 2022.04.29

[CrewCTF] ez-xor - 암호학 / XOR

이번 대회에서 가장 쉬웠던 문제 암호학으로 분류 되었는데 제목부터가 이지 xor이다. 문제설명조차 간단하다. its simple xor 문제파일로는 flag.enc 파일이 주어진다. BRQDER1VHDkeVhQ5BRQfFhIJGw== flag.enc 파일을 열어보면 이렇게 인코딩된 문자열이 들어있다. 문자열을 봤을때 맨 뒤에 == 이 있다면 무조건 base64로 인코딩 되었다고 생각하면 된다. CyberChef(https://gchq.github.io/CyberChef)에 가서 base64로 디코딩을 해본다. .....U.9.V.9..... . 라는 값이 나오는데 아직까지 무슨말인지 알수가 없다. 왜냐면 이 문제에서 가장 중요한 XOR을 하지 않았기 때문이다. XOR을 하려면 KEY를 알아야 하는데 si..

CTF/암호학 2022.04.20

[AUCTF] I'll Have The Salad - 암호학 / 카이사르암호

아주 쉬운 암호학 문제이다. vpxoa{eP5o_4_R4mH_pK_1_4421_9952} 라는 암호문이 주어져 있다. 그냥 봐서는 어떤 의미의 단어인지 전혀 모르겠다. 해킹대회 문제는 문제 제목이나 내용이 아주 엄청난 힌트가 되는 경우가 많다. 문제 제목을 잘 보자. I'll Have The Salad 이다. 여기서 주목할 부분은 샐러드인데 암호학과 샐러드가 연관있는 부분이 무엇이 있을까? 위에 있는 사진은 위키백과에 있는 '시저 셀러드' 사진이다. 시저 카디니라는 사람이 개발해서 시저 샐러드라고 부른다고 한다. 시저의 스펠링은 Caesar 인데 Caesar는 '카이사르' 라고도 읽힌다. 들어본 사람도 있겠지만, 카이사르는 로마의 황제 이름이다. 카이사르는 동맹군들과 소통해기 위해서 위 그림처럼 알파벳을..

CTF/암호학 2022.04.01

[angstromCTF] Reasonably Strong Algorithm - 암호학 / RSA

암호학 문제이다. 문제 이름이 Reasonably Strong Algorithm 인데 맨 앞글자만 따면 R S A 가 된다. RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙인 알고리즘이다. RSA는 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계된 알고리즘이다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록 하는 d를 구한다.(d는 개인키로 공개하지 않는다) 4. n=pq를 계산한 후 n과 e를 공개한다..

CTF/암호학 2022.03.17

[UTCTF] 쉬운 문제들 - 포렌식 / 스테가노그래피 / base64

첫번째문제 secret.jpeg 라는 사진파일이 하나 주어진다. hxd로 까서 플래그 포맷인 utflag{를 검색하면 바로 플래그나온다. 매우쉬움 두번째 문제 binary.txt라는 파일이 주어지는데 열어보면 010101이 적혀있다. Cyberchef에 에 넣고 from binary 를 선택해서 보면 앞부분은 읽을 수 있는 문장으로 바뀌는데 뒷부분은 여전히 인코딩 되어 있다. Cyberchef : https://gchq.github.io/CyberChef/ 생긴것을 보아하니 base64 같았다. base64로 디코딩하면 이번엔 암호문이 튀어나온다. 암호문은 단순히 알파벳 치환한것이다. 시저암호(카이사르 암호) 풀듯이 풀면 된다. https://www.boxentriq.com/code-breaking/cr..

CTF/포렌식 2022.03.02
반응형