728x90
1.문제 분석
- RSA Wiener-Attack을 활용하는 문제
- e가 매우 클 때를 가정한 문제
2. 기본 아이디어
- RSHack 툴을 사용한다. (매우 좋다.)
- 구한 d값으로 복호화를 진행한다.
3.문제 풀이
이 문제의 경우 public-key.pem.txt와 암호화된 flag.txt를 준다.
public-key.pem 파일에서 N과 e를 얻을 수 있을 것이다.
우선 openssl을 통해서 열어보면?
앞선 LINECTF에서는 직접 변환했지만 이번엔 꿀팁을 들고 왔다.
https://8gwifi.org/PemParserFunctions.jsp
바로 온라인 PEM 오프너다.
온라인으로 바로 pem파일의 내용을 16진수로 바꿔준다는 장점이 있다!
https://www.rapidtables.com/convert/number/hex-to-decimal.html
물론 이 사이트를 이용하면 바로 16진수를 10진수로 바꿀 수도 있다.
매우 만족스럽다.
이제 구한 n, e와 flag.txt 속에 있는 16진수 데이터를 모두 10진수로 바꾸자.
바로 RSHack.py를 사용해 d값을 구해보면
d를 구했으니 드디어 익스플로잇 코드를 짤 수 있다.
실행해보면?
이렇게 플래그를 구할 수 있다.
728x90
'Dreamhack > CryptoPS' 카테고리의 다른 글
[Dreamhack][CryptoPS] [GCHD2022] 암호의 기초1 (0) | 2023.11.24 |
---|---|
[Dreamhack][CryptoPS] Textbook-CBC (0) | 2023.11.24 |
[Dreamhack][CryptoPS] Textbook-RSA (2) | 2023.11.23 |
[Dreamhack][CryptoPS] [LINE CTF 2021] babycrypto3 (1) | 2023.11.22 |
[Dreamhack][CryptoPS] [LINE CTF 2021] babycrypto1 (0) | 2023.11.21 |