본문 바로가기

반응형

Wargame

uaf switch 문의 1번 분기에 bp를 걸고 살펴보면 give_shell (0x401570, 0x401550)이 RAX에, 그리고 힙에 올라와있다. 1.use 를 했을 때 0x614c38에는 'Jack' 0x614c88 에는 'Jill' , 0x614c50에는 give_shell(0x401570), 0x614ca0에는 give_shell(0x401550)이 들어간다. 이는 free를 해도 값이 남아있고, 같은 바이트(여기선 4바이트)를 다시 read할 때 똑같은 위치를 덮어쓴다. 이후 rax(현재 give_shell 0x401570)에 add 0x8 을 하는데, 0x401570 + 0x8 해서 0x401578 은 introduce() 함수다. 결과적으로 switch 구문에서 1을 선택하면 처음 rax(gi.. 더보기
바이너리 다운로드 scp -P 2222 [id]@pwnable.kr:[바이너리절대경로] [다운경로] 더보기
53 procedure analyse() 더보기
input Stage 1 #include #include #include #include #include int main() { char* argv[101] = {[0 ... 99] = "A"}; argv['A'] = "\x00"; argv['B'] = "\x20\x0a\x0d"; argv['C'] = "31337"; execve("/home/input/input", argv, NULL); return 0; } 더보기
해커팩토리 스크립트 짜는 공부를 해야겟다 하루만에 올클을 노렸는데.. 더보기
/bin/sh 주소 찾기 01.#include 02. 03.int main(int argc, char **argv)04.{05.long shell;06. 07.shell = 0x4203f2c0; // system()함수의 주소08. 09.while (memcmp((void *)shell, "/bin/sh", 8))10.{11.shell++;12.}13. 14.printf("\"/bin/sh\" is at 0x%x\n", shell);15.printf("print %s\n", shell);16. 17.return 0;18.} 더보기
kisa 온라인 해킹방어 훈련장 Reversing - Password를 찾아라! Season2 Password를 찾아라 시즌2! Ollydbg로 열어보면 경고창이 뜨고 스트링 검색을 해보아도 아무것도 뜨지않는다. 패킹이 되어 있나보다. PEID로 확인 해보면 UPX 패킹이 되어 있는 것을 알 수 있다. 툴을 이용해서 간단히 언패킹. 언패킹이 된 것을 확인할 수 있다. 이제 스트링들이 검색이 되는 것을 확인할 수 있다. Season 1을 풀때와 같은 방식으로 진행했다. 이 함수에서 패스워드를 입력받는다. 9자리라고 했으므로 9자리를 꽉꽉 채워줬다. Season 1 과는 다르게 여기서 한자리 씩 XOR을 해준다. 어떤 값과 XOR을 하는지 주소를 찾아 가보니 'XORENCODE' 라는 문자열과 XOR을 해준다.XOR을 끝내면 XOR 되어 있는 비밀번호와 대조하여 맞는지 틀린지 결정한다. 파이썬 스크립.. 더보기
kisa 온라인 해킹방어 훈련장 Network - ARP 패킷 분석 바꿔치기 된 맥 어드레스를 구하라는 문제다. 그래서 ARP프로토콜만 나열해서 맥 주소들을 뽑아내서 입력해보았더니 그냥 인증되었다;; 더보기

반응형