반응형

암호 78

[b01lers CTF] Dream Stealing - 암호학 / RSA / Python

계속해서 이어지는 RSA 관련 암호학 문제 이전 문제보다 훨씬 쉬운 느낌이다. RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 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.11.28

[b01lers CTF] Clear the Mind - 암호학 / RSA / Python

쉬운 RSA 문제 2020CCE 대회가 끝나고 이 문제를 풀었는데 CCE 에서 나왔던 문제 유형과 아주 비슷한 문제여서 금방 풀었다. (https://hackingstudypad.tistory.com/315) RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙혔다. 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계되었다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록 하는 d를 구한다.(d는 개인키로 공개하지..

CTF/암호학 2022.11.26

[CTFlearn] Modern Gaius Julius Caesar - 암호학 / 카이사르암호

CTFlearn의 서른 여덟번째 문제 계속해서 이어지는 암호학 문제이다. 이번 문제는 제목에 있는것 처럼 Caesar 암호와 관련된 문제이다. Caesar는 '카이사르' 라고도 읽힌다. 들어본 사람도 있겠지만, 카이사르는 로마의 황제 이름이다. 카이사르는 동맹군들과 소통해기 위해서 위 그림처럼 알파벳을 몇칸 씩 뒤로 옮겨 새로운 글자로 암호문을 만들었는데 이게 바로 카이사르 암호이다. 예를들어 Apple 라는 단어가 있다면, 이것을 한칸씩 알파벳을 뒤로 옮겨서 Bqqmf 라는 암호를 만드는 것이다. 하지만 문제 설명을 읽어보면 21세기에 누가 알파벳만 가지고 암호문을 만드냐며 keyboard 를 잘 이용해 보라고 한다. BUH'tdy,|Bim5y~Bdt76yQ 주어지는 암호문은 이것이다. 처음엔 알파벳만..

워게임/CTFlearn 2022.11.23

[Root Me] Crypt-art - 암호학 / Piet / Vigenere Cipher

Root Me 에서 제공하는 암호학 문제 분류는 스테가노그래피로 되어있는데 암호학적인 요소가 있어서 그렇게 다시 분류했다. 문제 설명을 읽어보면 경찰이 테러리스트 그룹의 메세지를 가로챘는데, 메세지에는 다른 통신을 암호화하기 위한 비밀 키가 숨겨져 있다고 한다. 그걸 찾아서 decrypt 하는것이 문제의 목표이다. 문제에서 주어지는건 ch8.ppm 파일이다. ppm 이라는 확장자를 난생 처음봤는데 칼리 리눅스로 파일을 옮겨보니 뭔가 그림이 보였다. 찾아보니 Portable PixMap 의 약자로 이미지 파일의 한 종류라고 한다. 일반적인 이미지 뷰어로는 볼 수가 없어서 어떻게 해야하나 고민하다가 cat 명령어로 파일 내용을 한번 봤더니 수상한 문자열들이 보였다. Hi! Welcome to esoteric..

워게임/Root Me 2022.11.19

[CTFlearn] 5x5 Crypto - 암호학 / Python

CTFlearn의 서른일곱번째 문제 이번에는 암호학 문제이다. 항상 암호학 문제가 나오면 두려운데 이번 문제는 그래도 쉬운편이라 다행이다. 문제 설명을 읽어보면 뭐 거의 풀이법을 다 알려주는거나 마찬가지다. 5x5 행렬을 하나 만들어서 순서대로 알파벳을 채워넣는데, k 는 c와 발음이 같기 때문에 제외하고 25글자를 순서대로 배치한다. 그리고 나서 원래 행렬 읽는것처럼 한글자씩 읽어서 데이터를 가져오는데 이것을 5x5 Crypto 라고 한다고 한다. 우선 k를 제외하고 5x5 형태로 알파벳을 배치하면 이런 형태가 될것이다. 1-3,4-4,2-1,{,4-4,2-3,4-5,3-2,1-2,4-3,_,4-5,3-5,} 문제에서 주어지는 암호문은 이건데, 첫번째 거를 한번 풀어보면, 1-3 이니까 이렇게 찾아가서..

워게임/CTFlearn 2022.11.17

[2020CCE] Easy RSA - 암호학 / RsaCtfTool / Python

2020년에 진행되었던 국정원 주최 사이버공격방어대회 묵혀놨던 Write Up을 이제야 포스팅 해 본다. 이번에 풀이할 문제는 Easy RSA 문제이다. 문제 제목에 나온것 처럼 RSA 암호 알고리즘과 관련되어있다. RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를 따서 RSA 라고 이름을 붙혔다. 엄청나게 큰 숫자일수록 소인수분해가 어렵다는것에 착안해서 설계되었다. RSA의 원리는 아래와 같다. 1. 두 소수 p, q를 준비한다. 2. p-1, q-1과 각각 서로소(1외에는 공약수가 없는 수)인 정수 e를 준비한다. 3. ed를 (p-1)(q-1)으로 나눈 나머지가 1의 되도록 하는 d를 구한다.(d는 개인키로 ..

CTF/암호학 2022.11.06

[CTFlearn] RSA Noob - 암호학

CTFlearn 의 서른두번째 문제 이번엔 암호학 문제이다. 문제 제목처럼 RSA 암호 알고리즘에 관한 문제인데 풀어보면 이게 무슨 RSA 문제인가.. 싶을정도로 황당하다. 문제에서 주어진 주소로 접속하면 텍스트 파일을 하나 받을 수 있다. e: 1 c:9327565722767258308650643213344542404592011161659991421 n: 245841236512478852752909734912575581815967630033049838269083 텍스트 파일의 내용은 위와 같다. 보통 CTF에서 n, e, c가 주어지면 RSA 문제라고 보면 된다. RSA는 지금까지도 아주 많이 사용하는 공개키 알고리즘의 이름이다. 개발자인 Rivest, Shamir, Adleman 세명의 이름 앞글자를..

워게임/CTFlearn 2022.10.23

[CTFlearn] Substitution Cipher - 암호학 / 치환암호

CTFlearn의 서른번째 문제 이번엔 Medium 난이도의 Cryptography 문제이다. 문제 제목의 substitution cipher 는 치환암호 라는 뜻으로 비트나 문자, 블록 등을 다른 비트, 문자, 블록으로 치환하는 암호를 의미한다. 주어진 링크로 들어가면 이렇게 암호문이 주어진다. 영어처럼 보이지만, 전부 다 알 수 없는 단어로 이루어져 있는게 보인다. 이건 각 알파벳을 다른 알파벳으로 치환해서 적어놓은 암호문이기 때문이다. https://www.boxentriq.com/code-breaking/cryptogram Cryptogram Solver (online tool) | Boxentriq Tool to solve cryptograms. The cryptogram is one of th..

워게임/CTFlearn 2022.10.12

[CTFlearn] HyperStream Test #2 - 암호학 / Bacon

CTFlearn의 스무번째 문제 벌써 스무번째 포스팅이다. 문제 제목이 HyperStream Test #2 인데 왠지 모르게 #1 문제는 없다. ABAAAABABAABBABBAABBAABAAAAAABAAAAAAAABAABBABABBAAAAABBABBABABBAABAABABABBAABBABBAABB 문제에서 주어지는 암호문은 위와 같다. A와 B로 이루어진 긴 문자열인데 사실 이 문제는 문제 설명에서 거의 답을 다 줬다. I love the smell of bacon in the morning! bacon cipher 라는 암호가 존재한다. Francis Bacon 이라는 사람이 만들어서 그렇게 이름이 붙었는데 이런식으로 알파벳을 a와 b, 또는 0과 1만을 이용해 표현하는 방식이다. 예를들어 주어진 암호..

워게임/CTFlearn 2022.09.09

[CTFlearn] BruXOR - 암호학 / XOR

CTFlearn의 열여섯번째 문제 다시 난이도가 easy 로 돌아왔다. 사실 이 문제는 풀이수가 무색할만큼 아주 쉽게 풀 수 있다. 이번 문제는 암호학 문제이다. 제목을 보면 BruXOR 이라고 되어있는데 바로 떠오르는게 XOR 키값을 Burte Force(무차별 대입) 하는 것이다. q{vpln'bH_varHuebcrqxetrHOXEj 문제에서 주어지는 암호문은 위와 같다. 적절한 XOR 키를 찾아 연산해주면 된다. XOR은 두 명제 가운데 한 개만 참일 경우를 판단하는 논리 연산이다. 0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0 이렇게 둘다 0이거나 1일 경우 0이되고, 두 값이 1과 0으로 서로 다를경우 1이 되는 논리연산이다. 하지만 이렇게 일일이 계산안해..

워게임/CTFlearn 2022.08.26
반응형