분류 전체보기77 [LOB]vampire 막막합니다... 환경변수도 초기화하고 argv도 argv[0] 포함 싹 초기화하네요 shellcode를 어디에 넣을까 고민을 해봅시다.. 혹시 /bin/sh이 어딘가 숨어있지 않을까 하고 gdb로 확인을 해보니까 메모리 젤 끝부분에 argv[0]이 담겨있네요..? 여기에 Shell code를 넣고 이 부분을 주소를 써보겠습니다. ln으로 기존 파일과 링크로 연결시키는데 (앞 nop 50개 + shell code + 뒤 nop 50개) 로 구성하겠습니다. 그리고 argv[1]을 0xbf로 48개를 채워 실행 후 core를 분석해보니까 argv[0]의 시작 주소는 0xbfffff67인 걸 알게됬습니다. 바로 실행을 해보면 성공! 2020. 1. 24. [LOB]troll argv[1]의 48번째와 47번째를 체크하네요. argv[1][46]이 0xff가 안나오게 argv[2]의 길이를 아주 길~~~게 늘려서 하면 될 것 같습니다. argv[1]에 A를 48개, argv[2]에 0x90을 100,000개를 넣어보니 bf f'e'로 주소가 설정됬습니다. 이걸 이용해서 성공입니다. 2020. 1. 24. [LOB]orge argv[2]를 막아놨네요. 그리고 EGGSHELL도 막았고... buffer와 argv[1]를 초기화합니다.. shellcode는 어디에 넣을까요? argv[0]에 넣어볼까요? 이 전에서 링크를 걸어서 77의 길이를 맞춰줬다면 이번엔 argv[0]을 아예 shellcode로 만들어봅시다.! troll에 shellcode가 들어간 파일을 링크로 연결해주고 argv[0]의 주소를 확인해줍니다. 0xbffff9f6인데 /home/뭐시기 저시기 이런게 붙을 수 있대서 넉넉하게 32를 더해준 0xbffffa16을 주소로 사용했습니다. 성공했네요.! 사용한 shellcode :\xeb\x11\x5e\x31\xc9\xb1\x32\x80\x6c\x0e\xff\x01\x80\xe9\x01\x75\xf6\xeb\x05\.. 2020. 1. 24. [LOB]darkelf argv[0]의 크기가 77이 아니면 에러가 나네요. 이건 링크를 이용해서 실행 파일의 크기를 77로 맞춰주면 되지 않을까 싶습니다. 나머지는 다 똑같네요.! 일단 argv[2]의 주소! nop을 10000개를 주기 때문에 중간 아무 값을 줘서 해보겠습니다.! 성공 2020. 1. 24. [LOB]wolfman 싹 보니까 이 전 단계랑 비슷하게 풀면 될 것 같습니다. argv[2]를 이용해서! argv[2]의 주소! : 0xbffffb78 성공합니다. 쭉쭉 가즈아~ 2020. 1. 24. [LOB]orc buffer는 40바이트라 할만한데 buffer hunter가 있네요...? buffer에 shellcode 넣는 방법은 안될거같고... argv[1]이 아닌 argv[2]를 이용하는 방법이 존재하네요. argv[1]에는 A (0x41)을, argv[2]에는 B(0x42)를 넣었습니다. argv[2]의 시작점이 0xbffffbbc0네요.! 성공했습니다.! 2020. 1. 24. [LOB]goblin egghunter가 있지만! 버퍼가 40byte라서 25byte shellcode를 충분히 넣을 수 있습니다.! 그리고 argv[1]의 48번째가 \xbf여야하는데 다행히도 맞죠? 먼저 argv[1]의 주소를 알아낸 후 해보겠습니다. argv[1] address : 0xbffffbb7이네요! 성공입니다. 2020. 1. 24. [LOB]cobolt 전과 똑같은데 프로그램을 실행시킬 때 인자로 전달하는 것이 아닌 gets를 통해 추가적으로 값을 받네요. EGGSHELL과 cat을 이용해서 풀어봅시다.! (전 문제랑 너무 비슷해서 쓸 글이 별로 없네요 ㅠㅠ) 2020. 1. 24. [LOB]gremlin cobolt는 다음과 같네요 전과 똑같아보이는데 버퍼 크기가 16밖에 안되네요. EGGSHELL을 사용해봅시다. 환경변수 EGGSHELL에 nop 100개와 shellcode를 넣어놓고 그 주소를 알아봅시다. 이 주소를 이용해서 풀어보면 성공 2020. 1. 24. 이전 1 ··· 3 4 5 6 7 8 9 다음