본문 바로가기
D. 시스템/개념

[SYSTEM] BOF(버퍼 오버 플로우)란

by E-HO 2017. 10. 13.
728x90

BOF(Buffer Over Flow)


메모리에 할당된 버퍼의 양을 초과하는 데이터를 입력하여 프로그램의 복귀 주소(return address)를 조작, 궁극적으로 해커가 원하는 코드를 실행한다.


▶이런식으로 8칸의 메모리가 4칸 짜리 버퍼가 있을 때 , 버퍼를 초과하는 값을 입력하면 버퍼 이후의 값이 바뀌게 된다.



BOF공격원리는 내가 생각하기에 이 그림으로 설명이 가능할 거 같다

Buffer부터 값을 채워 다 채운후 SFP까지 값을 채운뒤에

RET

까지 접근하도록 넘치게 값을 넣어주면

RET = POP eip

이기 때문에 다음 실행해야 할 명령어가 존재하는 메모리 주소를 변경하여

해커가 원하는 명령을 실행 할 수 있도록 해준다.

반응형