Hackerschool FTZ의 Level 10 풀이입니다. 도청하려면 key_t의 값을 활용해서 코딩을 해야 될 것 같습니다. 공유 메모리를 참조하려면 shmget 함수를 이용하면 됩니다. shmget 함수로 해당 공유 메모리에 요정을 한 후, shmat 함수를 이용해서 해당 메모리를 사용할 수 있게 만들어줍니다. get으로 7530 key를 가진 1024 크기로 IPC를 생성하고, 생성한 곳에서 가져와서 읽는 코드입니다. 위 코드를 컴파일 후 실행시켜보면.. Key : what!@#$?
Pwnable/Hackerschool
2018. 3. 29. 02:44
Hackerschool FTZ의 Level 9 풀이입니다. 문제에 접속해서 힌트를 확인해보면 위와 같이 출력됩니다. 위 코드를 보면, 입력은 buf에 받고 있는데 buf2가 go와 같게 만들라고 하고 있습니다. fgets는 경계선 검사를 하지 않는 함수이니 아마 이 함수에 정답이 있을 겁니다. 일단 hint에 있는 c 코드를 복사하고 똑같은 파일을 만든 뒤 컴파일 후 gdb로 디버깅했습니다. 0x8048320에 fgets로 입력받는데 strcmp로 비교하는 부분은 0x8048330입니다. 0x8048330 - 0x8048320 = 16 fgets 함수는 경계선 검사를 안 하므로 16글자가 넘어가면 bof2의 영역으로 갈수있습니다. bof 파일 실행 후 gggggggggggggggggo를 입력하면, lev..
Pwnable/Hackerschool
2018. 3. 29. 01:52
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- hackerschool
- Unity
- 안드로이드
- 안드로이드 멘토링
- Level 03
- Reversing
- C#
- unity2d
- 17th HackingCamp CTF
- Basic RCE
- Programming
- Level 05
- xcz.kr
- Android
- Advance RCE
- pwnable
- 유니티
- CodeEngn
- reversing.kr
- Level 01
- Level 04
- 풀이
- 멘토링
- c++
- ftz
- HackingCamp
- Write-up
- Level 06
- wargame
- Level 02
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함