리버싱을 이용한 간단한 C코드 분석1 리버싱 기초- 간단한 C코드로 코드분석 여기 아주 매우 그것도 엄청 실눈떠도 무슨 코드인지 아는 유아 수준의 간단한 코드가 있다. 보통 사람이 해석하기 편한 언어를 High Level Language라고 부른다. disas를 이용하여 main()를 disassemble하였다. 여기서 코드하나하나가 어떻게 동작하는지 살펴보자. 먼저 rbp값을 push해준다 그 다음 mov로 rsp값과 rbp값을 같게 해준다. 여기서 rsp가 시작지점이다. 그 다음 sub를 이용하여 0x10 만큼의 크기를 뺴준다. 그리고 16byte 공간에 C에서 선언한 변수들이 들어간다. 그 다음 0x5를 [rbp-0x4]만큼 떨어진 곳에 4byte 크기로 넣어준다 여기서 DWORD는 4byte이다. 똑같이 0xa를 [rbp-0x8]만큼 떨어진 곳에 4byt 크기로 넣어준다... 2020. 4. 17. 이전 1 다음