rosieblue
article thumbnail
[System] 컴퓨터 메모리 구조 / 레이아웃

들어가며 우리의 목적은 컴퓨터의 시스템을 잘 이해하고, 취약점을 알아내는 것이다. 컴퓨터의 데이터들은 메모리라는 공간에 들어있다. 허가 없이 메모리들을 수정하거나, 덮어쓰거나 하는 등의 행위를 하기 위해서는 메모리에 데이터들이 어떻게 나뉘어서 저장되어 있으며, 그 데이터들의 용도는 무엇이고 얼마나 접근가능한지에 대하여 알아야한다. 컴퓨터는 CPU에서 연산을 하지만, 메모리에서 데이터를 가져와 연산을 한다. 그리고 ISA에 따라서 명령어를 처리한다. 따라서 만약 메모리가 오염된다면, 이상한 데이터로 CPU가 이상한 연산을 하게 되어버린다. 이를 메모리 오염(Memory Corruption)이라고 한다. 따라서 메모리 오염을 방어/혹은 유발하려면 메모리 레이아웃에 대한 이해가 필수적이다. CPU나 메모리, ..