본문 바로가기

Studying/정보처리기사

[정보처리기사 실기]_2020년 4회

1. 현재 IPv4의 확장형으로 IPv4가 가지고 있는 주소 고갈, 보안성, 이동성 지원 등의 문제점을 해결하기 위해서 개발된 128비트 주소 체계를 갖는 차세대 인터넷 프로토콜은?

 

: IPv6

 

IPv4와 IPv6의 특징

 

IPv4 IPv6
0 ~ 255 = 256개 = 8Bit 0000 ~ FFFF → 각 자리를 :(콜론)으로 구분.
10진수(0 ~ 9) 16진수 (0 ~ 9 / A ~ F)
8 Bit * 4개 = 32 Bit 16 Bit * 8개 = 128 Bit
유니, 멀티, 브로드 캐스트 유니, 멀티, 애니 캐스트

 


 

2. 목적에 따른 디자인 패턴의 유형에는 생성, 구조, (   ) 이/가 있다. (   ) 안에 알맞은 유형을 작성.

 

: 행위

 

[디자인 패턴의 유형]

 

① 목적

   ⑴ 생성 : 객체 인스턴스 생성에 관여, 클래스 정의와 객체 생성 방식을 구조화, 캡슐화를 수행하는 패턴.

   ⑵ 구조 : 더 큰 구조 형성 목적으로 클래스나 객체의 조합을 다루는 패턴.

   ⑶ 행위 : 클래스나 객체들이 상호작용하는 방법과 역할 분담을 다루는 패턴.

② 범위

   ⑴ 클래스

      - 클래스 간 관련성(상속 관계를 다루는 패턴).

      - 컴파일 타입에 정적으로 결정.

   ⑵ 객체

      - 객체 간 관련성을 다루는 패턴.

      - 런타임에 동적으로 결정.


 

3. 다음은 판매와 관련된 다이어그램이다. 해당 다이어그램의 명칭을 쓰시오.

: 패키지 다이어그램

 

폴더 모양의 패키지와 점선으로 표시된 의존관계, <<import>>라는 스테레오 타입 표기를 통해 패키지 아이어그램 파악 가능.


 

4. 데이터베이스의 회복(Recovery) 기법 중 Rollback시 Redo, Undo가 모두 실행되는 트랜잭션 처리법으로 트랜잭션 수행 중 갱신 결과를 바로 DB에 반영하는 기법은?

 

: 즉시 갱신 회복 기법

 

[회복 기법 종류]

 

① 로그 기반 회복 기법

     ⑴ 지연 갱신 회복 기법(Deferred Update) : 트랜잭션이 완료되기 전까지 데이터베이스에 기록하지 않는 기법.

     ⑵ 즉시 갱신 회복 기법(Immediate Update) : 트랜잭션 수행 중 갱신 결과를 바로 DB에 반영하는 기법.

② 체크 포인트 회복 기법(Checkpoint Recovery)

 -  장애 발생 시 검사점 이후에 처리된 트랜잭션에 대해서만 장애 발생 이전의 상태로 복원시키는 회복 기법.

③ 그림자 페이징 회복 기법(Shadow Paging Recovery)

 - 데이터베이스 트랜잭션 수행 시 복제본을 생성하여 데이터베이스 장애 시 이를 이용해 복구하는 기법.


 

7. 스니핑(Sniffing)에 대하여 서술.

 

: 공격 대상에게 직접 공격하지 않고 데이터만 몰래 엿보는 수동적 공격 기법.

 

[네트워크 공격 기법]

 

① 네트워크 스캐너(Scanner), 스니피(Sniffer) - 네트워크 하드웨어 및 소프트웨어 구성의 취약점 파악을 위해 공격자가 취약점을 탐색하는 공격 도구.

② 패스워드 크래킹(Password Cracking)

   ⑴ 사전 크래킹 (Dictionary)

       - 시스템 또는 서비스의 ID와 패스워드를 크랙하기 위해서 ID와 패스워드가 될 가능성이 있는 단어를 파일로 만들어 놓고 이 파일의 단어를 대입하여 크랙하는 공격 기법.

   ⑵ 무차별 크래킹 (Brute Force)

       - 패스워드로 사용될 수 있는 영문자(대소문자), 숫자, 특수문자 등을 무작위로 패스워드 자리에 대입하여 패스워드를 알아내는 공격 기법.

   ⑶ 패스워드 하이브리드 공격 : 사전 공격과 무차별 대입 공격을 결합하여 공격하는 기법.

   ⑷ 레인보우 테이블 공격

        - 패스워드별로 해시값을 미리 생성해서 테이블에 모아 놓고, 크래킹 하고자 하는 해시값을 테이블에서 검색해서 역으로 패스워드를 찾는 공격 기법.

③ IP 스푸핑(IP Spoofing) -  침입자가 인증된 컴퓨팅 시스템인 것처럼 속여서 타깃 시스템의 정보를 빼내기 위해서 본인의 패킷 헤더를 인증된 호스트의 IP 어드레스로 위조하여 타깃에 전송하는 공격 기법.

④ ARP 스푸핑(ARP Spoofing) - ARP 스푸핑은 공격자가 특정 호스트의 MAC 주소를 자신의 MAC 주소로 위조한 ARP Reply를 만들어 희생자에게 지속적으로 전송하여 희생자의 ARP Cache Table에 특정 호스트의 MAC 정보를 공격자의 MAC 정보로 변경. - 희생자로부터 특정 호스트로 나가는 패킷을 공격자가 스니핑하는 공격 기법.

⑤ ICMP Redirect 공격 - 3계층에서 스니핑 시스템을 네트워크에 존재하는 또 다른 라우터라고 알림으로써 패킷의 흐름을 바꾸는 공격 기법. - ICMP Redirect 메시지를 공격자가 원하는 형태로 만들어서 특정 목적지로 가는 패킷을 공격자가 스니핑 하는 공격 기법.

⑥ 트로이 목마 - 악성 루틴이 숨어 있는 프로그램으로 겉으로 보기에는 정상적인 프로그램으로 보이지만 실행하면 악성 코드를 실행하는 프로그램.


 

8. IP 패킷에서 외부의 공인 IP 주소와 포트 주소에 해당하는 내부 IP 주소를 재기록항 라우터를 통해 네트워크 트래피을 주고받는 기술.

 

: NAT(Network Address Transformation)

 

[NAT 유형]

 

① Static NAT : 사설 IP 주소와 공인 IP 주소가 1:1로 연결되는 구성.

② Dynamic NAT

  - 사설 IP와 공인 IP 주소가 N:1 또는 N:M으로 연결되는 구성.

  - 사설 IP를 가진 장치의 요청 시 동적으로 공인 IP주소 Table에서 할당하여 인터넷과 연결하는 방식.


 

10. 분산 컴퓨팅 기술 기반의 데이터 위변조 방지 기술로 P2P 방식을 기반으로 하여 소규모 데이터들이 연결되어 형성된 '블록;이라는 분산 데이터 저장 환경에 관리 대상 데이터를 저장함으로써 누구도 임의로 수정할 수 없고 누구나 변경의 결과를 열람할 수 있게끔 만드는 기술.

 

: 블록체인(BlockChain)


 

11. 오픈 소스를 기반으로 한 분산 컴퓨팅 플랫폼으로, 일반 PC급 컴퓨터들로 가상화된 대형 스토리지를 형성하고 그 안에 보관된 거대한 데이터 세트를 병렬로 처리할 수 있도록 개발된 자바 소프트웨어 프레임워크로 구글, 야후 등에 적용한 기술은?

 

: 하둡(Hadoop)


 

12. 이상현상의 3가지

 

: 삽입이상, 삭제이상, 갱신이상

 

[이상현상] (삽삭갱)

 

① 삽입이상 : 정보 저장 시 해당 정보의 불필요한 세부정보를 입력해야 하는 경우.

② 삭제이상 : 정보 삭제 시 원치 않는 다른 정보가 같이 삭제되는 경우.

③ 갱신이상 : 중복 데이터 중에서 특정 부분만 수정되어 중복된 값이 모순을 일으키는 경우.


 

13. 다음은 프로세스 상태 전이도이다. ①, ②, ③에 알맞은 상태를 쓰시오.

① : 준비

② : 실행

③ : 대기

 

[프로세스 상태 전이] (생준 실대완)

 

① 생성(Create) 상태 : 사용자에 의해 프로세스가 생성된 상태.

② 준비(Ready) 상태

 - CPU를 할당받을 수 있는 상태.

 - 준비 리스트 : 각각 우선순위를 부여하여 가장 높은 우선순위를 갖는 프로세스가 다음 순서에 CPU를 할당 받음.

③ 실행(Runtime) 상태 : 프로세스가 CPU를 할당받아 동작 중인 상태.

④ 대기(Waiting) 상태

- 프로세스 실행 중 입출력 처리 등으로 인해 CPU를 양도하고 입출력 처리가 완료까지 대기 리스트에서 기다리는 상태.

- 대기 리스트 : 우선순위가 존재하지 않음.

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


 

14. 테스트 오라클 중 특정한 몇 개의 입력값에 대해서만 기대하는 결과를 제공해주는 오라클은?

 

: 샘플링 오라클

 

[테스트오라클]

 

① 참(True) 오라클 : 모든 입력값에 대하여 기대하는 결과를 생성함으로써 발생된 오류를 모두 검출할 수 있는 오라클.

② 샘플링(Sampling) 오라클 : 특정한 몇 개의 입력값에 대해서만 기대하는 결과를 제공해주는 오라클.

③ 휴리스틱(Heuristic) 오라클

 - 샘플링 오라클을 개선한 오라클.

 - 특정 입력값에 대해 올바른 결과를 제공하고, 나머지 값들에 대해서는 추정(휴리스틱)으로 처리하는 오라클.

④ 일관성검사(Consistency) 오라클 : 애플리케이션 변경이 있을 때, 수행 전과 후이 결과값이 동일한지 확인하는 오라클.


 

15. 점수에 따른 성적 부여가 잘 되었는지 테스트하고자 한다. 아래에 알맞은 테스트 기법은?

점수 성적
0 ~ 59
60 ~ 69
70 ~ 79
80 ~ 89
90 ~ 100

테스트 값 : -10점, 30점, 65점, 75점, 85점, 95점, 110점

 

: 동등분할 테스트

 

동등분할 테스트는 입력 데이터의 영역을 유사한 도메인별로 유효 값, 무효 값을 그룹핑하여 대표값 테스트 케이스를 도출하여 테스트하는 기법.


 

16. 다음 조건을 만족하면서 학과별로 튜플수가 얼마인지 구하는 SQL문을 작성하시오.

<조건>

- 대소문자를 구분하지 않는다.

- WHERE 구문을 사용하지 않는다.

- GROUP BY를 사용한다.

- 세미콜론은(;)은 생략 가능하다.

- 별칭(AS)을 사용해야 한다.

- 집계함수를 사용해야 한다.

 

[학생]

학과 학생
전기 이순신
컴퓨터 안중근
컴퓨터 윤봉길
전자 이봉창
전자 강우규

[결과]

학과 학과별튜플수
전기 1
컴퓨터 2
전자 2

 

: SELECT 학과, COUNT(학과) AS 학과별튜플수 FROM 학생 GROUP BY 학과;

또는 SELECT 학과, COUNT(*) AS 학과별튜플수 FROM 학생 GROUP BY 학과;


 

17, 데니스 리치와 켄톰슨 등이 함께 벨 연구소를 통해 만든 운영체제이며, 90%이상 C언어로 구현되어 있고, 시스템 프로그램이 모듈화되어 있어서 다른 하드웨어 기종으로 쉽게 이식 가능하며 계층적 트리 구조를 가짐으로써 통합적인 파일 관리가 용이한 운영체제.

 

: 유닉스(Unix)

 

[유닉스 계열 운영체제 특징](대다 사이계)

 

① 대화식 운영체제 기능 제공

 - 프롬프트가 나타난 상태에서 사용자가 명령을 입력하며 시스템은 그 명령을 수행하는 사용자 명령 기반의 대화식 운영체제 기능 제공.

② 다중 작업 기능 제공

 - 다수의 작업(프로세스)이 중앙처리장치(CPU)와 같은 공용자원을 나누어 사용하여 한 번에 하나 이상의 작업을 수행하는 기능 제공.

③ 다중 사용자 기능 제공

 - 여러 대의 단말(키보드와 모니터)이 하나의 컴퓨터에 연결되어 여러 사람이 동시에 시스템을 사용하여 각각의 작업 수행하는 기능 제공.

④ 이식성 제공

 - 90%이상 C언어로 구현되어 있고, 시스템 프로그램이 모듈화 되어 있어서 다른 하드웨어 기종으로 쉽게 이식 가능.

⑤ 계층적 트리 구조 파일 시스템 제공

 - 유닉스는 계층적 트리 구조를 가짐으로써 통합적인 파일 관리 용이.


 

20. 정보보안에서 가용성(Availability)에 대하여 서술하시오.

 

: 권한을 가진 사용자나 애플리케이션이 원하는 서비스를 지속 사용할 수 있도록 보장하는 특성.

 

[SW 개발 보안 3대 요소] (기무가)

 

① 기밀성(Confidentiality)

 - 인가되지 않은 개인 혹은 시스템 접근에 따른 정보 공개 및 노출을 차단하는 특성.

② 무결성(Integrity)

 - 정당한 방법을 따르지 않고서는 데이터가 변경될 수 없으며, 데이터의 정확성 및 완정성과 고의, 악의로 변경되거나 훼손 또는 파괴되지 않음을 보장하는 특성.

③ 가용성(Availability)

 - 권한을 가진 사용자나 애플리케이션이 원하는 서비스를 지속해서 사용할 수 있도록 보장하는 특성.