블로그 이미지
JoyfulLife

공지사항

최근에 받은 트랙백

글 보관함

calendar

          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            
쉘 프로프트의 메모리 위치 알아야 한다.

리턴 주소도 필요.

메모리의 모습과 스택의 구조를 이해해야 한다.

기본 정보를 제공해준다.

기능별 각 부분별 역할 이해

코드 영역
읽기 전용의 실행코드가 삽입(이 지역에 데이터 쓰기는 세그먼트 폴트가 나옴)
실행될 때 크기가 결정

데이터 영역: 특정 변수 선언이 저장.

BSS(Blcok started by symbol, heap) : 동적 데이타 영역 저장, 초기값은 항상 null

스택: 잠시 데이터 저장,
후입선출, push와 pop을 이용, 스택 한계를 넘으면 세그먼트 폴트가 나옴, sp가 시작위치를
넘어서면 세그먼트 폴트


스택의 크기는 정적으로 결정

스택 프레임: 스택이 여러개, 저장, 삭제


논리적 스택 구조 : FP 포인터(처음 함수가 불렀을 때 스택의 위치, 스택의 베이스 위치)

ebp 스택의 마지막 끝 (4byte).

ebp + return 주소 안에 쉘이 실행되는 주소를 가져오면 루트를 얻을 수 있다. 
신고

'온라인교육' 카테고리의 다른 글

UX 교육 (4/6)  (0) 2010.05.22
UX 교육 (3/6)  (0) 2010.05.22
프로세스 로딩후 메모리 및 stack 구조의 이해  (0) 2010.05.17
mpeg2 1/3  (0) 2010.05.15
메모리 페이징 모드.  (0) 2010.05.13
메모리 (보호모드)  (0) 2010.05.12

티스토리 툴바