버퍼 오버플로우(buffer overflow)를 이용한 사이버 공격 및 이를 해결하기 위한 소프트웨어 방안(실행 시간 방어, 컴파일 시간 방어)
컴퓨터시스템응용기술사 제123회 4교시 27번 문항으로, 과목은 보안입니다. ‘버퍼 오버플로우’ 키워드는 컴퓨터시스템응용기술사 기출 3문항에 나왔습니다.
원문 문제
컴퓨터시스템응용기술사 제123회 27번. 버퍼 오버플로우(buffer overflow)를 이용한 사이버 공격 및 이를 해결하기 위한 소프트웨어 방안(실행 시간 방어, 컴파일 시간 방어)
핵심 키워드
- 버퍼 오버플로우
- 스택 스매싱
- 반환 주소 덮어쓰기
- 카나리 값
- Address Space Layout Randomization
- 데이터 실행 방지
- 경계 검사
고득점 가이드 — 1. 개요
버퍼 오버플로우는 경계 검사 없는 메모리 복사 함수에 의해 할당 버퍼 크기를 넘는 입력이 인접 영역을 덮어쓰는 취약점이다. 공격자는 이를 이용해 스택 상의 반환 주소나 함수 포인터를 변조하고 임의 코드를 실행해 시스템 권한을 탈취한다. 레거시 C/C++ 코드 베이스에 흔히 잔존해 보안 강화 프로젝트의 핵심 점검 항목으로 다뤄지며, 단일 방어로는 완전한 차단이 어렵다.
출제 이력
- 버퍼 오버플로우기출 3문항
- 스택 스매싱기출 1문항
- 반환 주소 덮어쓰기기출 1문항
- 카나리 값기출 1문항
- Address Space Layout Randomization기출 1문항
- 데이터 실행 방지기출 1문항
- 경계 검사기출 1문항