정보보안기사 실기는 개념을 아는 것보다 로그를 읽고, 규칙을 쓰고, 계산하는 힘에서 점수가 갈립니다. 이번 글은 실기에 자주 나오는 유형을 바탕으로 직접 만든 예상문제 10개와 풀이입니다. 실제 기출문제가 아니며, 출제 경향을 연습하기 위한 용도입니다. 먼저 정답을 가리고 직접 써 본 뒤 풀이를 확인해 보세요.
이 글의 구성
- 로그 분석 2문제 (웹 로그, 윈도우 이벤트)
- 시스템·네트워크 3문제 (iptables, 리눅스 권한, 포트 스캔)
- 탐지·대응 2문제 (Snort 룰, SYN Flooding)
- 이론·계산 3문제 (RSA, XSS 대응, 접근통제 모델)
문제 1. 웹 서버 로그 분석
아래는 웹 서버 접근 로그의 일부이다.
203.0.113.7 - - [14/Oct/2026:10:21:05 +0900] "GET /board/view.php?id=1%27%20OR%20%271%27=%271 HTTP/1.1" 200 5321 203.0.113.7 - - [14/Oct/2026:10:21:09 +0900] "GET /board/view.php?id=1%20UNION%20SELECT%20null,user(),version() HTTP/1.1" 200 5388
(1) 공격 유형을 쓰시오. (2) 판단 근거를 쓰시오. (3) 소스코드 수준의 대응 방안 2가지를 쓰시오.
정답·풀이
(1) SQL Injection
(2) 파라미터 id에 URL 인코딩된 작은따옴표(%27)와 OR 1=1 구문, UNION SELECT로 DB 사용자와 버전을 조회하려는 시도가 보입니다. 응답 코드가 200이고 응답 크기가 평소와 다르게 변한 점도 공격이 통했을 가능성을 시사합니다.
(3) ① Prepared Statement(파라미터 바인딩) 사용 ② 입력값 검증과 DB 계정 최소 권한 부여. 에러 메시지 노출 차단도 함께 쓰면 좋습니다.
문제 2. 윈도우 이벤트 로그
한 서버에서 동일 IP로부터 이벤트 ID 4625가 5분간 200건 발생한 뒤 같은 계정으로 4624가 기록되었다. (1) 두 이벤트 ID의 의미를 쓰시오. (2) 어떤 공격이 의심되는지 쓰시오. (3) 우선 조치 2가지를 쓰시오.
정답·풀이
(1) 4625는 로그온 실패, 4624는 로그온 성공입니다.
(2) 무차별 대입(Brute Force) 공격 뒤 계정이 탈취된 상황이 의심됩니다.
(3) ① 해당 계정 잠금과 비밀번호 초기화, 공격 IP 차단 ② 성공 로그온 이후의 행위(신규 계정 생성 4720, 로그 삭제 1102 등) 점검. 장기적으로는 계정 잠금 임계값과 다중 인증을 적용합니다.
문제 3. iptables 정책 작성
서버(10.0.0.5)에 대해 내부망 192.168.10.0/24에서 오는 SSH(22/tcp)만 허용하고 나머지 들어오는 트래픽은 모두 차단하는 iptables 명령을 작성하시오. (이미 연결된 세션의 응답과 루프백은 허용)
정답·풀이
iptables -P INPUT DROP iptables -A INPUT -i lo -j ACCEPT iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT iptables -A INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j ACCEPT
핵심은 기본 정책을 DROP으로 두고 허용할 것만 열어 주는 화이트리스트 방식입니다. 규칙은 위에서 아래로 순서대로 평가되므로, 정책을 DROP으로 바꾸기 전에 SSH 허용 규칙을 먼저 넣지 않으면 원격 접속이 끊길 수 있습니다.
문제 4. 리눅스 파일 권한
(1) umask가 022일 때 새로 만든 파일과 디렉터리의 기본 권한을 쓰시오. (2) chmod 4755의 의미를 쓰시오. (3) 시스템에서 SetUID가 설정된 파일을 찾는 명령을 쓰시오.
정답·풀이
(1) 파일 644(rw-r–r–), 디렉터리 755(rwxr-xr-x). 파일 기본값 666, 디렉터리 기본값 777에서 umask를 뺀 값입니다.
(2) 소유자 rwx, 그룹·기타 r-x에 SetUID 비트가 켜진 상태입니다. 실행 시 파일 소유자의 권한으로 동작하므로 root 소유 파일이면 권한 상승 경로가 될 수 있습니다.
find / -perm -4000 -type f 2>/dev/null
문제 5. 포트 스캔 기법
닫힌 포트에 FIN, NULL, Xmas 패킷을 보냈을 때와 열린 포트에 보냈을 때의 일반적인 응답을 비교해 쓰고, 해당 스캔 방식이 SYN 스캔과 비교해 갖는 특징을 쓰시오. (RFC 793을 따르는 시스템 기준)
정답·풀이
닫힌 포트는 RST 패킷으로 응답하고, 열린 포트는 응답이 없습니다. 이 차이로 포트 상태를 추측합니다.
SYN 스캔이 연결을 완성하지 않는 반개방(half-open) 방식이라면, FIN·NULL·Xmas 스캔은 연결 절차 없이 비정상 플래그를 보내 방화벽 탐지를 피하려는 은닉 스캔입니다. 다만 윈도우처럼 RFC 793을 따르지 않는 시스템은 포트 상태와 무관하게 RST를 보내 결과를 신뢰하기 어렵습니다.
문제 6. Snort 룰 작성
외부에서 웹 서버(80/tcp)로 들어오는 트래픽 중 payload에 union과 select가 순서대로 포함된 경우(대소문자 구분 없음) 경보를 내는 Snort 룰을 작성하시오. sid는 1000001.
정답·풀이
alert tcp $EXTERNAL_NET any -> $HOME_NET 80 (msg:"SQLi UNION SELECT"; flow:to_server,established; content:"union"; nocase; content:"select"; nocase; distance:0; sid:1000001; rev:1;)
시험에서는 헤더(동작·프로토콜·IP·포트·방향)와 옵션(msg, content, nocase, sid) 구조를 정확히 쓰는 것이 핵심입니다. distance:0은 앞선 content 뒤에서 이어서 찾으라는 뜻입니다.
문제 7. SYN Flooding 대응
TCP SYN Flooding 공격의 원리와 서버·네트워크 장비 차원의 대응 방안 3가지를 쓰시오.
정답·풀이
원리: 공격자가 출발지 IP를 위조해 SYN만 대량으로 보내면 서버는 SYN+ACK를 보내고 SYN_RECEIVED 상태의 연결 대기 큐(backlog)를 채워 두게 되고, 큐가 가득 차면 정상 접속이 거부됩니다.
대응: ① SYN Cookie 활성화 ② backlog 큐 확장과 대기 시간(타임아웃) 단축 ③ 방화벽·IPS에서 SYN 요청 임계치 제한 또는 SYN Proxy 적용
문제 8. RSA 계산
RSA에서 p=11, q=13, e=7일 때 (1) n과 φ(n) (2) 개인키 d (3) 평문 m=9의 암호문 c를 구하시오.
정답·풀이
(1) n=11×13=143, φ(n)=10×12=120
(2) e×d ≡ 1 (mod 120)을 만족하는 d를 찾으면 7×103=721=6×120+1이므로 d=103
(3) c = 9^7 mod 143. 9^2=81, 9^3=729≡14, 9^6=14^2=196≡53, 9^7=53×9=477≡48 이므로 c=48
문제 9. XSS 대응
저장형(Stored) XSS가 발생하는 원리를 설명하고 대응 방안 3가지를 쓰시오.
정답·풀이
원리: 게시글처럼 서버에 저장된 입력값에 스크립트가 포함되어 있고, 이를 필터링 없이 출력하면 다른 사용자의 브라우저에서 스크립트가 실행되어 세션 쿠키 탈취나 악성 사이트 유도로 이어집니다.
대응: ① 출력 시 HTML 엔티티 인코딩(< > 등) ② 쿠키에 HttpOnly 속성 적용 ③ CSP(Content-Security-Policy) 적용과 허용 태그 화이트리스트 기반 필터링
문제 10. 접근통제 모델
(1) Bell-LaPadula 모델과 Biba 모델이 각각 보장하는 보안 요소와 핵심 규칙을 쓰시오. (2) DAC, MAC, RBAC의 차이를 한 줄로 쓰시오.
정답·풀이
(1) Bell-LaPadula는 기밀성 모델로 상위 등급은 읽지 못하고(No Read Up) 하위 등급에는 쓰지 못합니다(No Write Down). Biba는 무결성 모델로 하위 등급은 읽지 못하고(No Read Down) 상위 등급에는 쓰지 못합니다(No Write Up).
(2) DAC는 소유자가 권한을 재량으로 부여, MAC는 보안 등급 레이블에 따라 시스템이 강제, RBAC는 사용자가 아닌 역할에 권한을 부여하는 방식입니다.
공부 팁
- 손으로 써 보기: 실기는 서술형이라 눈으로 읽으면 쉬워 보여도 직접 쓰면 용어가 빠집니다.
- 키워드 중심 답안: 채점은 핵심 용어 포함 여부가 크게 좌우합니다. 문장보다 용어를 먼저 떠올리세요.
- 명령어는 옵션까지: iptables, find, Snort 룰은 옵션 하나가 감점 포인트입니다.
이 글의 문제는 학습용으로 새로 만든 예상문제이며 실제 시험과 다를 수 있습니다. 최신 출제 범위는 한국인터넷진흥원(KISA) 공지를 확인해 주세요.