본문 바로가기

Security/pwnable.kr12

[pwnable.kr] Toddler's Bottle - random 이번에 풀 문제는 random 문제이다. 차례대로 풀고 싶었으나 지금 도전하기엔 어려워서 일단 풀만한 것부터 해보기로 했다. 이번 문제는 random value에 대한 문제인 것 같다. 얼마 전 과제를 할 때 random 함수를 쓰더라도 seed 값을 바꾸지 않는 이상 값이 매번 바뀌지 않고 일정하다는 내용을 알아본 적이 있다. 이런 내용에 대한 문제인가 의심이 들었지만 일단 다음으로 넘어가보도록 하자. 문제에 적혀있는대로 명령어를 통해 pwnable.kr에 접속한다. 비밀번호는 guest라 했으므로 그대로 입력해준다. 접속이 완료되었다. 마찬가지로 ls -l 명령어를 통해 어떤 파일이 있나 살펴보았다. 우리가 원하는 건 flag이지만 아직 flag에 접근할 수 없으므로 일단 현 시점에서 접근할 수 있는.. 2021. 11. 15.
[pwnable.kr] Toddler's Bottle - collision 두번째 문제는 collision 문제이다. 문제를 누르면 위와 같은 창이 뜬다. 이번 문제는 MD5 hash collision에 대한 문제 같다. 일단 하라는대로 따라가보자. 맨 밑에 있는 명령어를 통해 pwnable.kr에 접속해준다. 비밀번호는 guest라고 했으므로 password에 guest를 입력한다. 접속이 완료되면 위와 같은 화면이 뜬다. ls를 이용해서 무슨 파일이 있나 살펴보았다. 우리가 원하는 건 flag인데 아직 접근할 수 없기 때문에 먼저 확인이 가능한 col.c를 먼저 살펴보기로 했다. 저번 문제보다 훨씬 긴 코드를 볼 수 있다. 해결 방법을 찾기 위해 먼저 위의 코드를 해석해보자. unsigned long 타입의 hashcode에 0x21DD09EC가 저장돼있다. check_pa.. 2021. 10. 10.
[pwnable.kr] Toddler's Bottle - fd 첫번째 문제는 fd (file descriptor)에 대한 문제이다. 문제를 누르면 위와 같이 뜨는데, 가능하면 혼자 풀어보고 싶었지만 지금 수준으로는 어떻게 해야하는 건지 감이 하나도 잡히지 않아서 위의 이미지에 있는 영상을 조금 참고했다. File Descriptor는 시스템으로부터 할당받은 파일이나 소켓을 대표하는 정수값이다. 특정 파일에 접근할 때 사용하는 일종의 인덱스 값이라고 생각하면 될 듯 싶다.. integer value name file stream 0 표준 입력 stdin 1 표준 출력 stdout 2 표준 에러 출력 stderr 이 내용들이 어떻게 사용될 지는 잘 모르겠지만 일단 내용이 그렇다고 하니 정리해두고 넘어가도록 하자.. 일단 맨 밑에 있는 명령어를 통해 접속을 해준다. 그러.. 2021. 10. 4.