|
|


22019, 1/1101 |
![]() |
![]() |
![]() |
![]() |
|
sohun5013 | ||||||
|
2012_01_21_230451.log (459.1 KB), Download : 626 [오른쪽 버튼 눌러 다운 받기] | ||||||
|
level12 하하~~~ | ||||||
|
http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=22767 [복사]
Hit : 10047 Date : 2012/01/22 12:59
|
|||||||
| ![]() |
| |
| BrokenPipe | 쉘코드가 없는거같은데요 | 2012/01/22 | |
| supershop | 현재 브루트포싱하고 있는 저 주소 (0xbffffc??) 에는 뭐가 있나요? | 2012/01/22 | |
| sohun5013 | 당근 저 주소에 쉘코드가 있을 거라 짐작하는 거죠 ㅎㅎ 이것도 브루트포싱이라고 말할 수 있는지는 모르겠지만.. 쉘코드 주소가 정확하지 않을 거라 생각해서 이렇게 시도했는데도 실패예요.. ㅠㅠ |
2012/01/22 | |
| sohun5013 | 아차, 첨부파일에 로그도 있어요. 그냥 스압일 뿐이지만.. | 2012/01/22 | |
| BrokenPipe | 쉘코드는 모든 스택에 기본적으로 있는 필수요소가 아니에요 님이 직접 집어넣으시고 주소를 브루트포싱하는건 괜찮아도 이런식으로 쉘코드도 안넣으시고 주소를 브루트포싱하시면 그건 그냥 헛수고에요 에그쉘은 환경변수상에 쉘코드를 집어넣고 그 환경변수의 주소로 ret을 변경하는 기법입니다 |
2012/01/22 | |
| havu | eggshell은 안쓰는게 공부에 도움이 됩니다. 그리고 쉘코드는 원래 있을수가 없죠 bfffffc?? 이 주소에 쉘코드가 있을경우 RET를 조작하는 거니깐 ^^; |
2012/01/22 | |
| sohun5013 | 로그파일을 지금 보니 잘린 것 같지만 제가 쉘코드를 삽입한 부분은 확실히 보이는 것 같네요. 이미 예전에 NOP코드 삽입으로 질문할 때하고 공격 과정이 같아서 생략했을 뿐이예요. ㅎㅎ 에그쉘을 안 쓰려고 발버둥치고 있는 건데 굉장히 험난한 것 같네요. 저기서 쉘코드가 정상적으로 있다고 가정하면 뭐가 문제인 거죠? 참고로 쉘코드는 정상 실행을 확인했습니다. |
2012/01/22 | |
| BrokenPipe | 공격문자열을 작성하실때 perl -e 'print asdfsdafsfad' | attackme 가 아니라 (perl -e 'print asdfasdf';cat)| attackme 이런식으로 하시면 되는데 이유는 저도 잘 모르겠네요; |
2012/01/22 | |
| BrokenPipe | 그리고 검색해보니 argv[1] 을 이용해서도 가능하다고 하시네요 http://www.codeache.org/3 |
2012/01/22 | |
| BrokenPipe | cat을 붙였을때 되는 이유는 http://devanix.tistory.com/137 참고하세요 |
2012/01/22 | |
| i4mjuno | 브루트포싱은 인내심 |
2012/01/23 | |
| sohun5013 | 브루트포싱 아니라니깐... 정확한 주소를 몰라서 대충 대입하는 궁여지책이져 ㅠㅠ | 2012/01/23 | |
| BrokenPipe | 모르고 계속 대입하는거니까 브루트포싱 맞죠 그것보단 위의 세개 연달아 있는 댓글에서 첫번째와 세번째가 이 질문에 대한 답변입니다 |
2012/01/23 | |
| sohun5013 | 0xbffffb18 이 main의 SFP인데 0xbffffc47: "i686" 0xbffffc4c: "/home/level12/attackme" 0xbffffc63: "ABCDEFGHIJKLMN" 0xbffffc72: "REMOTEHOST=183.107.231.242" 0xbffffc8d: "HOSTNAME=ftz.hackerschool.org" 0xbffffcab: "TERM=xterm" 0xbffffcb6: "SHELL=/bin/bash" 0xbffffcc6: "HISTSIZE=1000" ... argv[1]의 주소값은 더 구하기 어려울 것 같은데요;; 구하는 방법은 저 링크에 안 나와 있네요. |
2012/01/23 | |
| BrokenPipe | argv[1] 이 ebp+4 였나에 있던걸로 기억합니다 옛날에 흘려들은거라 이건 그냥 esp나 ebp 기준으로 x/600bx 하시면서 찾으시면 되요 결론만 말하자면 sohun 님이 첨부하신 로그를 보니 성공한 문자열이 있긴합니다 그 성공한 문자열에 (perl -e 'print "asdfasdf"';cat)|attackme경로 이 포맷만 적용시켜보세요 |
2012/01/23 | |
|
|