기출문제/정보처리기사
2021년 2회 정보처리기사 기출문제 95번
엉클지니
2025. 3. 23. 14:35
95. 메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?
❶ Stack Guard ② Bridge
③ ASLR ④ FIN
이 문제는 프로그램의 실행 도중 오버플로우 상태를 감지하고, 그로 인해 프로그램 실행을 중단하는 기술을 묻고 있습니다. 각 선택지를 하나씩 살펴보겠습니다! 😊
각 보기를 살펴봅시다!
❶ Stack Guard
- 설명: Stack Guard는 버퍼 오버플로우 공격을 방지하기 위한 기술로, 스택 버퍼의 끝에 패딩 값을 삽입해 놓고, 이를 확인하여 오버플로우가 발생했는지 체크합니다. 이 값이 변경되었을 경우 이를 감지하여 프로그램을 중단하거나 보호 작업을 수행합니다.
- 결론: Stack Guard는 오버플로우 상태를 감지하고 프로그램 실행을 중단하는 기술입니다. 정답입니다.
② Bridge
- 설명: Bridge는 네트워크 용어로, 서로 다른 네트워크 세그먼트를 연결하는 장치입니다. 버퍼 오버플로우나 프로그램 실행 중단과는 관련이 없습니다.
- 결론: Bridge는 이 문제와 관련이 없습니다.
③ ASLR (Address Space Layout Randomization)
- 설명: ASLR은 메모리 주소의 배치를 랜덤화하여 버퍼 오버플로우나 리턴 주소 변경 공격을 방어하는 기술입니다. 하지만 오버플로우 상태를 감지하거나 프로그램 실행을 중단하는 것과는 다릅니다.
- 결론: ASLR은 주소 랜덤화와 관련된 기술로, 오버플로우 상태를 감지하거나 중단하는 기술은 아닙니다.
④ FIN
- 설명: FIN은 TCP 프로토콜에서 연결 종료를 나타내는 신호입니다. 버퍼 오버플로우나 프로그램의 실행 중단과는 관계가 없습니다.
- 결론: FIN은 이 문제와 관련이 없습니다.
결론
Stack Guard는 버퍼 오버플로우를 감지하여 프로그램 실행을 중단하는 기술입니다.
정답은 ❶ Stack Guard입니다! ✅
요약표
번호 설명 맞는지?
❶ | Stack Guard: 오버플로우 감지 후 실행 중단 기술 | 맞아요 |
② | Bridge: 네트워크 장치, 오버플로우와 관계 없음 | 아니오 |
③ | ASLR: 메모리 주소 랜덤화, 오버플로우 감지와 무관 | 아니오 |
④ | FIN: TCP 연결 종료 신호 | 아니오 |
중요한 포인트 💡
- Stack Guard는 버퍼 오버플로우 공격을 방지하고, 오버플로우 발생 시 프로그램 실행을 중단하는 중요한 보안 기술입니다.
- ASLR은 주소 랜덤화를 통해 공격자가 특정 주소를 예측하는 것을 어렵게 만듭니다.
이제 Stack Guard에 대해 잘 이해하셨죠? 😊