리버싱 핵심원리 + 드림핵 리버싱 커리큘럼 공부 내용 기록
바이트 오더링의 방식에는 두 가지가 있다.빅 엔디언 방식과 리틀 엔디언 방식이다.네트워크 프로토콜에는 빅 엔디언 방식을 사용하고intel x86 아키텍처에서는 리틀 엔디언 방식을 사용한다.
cpu 레지스터란 cpu 내부에 존재하는 다목적 저장 공간이다.메모리(RAM)와는 조금 성격이 다르다.CPU가 RAM에 있는 데이터를 Acess하기 위해서는 물리적으로 먼 길을 돌아가야 하기 때문에 시간이 오래 걸리는 반면 레지스터는 cpu에 내장되어 있기에 고속으로
프로세스에서 스택 메모리의 역할은 다음과 같다.함수 내의 로컬 변수 임시 저장함수 호출 시 파라미터 전달복귀 주소(return address) 저장스택 포인터인 ESP의 초기 값이 0019ff74 인 것을 알 수 있다. 여기서 F7을 눌러서 401000의 PUSH 10
깃허브에서 예제 파일을 받아주고짧은 어셈블리어 코드가 있다.JE SHORT abexcm1-.0040103D
문제 풀이 이 부분을 봤을 때 rcx가 19가 되면 아래의 jg end를 실행하고 아니라면 다시 1로 돌아가 반복하는 형태이다. BYTE는 1바이트를 말한다. WORD는 2바이트, DWORD라면 4바이트를 가져온다. 1바이트란 8Bit를 말하는데, 0x00로 표현