|
|


22018, 1/1101 |
![]() |
![]() |
![]() |
![]() |
|
mcean | ||||||
|
문제 풀이로 배우는 시스템 해킹 테크닉 책 어떤가요? | ||||||
|
http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=31409 [복사]
Hit : 10731 Date : 2013/12/06 09:31
|
|||||||
| ![]() |
| |
| 김병권 | 제가 그 책으로 공부했는데 상당히 괜찮습니다. 그런데 문제는 해커스쿨 FTZ가 자주 다운이 되서... 일단 책을 구입하시고 http://pgnsc.tistory.com/216 <- 여기서 글을 읽으시고 님 컴퓨터에 FTZ를 구축하고 언제든지 연습할 수 있겠금 하세요. 책 내용은 gdb로 디버깅하는 내용이 많이 있습니다. 어셈블리어를 아시면 꽤 도움이 되는데... 뭐 몰라도 아주 크게 지장은 없습니다. -_-;; |
2013/12/06 | |
| mcean | 아 그렇군요 감사합니다 ㅎㅎ 어셈블리어에 관해서 문서 몇개를 가지고 있는데 그걸로 조금 공부를 한 후에 책을 정독해도 괜찮겠죠? |
2013/12/06 | |
| 김병권 | 어셈블리어 자체만 놓고 본다면 기계어를 제외하곤 어떤 컴퓨터 언어보다도 단순합니다. 그런데 어셈블리어가 어려워지는 이유가 뭐냐면 단순하게 이루어진 만큼 소스코드가 늘어난다는 겁니다. 그리고 각각의 레지스터들(EAX, EBX, ECX, EDX 등등...)의 역할도 알아야 된다는 것도 그렇지만 어셈블리어가 '외부적'으론 단순하여도 '내부적'으로 봤을 땐 소스 코드안에 '함축'되어 있는 것을 알아야 합니다. 이 '함축'이란 것이 무엇이냐... push %ebp mov %esp,%ebp 위 소스를 단순히 해석하면 '스택에 ebp의 값을 넣고, esp값을 ebp값에 넣는다'라는 것인데 '함축'되어 있는 내용까지 파악하는 것... 즉 스택의 깨지는 것을 방지하기 위한 스택프레임 기법이라는 함축성을 알아야 됩니다. mcean님이 읽으시려는 책은 어셈블리어를 완벽하게 독파할 것까진 없고 레지스터와 간단한 명령어(mov, add, cmp, je등등...)까지 해석할 수준만 되면 될겁니다. |
2013/12/06 | |
|
|