최근 개인정보유출 사례의 경향이 반영된 실기 문제 유형
제11회 보안 기사 실기는 정보보안 법규 관련 부문에서 10회보다 한 문제 더 많은 네 문제가 출제되었다. 그리고 실무형으로 출제된 법률문제는 페이스북 이용자 개인정보 유출 사건의 동향이 반영되어 개인정보 수집 및 이용 동의와 제삼자에게 제공하는 것의 동의를 거부할 권리에 대한 항목들을 모두 알고 있는지를 묻는 문제가 출제되었다. 최근 시사가 반영된 시험이었다. 정보 보안 법규만큼은 말이다. 하지만 대부분은 정보보안 실무자로서 기본 개념을 제대로 아는지를 묻는 문제가 주를 이루었다.
후기지만 문제 출제 유형과 답안을 풀이해보겠다. 먼저 단답형은 문제당 3점으로 아래와 같이 출제되었다.
[단답형] (문제 순서는 출제된 순서와 상관없음.)
1. Windows 시스템에서 하나 이상의 볼륨(드라이브)을 암호화하는 기능으로 TPM(신뢰할 수 있는 플랫폼 모듈)을 사용하여 초기 시작 구성 요소의 무결성을 검사하는 암호화 방식? 답안 ( SAM ) -> 정답 : ( BitLocker )
2. DB 보안 통제 방법 3가지
1) 인증된 사용자에게 허가된 범위 내에서 시스템 내부의 정보에 대한 접근을 허용하는 기술적 방법 :
정답 ( 접근통제 )
2) 사용자를 찾은 후 통계 함수 관계를 통해 키값을 유도하는 것으로 간접 접근을 통한 추론과 상관 데이터로 찾는 통제 : 정답 ( 추론 통제 ) -> Correct!
3) 보안 등급이 높은 객체에서 낮은 객체로의 정보 흐름을 제어하는 통제 : 정답 ( 흐름 통제 )
3. VPN(가상 사설망)
1) 대표적 보안 프로토콜 : 정답 ( IPsec ) -> Correct!
2) 무결성 보장, 메시지 인증이 가능한 세부 프로토콜 : 정답 ( AH ) -> Correct!
3) 암호화를 통한 기밀성을 유지하는 세부 프로토콜 : 정답 ( ESP ) -> Correct!
4. 192.168.1.18으로 존 전송을 axfr 레코드 타입으로 접속할 경우 deny 된 것으로 확인되었다. 아래 호스트 서버 192.168.10.3의 named.conf 내용에서 어떻게 설정을 해줘야 하는가?
options {
답안 ( allow ) 192.168.10.3;}; -> 정답은 ( allow-transfer 또는 axfr-in... 일 수도 있다. ) 전날에 DNS 서버 작동원리와 구조에 대한 개념을 환기는 했으나 Zone transfer는 시간상 예외 처리했다...
5. HTTP 관련 공격 중 헤더의 CRLF(개행 문자) 필드 부분을 조작함으로써 DNS 서버로 조작된 HTTP 헤더를 지속적으로 보내 서비스의 가용성을 떨어뜨리는 공격의 명칭? 답안 ( Slowloris ) -> Correct!
6. 영상정보처리장비를 이용하기 위해 안내문과 함께 설치를 진행하려고 한다. 다음 영상정보처리기기의 운영 및 설치 제한에 대한 법규의 각 호 중 괄호 안에 들어갈 내용?
1) ( 답안 | 영상정보처리기기의 설치 목적 ) -> 정답 : ( 설치 목적 및 장소 ) 아, 아깝다. '장소'도 있었다니...
2) 촬영 범위 및 시간
3) 관리책임자 성명 및 연락처
4) 그 밖에 대통령령으로 정하는 사항
7. 에이전트와 매니저 간 메시지 교환 시 필요한 SNMP 프로토콜을 사용할 경우 매니저가 요청 시 에이전트가 폴링을 하는데 이때 폴링 시 사용하는 UDP 포트 번호와 에이전트가 매니저의 요청에 대해 보내는 방식의 명칭과 그 포트 번호.
1) ( 25 ) -> 정답 : ( 161 )
2) ( 이벤트 ) -> 정답 : ( 이벤트 리포팅 or 트랩 )
3) ( 26 ) -> 정답 : ( 162 )
8. 정보통신망 이용촉진 및 정보보호 등에 관한 법률에 의거해 다음의 빈칸을 채우시오.
정보통신망법 기준 접근권한 부여, 말소 등의 기록을 최소 (A) 년간 보관, 접속기록의 위, 변조 방지를 위해 월 (B) 회 이상 점검, 접속기록을 최소 (C)개월 이상 보관해야 한다.
A) ( 5 ) -> Correct!
B) ( 1 ) -> Correct!
C) ( 6 ) -> Correct!
안전성 확보 조치 기준의 개인정보보호법에서 같은 내용의 다른 기준의 수치와 헛갈릴 수 있는 문제지만 기출문제였다. 참고로 개인정보보호법에 의하면 A) 3년 / B) 반기별 1회 / C) 6개월(동일)이다.
9. 다음 빈칸에 들어갈 말을 쓰시오.
SLE(단일 예상손실)=AV(자산의 가치) x (1) 답안 : EF (손실 계수) -> Correct!
ALE(연간 예상손실)=SLE(단일 예상손실) x (2) 답안 : ARO (연간 발생률) -> Correct!
10. 공격자는 S/W 빌드 단계와 관련된 서버를 해킹한 후 악성코드를 삽입하여, 개발社가 제품 패키징(컴파일) 작업 시 정상 파일에 악성 모듈이 삽입되어 배포하는 공격은? 답안 ( 논리 폭탄 ) -> 정답 : ( 공급망 사슬 공격 )
[출처] [1번~16번] 제11회 정보보안기사 실기 문제 복원(전체 문항별) (알기사(알기쉬운 정보보안기사 산업기사)) |작성자 보안멘토
서술형과 실무형은 문제당(총 5문제) 14점으로 부분점수가 있다.
[서술형]
1. 아래 그림의 3 가지의 포트 스캔의 과정을 보고 답하여라.
1) 어떠한 포트 스캔 방식인가? 답안 ( TCP Half-open scan ) -> Correct!
2) 각 포트의 서비스를 적으시오.
가) 25번 : 답안 ( SNMP ) -> 정답은 ( SMTP )
나) 443번 : 답안 ( HTTPS ) -> Correct!
다) 110번 : 답안 ( IMAP ) -> 정답은 ( POP3 )
3) 각 포트 스캔의 결과를 적고 그 근거를 적으시오.
가) 답안 ( 요청을 받은 B가 SYN/ACK을 보낸 후 A가 RST으로 강제 종료를 한 것은 TCP Half-open 포트 스캔을 수행하면서 로그 흔적을 차단한 것이기 때문에 B는 25번 SNMP 포트에 대해 열려 있는 상태임. )
-> 정답으로 ( 25번이 아닌 포트명을 뺐어야 했다...)
나) 답안 ( 요청을 받은 B가 RST <문제의 그림에는 RST 플래그였지만 실제 이론상으로는 ACK/RST>으로 플래그를 보낸 것으로 보아 TCP Half-open 포트 스캔이라면 B는 HTTPS(443) 포트 연결 요청에 대해 닫혀 있는 상태임. ) -> Correct!
다) 답안 ( A 측의 지속적인 SYN 수신 요청에도 불구하고 아무런 응답이 없는 것으로 보아 B 측은 IMAP(110) 포트에 대해 방화벽 필터링을 수행하고 있는 것으로 짐작.) -> 확인 徼 (어쨌거나 포트명이 틀렸다. 쓰지 않았으면 점수 감점이 없을 건데 아쉽다.)
2. 침해 사고 발생 이후 리눅스 시스템에서 다음과 같은 조사를 하였다. 각 명령어를 완성하시오.
1) 최근 7일 내에 변경된 모든 파일을 검색하는 명령어
답안 ( find / -mtime -7 ) -> Correct!
2) 사용자가 root이며 접근 권한이 setuid로 설정된 모든 파일을 검색하는 명령어
답안 ( find -user root -perm -2777 ) -> 정답 : ( find / -user root -perm -4000 )
3) 호스트 192.168.256.3에서 192.168.10.48으로부터 이상(anormaly) 트래픽이 탐지되었다. tcpdump 명령을 통해 인터페이스 eth0을 통해 192.168.256.3에서 192.168.10.48를 오가는 패킷 캡처를 하는 명령어?
답안 ( tcpdump eth0 192.168.10.48 192.168.256.3 ) -> 정답 : ( tcpdump -i eth0 -n dst host 192.168.10.48 and host src 192.168.10.48 )
3. 개인정보 안전성 확보 조치를 위한 쇼핑몰 사이트를 운영하는 정보통신 서비스 제공업체의 보안 취급자의 비밀번호 작성 규칙에 대해 기술적 관리적 보호 조치 사항 3 가지를 기술하시오.
1) 답안 ( 비밀번호 작성에 필요한 최소 길이 및 특수문자 혼용 등에 관한 규칙 )
2) 답안 ( 작성한 비밀번호의 사용 기한 제한에 대한 규칙 )
3) 답안 ( 비밀번호 사용 만료 기간에 앞서 비밀번호 갱신에 대한 경고 및 알림에 대해 통보해야 하는 조치 여부 ) -> 전혀 예상 못했고, 페이스북 개인 정보 유출과 관련해서 비밀번호 작성에 대한 정보서비스 제공업체 보안담당자의 준수사항을 묻는 문제로 출제한 거 같다. -> 정답 : 아래 안전성 확보조치 기준과 기술적 관리적 보호조치근거라는 두 가지의 근거가 있으며 문제에서 정확히 어떻게 물었는지에 따라서 해당 내용이 다를 것 같으나 포괄(Umbrella term)적으로 작성한 1) 2) 항목은 두 기준에 해당하는 것 같음.
[근거 1.] 개인정보의 안전성 확보조치 기준 (2011.9.30. 제정, 행정안전부 고시 제2011-43호)
제5조(비밀번호 관리) 개인정보 처리자는 개인정보취급자 또는 정보주체가 안전한 비밀번호를 설정하여 이행할 수 있도록 비밀번호 작성규칙을 수립하여 적용하여야 한다
*최소 10자리 이상 : 영대문자(A~Z, 26개), 영소문자(a~z, 26개),
숫자(0~9, 10개) 및 특수문자(32개) 중 2종류 이상으로 구성한 경우
*최소 8자리 이상 : 영대문자(A~Z, 26개), 영소문자(a~z, 26개),
숫자(0~9, 10개) 및 특수문자(32개) 중 3종류 이상으로 구성한 경우
※ 특수문자 32개 예시
<~ ?! @ # $ % ^ & * ( ) _ - + = [ ] [ ] | \ ; :‘ “ < > , . ? />
1. 생성한 비밀번호에 123456 등과 같은 일련번호, 전화번호 등과 같은 쉬운 문자열이 포함되지 않도록 한다.
2. love, happy 등과 같은 잘 알려진 단어 또는 키보드 상에서 나란히 있는 문자열도 포함되지 않도록 한다.
3. 비밀번호의 주기적인 변경 : 비밀번호에 유효기간을 설정하고 적어도 6개월마다 변경함으로써 동일한 비밀번호를 장기간 사용하지 않는다.
4. 동일한 비밀번호 사용 제한 : 2개의 비밀번호를 교대로 사용하지 않는다.
[출처] [1번~16번] 제11회 정보보안기사 실기 문제 복원(전체 문항별) (알기사(알기쉬운 정보보안기사 산업기사)) |작성자 보안멘토
[근거 2.] 기술적 관리적 보호조치 기준
⑧ 정보통신서비스 제공자 등은 개인정보취급자를 대상으로 다음 각 호의 사항을 포함하는 비밀번호 작성규칙을 수립하고, 이를 적용·운용하여야 한다.
1. 영문, 숫자, 특수문자 중 2종류 이상을 조합하여 최소 10자리 이상 또는 3종류 이상을 조합하여 최소 8자리 이상의 길이로 구성
2. 연속적인 숫자나 생일, 전화번호 등 추측하기 쉬운 개인정보 및 아이디와 비슷한 비밀번호는 사용하지 않는 것을 권고
3. 비밀번호에 유효기간을 설정하여 반기별 1회 이상 변경
[출처] 기사 문제 비밀번호 0점인가요? (알기사(알기쉬운 정보보안기사 산업기사)) |작성자 정병현
[실무형]
1. 여행사 업체의 개인정보 이용 약관 동의에 대한 동의서의 내용을 보고 정보보안 법규에 어긋나는 부분 세 가지를 찾아서 기술하시오.
(일반적인 개인정보 제공에 앞서 작성하는 정보 제공자의 동의서를 실례로 들었다. 그런데, ㅎㄷㄷ)
1) 답안 ( 정보이용촉진 및 정보통신망 법규에 의하면, 개인정보 수집 및 이용을 하는데 정보제공자에게 확인받아야 할 항목으로 개인정보 이용 및 보유 기간도 고지해야 함. )
2) 답안 ( 또한 제삼자에게 개인정보를 제공하는 경우 정보주체에게 개인정보 제공 기간도 명시해야 함. )
3) 답안 ( 마지막으로 정보 제공에 관한 동의를 거부할 권리가 있고 거부할 경우에 불이익이 있다는 부분에서 그 불이익에 대한 내용도 함께 제공해야 함.)
-> 정답 : ( 1) 2) 법률은 망법에도 해당 법규 내용이 명시되어 있으나 3번 문항의 불이익에 관한 내용은 ‘개인정보보호법’에만 해당하는 내용이기 때문에 개인정보보호법에 근거해서 빠뜨린 항목에 대해 기재해야 했다.
두 개의 법률이 각각 다른 정보보호 수준을 요구하는 경우가 많이 있으므로 정보통신서비스 제공자가 개인정보보호법만을 준수하다가 정보통신망법을 위반하여 불이익을 받지 않도록 유의해야 합니다.
1. 전기통신사업자로 신고된 사업자인가?
2. 인터넷 홈페이지를 운영하는 영리 사업자인가?
3. 위의 정보통신서비스 제공자에 해당하는 자로부터 개인정보를 제공받은 사업자인가?
(‘정보통신서비스 제공자 등’에 해당)
위 세 가지 질문은 자신의 사업장이 ‘정보통신서비스 제공자 등’에 해당하는지를 체크하는 질문입니다. 해당한다면 정보통신망법의 적용 대상이 됩니다.
사실, 인터넷 홈페이지를 운영하는 영리 사업자의 경우 대부분 ‘정보통신서비스 제공자’에 해당하므로 정보통신망법의 적용을 받습니다. 자신의 사업장에 적용되는 특별법이 있는지 확인 후 있다면 아래와 같이 [정보통신망법(특별법)> 개인정보보호법> 개별 이용자 계약]을 우선순위로 준수하여야 합니다.
2. Blind SQL Injection 공격의 침투 과정을 그린 사례를 들어 세 번째 DB 데이터 유출을 위한 입력문 변조에 관한 설명을 하라는 문제였지만 정확히 몰라서 3번을 풀었다. (실무형 문제는 세 개 다 풀어도 순서대로 2문제만 채점한다.)
1) 어떠한 취약성을 문제 삼아 공격이 이루어지고 있는가?
답안 : ( 쿼리의 결과로 데이터베이스의 참과 거짓 결과를 확인하는 blind sql injection이다. )
2) select(substr(database(), 1, 1)) = 't' 대강 이런 문자 나오고 결과 1(참)이 나왔는데, 이를 통해 알 수 있는 정보 쓰시오.
답안 : ( 공격자가 입력값을 계속 조작하는 질의를 통해 개발자가 의도치 않은 데이터베이스의 중요정보인 이름을 획득할 수 있다. )
3) 서버 관리자가 HTML의 자바스크립트 수정하였다. 이러한 대응책의 문제와 대응방안을 서술하시오
답안 :
( - 문제점 : 입력값이 서버에서 검증이 되지 않으면 공격자가 중간에서 웹 프락시 툴을 이용하여 입력값을 조작할 수 있다.
- 대응방안 : 서버 측에서 입력값을 재검증하거나, prepared statement를 사용하여 입력값의 쿼리문은 변수만을 받을 수 있도록 미리 컴파일시켜놓는다. )
[출처] 제가쓴 답 (알기사(알기쉬운 정보보안기사 산업기사)) |작성자 dudwnsdn30
3. 모든 네트워크 대역에서 Telnet으로 접속하는 패킷 중 14번째 자리까지 'anonymous'가 포함된 트래픽에 대해서 'Dangerous' 메시지로 경고하는 rule을 만드시오. (단, 기본적으로 TCP 프로토콜 경유를 탐지함.)
-> 답안 및 정답 : ( alert tcp any any -> any 23 (msg: "Dangerous"; content: "anonymous"; depth: 14; sid: 1000001;) )
가장 쉬운 문제였다. 본인이 예상한 문제(Snort rule 세팅)였으며, 더욱 쉬운 형태를 묻는 기본적인 명령어 구문 완성 문제였다. (Snort rule의 헤더 룰과 옵션 룰의 문법까지 예시로 보여주며 완성하라고 물었다. 참고로 offset 필드 없이 depth로 시작하면 default로 offset이 0부터 시작하고 nocase 필드는 문제에서 대소문자를 구분하지 말라는 말이 없었으므로 굳이 세팅하지 않았다.)