2024년 5급 공채 기술 2차 정보시스템 보안
문제 4개 · 50점. 참고 답안·채점 기준은 앱에서 볼 수 있습니다.
제1문 (20점)
다음 프로그램을 유닉스 운영체제에서 동작시키면 프로그램이 동작하기 위한 프로세스 메모리 공간이 생성된다. 메모리 버퍼 오버플로우(memory buffer overflow)에 대한 다음 물음에 답하시오. (단, 컴파일러 최적화는 고려하지 않는다) (총 20점)
#include <stdio.h>
int global = 1;
void bar(int param1, int param2) {
char Buffer[10];
scanf(”%s”, Buffer);
}
void foo( ) {
int local1 = 2;
int local2 = 3;
bar(local1, local2);
}
int main( ) {
foo( );
return 0;
}
int global = 1;
void bar(int param1, int param2) {
char Buffer[10];
scanf(”%s”, Buffer);
}
void foo( ) {
int local1 = 2;
int local2 = 3;
bar(local1, local2);
}
int main( ) {
foo( );
return 0;
}
- (1) 위의 프로그램을 동작시킨 직후, 최초의 프로세스 메모리 공간의 기본 구조를 간략한 그림으로 표현하고 설명하시오. (프로그램의 코드, 변수 등이 영역으로 구분되어 표시되어야 한다) (4점)
- (2) 1)에서 도시한 그림을 이용하여, bar() 함수가 호출된 이후 scanf()가 실행되기 직전에서의 저장내용을 다시 그림으로 표현하고 설명하시오. (6점)
- (3) 2)에서 도시한 그림을 이용하여, 버퍼 오버플로우 공격을 실행하는 방법을 그림으로 표현하고 설명하시오. (6점)
- (4) 스택 가드(stack guard)를 활용하여 3)의 버퍼 오버플로우 공격을 탐지하는 방법을 설명하시오. (4점)
제2문 (10점)
사용자 인증을 위한 OTP(One-Time Password)에 대한 다음 물음에 답하시오. (총 10점)
- (1) OTP 인증의 동작 방식과 OTP의 장점에 대하여 각각 설명하시오. (5점)
- (2) OTP를 생성하기 위한 비동기적(asynchronous) 방식과 동기적(synchronous) 방식을 설명하고, 동기적 방식 중에 두 가지 방법을 나열하고 설명하시오. (5점)
제3문 (10점)
IEEE 802.11 기반의 무선랜(wireless LAN) 보안 기술 중 WPA3(Wi-Fi Protected Access 3)에 대한 다음 물음에 답하시오. (총 10점)
- (1) WPA2(Wi-Fi Protected Access 2)가 KRACK 공격에 노출되어 해당 취약점을 WPA3에서 보완하였다. KRACK 공격에 대하여 설명하시오. (5점)
- (2) KRACK 공격을 방어하기 위하여 WPA3에서 적용된 기술에 대하여 설명하시오. (5점)
제4문 (10점)
악성코드는 컴퓨터에 침입하여 악의적인 행위를 하는 소프트웨어를 말한다. 다음 물음에 답하시오. (총 10점)
- (1) 악성코드 침투방법으로 DLL 인젝션 기법이 있다. DLL 인젝션 공격방식에 대하여 설명하시오. (3점)
- (2) 악성코드 동적분석 절차에 대하여 설명하고, 샌드박스(sandbox) 등 가상환경을 이용하는 이유에 대하여 설명하시오. (3점)
- (3) 악성코드 동적분석의 장점과 단점을 정적분석과 비교하여 설명하시오. (4점)