level 62 해커스쿨 L.O.B level 6 [wolfman] wolfman 로그인 후 파일을 확인한다. 코드 파일을 확인한다. 코드 시작 전 힌트를 보면 level 5 [orc] 문제에서 "check length of argv[1]"가 추가되었다. 추가된 코드를 분석해보면 "argv[1]"의 길이가 48보다 크면 문자열을 출력하고 프로그램을 종료시킨다. 이전 문제들을 잘 풀었다면 추가된 if 문에서 막히지 않을 것이다. 왜냐하면, 지금까지 두 번째 if 문에서 "agrv[1][47]"에서 '\xbf'가 들어가고 끝나므로 즉, 47byte에서 끝나고 48byte까지 가지 않아서 생각할 필요가 없어지고 이전 문제들과 같아진다. gdb로 메모리 분석한다. 이때, 추가된 코드와 메모리 스택만 하겠다. strlen 함수를 부르고 cmp로 비교한다. JBE(JLE와 비슷) .. 2020. 5. 25. 해커스쿨 F.T.Z Level 6 level 6을 로그인하면 바로 힌트가 나온다. 의미 없는 아무 글자 또는 명령어를 입력해도 PuTTY가 종료가 되어 버린다. 다시 로그인 후 엔터만 입력하면 텔넷 접속 서비스가 나온다. 아무 곳이나 시도해봐도 같은 결과가 나온다. 접속을 시도 하는 것 같지만 이내 PuTTY가 종료된다. 이로써 결론이 나온다. 더보기 로그인 후 힌트가 나온 화면에서 쉘 프롬프트가 나오도록 해야 한다. 생활코딩 강좌를 보면서 리눅스 쉘을 사용하면서 단축키를 사용했을 것이다. 생활코딩에서 배운 Ctrl + Z로 백그라운드 실행을 했다. 그래서 백그라운드로 돌려보려고 했지만 아무 반응이 없다. 또 다른 간단한 설명으로는 정상 종료를 뜻하는 Ctrl + D도 사용해봤을 것이다. 이 단축키도 사용해봤지만, 텔넷 서비스로 넘어가 .. 2020. 2. 13. 이전 1 다음