CTF/picoCTF
[picoCTF] It is My Birthday
j4ko
2022. 6. 6. 00:22
728x90
반응형
Description
I sent out 2 invitations to all of my friends for my birthday! I'll know if they get stolen because the two invites look similar, and they even have the same md5 hash, but they are slightly different! You wouldn't believe how long it took me to find a collision. Anyway, see if you're invited by submitting 2 PDFs to my website. http://mercury.picoctf.net:57247/
Approach
문제를 읽어보니 Hash Collision을 이용해야 될 것 같다.
Hash Collision?
Hash 함수는 임의의 입력이 고정된 크기의 결과를 내는 특성을 가진다. 즉 입력값이 다르면 출력되는 값도 달라야 한다. 하지만 Hash Collision 은 해시 함수가 서로 다른 입력 값에 대해 동일한 값을 내는 상황을 의미한다.
MD5 해시의 경우 결함이 발견되었으며 많은 곳에서 MD5보다 더 안전한 해시함수를 사용하라고 권장한다.
Solve
문제에서 요구하는 바는 Hash 값이 같은 서로 다른 두 파일을 제출하는 것이다. 구글링을 통해 이러한 특성을 가진 파일을 제공해주는 사이트를 찾았다. https://www.mscs.dal.ca/~selinger/md5collision/
위 사이트에서 제공해주는 파일을 다운로드한 뒤 파일의 확장자명을 문제에서 요구하는 pdf로 변경해준 뒤 제출해주면 Flag를 얻을 수 있다.
┌──(kali㉿kali)-[~/Downloads]
└─$ mv erase erase.pdf
┌──(kali㉿kali)-[~/Downloads]
└─$ mv hello hello.pdf
728x90
반응형