정보 보안 기사

히든위키 코리아
필독 유닠스 계열 저작물, 성인물, 도박 프로그래밍 웹 써버 보안 대화방
필독 사항 프로젴트 트라이던트 표면 웹 싸이트 제작 파이썬 리눅스 마스터 대화방 2019년
위키 편집 리넠스 마약, 아청물, 해킹 웹 프로그래밍 웹 싸이트 보안
위키 문서 작성법 우분투 다크넽 싸이트 제작 쟁고우 정보 보안 기사

목차

개요

정보보안 기사정보보안 산업기사과학기술정보통신부에서 주관하고 한국인터넷진흥원에서 시행하는 정보 보안 분야의 국가기술자격 시험 및 그 자격증을 의미한다. 해킹을 막기 위한 보안 인력을 양성 및 인증하기 위한 시험이다. 정보보안산업기사가 낮은 단계고, 정보보안기사가 더 높은 단계의 자격증이다. 리눅스 마스터 1급도 따면 좋다.


정보보안기사 시험 응시 자격은 정보처리 기사와 동일하게 관련학과가 의미가 없고, 학과 상관없이 "4년제 대학 졸업자 혹은 졸업예정자", "3년제 대학 졸업 + 동일 및 유사직종 실무 경력 1년", "2년제 대학 졸업 + 동일 및 유사직종 실무경력 2년"이면 가능하다. 또는 "유사 분야 기사 자격증 소지자", "정보 보안 산업기사 취득 후 실무 경력 1년", "동일 및 유사 직종 4년 경력"으로도 응시 가능하다.

정보 보안 산업 기사 시험은 "2-4년제 대학 졸업자", "유사 분야 산업기사 자격증 소지자", "기능사 취득 후 실무 경력 1년", "실무 경력 2년"이면 응시 자격이 된다.


1년에 2회씩 시험을 보며 2013년에 처음 시험이 시행되었다.

지역은 5개 지역으로 서울, 부산, 대전, 대구, 광주에서 응시할 수 있으며 응시료는 기존의 기사 시험과 동일하다. 기사산업기사 필기는 둘 다 18,800원, 실기는 기사는 21,900원, 산업기사는 20,200원이다.

난이도가 정보 처리 기사와는 차원을 달리한다. 정보처리기사의 운영 체제와 데이터 통신 과목은 각각 시스템 보안과 네트워크 보안에 첫부분으로 속해있다.--한 과목이 챕터 수준으로--

높은 난이도의 원인으로는 기본적으로 시험을 주관하는 한국인터넷진흥원쪽에서 많은 수를 뽑으려 하지 않는다. 필기의 경우는 난이도 실패로 50%가 넘는 합격률을 보이기도 했지만 실기는 --채점 방식이 비공개라서 무슨 짓을 하는지 합격 비율은 거의 항상 비슷하다.-- 그냥 절대 평가가 아닌 상대 평가로 여겨진다. --물론 완전히 그렇다는 것은 아니고--

범위가 넓다. 이건 마음만 먹으면 듣도보도 못한 문제를 가져올수 있다는 의미.(정보처리기사 같은 다른 시험도 마찬가지긴 하겠지만) 자체적인 범위도 상당히 넓기 때문에 이 이유가 크게 한몫 한다. 사실 시스템부터 네트워크, 암호학 그리고 법규까지 과목만 봐도 알 수 있는 이유.

실무적인 문제도 많이 나오고 반대로 따로 시험을 위해 공부해야 하는 이론도 많이 나온다. --당연한거 같지만 아니 좋은점 같지만 내가 어려우니 패스-- 문제점으로는 사실 보안도 범위가 넓기 때문에 종사자들도 천차만별인데 이런 실무적인 문제들이 나오면 운에 따라 아는 문제가 나오면 맞고 모르면 틀리는 상황이 생겨서 뭔가 합격자와 불합격자 와의 차이점이 실례이 아닌 운 뿐이라는 인식이 생길수도 있어보인다. --이것도 당연히 실력이 어느정도 된다는 가정 하에--

정보처리 기사 시험과 달리 시험지를 수거해간다. 문제은행 출제 방식이고 범위가 지정되어 있으나 출제 문제를 알 수가 없어 결국 기억에 의존한 복원문제나 전체 단원을 공부해야 하기 때문에 문제를 예측하기 힘들다.


정보보안기사 https://www.q-net.or.kr/crf005.do?id=crf00505&jmCd=1325

정보보안산업기사 https://www.q-net.or.kr/crf005.do?id=crf00505&jmCd=2325

큐넷을 통한 접수가 아닌 별도의 사이트( https://kisq.or.kr )를 개설하여 그 곳에서 원서 접수 및 합격증 발급 등을 담당한다.


  • Anonymous 18/12/26(Wed)23:09:38 No.48836

여기와서 걸리나요 안걸리나요 물어보는 대가리 빵구들은 물어보기 전에 걸릴 짓을 하지를 말아라 아니면 확실하게 보안을 하고 오던지 답답이 들아 갸들은 보안 업계에서도 쓰래기 폐급들만 가는 곳이라 기본 보안만 철저히 하면 문제가 없어요 하지만 걸리나요 물어보는 놈들은 컴맹이 분명 하니 쫄리면 그냥 눈팅이나 해라 좀 여기서 물어봐봤자 니들은 털려


Anonymous 18/12/27(Thu)02:38:23 No.48856 경찰청 사이버 수사대 취업하는 인력들은 보안 업계에서도 폐급 인력들임 ㅋㅋㅋ


씹ㅇㅈ ㅇㅈ 18/12/27(Thu)03:32:51 No.48862 내가 7급 시험 문제 풀었거든 정보보안기사 수준도 안된다. 그냥 정보처리기사 수준.... 법률이랑 한국사 토익만 준비됐다면 사이버 경찰ㄱㄱㄱ 중고나라 사기꾼들 잡아서 꼽주고 이빨도 좀 털고 인생 뭐 있나


Anonymous 18/12/27(Thu)04:07:42 No.48866 7급 전산직 공무원 얘기하냐?

사이버 수사대는 전산직이 아니라, 특채로 뽑는다. 경력자 위주로. 그리고 나머지 인력은 기존 경찰에서 아무나 뽑아서 채우고. 전산 경력자랑 일반 형사랑 섞여있음.

국정원 정보 보안 파트는 공채로 뽑지만.


Anonymous 18/12/27(Thu)06:15:05 No.48883 폐급은 개뿔 티오안나서 가기도 힘든곳인데


Anonymous 18/12/27(Thu)08:36:15 No.48903 티오 안나서 가기가 힘든게 아니라 폐급들이 갈데가 없어서 존나 지원하니까 티오가 안생기는 거다 보안쪽은 실력만 좋으면 억대 연봉 받는 곳인데 미쳤다고 거길 가냐 조온나 갈데 없고 아는거 없으니까 지원하는거지 의사로 치면 군의관 지원해서 말뚝 박는거임


씹ㅇㅈ 18/12/27(Thu)21:41:04 No.48933 경찰 간부 사이버 수사대 경위 시험 기출문제 보면 레알 정보처리기사 수준 너도 나도 공무원 하고싶어하는 이 시대에 7급시험인데 당연히 경쟁률 있지 특채로 뽑는건 뭐더라 순경 바로 위 계급인데 네이버든 다음이든 이지소프트든 듣보잡 회사든 전산경력있으면 가능하다 그 경력의 나이쯤이면 개발자로서든 보안전문가로서든 씨발 가장 꽃피는 시기인데 왜 연봉 팍팍 오지게 올라서 돈방석 앉아있을 시기에 경찰 준비하겠냐? 그냥 연금 바라보고 하는거지 실력은 없고 안정된거 찾아보자 하고 당연히 이 인원들이 폐급은 아니지 근데 공무원 연금 바라보고 가늘고 길게 살려고 들어온 사람들이 씨발 사명감 가지고 일할거같아? 인생 씨발거 할 거 없으면 사이버 경찰이나 준비해서 중고나라 사기꾼들이나 잡아라


Anonymous 18/12/28(Fri)13:07:25 No.48976 >>>48933 확실히 사기업공무원보다 연봉은 많이 줌. 우리 누나도 취업한지 얼마 안 됐는데 연봉 5천 넘김. 보안쪽은 아니고, 그냥 개발쪽인데.

http://c2djzrn6qx6kupkn.onion/res/48836.html

시험 방식과 과목

필기는 각 과목 30분이며 4지 택일형이며, 타 기사시험과 동일하게 5과목 평균점수 60점 이상, 40점 이하 과목 1개 존재할 때 과락으로 탈락하는 시스템을 유지하고 있다. 다섯 과목으로 시험시간은 총 150분이다. 정보보안산업기사는 한 과목이 없어서 시험 시간도 120분이다.

필기시험은 시스템 보안(운영체제, 클라이언트 보안, 서버보안 등 인프라 보안관리의 전반적인 부분을 취급한다.), 네트워크 보안(네트워크 일반, 네트워크 활용, 네트워크기반 공격 이해, 네트워크 장비 활용 보안, 네트워크 보안 동향), 애플리케이션 보안(인터넷 응용 보안, 전자상거래 보안, 기타 어플리케이션 보안), 정보보안 일반(보안요소 기술, 암호학을 다룬다.), 정보보안관리 및 법규(정보보호 관리, 정보보호 관련 법규~~많은 과락자가 발생하는 과목, 법이 매년 바뀐다~~)의 다섯 과목이다. 정보보안산업기사정보보안관리 및 법규 과목이 없어서 네 과목이다.


실기는 총 180분이며 필답형이다. 자세히 보면 단답형과 서술형, 그리고 작업형으로 나뉜다. 정보처리기사와는 달리 순수하게 주관식이라고 할 수 있다. 정보보안산업기사는 실기시험이 150분이다.

실기시험은 정보보안 실무(시스템 및 네트워크 보안특성 파악, 취약점 점검 및 보완, 관제 및 대응, 정보보호계획 수립, 위험분석이 있다.) 한 과목이다.

정보보안 기사, 정보보안 산업기사 실기는 "시스템 및 네트워크 보안특성 파악, 취약점 점검 및 보완, 관제 및 대응, 정보보호계획 수립, 위험분석, 암호학, 최근 보안 이슈"까지 전반적인 내용에 대한 문제가 출제되며, 출제 유형은 단답형 10문제(30점), 서술형 3문제(42점), 실무형(작업형) 3문제 중 2문제 선택(28점), 총 3가지 유형으로 16문제가 출제되며 그 중 15문제를 풀면 된다. 단답형은 문제 당 3점, 서술형과 실무형(작업형)은 문제 당 14점이다.


단답형 시험 문제 : 총 10문제 <30점>

- ( )괄호 넣기나 선택형 문제로 일반적으로 1문제에 3점 처리되는데 한 문제만 출제되는 것이 아닌 한 문제 안에서 3개의 답을 요하는 방향으로 출제 됩니다.

예시) ( A ), ( B ), ( C ) ~답하시오. ~ 적으시오. ~완성하시오.


서술형 문제 : 총 3문제 <42점>

- 기본적인 이론을 바탕으로 하여 세부 문제를 나누어 2문제에서 3문제 정도가 출제 됩니다.(부분점수 존재)

예시) ~에 대한 설명을 기술하시오. ~서술하시오.


작업(실무)형 문제 : 총 3문제 중에서 2문제 선택하기 <28점>

- 서술형 문제 유형과 특별하게 차이가 없으나 문제 내용이 실무적인 측면을 강조되어 출제 됩니다. (부분점수 존재)

예시) ~은 무엇인가?, ~를 보고 각 물음에 답하시오.

시스템 보안

운영 체제, 써버 보안 등에 대해 다룬다.

UNIX 서버 보안

유닉스(Unix)의 파일 시스템, 명령어 등을 외우면 된다.

inode

아이노드(inode, index node)는 유닉스에서 각 파일에 대한 정보를 기억하는 약 120 바이트(byte)의 고정된 크기의 구조체이다. 일반 파일(일반적으로 데이터 또는 프로그램 코드에 해당하는 일련의 바이트 스트림)이나 디렉터리 파일(특별한 형식으로 디스크에 저장되며 파일 시스템의 중추)의 inode는 각 파일의 디스크 블록의 위치를 포함하고 있으며, 특수 파일(프린터와 터미널, 디스크같은 주변 장치 또는 파이프와 소켓같은 프로세스 간 상호 통신 기법에 해당)의 inode는 주변 장치를 식별할 수 있는 정보를 포함하고 있다. inode(ls -l 명령에 의해 출력되는 결과는 해당 파일의 inode를 참조하는 것)는 파일에 대한 정보(파일의 허가권, 소유권, 그룹, 최근 수정된 시각같은 파일 관련 정보)와 이 파일에 할당된 디스크 블록의 주소를 저장하는 필드들로 구성되어 있다.

부팅 관련 용어 정의

실행수준(runlevel)

런레벨(runlevel, run level, 실행수준)이란 시스템의 운영 상태를 숫자 또는 문자로 나타낸 것이다. 아래 참조.


0: PROM(programmable read-only memory) 모드

S, s: 시스템 싱글 유저 모드, 로컬 파일 시스템이 마운트되지 않은 상태

1: 시스템 싱글 유저 모드, 로컬 파일 시스템이 마운트된 상태

2: 멀티 유저 모드(네트워크 파일 시스템(Network File System, NFS) 클라이언트 모드)

3: 멀티 유저 모드(NFS 서버 모드), UNIX 기본 run level

4: 사용 안 함

5: 시스템 power off 모드

6: 시스템 리부팅

INIT 상태

init은 initialization(초기화, 초기치 설정)의 약자이다. INIT 상태(INIT state)란 런 레벨(run level)과 같은 의미이다. 시스템이 런 레벨을 이동할 때, init 명령어를 통해서 이동한다. 예를 들어, 현재 런 레벨이 멀티 유저 모드인 3번인데, 싱글 유저 모드로 이동하고 싶으면 init S 명령어를 이용하면 된다.

싱글 유저 모드란 시스템을 유지보수하기 위한 모드이기 때문에 싱글 유저 모드로 로그인하기 위해서는 root 사용자 암호가 필요하다. 시스템에 문제가 있어 정상적으로 부팅되지 않을 경우 자동으로 싱글 유저모드로 진입한다.

예시

  • PROM 모드 진입
init 0
shutdown -y -g 0 -i 0
halt


  • 싱글 유저 모드로 변경
init S
init s
init 1


  • 시스템 종료
init 5
shutdown -y -g 0 -i 5
poweroff


  • 시스템 리부팅
init 6
shutdown -y -g 0 -i 6
reboot

UNIX 서버 보안: 기출 문제

  • 다음에 설명하는 유닉스 파일 시스템의 영역은 무엇인가?

파일시스템 내의 파일이나 디렉터리의 소유자, 소유그룹, 접근 모드(읽기, 쓰기, 실행 권한), 크기, 속성, 시간 및 디스크 블록 내의 포인터 등에 대한 각종 정보를 저장하고 있는 영역으로서 각 파일이나 디렉터리별로 고유한 식별번호를 가지고 있다.

1. boot 블록

2. super 블록

3. inode 블록

4. data 블록



해설: inode는 파일에 대한 정보(파일의 허가권, 소유권, 그룹, 최근 수정된 시간같은 파일 관련 정보)와 이 파일에 할당된 디스크 블록의 주소를 저장하는 필드들로 구성되어 있다. 답: 3


  • 유닉스 시스템의 파일 시스템 설명 중 옳지 않은 것은?

1. 각 파일마다 한 명의 소유자가 존재한다.

2. 파일의 변경은 소유자만 할 수 있다.

3. root는 파일의 읽기, 쓰기, 실행 속성을 변경할 수 있다.

4. SUID와 SGID를 통해 소유 권한이 없는 사용자도 그 파일의 소유자 권한으로 실행시킬 수 있다.



해설: 각 파일마다 한 명의 소유자가 나타나며 이 소유자는 파일의 변경을 할 수 있으며, root는 모든 파일의 변경이 가능한 superuser이다. 따라서 파일의 변경은 소유자뿐만 아니라 root도 할 수 있다. 답: 2


  • Unix 운영 체제에서 파일이나 디렉터리 생성 시의 기본 권한은 umask 값에 의해 결정된다. 어떤 Unix 시스템에서 디렉터리 생성시 기본권한을 rwxr_xr_x, 파일 생성시 기본권한을 rw_r__r__로 설정하고자 한다. 이를 위한 명령으로 적절한 것은?

1. umask 0002

2. umask 0022

3. umask 0077

4. umask 0007



해설: umask 값은 새롭게 생성되는 파일과 디렉터리의 기본 허용(default permission)을 결정하며, 새로운 파일 및 디렉터리를 생성하는 동안 해당되는 퍼미션이 할당되어 적용된다. umask 022는 디렉터리에 대하여 Owner에게 모든 권한(rwx), Group과 Others에게는 read, execute 권한(r_x)을 준다(755). 파일에 대해서는 Owner에게 read, modify 권한(rw_)을 주고, Group과 Others에게는 read 권한(r__)만을 준다(644). 답: 2

Linux 서버 보안

실행수준

  • 레벨 0
init 0
halt
shutdown -h now

시스템 종료


  • 레벨 1
init 1

싱글 모드, 관리 모드. 콘솔로써만 접근 가능하면 root만이 사용할 수 있음. 시스템 관리 또는 root 패스워드를 변경하고자 할 때에만 사용함.


  • 레벨 2
init 2

네트워크 파일 시스템(Network File System, NFS)을 지원하지 않는 멀티 유저 실행 모드


  • 레벨 3
init 3

NFS를 지원하는 멀티 유저 실행 모드


  • 레벨 4
init 4

사용하지 않는 실행 레벨. 사용자가 지정하여 사용할 수 있음.


  • 레벨 5
init 5

X 윈도우 환경으로 실행된 멀티 유저 실행 모드


  • 레벨 6
init 6
reboot
shutdown -r now

서버를 재부팅시키는 실행 모드

Linux 서버 보안: 기출 문제

  • 어떤 리눅스 시스템의 관리자 비밀번호를 잊어버렸다. 응급으로 시스템에 로그인하여 비밀번호를 재설정하고자 한다. 이를 위하여 어떠한 run level로 시스템을 부팅시켜야 하는가?

1. runlevel 0

2. runlevel 1

3. runlevel 3

4. runlevel 5



시스템 관리자 계정의 암호를 잊어버렸거나 시스템이 정상적으로 부팅되지 않을 경우 single 모드(runlevel 1)로 부팅하여 해당 문제를 해결할 수 있다. 답 2

서버 보안 관리

서버 보안 관리: 기출 문제

  • 침해 사고시 로그를 분석하여 비인가자의 접근 내역과 수행한 작업 등 여러가지 상황에 대한 파악을 할 수 있다. 다음과 같은 접근 내역의 내용을 보여주는 로그는?

SU 04/18 18:41 + ttypb guard-wkshin

SU 04/18 18:44 + ttypb guard-wjshin

SU 04/19 00:50 + ttyp2 chester-guard

SU 04/19 06:27 - ttyp1 hacker-root

SU 04/19 06:29 + ttyp1 hacker-root

1. wtmp

2. utmp

3. sulog

4. lastlog



로그인한 계정의 권한 변경에 대한 로그로 이 로그는 공격자가 일반 계정으로 로그인한 후 패스워드 추측 공격 등을 수행했을 때 권한 변경 실패를 의미하는 '-'로 저장되기 때문에 관리자가 이를 확인하여 공격 의도를 가진 일반 계정을 추적해낼 수 있다. 답 3

각종 시스템 보안 위협 및 대응책

각종 시스템 보안 위협 및 대응책: 기출 문제

  • 다음 중 버퍼 오버플로우(buffer overflow)에 대한 설명으로 적절하지 않은 것은?

1. 일반적으로 소스 코드상에서 입력 문자열의 크기를 점검하지 않는데서 발생한다.

2. 루트 소유의 SetUID 프로그램은 버퍼 오버플로우의 좋은 공격 대상이다.

3. 사용자에게 할당된 디스크 사이즈가 제한되어 있지 않을 때 발생할 수 있다.

4. 지정된 버퍼 크기보다 더 큰 입력 값으로 인해 프로그램의 오동작을 유발하는 공격 방법이다.



버퍼 오버플로우 공격은 프로그래머가 취약한 함수를 사용할 경우에 발생할 수 있다. 사용자에게 할당된 디스크 사이즈가 제한되어 있지 않을 때 발생할 수 있는 공격은 디스크 자원 고갈 공격에 해당된다. 답 3

네트워크 보안

네트워크 개요

RFC 1122[1], Internet STD 3 (1989) Cisco Academy[2] Kurose,[3] Forouzan[4] Comer,[5] Kozierok[6] Stallings[7] Tanenbaum[8] Arpanet Reference Model (RFC 871[9]) (1982) OSI model
Four layers Four layers Five layers Four+one layers Five layers Five layers Three layers Seven layers
"Internet model" "Internet model" "Five-layer Internet model" or "TCP/IP protocol suite" "TCP/IP 5-layer reference model" "TCP/IP model" "TCP/IP 5-layer reference model" "Arpanet reference model" OSI model
Application Application Application Application Application Application Application/Process Application
Presentation
Session
Transport Transport Transport Transport Host-to-host or transport Transport Host-to-host Transport
Internet Internetwork Network Internet Internet Internet Network
Link Network interface Data link Data link (Network interface) Network access Data link Network interface Data link
Physical (Hardware) Physical Physical Physical

인터넷 모델(Internet model), TCP/IP 프로토콜 스위트(TCP/IP protocol suite), TCP/IP 모델(TCP/IP model), OSI 모형(OSI model), 인터넷 프로토콜 스위트(Internet protocol suite)는 모두 네트워크의 계층 구조를 나타내는 단어이다. OSI 모형을 기준으로 암기하면 된다.


국제 인터넷 표준화 기구(Internet Engineering Task Force, IETF)에서는 인터넷 모델(Internet model)을 4계층으로 나눈다.


국제 표준화 기구(International Organization for Standardization, ISO)는 네트워크개방 시스템 상호연결 모델(Open System Interconnection model, OSI model)에서 7계층으로 나누고 있다. OSI 모델은 1970년대 후반에 처음 소개되었으며 7개의 계층(layer)으로 되어있다. 7개의 계층은 3개의 그룹으로 나눌 수 있다. 1-3계층은 각각 물리 계층(physical layer), 데이터 링크 계층(data link layer), 네트워크 계층(network layer)으로 한 장치에서 다른 장치로 정보를 전송할 때 필요한 물리적인 면(전기 규격, 물리 접속, 물리 주소, 전송시간, 전송 신뢰도 등)을 다룬다. 5-7계층은 각각 셰션 계층(session layer), 표현 계층(presentation layer), 응용 계층(application layer)으로 사용자 지원 계층이다. 서로 관련 없는 소프트웨어 시스템간의 상호 연동을 가능하게 해준다. 제 4 계층은 전송 계층(transport layer)으로 두 그룹을 연결한다. OSI 모델의 상위 계층(5-7 계층)은 거의 대부분 소프트웨어로 구성되고, 하위 계층(1-3 계층)은 하드웨어와 소프트웨어의 조합으로 구현되지만 물리 계층(제1계층)은 대부분 하드웨어로만 구현된다.


4. Application

3. Transport

2. Internet

1. Link


5. Application

4. Transport

3. Network

2. Data link

1. Physical


7. Application

6. Presentation

5. Session

4. Transport

3. Network

2. Data link

1. Physical


전송 계층 보안 (TLS, Transport Layer Security, SSL, HTTPS)이 이름에 전송 계층 (transport layer)이 들어간다고 4번째 계층인 전송 계층에서 작동한다고 생각하면 안 된다. TLS는 5번째 계층인 쎄션 계층 (session layer)에서 작동한다.

  • TLS/SSL. WHAT?! 개념과 동작원리

2010.01.12

http://guguru.tistory.com/2


네트워크 개요: 기출 문제

  • 네트워크 각 계층별 보안 프로토콜로 옳지 않은 것은?

1. 네트워크 계층(network layer): IPSec

2. 네트워크 계층(network layer): FTP

3. 응용 프로그램 계층(application layer): SSH

4. 응용 프로그램 계층(application layer): S/MIME



FTP는 응용 프로그램 계층에 해당된다. 답 2


  • 다음 중 데이터 링크 계층의 기능에 대한 설명으로 옳지 않은 것은?

1. 프레임과 프레임 사이의 구분을 위해서 Flag를 삽입하는 것은 송수신에서의 동기를 맞추어 주기 위한 것이다.

2. 데이터 링크 제어는 Flow 제어와 Error 제어로 구성한다.

3. 데이터 링크 계층은 데이터 링크 제어와 매체 접근 제어로 구성된다.

4. Flag와 같은 패턴이 데이터에 나타날 경우를 대비해 네트워크 계층에서 이를 처리하기 위한 메커니즘을 가지고 있다.



데이터 스트림상에 동일 패턴이 중복되는 것을 방지하는 행위를 스터핑(stuffing)이라고 한다. 데이터를 실은 프레임들의 경계를 구분하기 위한 Flag가 데이터에 나타날 경우를 대비해, 비트 스터핑(bit stuffing), 바이트 스터핑(byte stuffing)의 동작을 데이터 링크 계층에서 수행한다. 답 4

네트워크 기반 공격의 이해

네트워크 기반 공격의 이해: 기출 문제

  • TCP 세션 설정 과정인 '3-Way Handshaking'의 취약점을 이용한 공격은 무엇인가?

1. Smurf

2. Ping of Death

3. Teardrop

4. SYN Flooding



Syn flooding 공격은 TCP 연결 설정 과정 중에 3-Way Handshaking 과정에서 Half-Open 연결 시도가 가능하다는 취약점을 이용한 공격으로 공격대상 시스템은 외부로부터 접속 요청을 더 이상 받아들일 수가 없게 되어 정상적인 서비스를 제공할 수 없게 된다. 답 4


  • 다음에서 설명하고 있는 서비스 거부 공격의 이름으로 가장 적합한 것은?

공격자는 특정 네트워크 프로토콜의 특성을 이용하여 Source IP 주소를 공격 대상으로 하고, Destination IP 주소를 브로드캐스팅 주소로 하여 전송한다. 해당 서비스의 특성에 의하여 브로드캐스팅 된 요청에 대한 응답이 Source IP 주소로 폭주하여 서비스 거부 상태가 된다.

1. Smurfing

2. SYN Flooding

3. LAND Attack

4. Ack Storm



ICMP 브로드캐스트를 통해 증폭 네트워크를 이용하여 공격 대상 서버의 성능에 문제를 발생시키는 공격 방식은 SMURF Attack이다. 답 1


  • 다음 중 Sniffing 공격에 대한 대처 방법으로써 가장 적절한 것은?

1. 서버 접속시 사용하는 패스워드를 자주 변경한다.

2. SSL, SSH 등의 암호화 프로토콜을 사용한다.

3. 각종 시스템에 대하여 로그를 남기고 자주 모니터링한다.

4. 방화벽을 설치한다.



스니핑 공격 대응 방안은 암호화 기능 및 보안 프로토콜을 사용하는 것이다. 즉, SSL, IPSEC, PGP 등 여러 암호화 프로토콜 및 응용 프로그램을 통해 인터넷 통신에 사용되는 모든 데이터를 암호화한다. 인터넷 회선을 사용하여 사설망의 효과를 줄 수 있는데 이것이 가상사설망(VPN)이다. VPN은 장비간의 암호화를 통해 도청을 막을 수 있다. 답 2

네트워크 보안 동향

역추적 시스템

역추적(traceback)이란 해킹을 시도하는 해커의 실제 위치를 실시간으로 추적하는 기술을 말한다. 역추적 기술은 일반적으로 크게 두 가지 분야로 분류한다.

해커의 실제 위치 추적

해커의 실제 위치를 추적하는 기술: TCP 연결 역추적(TCP connection traceback)과 연결 역추적(connection traceback)이 있다.

TCP 연결 역추적은 TCP 연결을 기반으로 우회 공격을 시도하는 해커의 실제 위치를 실시간으로 추적하는 기법으로 호스트 기반 연결 역추적 기술과 네트워크 기반 연결 역추적 기술로 분류한다.

  • 호스트 기반 연결 역추적 기술: 역추적을 위한 모듈이 인터넷상의 호스트들에 설치되는 역추적 기법으로 호스트에서 발생하는 로그 기록 등의 다양한 정보를 바탕으로 역추적을 진행하는 기술이다.
  • 네트워크 기반 연결 역추적 기술: 네트워크상에 송수신되는 패킷들로부터 역추적을 수행할 수 있는 정보를 추출하여 역추적을 수행하는 것으로 역추적 모듈이 네트워크상에 송수신되는 패킷을 확인할 수 있는 위치에 설치된다.

변조된 패킷의 실제 송신지 추적

IP 주소가 변경된 패킷의 실제 송신지를 추적하는 기술: IP 패킷 역추적(IP packet traceback)과 패킷 역추적(packet traceback)이 있다.

IP 패킷 역추적 기술은 IP 주소가 변경된 패킷의 실제 송신지를 추적하기 위한 기술이다.

IP 패킷 역추적 기법은 해커가 전송하는 패킷에 해당 패킷을 전달한 라우터를 표시함으로써 추적할 수 있게 하는 패킷 표시 기법을 이용한 기술이다.

APT(Advanced Persistent Threat)

지능형 지속 위협(APT)은 특정 대상을 겨냥해 다양한 공격 기법을 이용하여 장기간 지속적으로 공격하는 것을 말한다. 공격의 가장 큰 특징은 지로우 데이 공격과 같이 기존에 알려지지 않았던 취약점을 이용한 공격을 한다는 점이다. 지로우 데이(zero-day) 취약점은 특정 시스템이나 네트워크 장비같은 핵심 장비에서 기존에 알려지지 않은 취약점이 발생하고 그 취약점에 대한 패치가 발표되기도 전에 공격을 하는 수법을 말한다.

APT 공격은 목표 대상에 대한 선행 조사 끝에 이뤄지는 침투, 프로파일링을 통한 전반적인 기업 정보 검색, 정보를 내려받을 수 있는 새로운 악성 코드를 유포해 기밀 정보 수집, 수집한 정보를 몰래 빼내오는 유출 등 4단계를 거친다.

워터링 홀(watering hole) 공격

사자가 먹이를 습격하기 위해 물 웅덩이(watering hole) 근처에서 매복하고 있는 형상을 빗댄 것으로 "표적 공격"의 일종이다. 공격자는 공격 대상이 주로 방문하는 웹사이트에 대한 정보를 사전에 파악한 후(사회 공학적 기법) 지로우 데이 취약점을 이용해 해당 사이트에 악성 코드를 심어둔다. 공격 대상이 해당 사이트에 접근하게 되면 해당 악성 코드에 감염이 된다.

스피어 피싱(spear phishing) 공격

작살로 물고기를 잡는 작살 낚시(spear fishing)에서 유래된 것으로, "창을 찌른다"는 의미의 스피어(spear)와 "사용자를 속이기 위한 사기 이메일 및 기타 행위"를 의미하는 용어인 피싱(phishing)의 합성어이다. 불특정 다수가 아닌 특정인(조직)을 표적으로, 신뢰할만한 발신인이 보낸 것처럼 위장한 메일을 이용해 악성 웹사이트로 유도 또는 악성 첨부 파일로 악성 코드에 감염시키는 방식이다.

네트워크 보안 동향: 기출 문제

  • UTM(Unified Threat Management)에 대한 설명 중 틀린 것은?

1. UTM은 다양한 보안 솔루션을 하나의 장비에 탑재하여 운영하는 All-in-One 통합 보안 솔루션이다.

2. 보안 정책 적용이 개별적으로 이루어지므로 전문가의 운영이 필요하다.

3. 다양한 보안 기능을 하나의 솔루션에 통합하여 복합 해킹 위협에 효과적으로 대응하는 데 목적을 두고 있다.

4. 보안 정책, 필터링 시그니처를 통합 관리하여 일관성과 운영 효율성을 제공한다.



UTM은 보안 정책 적용이 개별적으로 이루어지는 것이 아니고, 다양한 보안 솔루션 기능을 하나로 통합한 보안 솔루션이다. 답 2


  • 최근 지능형 지속 위협(APT) 공격이 빈발하고 있다. 다음 중 APT 공격 유형으로 가장 부적절한 것은?

1. DoS 공격을 이용한 APT

2. 이메일을 이용한 APT

3. 지로우 데이를 이용한 APT

4. 백도어를 이용한 APT



APT 공격은 은밀하게 장기간에 걸쳐 조직적으로 특정 기업이나 조직 네트워크에 침투해 활동 거점을 마련한 뒤 정보를 외부로 빼돌리는 형태의 공격들을 말하는 것으로 공격 행위가 바로 노출될 수 있는 DoS 공격과는 거리가 멀다. 답 1

애플리케이션 보안

웹 보안(web security)

아파치 웹 서버 보안

서버 실행 계정 확인

구 버전의 아파치는 root 권한으로도 실행되는 경우가 많았다. 이럴 경우 아파치의 웹 프로세스는 막강한 권한을 가지게 되어 보안 사고가 빈번하게 일어나곤 했다. 이를 막기 위해 nobody 계정을 만들어 아파치 웹 프로세스의 권한으로 할당하였다. guest 계정과 비슷한 권한을 가진 nobody 계정은 로그인도 허용되지 않는다. 센트OS에서 아파치는 nobody라는 이름 대신 apache라는 별도의 계정과 그룹을 만들어 아파치 웹 프로세스에 대한 권한으로 할당하였다. 데비안에서는 www-data라는 계정과 그룹을 생성한다.

httpd.conf 파일(아파치 설정 파일)

아파치 설정 파일이 센트OS 등에서는

/etc/httpd/conf/httpd.conf

파일 이지만 데비안에서는

/etc/apache2/apache2.conf

파일과 그 외 여러개의 conf 파일이다.

1. ServerType(standalone): 서버를 standalone(독립형) 모드 혹은 inetd(internet service daemon) 모드로 운영할지를 결정하는 부분이다. 일반적으로 웹은 standalone 형태로 운영된다.

  • standalone: 사용자 요청을 직저 웹 데몬이 받아서 처리하는 방식
  • inetd: 사용자 요청을 inetd 데몬이 받아서 처리하는 방식

2. Timeout(300): 클라이언트에서 서버로 접속할 때 클라이언트나 서버의 통신 장애로 인해 300초 동안 클라이언트에서 완벽한 처리를 하지 못할 때 클라이언트와의 연결을 해제한다.

3. KeepAlive(On): 사용자의 요청 연결에 대해 한 번의 요청만 처리하는 것이 아니라 또 다른 요청을 기다리게 할지를 설정한다. 만약 KeepAlive 값을 Off로 설정하게 되면 클라이언트로부터 한 번의 요청을 받은 후 바로 접속을 해제하므로 On 설정을 권장한다.

4. MaxKeepAliveRequests(100): KeepAlive 상태에서 처리할 최대 요청 처리 건수를 설정한다. 보통의 웹 사이트에서는 100으로 설정한다.

5. KeepAliveTimeout(15): KeepAlive 상태를 유지할 시간을 초 단위로 설정한다.

6. MinSpareServers(8): 아파치가 실행될 때 최소 예비 프로세스 수를 설정한다. 이 값에 의해 현재 nobody 소유의 아파치 프로세스가 5보다 작을 때는 자동으로 부족한 만큼의 아파치 프로세스를 생성하게 된다. 일반적으로 8정도 설정하는 것이 적당하다.

7. MaxSpareServers(20): 아파치가 실행될 때 최대 예비 프로세스 수를 설정한다. 이 값에 의해 현재 nobody 소유의 아파치 프로세스가 10보다 클 때는 불필요한 프로세스를 제거한다. 일반적으로 20정도 설정하는 것이 적당하다.

8. MaxClients(150): 아파치 서버의 동시 접속자 수를 정의하는 것으로 최대값은 256이다. 만약 256 이상의 값을 설정하고 싶을 때는 아파치 소스 코드의 httpd.h 헤더 파일의 HARD_SERVER_LIMIT 부분을 수정하고 아파치를 다시 컴파일해야 된다.

9. MaxRequestsPerChild(0): 아파치의 자식 프로세스가 처리할 수 있는 최대 요청 처리 건수를 설정하는 곳으로 0은 무제한을 뜻한다.

10. User(nobody): 자식 프로세스가 생성될 때 그 프로세스의 소유자와 소유 그룹을 결정한다. 보안상 root 권한으로 운영하지 않도록 한다.

11. Port(80): 아파치가 사용하는 기본 포트를 지정한다.

12. ServerAdmin(root@localhost): 아파치 서버 관리자 e-mail을 설정하는 부분이다.

13. ServerName(xxx.co.kr): 작동 중인 아파치 서버의 서버 이름을 설정한다. 기본적으로 주석 처리되어 있다.

14. DocumentRoot("/usr/local/apache/htdocs"): 아파치의 웹 문서들이 존재하는 위치를 저장한다.

15. ErrorLog(/usr/local/apache/logs/error_log): 아파치 서버 접속 에러를 기록할 이름을 설정하는 곳이다.

16. LogLevel(warn): 에러 로그 내용의 레벨을 설정한다.

17. LogFormat: 사용자 접속 정보를 기록하는 로그 포맷을 정의하는 곳으로 아래와 같은 값을 정의할 수 있다.

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent
  • combined: 아래의 3가지 로그 포맷을 모두 조합한 것이다. 접속자에 대해 많은 정보를 기록하길 원한다면 combined로 설정하면 된다.
  • common: 가장 일반적인 로그 기록
  • referer: 현재 아파치 서버에 접속하기 전에 머물렀던 URL을 기록한다.
  • agent: 접속자의 웹 브라우저(OS 포함) 종류를 기록한다.

18. ServerSignature(On): 서버 배너 정보를 나타내는 곳으로, 서버 정보를 은닉하기 원한다면 Off로 변경한다.

예) Server: IBM_HTTP_SERVER/1.3.28.1 Apache/1.3.28(Unix)

19. ServerTokens(ProductOnly): 서버의 정보 표시 제한을 설정한다.

  • ProductOnly: 웹 서버 종류만 표시
  • Minimal: 웹 서버 종류와 버전 정보 표시
  • OS: 웹 서버 종류와 버전, 운영 체제 정보 표시
  • Full: 웹 서버 종류와 버전, 운영 체제, 설치된 모듈 정보 표시

20. Alias(/icons/ "/usr/local/apache/icons/"): 특정 디렉터리에 별칭을 지정하는 곳으로 /usr/local/apache/icons/를 /icons/라는 별칭으로 지정한 것이다.

웹 서비스 공격

SQL 주입

SQL 주입(SQL injection)은 데이터베이스(DB, database)와 연동되어있는 애플리케이션의 입력값을 조작하여 DBMS가 의도되지 않은 결과를 반환하도록 하는 공격 기법이다. 이는 해당 애플리케이션에서 사용자로부터 전송되어 오는 입력 값에 대해 그 적정성을 검사하지 않았기 때문에 발생한다.(필터링이 없을 경우) SQL injection을 통해서 파급될 수 있는 효과로는 해당 애플리케이션에서 사용하고 있는 DB 정보 조회는 물론, 변조 또는 삭제까지 할 수 있으며, 사용자 및 관리자에 대한 인증 절차를 우회할 수 있다. 더 나아가서는 데이터베이스 시스템의 시스템 명령어를 실행시키거나 주요한 시스템의 파일 정보를 노출시킬 수도 있다.

취약점 판단 방법

검색어 필드 및 로그인 필드에 큰따옴표, 작은따옴표, 세미콜론을 입력하여 DB 에러가 발생하는지 확인한다.

SQL 문에서는 where로 입력되는 조건문을 항상 참으로 만들 수 있는 방법이 있다. 바로 조건 값에 'or''='을 입력해본다. 또한 'or '1'='1이나 'or "='--와 같이 SQL문이 결과적으로 참이 될 수 있다면, SQL 삽입 공격에 사용되는 SQL 문은 무서이라도 SQL 삽입 공격에 사용될 수 있다.(MS-SQL에서 --는 주석 처리 표시)

아이디: 'or "='

패스워드: 'or "='

이렇게 입력하면

SELECT user_id FROM member WHERE

user_id = "or "=" AND password = "or "="

이렇게 된다.

싸이트 간 스크맆팅(XSS)

싸이트 간 스크맆팅(cross-site scripting, XSS, CSS)은 공격자에 의해 작성된 스크립트가 다른 사용자에게 전달되는 것이다. 다른 사용자의 웹 브라우저 내에서 적절한 검증 없이 실행되기 때문에 사용자의 세션을 탈취하거나, 웹 사이트를 변조하거나 혹은 악의적인 사이트로 사용자를 이동시킬 수 있다.

싸이트 간 요청 위조(CSRF)

싸이트 간 요청 위조(cross-site request forgery, CSRF, XSRF)는 특정 웹사이트에 대해 사용자가 인지하지 못한 상황에서 사용자의 의도와는 무관하게 공격자가 의도한 행위(수정, 삭제, 등록 등)를 요청하게 하는 공격을 말한다. XSS 공격은 악성 스크립트가 클라이언트에서 실행되는 데 반해, CSRF 공격은 사용자가 악성 스크립트를 서버에 요청한다는 점에서 차이가 있다.

직접 객체 참조

직접 객체 참조는 파일, 디렉터리, 데이터베이스 키와 같이 내부적으로 구현된 객체에 대한 참조가 노출될 때 발생한다. 접근 통제에 의한 확인이나 다른 보호 조치가 없다면 공격자는 권한 없는 데이터에 접근하기 위해 노출된 참조를 조작할 수 있다.

디렉터리 탐색

디렉터리(directory traversal) 탐색은 웹 브라우저에서 확인 가능한 경로의 상위로 탐색하여 특정 시스템 파일을 다운로드하는 공격방법이다.

파일 업로드 제한 부재

클라이언트에서 서버측으로 임의의 파일을 보낼 수 있다는 점은 웹 서버가 가질 수 있는 가장 치명적인 취약점이다. 공격자는 웹 서버에 악의적인 파일을 전송하고, 원격지에서 해당 파일을 실행하여 웹 서버를 장악하며 추가적인 내부 침투 공격을 수행할 수 있게 되기 때문이다.

리버스 텔넷

리버스 텔넷(reverse telnet) 기술은 웹 해킹을 통해 시스템의 권한을 획득한 후 해당 시스템에 텔넷과 같이 직접 명령을 입력하고 확인할 수 있는 을 획득하기 위한 방법으로, 방화벽이 존재하는 시스템을 공격할 대 자주 사용된다. 일반적으로 웹 서버는 방화벽 내부에 존재하는데, 웹 서버는 80번 포트를 이용한 웹 서비스만 제공하면 되기 때문에 방화벽은 외부 인터넷을 사용하는 사용자에 댛해 80번 포트만을 허용한다. 이런 경우에 웹 서버의 텔넷이 열려 있어도 방화벽으로 인해 공격자가 외부에서 접근할 수 없다.

보안 설정 취약점

  • 디렉터리 리스팅(directory listing): 디렉터리 리스팅은 웹 브라우저에서 웹 서버의 특정 디렉터리를 열면 그 디렉터리에 있는 파일과 목록이 모두 나열되는 것을 의미한다.
  • 백업 및 임시 파일 존재: 개발자들이 웹 사이트를 개발하고 난 후 웹 서버에 백업 파이이나 임시 파일을들 삭제하지 않은 채 방치하는 경우가 종종 있다. 이럴 경우 공격자의 입장에서는 백업 파일을 발견하며 ㄴ웹 애플리케이션의 내부 로직 및 데이터베이스 접속 정보 등 주용한 정보를 획득할 수 있다. 흔히 login.asp 파일이 웹 서버의 편집 프로그램에 의해 자동으로 생성되는 login.asp.bak과 같은 형태로 남는 경우를 말한다.
  • 주석 관리 미흡: 일반적으로 프로그램의 주석은 개발자만 볼 수 있으나, 웹 애플리케이션의 경우에는 웹 프록시를 통해 이용자도 볼 수 있다. 주석에는 개발 과정이나 웹 애플리케이션의 관리 목적으로 주요 로직에 대한 설명, 디렉터리 구조, 테스트 소스 정보, 심지어는 아이디와 패스워드 등의 여러가지 정보가 기록될 수 있다. 따라서 웹 애플리케이션 개발시에는 주석에 기록되는 정보에 주의할 필요가 있다.

쿠키 위조

쿠키 위조를 막기 위해 전송 중에 자격 증명 보호를 실시한다. 또한 cookie 대신에 server side session을 사용한다. 쿠키는 사용자 시스템에 저장되지만 세션은 서버 시스템에 저장되어 사용자측에서 위조가 어렵다.

웹의 취약점 보완

특수 문자 필터링

XSS나 SQL 삽입 공격에 쓰이는 각종 특수 문자를 필터링한다.

서버측 통제 작용

파일 업로드 취약점이나 특수 문자 필터링을 수행할 때 주의할 점은 자바스크립트와 같은 CSS(client side script) 기반의 언어로 필터링을 하면 안 된다는 것이다. CSS 기반의 언어는 웹 프록시를 통해 웹 브라우저에 전달되기 때문에 웹 프록시를 통해 전달되는 과정에서 변도될 가능성이 있다. 따라서 CSS 기반의 언어로 필터링 할 경우 공격자가 필터링 로직만 파악하면 쉽게 필터링이 무력화된다. 즉, 필터링 로직은 ASP, JSP 등과 같은 SSS(server side script)로 필터링을 수행해야 한다.

지속적인 세션 관리

URL 접근 제한 실패를 막기 위해서는 기본적으로 모든 웹 페이지에 세션에 대한 인증을 수행해야 한다. 모든 웹 페이지에 대해 일관성있는 인증 로직을 적용하려면 기업 단위 또는 웹 사이트 단위에서 세션 인증 로직을 표준화하고, 모든 웹 페이지를 개발할 때 해당 표준을 준수하도록 해야 한다.

웹 보안(web security): 기출 문제

  • 다음은 웹 서버 로그에서 볼 수 있는 상태 코드(응답 코드)로 HTTP/1.1에서 정의한 것이다. 이 중 잘못된 것은?

1. 200: OK

2. 400: Access Denied

3. 404: Not Found

4. 500: Internal Server Error



상태 코드 400은 Bad Request로 요청을 이해할 수 없었거나 클라이언트의 문제로 인해 처리할 수 없었을 때 사용하는 일반적인 응답이다. 답 2


  • 다음 중 지문의 (가)와 (나)에 들어갈 용어로 짝지어진 것은?

웹 보안을 제공하는 방법으로써 SSL은 (가) Layer Security와 호환되며, TCP 계층과 (나) 계층 사이에서 제공하는 서비스이다.

1. (가) Netrowk (나) 전송

2. (가) Transport (나) 네트워크

3. (가) Transport (나) 응용

4. (가) Application (나) 응용



SSL은 TCP/IP 프로토콜의 전송 계층(transport layer)에서 보안 기능을 수행하며 TCP/IP 전송 계층과 응용 계층(application layer) 사이에 위치하며 인증, 암호화, 무결성을 보장하는 업계 표준 프로토콜이다. 답 3


  • SSL/TLS에서 웹 서버에 대한 인증이 이루어지는 세부 프로토콜은 무엇인가?

1. handshake protocol

2. record protocol

3. alert protoclo

4. authentical protocol



Handshake 포로토콜은 Record 프로토콜에 대한 보안 매개 변수를 제공한다. 암호 집합을 설정하고 키와 보안 매개 변수를 제공한다. 또한 필요하다면 클라이언트가 서버에 대해, 그리고 서버가 클라이언트에 대해 인증된다. 답 1

데이터베이스 보안

데이터베이스 보안: 기출 문제

  • 데이터베이스에 장애가 발생했을 때 체크포인트(checkpoint)를 이용하면 복구가 용이해진다. 다음 중 체크포인트에 대한 설명으로 틀린 것은?

1. checkpoint 설정 시 checkpoint 숫자와 체크 시간 간격에 유의해야 한다.

2. checkpoint 숫자가 많을 수록 DB 복구가 쉬워지며 시스템 성능이 향상된다.

3. checkpoint 수행 기준으로 time interval, operator action, log tape에 대한 레코드 기록이 있다.

4. checkpoint를 이용한 복구 상황으로 DB 충돌이 있다.



checkpoint 숫자가 지나치게 많으면 잦은 IO로 시스템 성능이 저하될 수 있다. 답 2

정보보안 일반

대칭 키 암호

대칭 키 암호: 기출 문제

  • 아래의 대칭 키 암호 알고리즘 중 Feistel 암호 구조와 SPN 구조끼리 올바르게 묶인 것은?

1. (DES, SEED) : (AES, ARIA)

2. (DES, ARIA) : (AES, SEED)

3. (DES, AES) : (SEED, ARIA)

4. (DES) : (SEED, AES, ARIA)



SEED는 DES를 참조하였고, ARIA는 AES를 참조하였다. 답 1


  • 블록 암호 알고리즘에서 최초의 평문 블록을 암호화할 때는 '한 단계 앞의 암호문 블록'이 존재하지 않으므로 '한 단계 앞의 암호문 블록'을 대신할 비트열을 무엇이라고 하는가?

1. 패딩(padding)

2. 초기화 벡터(initialization vector)

3. 운영 모드(operational mode)

4. 암호문 블록(ciphertext block)



최초의 평문 블록을 암호화할 때는 '1단계 앞의 암호문 블록'이 존재하지 않으므로 이를 대신할 비트령일 한 개의 블록을 준비해야 한다. 이 비트열을 초기화 벡터(initialization vector) 또는 앞 글자를 따서 IV라고 부른다. 답 2


  • 다음 지문은 어떤 블록 암호의 사용 방식을 설명한 것인가?

초기화 벡터를 암호화한 결과 첫 번째 평문 블록을 XOR하여 암호문 블록을 생성하고, 그 암호문 블록을 다시 암호화한 값과 그 다음 평문 블록을 XOR하여 암호문 블록을 반복하여 생성하는 방식이다. 암호화에서는 특정 입력이 이후로 영향을 미치지만, 복호화에서는 특정 암호문의 오류가 계속적으로 이후에 영향을 미치지 않는다는 특징이 있다. 1. 선택 평문 공격(chosen plaintext attack)

2. 암호 피드백 모드(cipher feedback mode)

3. 출력 피드백 모드(output feedback mode)

4. 카운터 모드(counter mode)



보기는 CFB(암호 피드백) 모드의 암호화 과정에 대한 설명이고, CFB 모드에 대한 특징을 설명하는 것이다. 답 2

비대칭 키 암호

비대칭 키 암호: 기출 문제

  • 다음 중 공개 키 기반으로 대칭 키를 공유할 수 있는 Diffie-Hellman 프로토콜에서 발생할 수 있는 보안 공격에 해당하는 것은 무엇인가?

1. 재전송(replay) 공격

2. 중간자(Man-In-The-Middle) 공격

3. 반사(reflection) 공격

4. 위장(impersonation) 공격



Diffie-Hellman 포로토콜은 인증 단계가 없기 때문에 중간자 공격(man-in-the-middle attack)에 취약하다. 이런 공격을 막기 위해서는 디지털 서명과 공개 키 인증서 등을 이용하면 된다. 답 2

해시 함수와 응용

해시 함수와 응용: 기출 문제

  • 다음 중 SHA-1의 성질로 옳지 않은 것은?

1. 메시지를 512비트 블록 단위로 나눈다.

2. 해시 값의 길이는 160비트이다.

3. 4 라운드로 구성되며 각 라운드 당 20번 반복 동작한다.

4. 기약 논리 함수를 5개 사용한다.



SHA-1은 MD5와 유사한 처리 과정을 수행하며 4개의 기약 논리 함수를 사용한다. 답 4

정보보안관리 및 법규

정보보안 관련 법규

정보보안 관련 법규: 기출 문제

1. 개인정보의 수집·이용 목적

2. 동의를 거부할 권리가 있다는 사실 및 동의 거부에 따른 불이익이 있는 경우에는 그 불이익의 내용

3. 수집하는 개인정보의 항목

4. 개인정보의 보유·이용 기간



동의를 거부할 권리가 있다는 사실 및 동의 거부에 따른 불이익이 있는 경우에는 그 불이익의 내용은 개인정보 보호법에서 동의 받아야할 사항이다. 답 2

정보보안 기사 실기 시험

정보보안 기사 실기 시험은 시스템 및 네트워크 보안특성파악, 취약점 점검 및 보완, 관제 및 대응, 정보보호계획 수립, 위험분석, 암호학, 최근 보안 이슈 등에서 단답형, 서술형, 실무형(작업형)으로 문제가 나온다.


시스템 및 네트워크 보안특성파악

운영체제별 보안특성 파악하기

운영체제별 보안특성 파악하기: 단답형

  • (A)은/는 자원을 효율적으로 사용하고, 컴퓨터 사용자에게 편리한 인터페이스를 제공하는 것을 말한다.



정답: 운영체제


  • 작업의 처리순서를 운영체제에 알려주는 명령어를 (A)라/이라 한다.



정답: 작업 제어 언어 (JCU: job control language)

운영체제별 보안특성 파악하기: 서술형

  • 리눅스 종류와 그 버전을 알아볼 수 있는 방법에 대하여 간단하게 서술하시오. (14점)



채점 및 배점 기준: /etc/issue, /proc/version, uname -a 명령어가 모두 포함되면 14점

답: 리눅스 종류는 cat /etc/issue 파일에서 확인할 수 있고, 리눅스 커널 버전은 uname -a 명령어를 통하여 확인할 수 있다. 또한 cat /proc/version을 통해서도 확인할 수 있다.

프로토콜 특징 및 취약점 파악하기

프로토콜 특징 및 취약점 파악하기: 단답형

프로토콜 특징 및 취약점 파악하기: 서술형

서비스별 보안특성 파악하기

서비스별 보안특성 파악하기: 단답형

서비스별 보안특성 파악하기: 서술형

서비스별 보안특성 파악하기: 실무형(작업형)

  • 리눅스 시스템에서 php 웹 프로그래밍을 사용하는 경우 php.ini의 disable_functions 지시자를 통해 공개된 게시판 프로그램 등의 패치되지 않은 취약점을 이용하여 공격 시도하는 php function들을 시스템 전역 변수(system global)로 제어할 수 있다. 다음 <보기>에 예시된 파일이 있다고 한다면 어떠한 방법으로 보안을 강화할 수 있는지 대응 방안을 작성하시오. (14점)

<보기>

exec, passthru, shell_exec, system, proc_open, popen, curl_exec, curl_multi_exec, parse_ini_file, show_source



채점 및 배점 기준: php.ini에서 Loaded Configuration File에 지시자를 통하는 것을 정확히 언급을 하면 14점

답: phpinfo(); 를 통해서 php.ini(Loaded Configuration File) 확인 후 아래와 같이 추가한다.

disable_functions = exec, passthru, shell_exec, system, proc_open, popen, curl_exec, curl_multi_exec, parse_ini_file, show_source

이후 apache를 restart하면 system global하게 exec, passthru, shell_exec, system, proc_open, popen, curl_exec, curl_multi_exec, parse_ini_file, show_source function들은 사용할 수 없게 되어 취약한 공개용 게시판이나 웹 프로그램 사용시 보안을 강화할 수 있다.

보안장비 및 네트워크 장비 보안특성 파악하기

보안장비 및 네트워크 장비 보안특성 파악하기: 단답형

보안장비 및 네트워크 장비 보안특성 파악하기: 서술형

보안장비 및 네트워크 장비 보안특성 파악하기: 실무형(작업형)

관리대상 시스템 및 네트워크 구조 파악하기

관리대상 시스템 및 네트워크 구조 파악하기: 단답형

취약점 점검 및 보완

운영체제 및 버전별 취약점 점검, 보완하기

운영체제 및 버전별 취약점 점검, 보완하기: 단답형

운영체제 및 버전별 취약점 점검, 보완하기: 서술형

운영체제 및 버전별 취약점 점검, 보완하기: 실무형(작업형)

서비스 버전별 취약점 점검, 보완하기

서비스 버전별 취약점 점검, 보완하기: 단답형

  • 자신이 관리하는 홈페이지에 XSS 취약점이 있는지를 점검하기 위해서는 다음과 같은 방법을 이용해본다. 빈 칸에 들어갈 스크립트 구문은 무엇인가?

웹 사이트의 여러 게시판에 일반 사용자들이 글을 게시할 수 있는 기능이 있는지 점검하낟.

글쓰기 기능이 전혀 없으면 'XSS 취약점'은 존재하지 않는다.

스크립트 구문 (A)을/를 입력하여 경고창 유무와 구문의 실제 동작으로 취약점을 확인할 수 있다.



해설: 스크립트 실행 시 "XSS 취약점 존재"라고 써진 경고 창이 뜰 것이다.

정답: <srcipt> alert ('XSS 취약점 존재'); </script>

서비스 버전별 취약점 점검, 보완하기: 서술형

  • XSS 취약점은 결국 변수들의 입력값이 적합한지 검증하는 절차의 문제이다. XSS 취약점 대응 방안에 대하여 간략하게 3가지만 기술하시오. (14점)



채점 및 배점 기준: XSS에 대한 해결 방법으로 3개 언급하면 점수 14점, 2개면 10점

답: (1) 게시판 사용자의 입력 값 검증

웹 애플리케이션에 전달되는 인수는 허용된 문자셋, 데이터 유형, NULL 값 허용 여부를 정의하고, 사용자 게시판 등과 같은 매개체들의 사용자 입력값을 검증하는 루틴을 거치도록 소스를 수정한다.

(2) 입력 값의 적절한 치환으로 스크립트 실행을 차단

사용자가 입력한 스크립트 코드를 아래 표와 같이 수정한 값으로 변환하여 입력한 스크립트가 읽혀지지 않도록 제한한다.

입력 값 → 수정 값(원래 중간에 띄어쓰기는 없지만 띄어쓰지 않으면 위키 화면에 정상적으로 표시되지 않아 이렇게 적었다. 실제로는 붙여써야 한다.)

< → &l t;

> → &g t;

( → &#4 0;

) → &#4 1;

# → &#3 5;

& → &#3 8;

(3) 쿠키 암호화

ID, 비밀번호와 같은 중요한 정보는 쿠키에 저장하지 않으며 모든 쿠기 문자들을 암호화하는 것이 바람직하다. 이는 문자열을 알아보지 못하도록 기밀성을 보장하는 것으로, 단순 복호화 인코딩이 아닌 암호 알고리즘을 통해 적용한다.

서비스 버전별 취약점 점검, 보완하기: 실무형(작업형)

보안장비 및 네트워크 장비 취약점 점검, 보완하기

보안장비 및 네트워크 장비 취약점 점검, 보완하기: 단답형

보안장비 및 네트워크 장비 취약점 점검, 보완하기: 서술형

보안장비 및 네트워크 장비 취약점 점검, 보완하기: 실무형(작업형)

  • iptables를 이용하여 각각 아래의 프로토콜을 허용하고 나머지 포트는 차단하여라. 단, 차단을 할 경우 상대방에게 차단되었다는 사실을 알려주지 않는다.

허용해야 될 프로토콜: ssh, telnet, http



채점 및 배점 기준: 3개 모두 정답이면 14점, 2가지만 언급하면 10점, 그 외 0점 처리

답:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -A INPUT -p tcp --dport 23 -j ACCEPT

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

iptables -P INPUT DROP

관제 및 대응

운영체제별 로그정보 점검하기

운영체제별 로그정보 점검하기: 단답형

  • 다음 <보기>에서 설명하고 있는 내용을 find 명령어를 써서 완성하시오.

<보기>

수정한지 15일 이상이 된 파일 찾기



해설: -mtime +n/-n/n

mtime은 파일 내의 데이터를 마지막으로 수정한 날짜를 의미합니다.(modified time)

+n은 n일 또는 그보다 더 오래 전의 파일.

-n은 오늘부터 n일 전까지의 파일.

n은 정확히 n일 전에 수정되었음을 의미함.

정답: # find . -mtime +15 -type f -|s

운영체제별 로그정보 점검하기: 서술형

  • 다음 로그에 대하여 보안 관점에서 각각 서술하시오. (14점)

- History

- Secure

- Message



채점 및 배점 기준: 리눅스 로그 경로와 로그 종류를 모두 포함하면 14점

해설: (shell, 문화어: , 자령해석프로그램)은 운영 체제 상에서 다양한 운영 체제 기능과 서비스를 구현하는 인터페이스를 제공하는 프로그램이다. 셸(껍데기의 영어 단어)은 사용자와 운영 체제의 내부(커널) 사이의 인터페이스를 감싸는 층이기 때문에 그러한 이름이 붙었다.

셸은 일반적으로 명령 줄과 그래픽 형의 두 종류로 분류된다. 명령 줄 셸은 운영 체제 상에서 명령 줄 인터페이스(CLI)를 제공하는 반면에, 그래픽 셸은 그래픽 사용자 인터페이스(GUI)를 제공한다.

콘솔(console)은 컴퓨터를 동작시키는 물리 장치인 시스템 콘솔(system console)을 가리키는 말이다.

답: (1) history

사용자가 수행한 명령어들의 기록이 남는 파일이다. acct와 pacct에도 수행한 명령어들의 기록이 남지만, history 파일에는 argument와 Directory까지 보다 자세히 남게 된다. history 파일은 사용자들이 사용하는 에 따라 $HOME/.history나 $HOME/.hash_history에 남게 된다. 만약 시스템 침입을 하여 백도어로 접근하면 root의 홈 디렉터리인 .history나 bash_history에 남게 된다.

(2) Secure

Secure 파일은 보안과 관련된 주요한 로그를 남기며, 사용자 인증 관련된 로그를 포함하고 있다. 여기서 사용자 인증은 telnet, ftp 이외에도 pop 등 인증을 요구하는 모든 네트워크 서비스이다. secure 파일은 로깅 데몬인 syslog 데몬에 의해 남겨지는데, binary 파일이 아니므로 vi나 cat 명령으로 확인이 가능하다. secure 파일은 timestamp, demon, host명으로 기록이 된다.

(3) Message

콘솔상의 화면에 출력되는 메시지들은 messagge 로그 파일에 저장이 된다. 대부분 시스템 관리자가 시스템 장애 원인을 찾기 위해 message 파일을 점검한다. 이 파일을 점검함으로써 어떤 취약점으로 인해 공격을 받았는지에 대한 흔적을 알 수 있다. message 파일은 timestamp, host명, 프로그램명, 메시지 내용 형식으로 기록된다.

서비스별 로그정보 점검하기

서비스별 로그정보 점검하기: 단답형

서비스별 로그정보 점검하기: 실무형(작업형)

  • IIS 서버를 운영하고 있는 A사에서 관리자가 아침에 출근하여 이메일을 받아보니 해킹을 했다는 메일이 와서 이에 대해 시스템 로그의 검토를 들어가던 중 아래와 같은 내용을 파악하게 되었다. 어떠한 공격 방법을 이용하였으며 어떻게 공격했는지 과정을 서술하시오. (14점)

보기

05:06:11 211.44.XX.XX GET /scripts/..%c1%1c../winnt/system32/cmd.exe?/c+dir+"c: \"

05:11:12 211.44.XX.XX GET /scripts/..%c1%1c../winnt/system32/cmd.exe?/c+del+"c: winnt *L.zip"



채점 및 배점 기준: dir 명령어와 파일 삭제 명령어 내용이 포함되어 설명하면 14점, 그 외 0점

해설: 마이크로소프트 인터넷 정보 서비스(Internet Information Services, IIS)는 마이크로소프트 윈도우를 사용하는 서버들을 위한 인터넷 기반 서비스들의 모임이다. 이전 이름은 인터넷 정보 서버(Internet Information Server)였다. 전반적인 웹사이트 용어에서, 아파치 웹 서버에 이어 세계에서 두 번째로 가장 잘 알려진 웹 서버이다. 넷크래프트에 따르면, 2007년 10월 기준으로 전 세계 웹사이트의 37.13%와 전 세계 활성화 웹사이트들의 38.23%가 인터넷 정보 서비스를 사용하고 있다고 한다.[10] 서버는 현재 FTP, SMTP, NNTP, HTTP/HTTPS를 포함하고 있다.

답: Unicode attack을 이용한 방법으로, 공격을 시도한 진원지는 211.44.XX.XX이고, 5시 6분 11초에 C drive를 dir이라는 명령어를 이용하여 내용을 파악하였으며, 5시 11분 12초에 C drive의 /winnt 디렉터리에 있는 L.zip이라는 파일을 지웠다.

보안장비 및 네트워크 장비 로그정보 점검하기

보안장비 및 네트워크 장비 로그정보 점검하기: 단답형

로그정보 통합 및 연관성 점검하기

로그정보 통합 및 연관성 점검하기: 단답형

데이터 백업, 증거 수집 및 침입자 추적하기

데이터 백업, 증거 수집 및 침입자 추적하기: 단답형

정보보호계획 수립

IT 현황 및 자산 파악하기

IT 현황 및 자산 파악하기: 단답형

조직의 요구사항 파악하기

조직의 요구사항 파악하기: 단답형

관련 법령 검토하기

관련 법령 검토하기: 단답형

  • 개인정보보호법 제23조(민감정보의 처리 제한)에 대한 내용이다. 괄호 안에 알맞은 답을 적으시오.

사상·신념, ( A ), 정치적 견해, ( B ), 성생활 등에 관한 정보, 그 밖에 정보주체의 사생활을 현저히 침해할 우려가 있는 개인정보로서 대통령령으로 정하는 정보를 처리하여서는 아니된다.



답: A: 노동조합·정당의 가입·탈퇴

B: 건강

관련 법령 검토하기: 서술형

  • 방통위 고시 제2013-5호 정보보호사전점검에 관한 고시에 따르면 점검팀은 사전 점검을 하려는 사업 또는 정보통신서비스에 대하여 설계 검토를 하게 되어 있다. 설계 검토의 순서를 서술하시오. (14점)



채점 및 배점 기준: 8가지 설계 검토 순서대로 답안 제시하면 14점, 그 외 0점

해설: 방통위 고시 제2013-5호 정보보호사전점검에 관한 고시 제20조(설계검토)

답: 1. 서비스 정의

2. 서비스 구조 분석

3. 보호 자산 식별

4. 위협 분석

5. 취약점 분석

6. 위험 분석

7. 위협 시나리오 도출

8. 보호 대책 도출

위험분석

내·외부 위협 분석하기

내·외부 위협 분석하기: 단답형

내·외부 위협 분석하기: 서술형

  • 기업에서 사용되는 데이터 보안 등급에 대하여 간략하게 서술하시오. (14점)



채점 및 배점 기준: 기업의 데이터 보안 등급에 대하여 4가지 포함하면 14점

답: (1) Sensitive(민감): 허가되지 않은 수정 또는 삭제를 방지함으로써 데이터의 무결성 보장이 요구되는 보안 등급

(2) Private(비밀): 조직의 제한된 내부 사용자에게만 허용되는 정보(개인 정보, 인사 정보)

(3) Confidential(기밀): 정보의 공개가 극히 제한되는 보안 등급, 다른 규정에 대하여도 공개가 면제되는 데이터(산업 보안)

(4) Proprietary(독점, 대외비): 정보가 공개되면 조직의 경쟁력 우위가 약화될 수 있는 상업 비밀이나 특정 제품의 근간 기술 등에 해당하는 데이터 보안 등급

자산별 취약점 분석하기

자산별 취약점 분석하기: 단답형

  • 다음 <보기>는 웹 보안에 대한 내용이다. 괄호 안에 알맞은 답을 적으시오.

<보기> 주로 다른 사용자에게 악성 코드를 보낼 때 사용 기법으로 XSS라고 불리며 웹 애플리케이션이 다른 사용자의 브라우저를 공격하는 도구로 사용된다.

( A ) 공격: 게시판, 로그 정보, 주석 등 서버에 영구적으로 저장된 자료로 공격

( B ) 공격: 에러 메시지, 검색 결과 등 서버에 요청하여 응답을 받는 과정 이용하여 공격



해설: 1. 사이버 공격 행태

- URL상의 XSS 공격

- 게시판에 대한 XSS 공격

공격이 성공하는 경우 일반 사용자의 세션 토큰이 노출되거나, 사용자의 컴퓨터를 공격하거나, 다른 사용자를 속이기 위해 위조된 컨텐츠를 보여주게 된다.

2. 취약점 점검 방법

- 게시판에 HTML 코드나 자바스크립트 삽입 가능 여부

- 사이트의 검색란에 HTML 코드나 자바스크립트 삽입 가능 여부

http://hostname.com/search.JSP?word=<font color=red>테스트</font>

- 서버 에러 메시지를 조작하여 HTML 코드나 자바스크립트를 삽입할 수 있는지 확인

http://hostname.com/error.JSP?err=<font color=red>테스트</font>

3. 대응 조치

- 웹 애플리케이션에 전돨되는 인수는 다음의 허용된 값만을 받아들여야 한다. (허용된 문자셋, 데이터 유형, NULL 값 허용 여부 정의)

- 사용자용 게시판 등과 같은 매개체에 사용자 입력값 검증 루틴을 거친다.

- 애플리케이션 차원에서 HTTP 헤더, HTML, Java/VBScript, Flash, GIF/JPG, 쿠키, 쿼리 스트링, 폼 필드, 히든 필드 등의 모든 인자(parameter)에 대해 허용된 유형의 데이터만 입력할 수 있도록 한다.


입력 값 → 수정 값(원래 중간에 띄어쓰기는 없지만 띄어쓰지 않으면 위키 화면에 정상적으로 표시되지 않아 이렇게 적었다. 실제로는 붙여써야 한다.)

< → &l t;

> → &g t;

( → &#4 0;

) → &#4 1;

# → &#3 5;

& → &#3 8;


답: A: 저장식

B: 반향식

자산별 취약점 분석하기: 서술형

암호학

암호학의 기본이해

암호학의 기본이해: 단답형

  • 대칭 키 암호 시스템에서 암호화에 적용되는 평문의 길이에 따라서 난수열을 생성하여 입력. 평문 비트열을 한 비트 또는 한 문자 단위로 XOR하여 암호화하면 ( A )이고,입력 평문 비트열을 일정한 크기의 블록으로 나누어 암호화하면 ( B )이다.



답: A: 스트림 암호 시스템

B: 블록 암호 시스템

암호학의 기본이해: 서술형

  • IPSEC 전송 모드와 터널 모드의 패킷 구성 차이에 대해 기술하시오. (14점)



채점 및 배점 기준: 전송 모드, 터널 모드 정확히 구분하면 14점, 그 외 0점 처리

해설: IPsec가상 사설 망(VPN) 암호화에 쓰이는 기술 중 하나이다. IPsec(Internet Protocol Security)은 통신 세션의 각 IP패킷을 암호화하고 인증하는 안전한 인터넷 프로토콜(IP) 통신을 위한 프로토콜 스위트이다. 이 보안은 통신 세션의 개별 IP 패킷인증하고 암호화함으로써 처리된다. IPsec은 세션의 시작에서 에이전트들 사이에서 상호 인증을 확립하거나 세션을 맺는 중에 사용될 암호화 키의 협상을 위한 프로토콜을 포함한다. IPsec은 호스트 한쌍 사이(Host와 host), 보안 게이트웨이 사이(네트워크와 네트워크), 보안 게이트웨이와 호스트 사이(네트워크와 호스트)에 데이터 흐름을 보호하기 위해 사용된다. Internet Protocol security (IPsec)은 Internet Protocol 네트워크 사이에 통신을 지키기 위해 암호의 보안 서비스를 사용한다.

답: 전송 모드와 터널 모드 패킷의 가장 큰 차이는 IP Header에 있다. 전송 모드는 원래의 IP 헤더는 그대로 두고, 페이로드(Payload)만 암호화하여 전송하는 반면에, 터널 모드는 원래의 IP와 페이로드(Payload)를 같이 암호화하고 새로운 IP 헤더를 생성하여 전송하게 된다.

즉, 전송 모드의 최종 패킷은 IP Header|IPSec Header|Payload가 되고, 터널 모드 패킷은 New IP Header|IPSec Header|IP Header|Payload가 된다.

또한, 전송모드는 기존 IP를 사용하는 대신 Public 네트워크상의 모든 장비가 최종목적지를 할 수 있지만, 트래픽 분석을 수행하여 목적지를 파악할 수 있다는 단점이 있고, IPSec을 사용하는 클라이언트 또는 서버는 IPSec 에이전트가 설치되어 있어야 한다.

터널 모드는 기존 IP헤더와 페이로드(payload)를 암호화하고 새로운 IP 헤더를 생성하여 전송하기 때문에 트래픽 분석을 하더라도 최종 목적지는 알 수 없고, 터널의 end-point만 알 수 있다. 새로운 IP 헤더를 생성하여 전송하기 때문에 대부분 IPSec이 설치된 라우터끼리 전송 가능하며, 클라이언트 또는 서버에 IPSec 에이전트를 설치하지 않아도 된다. 라우터단에서 IPSec 헤더를 판단 후 제거해 기존 패킷을 그대로 하위 단말에 전달하는 구조이다보니 전송 모드보다 부하도 커지고, 패킷의 크기가 커짐에 따라 단편화 현상으로 인해 네트워크 지연이 발생할 수 있다.

최근 보안 이슈

최근 트렌드 및 보안 이슈

최근 트렌드 및 보안 이슈: 단답형

  • 특정 국가의 원자력 발전소 제어 시스템을 노린 악성코드로, 시스템 마비와 같은 오작동을 일으킨다. 무슨 공격인가?



해설: 스턱스넷(Stuxnet)은 2010년 6월에 발견된 바이러스이다. 마이크로소프트 윈도를 통해 감염되어, 지멘스 산업의 소프트웨어 및 장비를 공격한다. 이 웜이 산업시설을 공격하는 최초의 악성 소프트웨어는 아니지만,[11] 산업시설을 감시하고 파괴하는 악성 소프트웨어로는 최초이다.

이 웜은 마이크로소프트 윈도가 설치된 임의의 컴퓨터에 감염되지만, 지멘스의 SCADA 시스템만을 감염시켜 장비를 제어하고 감시하는 특수한 코드를 내부에 담고 있다.[12][13] 스턱스넷은 장비를 프로그램하는 데 사용되는 PLC를 감염시켜 장비의 동작을 변경한다.[14][15]

스턱스넷의 여러 변종이 이란에 있는 5개 시설에서 발견되었으며,[16] 웜의 공격목표는 이란의 우라늄 농축 시설인 것으로 추정된다.[15][17][18] 2010년 8월 시만텍은, 스턱스넷에 감염된 전 세계의 컴퓨터 중 60%가 이란에 소재한 컴퓨터라고 발표했다.[19] 11월 29일 지멘스는 이 웜이 자사의 고객에게 어떤 피해도 끼치지 않았으나,[20] UN 안보리 결의안 1737호에 의해 사용 금지된 지멘스 제품을 비밀리에 입수하여 사용중인 이란 핵시설만이 피해를 입었다고 발표했다.[21][22] 러시아 컴퓨터 보안 회사인 카스퍼스키 랩은 이 정도로 정교한 공격은 "국가적 규모의 지원" 없이 이루어질 수 없다고 결론지었다.[23] 핀란드 컴퓨터 보안 회사인 F-Secure의 수석연구원 미코 휘푀넨(Mikko Hyppönen) 또한 여기에 동의했다.[24] 이 공격에는 이스라엘[25]미국[26][27] 이 참여한 것으로 추정된다.

답: 스턱스넷(Stuxnet)

최근 트렌드 및 보안 이슈: 서술형



채점 및 배점 기준: 5개 이상 서술하면 14점, 3개면 10점, 그 외 0점 처리

답: 1. 국민의 안전을 위협하는 주요 기반 시설 해킹

현재 세계에 직접 영향을 끼치는 주요 기반 시설에 대한 해킹 위협이 증가함에 따라 방지 대책과 신속한 사고 처리 복구 등 체계적인 사후 대응 체계 필요

2. 국가 간 사이버 갈등 심화

국가 간 사이버 갈등이 국내를 포함하여 다양한 국가에서 지속 발생되고 있으며, 갈등 해결을 위해 국가적인 차원의 기구 마련 논의 전개

3. 공공 클라우드 보안성 증대

공공기관에서 안전하게 클라우드를 사용할 수 있는 보안 인증제, 가이드 라인 마련되어 전체 클라우드 산업화에 트리거 역할 할 것으로 예상

4. 생체 인증(FIDO)

신체 일부를 활용한 생체 인증(FIDO) 기술이 간편 결제 뿐만 아니라 비대면 금융 거래를 위한 핀테크 전분야로 확산 및 적용

5. 금융, 의료 등 전산업에적용되는 정보 보호 관리 체계

정보보호 관리 체계는 고도화되는 보안 위협으로부터 기업의 정보보호 수준을 높이기 위한 제도

금융, 의료 부분의 보안 사고가 증가하면서 정보 보호 관리체계 도입이 증가

6. 랜섬웨어

사용자 문서나 이미지 등을 암호화시키고 돈을 요구하는 악성 코드로 랜섬웨어가 스마트폰 이용자 확대로 PC에서 모바일로 이동 확대

7. 개인 정보 국외 이전 본격화

국가 정보 주권 확립, 국민의 개인 정보 보호를 위해 자국민의 개인 정보 국외 이전을 규제하기 시작

8. 커넥티드 카 해킹 우려

실제 운영 중인 도로 위의 자동차해킹이 우려되며 완성차 업체를 중심으로 보안성 강화 움직임 보임

9. 프라이버시를 위협하는 드론

드론 사용 및 활용이 증가함에 따라 프라이버시 침해 논란 가중, 주요 시설에 대한 드론 위협 대책 마련 시점

10. 정보보호산업진흥법 시행

법 시행에 따라 정보 보호에 대한 자발적 투자 확대 기대

참조