반응형

정보보안기사 필기 독학 / 시스템 보안 / 9. RAID, 메모리

 

RAID

RAID는 데이터를 하드디스크에 저장하는데, 속도 또는 안전성에 따라 여러 단계로 나뉘어 짐니다. 

 

RAID-0 : 속도만을 위한 구성으로 여러 디스크에 데이터를 분산해서 저장합니다.

RAID-1 : mirroring 기술을 이용하여 하나의 디스크에 저장된 데이터를 다른 디스크에 동일하게 저장합니다. 

RAID-2 : 스트라이핑 기술을 이용하여 구성하고, 오류 정정을 위한 Hamming code ECC 정보를 사용합니다. 

RAID-3 : 스트라이핑 기술을 이용하여 구성하고, 별도의 디스크에 패리티 정보를 저장합니다. 

RAID-4 : 블록 형태의 스트라이핑 기술을 이용하여 구성하고, 워드 단위로 패리티 정보를 관리합니다.

RAID-5 : 데이터를 여러 개의 디스크에 분산 저장하도록 하며, 패리티 정보 또한 여러 디스크에 분산 저장합니다. 

 

힙 (Heap)

프로그램이 실행되면서 동적 할당하여 사용되는 메모리 영역이다. 개발자가 malloc과 같은 메모리 할당 함수를 이용하면 힙의 영역을 사용하게 됩니다 

 

스택 (Stack)

함수 호출 시 생성되는 지역 변수와 매개 변수가 저장되는 영역이며, 함수 호출이 완료되면 사라짐니다.

 

페이징(Paging)

가상기억장치에 보관되어 있는 프로그램과 주기억장치의 영역을 동일한 크기로 나눈 후 나눠진 프로그램을 동일하게 나눠진 주기억장치의 영역에 적재시켜 실행하는 기법입니다. 외부단편화는 발생하지 않지만 내부단편화는 발생합니다. 

 

세그먼테이션(Segmentation)

가상기억장치에 보관되어 있는 프로그램을 다양한 크기의 놀리적인 단위로 나눈 후 주기억장치에 적재시켜 실행시키는 기법입니다. 내부단편화는 발생하지 않지만 외부단편화는 발생합니다.

 

관련 문제

10회 7회 다음 지문에서 설명하는 RAID 레벨은 무엇인가? 2
[보기]
(가) mirroring 기술을 이용하여 하나의 디스크에 저장된 데이터를 다른 디스크에 동일하게 저장하도록 함
(나) 데이터를 여러 개의 디스크에 분산 저장하도록 하며, 패리티 정보 또한 여러 디스크에 분산 저장하도록 함
① (가)RAID-0 (나)RAID-5
② (가)RAID-1 (나)RAID-5
③ (가)RAID-1 (나)RAID-4
④ (가)RAID-2 (나)RAID-4

 


13회 9회 디스크 공간 할당의 논리적 단위는?3
① Volume
② Page
③ Cluster
④ Stream

14회 다음 저장장치 중 휘발성이 가장 높은 저장장치는? 4
①보조기억장치 파일
②임시 인터넷 파일
③ARP Cache, rouring table
④레지스터, 캐시

9회 휘발성 증거들의 수집 순서를 우선순위가 높은 것부터 올바르게 배열한 것은?1
① 레지스터와 캐시, 시스템 메모리의 내용, 임시파일시스템, 디스크의 데이터
② 시스템 메모리의 내용, 레지스터와 캐시, 임시파일시스템, 디스크의 데이터
③ 레지스터와 캐시, 임시파일시스템, 시스템 메모리의 내용, 디스크의 데이터
④ 레지스터와 캐시, 디스크의 데이터, 시스템 메모리의 내용, 임시파일시스템

7회 증거수집 대상 중 휘발성 데이터와 가장 거리가 먼 것은? 2
① 시간정보와 로그온 사용자 정보
② 이벤트 로그
③ 클립보드 데이터
④ 프로세스 정보


7회 재귀 함수의 종료 조건을 잘못 프로그래밍하여 재귀함수의 호출이 무한히 반복될 경우, 메모리의 어떤 영역에서 문제가 발생하는가? 4
① Text
② Data
③ Heap
④ Stack


6회 다음의 메모리 관리 기법 중 블록 사이즈 고정된 방식과 가변된 방식은 무엇인가? 1
① 페이징,세그먼테이션
② 힙, 쓰레드
③ 논리 주소 공간, 물리 메모리
④ 할당 영역,자유 영역

*11회 ㉠ 에 들어갈 용어로 올바른 것은? 2
[보기]
( ㉠ )은(는) 프로그램이 실행되면서 동적 할당하여 사용되는 메모리 영역이다. 개발자가 malloc과 같은 메모리 할당 함수 를 이용해 프로그램을 개발하였다면, (㉠ ) 영역을 오버플로 우 시켜 특정 코드를 실행하도록 하는 공격이 가능하다.
① 스택(Stack)
② 힙(Heap)
③ 버퍼(Buffer)
④ 스풀(Spool)

반응형
반응형

정보보안기사 필기 독학 / 시스템 보안 / 7. 로그 명령어&파일

 

로그 파일 / 명령어

로그 파일 설명 형식 로그 명령어
secure 사용자 원격접속 정보 text file grep
pacct 사용자별 시간대별 명령어기록, binary file 형식 binary file lastcomm, acctcom
utmp 현재 로그인한 상태 정보를 담고 있는 로그 파일 binary file w, who, finger
wtmp 사용자들의 로그인아웃 정보, 시스템 관련 정보 기록 binary file last
btmp 실패한 로그인 정보를 담고 있는 로그 파일 binary file lastb
xferlog ftp 로그 파일    

 

로그 분석에 사용되는 명령어

grep : 특정 단어만 뽑아주는 명령어

awk : 텍스트 형태로 되어있는 입력 데이터를 행과 단어 별로 처리해 출력

sort : 정렬해서 다른파일로 저장

wc : 텍스트 파일의 행, 수, 단어, 문자 수를 출력해주는 명령어

head : 파일의 내용을 앞에서부터 출력

tail : 파일의 내용을 뒤에서부터 출력

 

관련 문제

14회 리눅스 환경에서 의심으로운 접근기록이 확인되어 로그인 실패 기록을 살펴보려고 한다. 어떤 로그 파일을 참조하는 것이 가장 적절한가? 3
①pacct
②wtmp
③btmp
④utmp

14회 리눅스 시스템에서 FTP에 대한 불법적인 접속을 감시하기 위해 로그를 검토하고자 한다. 어떤 로그를 보는 것이 가장 적절한지 고르시오. 4
①sulog
②wtmp
③utmp
④xferlog

13회 리눅스/유닉스 시스템에서 로그를 확인하는 명령어나 로그파일 과 가장 거리가 먼 것은?4
① wtmp
② history
③ pacct
④ find

13회 로그분석에 사용되며 문자열을 처리하는 Unix 명령어와 가장 거 리가 먼 것은?4
① awk
② wc
③ grep
④ nohup

13회 리눅스에서 관리하는 주요 로그파일에 대한 설명으로 옳지 않은 것은?4
① /var/log/cron : 시스템의 정기적인 작업에 대한 로그
② /var/log/messages : 커널에서 보내주는 실시간 메시지
③ /var/log/secure : 시스템의 접속에 관한 로그로 인제/누가/어디의 정보를 포함
④ /var/log/xferlog : 메일 송수신에 관한 로그

11회 분석 시 사용될 수 있는 명령어에 대하여 잘못 나열한 것은?3
① secure - 사용자 원격접속 정보 - text file - grep
② utmp - 현재 로그인 사용자 정보 - binary file - who
③ pacct - 사용자별 명령 실행 정보 - text file - history
④ wtmp - 최근 로그인 및 접속 호스트 정보 - binary file- last

10회 사용자 로그인과 로그아웃 정보를 누적하여 저장하는 파일은? 2
① utmp
② wtmp
③ lastlog
④ xferlog

10회 로그에 관한 설명으로 옳지 않은 것은? 4 
① wtmp : 사용자들이 로그인, 로그아웃한 정보를 가지고 있다.
② utmp : 시스템에 현재 로그인한 사용자들에 대한 상태정보를 수집한다.
③ pacct : 사용자가 로그인한 후부터 로그아웃하기 까지의 입력한 명령과 시간, 작동된 tty등에 대한 정보를 수집한다.
④ btmp : syslog 데몬에서 일괄적으로 생성된 로그 정보를 수집한다.

8회 바르지 않은 것은?
① wtmp: 사용자들이 로그인, 로그아웃한 정보를 가지고 있다.
② pacct: 사용자가 로그인한 후부터 로그아웃할 때까지의 입력한 명령과 시간, 작동된 tty 등에 대한 정보를 가지고 있다.
③ utmp: 시스템에 현재 로그인한 사용자들에 대한 상태 정보를 가지고 있다.
④ btmp: 사용자별로 가장 마지막에 로그인한 시간과 접속 IP, tty 등에 대한 정보를 가지고 있다.

6회 다음 중 ‘lastb’라는 명령을 통하여 로그를 살펴볼 수 있는 로그 파일명은?2
① utmp ② btmp
③ dmGsg ④ secure

5회 4. 다음 중 응용 프로그램 로그에 해당되지 않는 것은? 1
① UNIX Syslog
② DB 로그
③ 웹 로그
④ FTP 로그

반응형
반응형

정보보안기사 필기 독학 / 시스템 보안 / 6. 운영체제, 커널, 프로세스

 

운영체제, 커널(Kernel)

하드웨어 특성으로 부터 프로그램들을 격리시키고, 하드웨어와 직접적으로 상호 작동함으로써 프로그램들에게 일관된 서비스를 제공합니다. 프로세스 관리, 주기억장치 관리, 보조기억장치 관리, 입출력시스템 관리, 파일 관리를 담당합니다. 

 

프로세스(Process)

운영체제가 관리하는 최소단위의 작업이며, 메모리에 저장된 실행중인 프로그램입니다. 프로세스 제어 블록(PCB)를 가지고 있으며, CPU에 의해 명령이 수행됩니다. 하나의 포르세스는 생성, 실행, 준비, 대기, 보류, 교착, 종료의 상태 변화를 거치게 됩니다.  그리고 Process ID(PID) 1번은 init 프로세스입니다.

 

프로세스 스케쥴링(Scheduling)

스케쥴링의 기준은 CPU 이용률, 시스템 처리율, 수행 시간, 대기 시간, 응답 시간이며, 우순위가 높은 다른 프로세스가 할당된 CPU를 강제로 빼앗을 수 있는 선점형 방식과 프로세스에게 이미 할당된 CPU를 강제로 빼앗을 수 없고, 사용이 끝날때까지 기다려야 하는 비선점형 방식이 있습니다. 

 

선점형 방식은 빠른 응답시간을 요구하는 대화식 시분할 시스템에 적합하며, 많은 오버헤드를 초래하게 됩니다. 대표적인 알고리즘에는 RR(Round-Robin, 순환 할당스케줄링), SRT(Shortest Remaing Time Scheduling, 최단 잔여 시간), MFQ(MultiLevel Feedback Queue Scheduling, 다단계 큐) 알고리즘이 있습니다. 

 

비선점형 방식은 모든 프로세스들에 대한 요구를 공정히 처리하기 때문에 응답시간의 예측이 용이하고, 짧은 작업이 긴 작업을 기다리는 경우가 발생하게 됩니다. 대표적인 알고리즘에는 FIFO(First In First Out), SJF(Shortest-Job-First, 최단 작업 우선 처리), HRN(Highest Response-ratio Next)스케줄링등이 있습니다.

 

스풀링(Spooling), 버퍼링(Buffering)

스풀링은 저속의 입출력장치와 고속의 CPU 간의 속도차이를 해소하기 위해 나옹 방법으로 다스크를 이용하고, 버퍼링은 입출력장치와 고속의 CPU 간의 속도차이를 해소하기 위해 나온 방법으로 주기억장치를 이용합니다.

 

 

관련 문제

10회 운영체제의 주요기능에 대한 설명으로 옳지 않은 것은? 2
① 사용자와 하드웨어 간의 인터페이스를 정의한다.
② 고급 언어로 작성된 프로그램을 이진(0 또는 1) 기계어로 번역한다.
③ 오루 검사 및 복구 기능을 수행한다.
④ 사용자 간의 자원을 스케줄링하고 할당하는 기능을 수행한다

10회 다음 보기 괄호 안에 공통으로 들어갈 적당한 단어는? 2
[보기]
( )은 하드웨어 특성으로 부터 프로그램들을 격리시키고, 하드웨어와 직접적으로 상호 작동함으로써 프로그램들에게 일관된 서비스를 제공한다. ( )의 기본 개념은 프롯스와 파일의 관리이다. 그밖에 입출력장치 관리, 메모리 관리 및 시스템 호출 인터페이스등이다.

① 유틸리티(Utilities)
② 커널(Kernel)
③ 셀(Shell)
④ 데몬(Daemon)

9회 비선점형 스케줄링만 고르 것은?1
[보기]
㉠ FCFS
㉡ SJF
㉢ RR
㉣ SRT
㉤ MLQ

① ㉠, ㉡
② ㉠, ㉢
③ ㉠, ㉣
④ ㉢, ㉤

11회 15. Process ID(PID) 1번을 가지고 있는 프로세스는 무엇인가? 1
① init
② 부트로더
③ OS 커널
④ BIOS

7회 2. 다음 중 프로세스와 관련된 설명으로 가장 거리가 먼 것은? 4
① 프로세스는 프로세스 제어블록(PCB)으로 나타내며 운영체제가 프로세스에 대한 중요한 정보를 저장해 놓층 저장소를 의미한다.
② 하나의 포르세스는 생성, 실행, 준비, 대기, 보류, 교착, 종료의 상태 변화를 거치게 된다.
③ 프로세스란 스스로 자원을 요청하고 이를 합당받아 사용하는 능동적인 개체를 의미한다.
④ 스레드는 프로세스보다 큰 단위이며, 자원의 할당에는 관계하지 않고, 프로세서 스케줄링의 단위로써 사용하게 된다.

7회 다음 중 프로세스 스케줄링을 통한 CPU 성능요소가 아닌 것은? 4
① CPU 이용률(Utilization)
② 시스템처리율(Throughput)
③ 대기시간(Waiting time)
④ 확장성(Expansiblility)

6회 다음 중 비선점 스케줄링에 해당되는 것은? 1
① 최단 작업 우선 처리
② 다단계 큐
③ 순환 할당스케줄링 '
④ 최단 잔여 시간

6회 4회 다음의 운영 체제 구조에서 2계층부터 5계층까 지 올바르게 나열한 것은? 2
① 프로세스 관리 -> 메모리 관리 -> 주변 장치 관리 -> 파일 관리
② 메모리 관리-> 프로세스 관리->주변 장치 관리 ->파일 관리
③ 파일 관리 -> 프로세스 관리 -> 메모리 관리-> 주변 장치 관리
④ 주변 장치 관리 ->프로세스 관리 -> 파일 관리->메모리 관리

6회 20. 다음 중 프로세스 교착 상태의 발생 조건아 아닌 것은? 3
① 상호 배제 ② 점유와 대기
③ 중단 조건 ④환형 대기 조건

4회 사용자가 작성한 프로그램을 운영체계에 실행하도록 제출하면 운영체제는 이를 제출받아 프로세스를 만든다. 이때 생성된 프로세스의 주소영역을 구성하는 요소를 올바르게 나열한 것은? 4
①데이터영역-스택영역-텍스트영역
②텍스트영역-스택영역-데이터영역
③데이터영역-텍스트영역-스택영역
④텍스트영역-데이터영역-스택영역

4회 다음 중 운영체제 발전 흐름에 대한 설명으로 올바르지 못한 것은? 1
①다중처리시스템 : 여러 개의 CPU와 여러 개의 주기억장치를 이용하여 여러 개의 프로그램을 처리하는 방식이다.
②시분할시스템 : 여러 명의 사용하는 시스템에서 각 사용자는 독립된 컴퓨터를 사용하는 느낌으로 사용한다.
③다중프로그램 : 하나의 CPU와 주기억장치를 이용하여 여러개의 프로그램을 동시에 처리하는 방식이다.
④분산처리시스템 : 여러 개의 컴퓨터를 통신회선으로 연결하여 하나의 작업을 처리하는 방식을 말한다.

4회 다음 중 운영체제 5단계에 포함되지 않는 것은? 4
①메모리관리
②주변장치 관리
③파일관리
④사용자관리

4회 14. 다음 중 버퍼링과 스풀링에 대한 설명으로 올바르지 못한 것은?3
①버퍼링과 스풀링은 CPU 연산과 I/O 연산을 중첩시켜 CPU의 효율을 높이기 위하여 사용한다.
②버퍼링은 단일사용자 시스템에 사용되고, 스풀링은 다중사용자 시스템에 사용된다.
③버퍼링은 디스크를 큰 버퍼처럼 사용하고 스풀링은 주기억 장치를 사용한다.
④버퍼링과 스풀링은 큐 방식의 입출력을 수행한다.

4회 다음 중 커널에 대한 설명으로 올바르지 못한 것은? 4
①커널에는 커널모드와 사용자모드가 있다.
②운영체제의 핵심을 커널이라 부른다.
③응용프로그램에 커널 서비스를 제공하는 인터페이스를 ‘시스템 콜 인터페이스’라 한다.
④하드웨어 장치를 사용할 경우 사용자모드에서 사용된다.

9회 분산 처리 시스템에 대한 설명으로 틀린 것은? 3
① 목적은 자원의 공유, 연상 속도의 향상, 신뢰성과 컴퓨터 통신 등에 있다.
② 분산된 컴퓨터 간의 자원을 이용자가 쉽게 공유하여 액세스할 수 있다.
③ 시스템의 설계가 간단하여 확장이 용이하고 보안성을 향상시킬 수 있다.
④ 분산 운영체제는 시스템의 자원을 효율적으로 관리하기 위한 운영체제이다.

9회 I/O 중심 프로세스와 CPU 중심 프로세스 모두를 만족시카는 스케줄러로 가장 적합한 것은? 1
① MLFQ(Multi Level Feedback Queue)
② RR(Round Robin)
③ SPF(Shortest Process First)
④ SRT(Shortest Remaining Time)

반응형
반응형

정보보안기사 필기 독학 / 시스템 보안 / 5. 버퍼 오버플로우 공격

 

 

힙 버퍼 오버플로우 (Heap Buffer Overflow)

쉘 코드를 사용하기 위하여 함수의 반환 주소를 단순히 덮어 쓰는 방법은 사용할 수 없고, 버퍼에 할당된 포인터 값을 덮어 쓰는 공격 방법이다. 

 

 

스택 버퍼 오버플로우(Stack Buffer Overflow)

프로그램에서 특정 함수를 실행시키면 스택에 이전 함수로 돌아가기 위한 주소가 기록되고, 버퍼에 큰 값을 넣게 되면 이 스택 영역을 침범하게 됩니다. 리턴 주소가 들어갈 곳에 쉘코드나 다른 프로그램의 주소를 넣으면 그것이 실행되게 되는데, 이를 스택 버퍼 오버플로우라고 합니다.

 

관련 문제

10회 다음 지문에서 설명하는 공격은? 3
[보기]
- 이 공격에 사용되는 메모리 영역은 malloc, free 등의 함수로 제어함
- 쉘 코드를 사용하기 위하여 함수의 반환 주소를 단순히 덮어 쓰는 방법은 사용할 수 없고, 버퍼에 할당된 포인터 값을 덮어 쓰는 방법이 일반적으로 사용됨

① 스택 버퍼 오버플러우
② 레이스 컨디셔닝
③ 힙 버퍼 오버플로우
④ RTL(Return To Libc)


8회 스택 버퍼 오버플로우 공격의 수행절차를 순서대로 바르게 나열한 것은?3

[보기]
ㄱ. 특정 함수의 호출이 완료되면 조작된 반환 주소인 공격셸 코드의 주소가 반환된다.
ㄴ. 루트 권한으로 실행되는 프로그램 상에서 특정 함수의 스택 버퍼를 오버플로우시켜서 공격 셸 코드가 저장되어 있는 버퍼의 주소로 반환 주소를 변경한다.
ㄷ. 공격 셸 코드를 버퍼에 저장한다.
ㄹ. 공격 셸 코드가 실행되어 루트 권한을 획득하게 된다.
① ㄱ→ㄴ→ㄷ→ㄹ
② ㄱ→ㄷ→ㄴ→ㄹ
③ ㄷ→ㄴ→ㄱ→ㄹ
④ ㄷ→ㄱ→ㄴ→ㄹ


7회 다음 내용은 어느 공격기법에 관한 설명인가?1

보기
침해 시스템을 부넉하던 중 test라는 계정의 홈 디렉터리에서 C언어로 작성된 Exploit 코드와 컴파일된 바이너리파일을 발견할 수 있었다. 이 Exploit은 stack에 할당되어진 변수에 데이터 사이즈를 초과 입력하여 RET를 덮어 씌워 ShellCode를 실행하는 코드였다.
① Buffer Overflow
② Format String
③ Race condition
④ Brute force


6회 메모리 오류를 이용해 타깃 프로그램의 실행 흐름을 제어하고, 최종적으로는 공격자가 원하는
임의의 코드를 실행하는 것을 무엇이라 하는가? 2
① 포맷 스트링 ② 버퍼 오버플로우
③ 레이스 컨디셔닝 ④ 메모리 단편화

4회 다음 중 버퍼오버플로우 대한 설명으로 올바르지 못한 것은?1
①버퍼에 저장된 프로세스 간의 자원 경쟁을 야기해 권한을 획득하는 기법으로 공격하는 방법이다.
②메모리에 할당된 버퍼의 양을 초과하는 데이터를 입력하여 프로그램의 복귀 주소를 조작하는 기법을 사용하여 해킹을 한다.
③스택 버퍼오버플로우와 힙 오버플로우 공격이 있다.
④버퍼오버플로우가 발생하면 저장된 데이터는 인접한 변수영역까지침범하여 포인터 영역까지 침범하므로 해커가 특정코드를 실행하도록 하는 공격기법이다.

8회 버퍼 오버플로우 공격의 대응수단으로 적절하지 않은 것은? 2
① 스택상에 있는 공격자의 코드가 실행되지 못하도록 한다.
② 프로세스 주소 공간에 있는 중요 데이터 구조의 위치가 변경되지 않도록 적재 주소를 고정시킨다.
③ 함수의 진입(entry)과 종료(exit) 코드를 조사하고 함수의 스택 프레임에 대해 손상이 있는지를 검사한다.
④ 변수 타입과 그 타입에 허용되는 연산들에 대해 강력한 표 기법을 제공하는 고급수준의 프로그래밍 언어를 사용한다.

반응형

+ Recent posts