[정보보안기사 PART 04] 시스템 보안 - 윈도우 서버 보안


Section 16 윈도우 서버 보안

 

1. 윈도우 개요

1) 윈도우 시스템의 구조

 링 기반으로 5개의 링으로 구분

 하드웨어, HAL, 마이크로 커널, 각종 관리자, 응용프로그램

 

2) 윈도우의 특징

 GUI 환경, Plug & Play, 단축 아이콘 바로가기, 멀티태스킹, OLE(Object Linking Embedding), 네트워크 기능 향상, 다중 모니터 지원, 정보의 전송 통합

 

3) 윈도우 파일 시스템

 FAT16

 FAT32

 NTFS

 

4) 윈도우 부팅 순서

윈도우 XP, 윈도우 서버 2000/2003의 부팅 순서

 1단계 : POST(Power On Self Test) 실행

 2단계 : 기본 부팅 관련 설정사항 로드

 3단계 : MBR(Master Boot Record, 마스터 부트 레코드) 로드

 4단계 : NTLDR(NT Loader) 실행

 5단계 : NTDETECT.com 실행

 6단계 : ntoskrnl.exe(NT OS Kernel) 실행

 

윈도우 비스타, 2008, 7의 부팅 순서

 1~3단계 : 동일

 4단계 : 윈도우 부트 서브 시스템(Window Boot Manager) 실행

 5단계 : 윈도우 OS 로더(Winload.exe) 실행

 

 

2. 윈도우 보안

 

(1) 윈도우 설치

1) 윈도우 설치 시 중요사항

 파티션(하나의 물리적인 하드디스크에 논리적으로 분할 영역을 만드는 것) 나누기!

 

(2) 윈도우 계정, 권한, 인증

1) 윈도우의 계정과 권한 체계

기본 사용자와 그룹

계정 이름 설명
Administrator 관리자 권한의 계정으로 사용자가 사용 가능한 계정 중 가장 강력한 권한을 가진다.
SYSTEM 시스템에서 최고 권한을 가진 계정으로 로컬에서 관리자보다 상위 권한을 가진다. 원격 접속이 불가능하며, 사용자가 이 계정을 사용하여 시스템에 로그인할 수 없다.
Guest 매우 제한적인 권한을 가진 계정으로, 기본 설정은 사용 불능이다.

 

SID(Security Identifier)

 윈도우의 각 사용자나 그룹에 부여되는 고유한 식별번호

The SID for account NEWGENERATION\administrator is S-1-5-21-1801674531-839522115-1708537768-500

S : SID 의미

1 : revision number(SID 명세 버전)

5 : Identifier authority value(48비트, 윈도우 보안 권한)

21-1801674531-839522115-1708537768 : 도메인 또는 로컬 컴퓨터 구분다

500 : 관리자, Guest 계정은 501번, 일반 사용자는 1000번 이상의 숫자

 

 

2) 윈도우 인증과 패스워드

 윈도우 인증과정에서 가장 중요한 구성 요소 LSA, SAM, SRM

 

LSA(Local Security Authority) : 모든 계정의 로그인에 대한 검증, 시스템 자원 및 파일 접근권한 검사

SAM(Security Account Manager) : 사용자/그룹 계정 정보에 대한 DB 관리, 인증 여부 판단

SRM(Security Reference Monitor) : 사용자에게 SID를 부여, 접근 허용 결정

 

 

(3) 공유자료 관리

1) 네트워크 드라이브의 이해

 대상 컴퓨터의 드라이브를 내 컴퓨터에서 네트워크 드라이브로 설정하여 내 PC의 드라이브처럼 사용

 

2) 파일과 폴더의 보안권한 설정

 사용자나 그룹이 파일이나 폴더에 접근 여부 알려줌

 폴더 - 6가지 기본 권한

 파일 - 5가지 기본 권한

권한 : 모든 권한, 수정, 읽기 및 실행, 폴더 내용 보기(폴더만 해당), 읽기, 쓰기

 

 

(4) 암호 기능 사용

1) 폴더 및 파일 암호화(EFS)

 개별 파일 또는 특정 폴더 안에 들어 있는 모든 파일 암호화 할 수 있는 기능 제공

 

2) 볼륨 암호화(BitLocker)

 논리적인 드라이브 볼륨 단위의 데이터 암호화 가능

 

 

(5) 레지스트리 활용

1) 레지스트리(Registry) 개요

 윈도우 시스템이 운영되는데 필요한 정보를 담고 있다.

ex) 환경설정, 임시 저장값까지 시스템의 거의 모든 정보 담고 있음.

 

2) 레지스트리 편집기 실행

레지스트리 편집기

 레지스트리 설정을 열람, 수정, 추가, 삭제, 검색, 저장 가능


Master Key : 하이브 파일에서 직접 읽어 들여 구성되는 키

 ex) HKLM, HKU

Derived Key : Master Key로부터 값을 가져와서 재구성하는 키

 ex) HKCU, HKCC, HKCR

 

레지스트리 루트키

 1. HKCR(HKEY_CLASSES_ROOT) 

   시스템에 등록된 파일 확장자와 그것을 열 때 사용할 애플리케이션에 대한 매핑 정보, com 오브젝트 등록 정보 저장

 

 2. HKCU(HKEY_CURRENT_USER)

   현재 시스템에 로그인하고 있는 사용자, 관련된 시스템 정보 저장

 

 3. HKLM(HKEY_LOCAL_MACHINE)

   pc에 설치된 하드웨어와 하드웨어를 구동시키는 데 필요한 드라이버나 설정사항에 관한 정보

 

 4. HKU(HKEY_USERS)

   시스템에 있는 모든 계정과 그룹에 관한 정보를 저장

 

 5. HKCC(HKEY_CURRENT_CONFIG)

    시스템에 시작할 때 사용하는 하드웨어 프로파일 정보 저장, 레지스트리 부분에서 가장 단순한 곳

 

3) 레지스트리 보호

 

레지스트리 접근 제한

현재 레지스트리 상태 저장

레지스트리 키 디스크에 복사

 

4) 레지스트리 공격

부팅 시 악성코드 실행

 시스템 재부팅 시 악성 프로그램을 구동시키기 위해 레지스트리 변조

 이때, 사용되는 레지스트리 HKLM, HKCU 이다

 

디렉터리 위치

개별사용자 지속용 : HKCU\Software\Microsoft\Windows\CurrentVersion\Run

개별사용자 일회용 : HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce

전체사용자 지속용 : HKLM\Software\Microsoft\Windows\CurrentVersion\Run

전체사용자 일회용 : HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce

 

특정 확장자 실행 시 악성코드 실행

 HKCR의 값을 공격자가 임의로 조작하여 특정 확장자 실행 시에 원하는 악성 프로그램을 실행

 

(6) 윈도우 방화벽(PC 방화벽) 설정

개요

 웜, 공격자로부터 PC 보호

 

설정 방법

 인바운드/ 아웃바인드 규칙 통해 설정

 

 

 

3. 윈도우 서버 보안 설정

 

(1) 계정 관리

1) Administrator 계정 이름 바꾸기

2) Guest 계정 상태

3) 계정 잠금 임계값과 잠금기간 설정

4) 관리자 그룹에 최소한의 사용자 포함

5) 암호와 패스워드 정책 설정

 

(2) 서비스 관리

1) 공유 권한 및 사용자 그룹 설정

2) 하드디스크 기본 공유 제거

불필요한 공유 제거

Null Session 접근 차단 설정

 

3) 불필요한 서비스 제거

4) Anonymous FTP 금지

 

(3) 패치 관리

1) 감사 정책에 따른 시스템 로깅 설정

 

(4) 보안 관리

1) SAM 파일 접근 통제 설정

2) 화면보호기 설정

 

 

4. Window 네트워크 서비스

 

1) 디렉터리 데이터베이스(Directory Database)

네트워크 디렉터리 서비스

 사용자들에게 리소스를 투명하게 제공

 사용자가 리소스의 정확한 위치와 접근하기 필요한 단계들을 알필요가 없다는 것을 의미

ex) LDAP, NDS, Microsoft Active Directory

 

Active Directory

 네트워크상의 개체에 대한 정보를 저장하며 관리자와 사용자가 이 정보를 쉽게 찾아 사용할 수 있도록 한다.

 체계적인 데이터 저장소를 사용하여 디렉터리 정보를 논리적인 계층 구조로 조직

 

 

 

*출처:[알기사] 2019 정보보안기사&산업기사

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

[정보보안기사 PART 04] 시스템 보안 - 클라이언트 보안


Section 15 클라이언트 보안

 

1. 악성 소프트웨어(악성 코드)

 

(1) 개요

1) 악성 소프트웨어의 기본 개념

 개발자가 의도적으로 악의적인 기능을 컴퓨터 프로그램에 포함시키거나 프로그램 자체의 오류를 발생시킨다.

 기밀성, 가용성, 무결성 등의 보안속성을 침해할 경우 유해한 프로그램으로 간주된다.

구분 컴퓨터 바이러스 트로이 목마
자기 복제 있음 없음 매우 강함
형태 파일이나 부트섹터 등 감염 대상 필요 유틸리티로 위장하거나 유틸리티 안에 코드 형태로 삽입 독자적으로 존재
전파 경로 사용자가 감염된 파일을 옮김 사용자가 내려 받음 네트워크를 통해 스스로 전파
주요 증상 해당 컴퓨터의 시스템 및 파일 손상 PC 성능 저하, 좀비 PC 네트워크 성능 저하

 

2) 악성 소프트웨어의 분류

기생형과 독립형

호스트 프로그램을 필요로 하는 기생형 호스트 프로그램이 필요 없는 독립형

ex) 바이러스, 논리폭탄, 백도어

ex) 웜, 좀비 프로그램

 

자기복제 여부

바이러스성 악성코드 비-바이러스성 악성코드
ex) 웜, 바이러스 ex) 트로이목마, 백도어

 

 

(2) 바이러스(Virus)

1) 기본 개념

 자기 자신 또는 자신의 변형을 보가하여 컴퓨터 작동에 피해를 주는 것

 

2) 세대별 분류

  1. 제 1세대 원시형 바이러스 : 구조 단순 분석 쉬움
  2. 제 2세대 암호화 바이러스 : 일부 또는 대부분 암호화
  3. 제 3세대 은폐형 바이러스 : 바이러스가 없는 것처럼 백신 프로그램이나 사용자 속임
  4. 제 4세대 갑옷형 바이러스 : 여러 단계의 암호화와 다양한 기법을 동원하여 분석 어렵게 만듬
  5. 제 5세대 매크로 바이러스 : 매크로 기능 가지고 있음

 

3) 매크로 바이러스

 - 플랫폼과 무관하게 사용된다

 - 대부분의 바이러스는 문서를 감염시키고 코드의 실행부분은 감염시키지 않는다.

 - 매크로 바이러스는 쉽게 퍼지나. 가장 보편적인 방법은 전자메일

 - 실행 파일을 다룰 때보다 주의를 덜 하기 때문에 피해가 더 크다

ex) Adobe사의 PDF 문서 또는 MS 워드나 엑셀에 숨어 있다.

 

4) 바이러스 방지책

 바이러스 위협에 대한 해결책은 예방!

 탐지(Detection) : 감염되면 바이러스 있는 지 판단 후 위치 파악!

 식별(Identification) : 탐지되면 감염시킨 특정 바이러스를 식별

 제거(Removal) : 바이러스를 모든 감염된 시스템에서 제거하여 퍼지지 않게 한다.

 

안티 바이러스 필터링 방법(Antivirus Filtering Method)

 virus signature scanning 방법

- 특정 바이러스만이 가진 유일한 형태의 signature 찾아낸다. 

 

 behavioral virus scanning 방법

- 바이러스가 수행 중에 어떤 행동을 보이는지를 추적하는 방법

 

 

(3) 웜(Worm)

1) 개요

 자기복사 기능만 가진 프로그램이지만 막대한 시스템 과부하를 일으킨다.

 다른 시스템에 직접적인 영향을 미치지 않는 점에서 트로이 목마와 구분되며,

 다른 프로그램에 기생하지 않는다는 점에서 컴퓨터 바이러스와 구분된다.

 

2) 웜의 실행

 버퍼 오버플로우, 포맷 스트링, SQL 삽입, PHP 삽입 등 공격 가능한 시스템의 취약점 이용

ex) 시스템 접근 권한이 확보되면 웜을 백도어에 설치

     DDoS 공격에 사용 될 수 있는 봇 또는 좀비 프로그램 다운로드하여 실행

 

3) 웜 대응책

네트워크 기반 웜 방어

 진입 모니터(Ingress monitors)

경계 라우터나 외부 침입차단시스템이나 독립된 수동 모니터의 진입 필터링 소프트웨어의 일부

 

 진출 모니터(Egress monitors)

나가는 트래픽에서 스캐닝의 흔적이나 기타 의심스런 행동을 모니터링해서 웹 공격의 출처를 잡는다.

 

(4) 트로이목마(Trojan horse)

 자신의 실체를 드러내지 않으면서 마치 다른 프로그램의 한 유형인 것처럼 가장하여 활동하는 프로그램

 자기 복제 X, 다른 파일 감염 또는 변경 X

 트로이목마가 포함된 프로그램 실행되는 순간, 시스템은 공격자에게 시스템을 통제할 수 있는 권한 부여

 

 

 

2. 인터넷 활용 보안

 

(1) 웹브라우저 보안

1) 브라우징 보안

 인터넷 : 다른 세가지 영역에 포함되지 않은 웹사이트를 위한 영역

 로컬 인트라넷 : 사용자의 컴퓨터와 네트워크(인트라넷)상에 있는 웹사이트를 위한 영역

 신뢰할 수 있는 사이트 : 사용자가 안전한 콘텐츠를 갖고 있다고 신뢰하는 페이지를 설정하는 웹사이트 영역

 제한된 사이트 : 어떤 이유에서든 사용자가 신뢰할 수 없거나 보안 페이지로 설정할 수 없는 웹사이트 영역

 

(2) 쿠키(Cookie)

1) 개요

 사이트와 웹 사이트를 연결해주는 정보가 담겨있음.

 

2) 쿠키의 일반적 용도

 사이트 개인화

 장바구니 시스템

 웹 사이트 이용방식 추적

 타깃 마케팅

 

4) 쿠키의 구조

 4개의 속성과 하나의 데이터

Set-Cookie: name=value; expires=[Date]; domain=[Domain]; path=[Path]; [secure]

서버에서 "Set-Cookie 응답헤더" 클라이언트에게 전달

클라이언트는 "Cookie 요청헤더"를 이용해 지속적으로 쿠키를 전달

 

 

 

 

*출처:[알기사] 2019 정보보안기사&산업기사

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

[SuNiNaTaS(써니나타스)] 26번 문제 풀이


오늘은 오랜만에 써니나타스 문제를 풀어보았다.

26번 문제는 아래와 같다

26번 문제

 

제목 비슷한 곳을 보니 "Frequency analysis(빈도분석)"라고 적혀있다.

 

암호학에서 빈도분석이란?

 평문과 암호문에 사용되는 문자 또는 문자열의 출현빈도를 단서로 이용하는 암호해독법을 말한다.

(출처: 위키백과)

 

정확하게 이해한지 모르겠지만, 문자의 출현빈도에 따라서 단어 또는 언어가 바뀌는 것 같았다. 

 

그래서 나는 빈도분석을 자동으로 해주는 사이트를 이용해서 문제를 풀어냈다.

https://quipqiup.com/

 

quipqiup - cryptoquip and cryptogram solver

 

quipqiup.com

 

 

해당 사이트에 들어가서 문제에 있던 글을 옮겨 넣었다.

(문제 사이트)

 

 

"Solve"을 눌러주면 아래와 같이 변환되는 것을 알 수 있다.

(해석된 결과)

 

 

정답(kimyuna)을 집어 넣으니 아래와 같이 문제가 풀렸다!

(정답!)

 

 

 

 

 

 

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

 

[정보보안기사 PART 04] 시스템 보안 - 보안 운영체제


Section 14 보안 운영체제

 

1. 보안 운영체제 개요

 

(1) 기본 개념

 불법적인 수정이나 참조를 방지하는 정책과 기법

 시스템의 자원을 외부의 침입으로부터 보호하는 것

 

 

2. 보안 운영체제의 주요 제공 기능

 

(1) 보호 대상 및 방법

1) 보호대상

메모리, 보조기억장치 상의 파일 또는 데이터의 집합, 메모리상에서 실행 중인 프로그램, 파일들의 디렉터리, 하드웨어 장치, 스택과 같은 자료구조, 명령어, 패스워드와 사용자 인증메커니즘, 보호 메커니즘 자체 등

 

2) 보호방법

물리적 분리

시간적 분리

논리적 분리

암호적 분리

내려갈수록 구현 복잡도 증가!

 

(2) 파일시스템 보호

 파일의 이름 명명(naming)

 패스워드

 암호화

 

 

3. 보안 운영체제와 보안커널

 

(1) 보안 운영체제의 보안 기능

1) 사용자 식별 및 인증

2) 임의적/강제적 접근 통제

3) 객체 재사용(Object Reuse) 보호

4) 완전한 조정

5) 신뢰 경로(Trusted Path)

6) 감사 및 감사 기록 축소

 

(2) 보안커널(Security Kernel)

1) 기본 개념

 TCB 내에 있는 하드웨어, 소프트웨어, 펌웨어로 구성

 참조 모니터 개념을 구현하고 집행

 주체와 객체 사이의 모든 접근과 기능 중재   // 분리 가능, 변조 방지, 우회 불가능

 

2) 신뢰 컴퓨팅 기반(TCB, Trusted Computing Base)

 하나의 컴퓨터 시스템(H/W, F/W, S/W) 내의 모든 보호 메커니즘의 총체

 시스템과의 조화를 통하여 보안 정책을 적용할 책임 갖는다

 

3) 보안커널 설계 시 고려사항

참조모니터(Reference Monitor)

 주체의 객체에 대한 모든 접근통제를 담당하는 추상머신

 

3가지 규칙

- 반드시 부정조작이 없어야 한다.

- 항상 무시되지 않고 호출되어야 한다

- 모든 동작을 항상 분석과 테스트를 통해 확인할 수 있어야 한다.

 

참조모니터 및 보안커널의 3가지 특징

격리성 : 분리되고 부정조작 방지

검증가능성 : 크기 작아야함

완전성 : 우회 불가능

 

 

 

 

 

*출처:[알기사] 2019 정보보안기사&산업기사

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

[정보보안기사 PART 04] 시스템 보안 - 운영체제 주요 구성기술


Section 13 운영체제 주요 구성기술

 

1. 프로세스 관리

 

(1) 프로세스(Process)

 

1) 프로세스 개념

프로세스는 일을 수행하기 위해 CPU 시간, 메모리, 파일 그리고 입출력 장치를 포함한 여러 가지 자원을 필요로 한다. 즉, 현재 실행 중이거나 곧 실행할 수 있는 PCB를 가진 프로그램이다.

 

프로세스 상태

보류 상태(pending) : 작업이 일시 중지되거나 디스크에 수록된 상태

준비 상태(ready) : CPU가 사용할 수 있는 상태

실행 상태(running) : 프로세스가 CPU를 차지하는 상태

대기 상태(blocked) : 프로세스가 CPU를 차지하고 실행되다가 입출력 처리와 같은 사건이 발생 시, CPU를 양도하고 입출력 처리가 완료될 때까지 대기 큐에서 대기하는 상태

완료 상태(terminated) : 프로세스가 CPU를 할당받아 주어진 시간 내에 완전히 수행을 종료한 상태

 

프로세스 상태 전이

디스패치(Dispatch) : 준비 상태 -> tlfgod tkdxo

할당 시간 초과(Time Run Out) : 실행 상태 -> 준비 상태

대기(Block) : 실행 상태 -> 대기 상태

깨움(Wake Up) : 대기 상태 -> 준비 상태

 

2) 프로세스 제어블록(PCB)

PCB(Process Control Block, 태스크 제어 블록)으로 OS가 프로세스를 관리하는데 필요한 모든 정보를 유지하는 자료구조 테이블

프로세스 디스크립터(Process descriptor)라 하여 프로세스가 생성할 때 만들어진다.

 

PCB 포함 정보

필드 설명
프로세스 상태 새로운(new), 준비완료(ready), 실행(running), 대기(waiting) 또는 정지(halted)
프로그램 카운터 실행 중인 프로세스가 다음에 실행할 명령어의 주소 가리킨다.
CPU 레지스터 CPU내부에서 처리할 명령어나 연산의 중간 값 등을 일시적으로 기억하는 임시 기억장소
CPU 스케줄링 정보 프로세스 우선순위, 스케줄 큐에 대한 포인터와 다른 스케줄 매개변수 등 포함
메모리 관리 정보 기준 레지스터와 한계 레지스터의 값, 페이지 테이블 또는 세그먼트 테이블 정보 포함
회계(accounting) 정보 CPU 사용시간과 경과된 시간, 시간 제한, 계정 번호, 잡 또는 프로세스 번호 등 포함
입출력 상태 정보 프로세스에게 할당된 입출력 장치와 열린 파일의 목록 등을 포함

 

(2) 스레드(Threads)

 단일 스레드 프로세스와 다중 스레드 프로세스

 각각의 스레드는 독립적인 제어 흐름을 가지고 자신만의 스택과 레지스터를 갖는 것이 특징

 

(3) CPU 스케줄링(CPU Scheduling)

1) 개요

CPU 자원을 언제, 어느 프로세스에게 배당할 것인지를 결정하는 작업

 

2) 스케줄링 기준

 CPU 이용률(utiliztion)

 처리량(throughput)

 총 처리시간(turnaround time)

 대기시간(waiting time)

 응답 시간(response time)

 

3) 프로세스 스케줄링 분류

선점 스케줄링 : 한 프로세스가 CPU를 차지하고 있을 때, 자신이 CPU를 차지할 수 있는 기법

  ex) RR(Round-Robin), SRT(Shortest-Remaining-Time), MLQ(MultiLevel Queue), MFQ(Multilevel Feedback Queue)

비선점 스케줄링 : 한 프로세스가 CPU를 차지하고 있을 때, 그 CPU를 뺏을 수 없는 기법

  ex) FIFO(First-In-First-Out), SJF(Shortest-Job-First), HRN(Highest Response-ratio Next)

 

4) 프로세스 스케줄링 알고리즘

FCFS(First Come First Service) 스케줄링

SJF(Shortest Job First 또는 Shortest Job Next) 스케줄링

HRN(Highest Response ratio Next) 스케줄링

RR(Round Robin) 스케줄링

SRT 스케줄링

다단계 큐(MLQ, Multi Level Queue) 스케줄링

다단계 피드백 큐(MFQ, Multilevel Feedback Queue) 스케줄링

 

(4) 교착상태(Deadlock)

1) 기본 개념

 다중 프로그래밍 시스템에서 아무리 기다려도 결코 일어나지 않을 사건을 기다리는 프로세스가 하나 또는 그 이상 있는 상태이다.

 

2) 교착상태의 4가지 필요조건

 상호 배제(Mutual Exclusion)

 점유와 대기(Hold & Wait)

 비선점(Non-preemption)

 환형 대기(Circular Wait)

 

 

 

2. 메모리 관리

 

(1) 메모리 관리 전략

1) 스와핑

 프로세스가 실행되기 위해서 메모리에 있어야 하지만 프로세스는 실행 중에 임시로 예비 저장장치(backup store)로 내보내어졌다가 실행을 계속하기 위해 다시 메모리로 되돌아온다.

 

2) 메모리 할당

고정 분할

가변 분할

 

4) 메모리 관리 정책

반입(Fetch) 정책

 CPU로 실행하거나 참조하기 위해 주기억장치에 적재할 다음 프로그램이나 자료를 언제 가져올 것인가

ex) 요구 반입 정책(demand fetch strategic), 예상 반입 정책(anticipatory fetch strategic)

 

배치(Placement) 정책

 새로 반입된 자료나 프로그램을 주기억장치의 어디에 위치할 것인가

ex) 최초 적합, 최적 적합, 최악 적합

 

교체(Replacement) 정책

 새로 들어온 프로그램이 들어갈 장소를 마련하기 위해 어떤 프로그램을 주기억장치에서 제거할 것인가

ex) 페이지 부재(page fault)

 

5) 페이지 교체 기법

선입 선출(FIFO, First In First Out)

최적 교체(Optimal Replacement)

LRU(Least Recently Used) : 가장 오랫동안 사용되지 않을 페이지를 제거하는 방법

 

(2) 가상 기억장치

1) 세그먼테이션(Segmentation)

 프로그래머가 생각하는 모양을 그대로 지원하는 메모리 관리 기법

 프로그래머가 생각하는 논리 구조 공간을 세그먼트의 집합으로 이룬다.

 각 세그먼트는 이름과 길이를 가진다.

 내부단편화 X, 외부단편화 O

 

2) 페이징(Paging)

 블록 사이즈가 고정된 방식으로 사용자가 작성한 프로그램은 기계적으로 페이지 단위로 분해

 내부단편화 O, 외부단편화 X

 

3) 페이징/세그먼테이션 혼용

 프로그램을 논리적인 세그먼트 단위로 분할하고 분할된 각 세그먼트를 다시 각각 페이지 단위로 분할

 

6) 연관 사상 방법(associative mapping)

7) 직접/연관 사상 혼용 방법

8) 직접 사상 방법

 

 

 

 

 

 

*출처:[알기사] 2019 정보보안기사&산업기사

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

[정보보안기사 PART 04] 시스템 보안 - 운영체제 개요


Section 12 운영체제 개요

 

1. 운영체제(OS, Operationg System) 개요

 

(1) 운영체제의 정의

 사용자 대신 컴퓨터 시스템의 각종 자원을 효율적으로 관리, 운영

 하드웨어와 사용자 간의 인터페이스 담당하는 시스템 프로그램

 CPU(중앙처리장치), 기억장치, 입출력장치, 공유된 코드 및 데이터 구조 등 관리

 

(2) 운영체제의 목적

 - 처리량(Throughput)의 향상

 - 반환시간(Turn-around time)의 최소화

 - 응답 시간(Response time)의 최소화

 - 사용가능도(Availability) 향상

 - 신뢰도(Reliability) 향상

 

(3) 운영체제의 이중연산 모드

 운영체제 코드의 실행, 사용자 정의 코드의 실행으로 구분

 

 사용자 모드(일반 모드)

- 특권이 부여되지 않은 상태

- 시스템 자원에 제한적 접근

 

 커널 모드(관리자 모드, 슈퍼바이저 모드, 시스템 모드, 특권모드)

- 오류를 발생시킬 수 있는 명령은 특권 명령

- 모든 명령어 사용 가능

 

 

2. 운영체제 구조(Operating System Structures)

 

(1) 간단한 구조(Simple Structure, Monolithic Architecture)

 시스템 호출 통해 파일 시스템, CPU 스케줄링, 메모리 관리 그리고 다른 운영체제 기능 제공

 구현 및 유지보수 어려움

 시스템 호출 인터페이스나 커널 안에서 통신하는 경우 오버헤드 거의 없음

 필요한 모든 기능이 커널 레벨에서 동작

 

(2) 계층적 접근(Layered Approach)

 5계층 구조

계층 1 : 프로세서 관리

계층 2 : 기억장치 관리

계층 3 : 프로세스 관리

계층 4 : 주변장치 관리

계층 5 : 파일과 데이터 관리

 

(3) 마이크로 커널(Microkernels)

 중요치 않은 구성 요소를 커널로부터 제거

 시스템 및 사용자 수준 프로그램을 구현해 OS 구성하는 방법

 기본이 되는 서비스만 핵심 커널에 포함

 

(4) 모듈(Modules)

 OS를 설계하는 데 이용되는 최근 기술 중 최선책 = 적재가능 커널 모듈

 커널이 핵심 서비스 제공, 다른 서비스는 커널 실행 동안 동적으로 구현!

 

 

 

 

*출처:[알기사] 2019 정보보안기사&산업기사

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

[2020 정보처리기사 - 필기 / 1과목 / 소프트웨어 설계] - 요구사항 확인


1장 요구사항 확인

 

001 소프트웨어 생명 주기

 

1. 소프트웨어 생명 주기(Software Life Cycle)

2. 폭포수 모형(Waterfall Model)

3. 프로토타입 모형(Prototype Model, 원형 모형)

4. 나선형 모형(Spiral Model, 점진적 모형)

5. 애자일 모형(Agile Model)

 

002 스크럼(Scrum) 기법

 

1. 스크럼 개요

2. 스크럼 개발 프로세스

 

003 XP(eXtreme Programming) 기법

 

1. XP(eXtreme Programming)

2. XP 개발 프로세스

 

004 현행 시스템 파악

 

1. 현행 시스템 파악

2. 시스템 구성 파악

3. 시스템 기능 파악

4. 시스템 인터페이스 파악

5. 아키텍처 구성 파악

6. 소프트웨어 구성 파악

7. 하드웨어 구성 파악

8. 네트워크 구성 파악

 

005 개발 기술 환경 파악

 

1. 개발 기술 환경의 정의

2. 운영체제(OS, Operating System)

3. 운영체제 관련 요구사항 식별 시 고려사항

4. 데이터베이스 관리 시스템(DBMS)

5. DBMS 관련 요구사항 식별 시 고려사항

6. 웹 애플리케이션 서버(WAS, Web Application Server)

7. 웹 애플리케이션 서버(WAS) 관련 요구사항 식별 시 고려사항

8. 오픈 소스 사용에 따른 고려사항

 

006 요구사항 정의

 

1. 요구사항의 개념 및 특징

2. 요구사항의 유형

3. 요구사항 개발 프로세스

4. 요구사항 도출(Requirement Elicitation, 요구사항 수집)

5. 요구사항 분석(Requirement Analysis)

6. 요구사항 명세(Requirement Specification)

7. 요구사항 확인(Requirement Validation, 요구사항 검증)

 

007 요구사항 분석 기법

 

1. 요구사항 분석 기법

2. 요구사항 분류(Requirement Classification)

3. 개념 모델링(Conceptual Modeling)

4. 요구사항 할당(Requirement Alloction)

5. 요구사항 협상(Requirement Negotiation)

6. 정형 분석(Formal Analysis)

 

008 요구사항 확인 기법

 

1. 요구사항 확인 기법

2. 요구사항 검토(Requirement Reviews)

3. 프로토타이핑(Prototyping)

4. 모델 검증(Model Verification)

5. 인수 테스트(Acceptance Tests)

 

009 UMl(Unified Modeling Language)

 

1. UML(Unified Modeling Language)의 개요

2. 사물(Thing)

3. 관계(Relationships)

4. 다이어그램(Diagram)

 

 

 

 

*출처: [2020 시나공] 정보처리기사 필기

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

 

[정보보안기사 PART 03] 접근통제 - 접근통제 보안위협 및 대응책


Section 11 접근통제 보안위협 및 대응책

 

 

1. 접근통제 보안위협 및 대응책

 

 

(1) 패스워드 크래커(Password Craker)

 

1) 유형

1. 사전 공격(Dictionary Attack)

 공격 대상의 개인정보 등을 충분히 알고 있어, 패스워드 사전 파일을 이용하여 접속 계정을 알아내는 방법

 패스워드의 해시된 값 혹은 패스워드 파일 포착하여 일치할 때까지 비교 작업 수행

 

2. 무차별 공격(Brute-force Attack)

 성공할 때까지 가능한 모든 조합의 경우의 수를 시도해 원하는 공격을 시도하는 방법

 크랙 등 소프트웨어를 이용하여 로그인 이름(Login Name)에 대한 패스워드를 추측하는 방법이 있다.

 ex) 워다이어링(wardialing): 수천 개의 전화번호에 자동으로 전화를 걸어 모뎀에 장착된 번호를 찾는 기술 

 

3. 레인보우 테이블을 이용한 공격

 하나의 패스워드에서 시작해 특정한 변이 함수로 변이된 형태의 여러 패스워드를 생성

 변이된 각 패스워드의 해시를 고리처럼 연결하여 일정 수의 패스워드와 해시로 이루어진 체인(Chain)을 무수히 만들어 놓은 테이블

 

4. 패스워드 하이브리드 공격

 사전공격 + 무차별 대입 공격

 

 

 

(2) 사회공학(Social Engineering)

 

1) 개요

 신뢰할 수 있는 개인이나 조직을 사칭하여 공격대상의 민감한 정보를 빼내는 작업

 인간기반 사회공학 공격과 정보통신기술을 이용한 ICT기반 사회 공학 공격으로 나눌 수 있다.

 

2) 인간기반 사회공학 공격

1. 기본 개념

 공격 대상자에게 전화를 걸어서 책임자 또는 담당자로 위장해 각종 개인 정보를 뺴내는 유형

 

2. 종류

 - 어깨 넘어 훔처보기(Shoulder Surfing), 쓰레기통 뒤지기(Dumpster Diving)

 - 협박 메일(Blackmail)

 - 따라 들어가기(Piggybacking, Tailgating)

 - 내부자 결탁으로 인한 정보유출, 내부자의 부주의로 인한 외부에서의 정보습득

 

3. 대응책

 - 전화 통화시 음성이 이상하거나 내용이 이상한 경우 주의

 - 중요한 정보 제공 시 신원증명 항상 요청

 - 중요 서류 폐기시 세절기 이용

 - 임직원 보안인식 교육 주기적 실시

 

3) ICT 기반 사회공학 공격

1. 피싱(Phishing)

 개인정보(Private data) + 낚시(Fishing)의 합성어

 

2. 파밍

 해당 사이트가 공식적으로 운영하고 있는 도메인 자체를 중간에서 탈취하는 수법

 

3. 스미싱

 SMS + Phishing 공격

 

4. 대응책

 - 유인 메시지의 URL을 확인 없이 접속하지 않도록 보안 의식을 고취하는 훈련을 실시한다.

 - 악성 SW 탐지와 제거, 접속한 사이트와 DNS 서버에 대한 진위 인증 등의 기술적인 대응 요구

 

 

(3) 은닉채널(Covert Channel)

1) 개요

 엔티티가 허가되지 않은 방식으로 정보를 받는 방법

 보안 메커니즘에 의해 통제되지 앟는 정보 흐름

 

2) 보안 대책

 은닉 채널의 위험은 대역폭에 따라 변경된다. 즉, 한 번에 전달되는 정보량을 줄이기 위해서 대역폭을 제한

 로그분석, HIDS 탐지, 통신대역폭에 대한 엄격한 제한, 시스템 자원 분석

 

(4) 방사(Emanation)

1) 개요

 컴퓨터와 장치로부터 방출되는 전기적 신호를 가로채는 방법

 

2) 대응책

 - 템페스트(TEMPEST)

 차폐 물질을 통해 방사되는 신호를 억제하는 기술의 표준과 관련되어 있다.

 

 - 백색 잡음(White noise, 백색 소음)

 일정한 범위의 무작위적인 전기 신호가 의도적으로 방출

 

 - 통제 구역(Control Zone, 컨트롤 존)

 

 

 

 

 

*출처:[알기사] 2019 정보보안기사&산업기사

*해당 블로그는 개인적인 공부와 정보 공유를 위해 만들었습니다.

 

+ Recent posts