제5과목: 정보시스템 구축 관리 (81~100번)

| 정보처리기사 필기 기출문제 | |||||
| 24년 3회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 24년 2회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 24년 1회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 23년 3회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 23년 2회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 23년 1회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
81. 소프트웨어 개발에서 정보보안 3요소에 해당하지 않는 설명은?
① 기밀성 : 인가된 사용자에 대해서만 자원 접근이 가능하다.
② 무결성 : 인가된 사용자에 대해서만 자원 수정이 가능하며 전송 중인 정보는 수정되지 않는다.
③ 가용성 : 인가된 사용자는 가지고 있는 권한 범위 내에서 언제든 자원 접근이 가능하다.
④ 휘발성 : 인가된 사용자가 수행한 데이터는 처리 완료 즉시 폐기되어야 한다.
| 정보보안의 3요소 기밀성 : 오직 인가된 사용자만이 정보에 접근할 수 있도록 제한하는 것 무결성 : 정보가 인가된 사용자에 의해서만 수정될 수 있으며, 전송 중 내용이 임의로 변조되지 않았음을 보장하는 것 가용성 : 인가된 사용자가 정보 시스템을 필요로 할 때 언제든지 지체 없이 사용할 수 있는 상태를 유지하는 것 ※ 휘발성 (Volatility): 이는 보안의 요소가 아니라, 전원이 꺼지면 데이터가 사라지는 메모리(RAM 등)의 물리적 특성을 말합니다. 보안 3요소와는 전혀 무관한 용어입니다. 답: 4번 |
82. COCOMO Model 중 기관 내부에서 개발된 중·소 규모의 소프트웨어로 일괄 자료 처리나 과학기술 계산용, 비즈니스 자료 처리용으로 5만 라인 이하의 소프트웨어를 개발하는 유형은?
① Embeded
② Organic
③ Semi-Detached
④ Semi-Embeded
| COCOMO의 소프트웨어 개발 유형 : 보헴(Boehm)이 제안, 원시 프로그램의 규모인 LOC에 의한 비용 산정 기법 조직형 (Organic Mode) - 기관 내부에서 개발된 중소규모의 소프트웨어로 일괄 자료 처리나 과학 기술 계산용, 비즈니스 자료 처리용으로 5만(50KDSI) 라인 이하의 소프트웨어를 개발하는 유형 - 사무 처리용, 업무용, 과학용 응용 소프트웨어 개발에 적합 반분리형 (Semi - Detached Mode) - 조직형과 내장형의 중간형으로 트랜잭션 처리 시스템이나 운영체제, 데이터베이스 관리 시스템 등의 30만(300KDSI) 라인 이하의 소프트웨어를 개발하는 유형 - 컴파일러, 인터프리터와 같은 유틸리티개발에 적합 내장형 (Embedded Mode) - 초대형 규모의 트랜잭션 처리 시스템이나 운영체제 등의 30만(300KDSI)라인 이상의 소프트웨어를 개발하는 유형 - 신호기 제어 시스템, 미사일 유도 시스템, 실시간 처리 시스템 등의 시스템 프로그램 개발에 적합 COCOMO 분석 수준에 따른 3단계 기본(Basic)형 : LOC + 개발 유형, 가장 단순한 단계 중간(Intermediate)형 : 단순히 크기만 보는 게 아니라 15가지 요인(Cost Drivers)을 반영 발전(Advanced)형 : 중간형은 프로젝트 전체에 대해 요인을 적용하지만, 발전형은 단계별로 다르게 적용 답: 2번 |
83. 다음 중 소프트웨어 비용 산정에 대한 설명으로 옳지 않은 것은?
① 소프트웨어의 규모, 인력 등의 요소를 기반으로 개발에 필요한 비용을 예측하는 것이다.
② 소프트웨어 비용 산정 기법에는 상향식, 하향식, 혼합식 기법이 있다.
③ 소프트웨어 비용을 높게 산정할 경우 예산 낭비와 일의 효율성 저하를 초래할 수 있다.
④ 소프트웨어 비용 결정 요소에는 프로젝트 요소, 자원 요소, 생산성 요소가 있다.
| 비용 산정시 고려해야할 3대 요소 - 프로젝트 요소 : 제품의 복잡도, 시스템 크기, 요구되는 신뢰도 - 자원 요소 : 인적 자원(개발자 능력), 하드웨어 자원, 소프트웨어 자원 - 생산성 요소 : 개발자의 능력, 개발 기간 비용 산정 기법 하향식 산정 기법 (Top-Down) : 과거의 경험을 바탕으로 전체 비용을 먼저 정하고 세부적으로 나누는 방식 - 전문가 감정 기법 : 경험 많은 전문가가 주관적으로 결정 - 델파이 (Delphi) 기법 : 전무나들의 주관적 편견을 보완하기 위해 중재자를 두어 합의를 도출하는 방식 상향식 산정 기법 (Bottom-Up) : 세부 작업 단위별 비용을 산정한 후 합계하여 전체 비용을 결정하는 방식 - LOC 기법 : 코드 라인 수를 예측하여 산정 (계산 문제 : 총 라인 수 / 프로그래머의 월간 생산성) - 개발 단계별 인원수 기법 : 각 단계(분석, 설계, 구현 등)에 필요한 인력과 시간을 합산 - 수학적 산정 모델 : 공식에 숫자를 대입하여 계산하는 방식 답: 2번 혼합식은 없다. |
84. 취약점 관리를 위한 응용 프로그램의 보안 설정과 가장 거리가 먼 것은?
① 서버 관리실 출입 통제
② 실행 프로세스 권한 설정
③ 운영체제의 접근 제한
④ 운영체제의 정보 수집 제한
| 효율적인 취약점 관리 관리적 보안 : 정보보호 정책, 정보보호 조직, 정보자산 분류, 정보 보호 교육 및 훈련, 인적 보안, 업무 연속성 관리 등의 정의 물리적 보안 : 건물 및 사무실 출입 통제 지침, 전산실 관리 지침, 정보 시스템 보호 설치 및 관리 지침, 재해 복구 센터 운영 등의 정의 기술적 보안 : 사용자 인증, 접근 제어, PC, 서버, 네트워크, 응용 프로그램, 데이터(DB) 등의 보안 지침 정의, 운영체제의 정보 수집 제한 답: 1번 물리적 보안에 해당한다. |
85. Python을 기반으로 컴포넌트의 재사용과 플러그인화를 강조하여 신속한 개발이 가능하도록 지원하는 프레임워크는?
① Spring
② Node.js
③ Django
④ Codeigniter
| 언어별 프레임워크 Java : Spring, Struts Python : Django, Flask JavaScript : Node.js(런타임), React, Vue.js, Angular PHP : Codeigniter, Laravel Ruby : Ruby on Rails 프레임워크 특징 - 재사용성 : 공통 기능을 재사용 가능한 컴포넌트로 제공 - 확장성 : 다형성을 통해 사용자 정의 인터페이스 확장 가능 - 모듈화 : 기능별로 쪼개어 관리하므로 유지보수 용이 - 제어의 역흐름 : 개발자가 코드를 호출하는 게 아니라, 프레임워크가 개발자의 코드를 제어 프레임워크 기대 효과 - 품질 보증: 이미 검증된 코드를 재사용하므로 소프트웨어의 품질이 안정적입니다. - 개발 용이성: 반복적인 코드(DB 연결, 보안 등)를 프레임워크가 처리해주어 개발이 쉬워집니다. - 변경 용이성(유지보수성): 표준화된 구조를 따르므로 코드를 수정하거나 관리하기 좋습니다. - 재사용성: 공통 기능을 모듈화하여 여러 프로젝트에서 다시 쓸 수 있습니다. - 상호 운용성: 표준 프레임워크(예: 전자정부 표준 프레임워크)를 쓰면 시스템 간 연동이 쉬워집니다. 답: 3번 |
86. LOC 기법에 의하여 예측된 총 라인수가 36,000라인, 개발에 참여할 프로그래머가 6명, 프로그래머들의 평균 생산성이 월간 300라인일 때 개발에 소요되는 기간은?
① 5개월
② 10개월
③ 15개월
④ 20개월
| LOC 기법 산정 공식 1단계 : 총 노력(Man-Month, 인월) 구하기공식 - 총 라인수 / 프로그래머 1인의 월간 생산성 - 계산 : 36,000라인 / 300라인/월 = 120(인월) → 이 프로젝트를 혼자서 하면 120개월이 걸린다는 뜻 2단계 : 개발 소요 기간 구하기 - 총노력(인월) / 투입인원 - 계산 : 120(인월) / 6명 = 20개월 → 개발에 소요되는 기간 20개월 ※변형 공식 - 노력 : 전체 투입되는 총 인원수 - 개발 기간 : 프로젝트가 끝날 때까지 걸리는 시간 - 생산성 : 총라인수 / 총노력(인월) 답: 4번 |
87. 무선 랜에서 데이터 전송 시 매체가 비어있음을 확인한 뒤 충돌을 피하기 위해 일정한 시간을 기다린 후 데이터를 전송하는 방법은?
① VLAN
② STP
③ L2AN
④ CSMA/CA
| CSMA/CA - 무선 랜에서 데이터 전송 시 매체가 비어있음을 확인한 뒤 충돌을 피하기 위해 일정한 시간을 기다린 후 데이터를 전송하는 방법 - 회선을 사용하지 않는 경우에도 확인 신호를 전송하여 동시 전송에 의한 충돌을 예방 CSMA/CD - 유선 랜 방식, 충돌이 발생하면 이를 검출해서 알려주고 다시 보내는 방식 ① VLAN (Virtual LAN): 물리적 위치와 상관없이 논리적으로 네트워크를 분할하는 기술 ② STP (Spanning Tree Protocol): 네트워크 안에 루프(회전 고리)가 발생하는 것을 방지하는 프로토콜 ③ L2AN: 일반적으로 쓰이지 않는 오답용 용어 답: 4번 |
88. 물리적 위협으로 인한 문제에 해당하지 않는 것은?
① 화재, 홍수 등 천재지변으로 인한 위협
② 하드웨어 파손, 고장으로 인한 장애
③ 방화, 테러로 인한 하드웨어와 기록장치를 물리적으로 파괴하는 행위
④ 방화벽 설정의 잘못된 조작으로 인한 네트워크, 서버 보안 위협
| 효율적인 취약점 관리 관리적 보안 : 정보보호 정책, 정보보호 조직, 정보자산 분류, 정보 보호 교육 및 훈련, 인적 보안, 업무 연속성 관리 등의 정의 물리적 보안 : 건물 및 사무실 출입 통제 지침, 전산실 관리 지침, 정보 시스템 보호 설치 및 관리 지침, 재해 복구 센터 운영 등의 정의 기술적 보안 : 사용자 인증, 접근 제어, PC, 서버, 네트워크, 응용 프로그램, 데이터(DB) 등의 보안 지침 정의, 운영체제의 정보 수집 제한 답: 4번 |
89. 소프트웨어 개발 모델 중 나선형 모델의 4가지 주요 활동이 순서대로 나열된 것은?
(A) 계획 수립 (B) 고객 평가 (C) 개발 및 검증 (D) 위험 분석
① A-B-D-C 순으로 반복
② A-D-C-B 순으로 반복
③ A-B-C-D 순으로 반복
④ A-C-B-D 순으로 반복
| 나선형 모형 : 보헴(Boehm)이 제안한 것으로, 폭포수 모형과 프로토타입 모형의 장점에 위험 분석 기능을 추가한 모형 - '계획 수립 → 위험 분석 → 개발 및 검증 → 고객평가' 으로 진행 답: 2번 |
90. 다음이 설명하는 IT 기술은?
- 컨테이너 응용프로그램의 배포를 자동화하는 오픈소스 엔진이다.
- 소프트웨어 컨테이너 안에 응용 프로그램들을 배치시키는 일을 자동화해 주는 오픈 소스 프로젝트이자 소프트웨어로 볼 수 있다.
① Stack Guard
② Docker
③ Cipher Container
④ Scytale
| SW 관련 용어 매시업 (Mashup) - 웹에서 제공하는 정보 및 서비스를 이용하여 새로운 소프트웨어나 서비스, 데이터베이스 등을 만드는 기술이다. 즉 다수의 정보원이 제공하는 콘텐츠를 조합하여 하나의 서비스로 제공하는 웹 사이트 또는 애플리케이션을 말함 서비스 지향 아키텍처 (SOA) - 기업의 소프트웨어 인프라인 정보시스템을 공유와 재사용이 가능한 서비스 단위나 컴포넌트 중심으로 구축하는 정보기술 아키텍처 - SOA 기반 애플리케이션 구성 계층 : 표현 계층, 업무 프로세스 계층, 서비스 중간 계층, 애플리케이션 계층, 데이터 저장 계층 디지털 트윈 (Digital Twin) - 현실속의 사물을 소프트웨어로 가상한후 모델로, 자동차, 항공, 에너지, 국방, 헬스케어 등 여러 분야에서 주목 받음 - 실제 물리적인 자산을 소프트웨어로 가상화함으로써 실제 자산의 특성에 대한 정확한 정볼르 얻을 수 있고, 자산 최적화, 돌발사고 최소화, 생산성 증가 등 설계부터 제조, 서비스에 이르는 모든 과정의 효율성을 향상시킬 수 있음 텐서플로 (TensorFlow) - 구글의 구글 브레인(google Brain) 팀이 만든, 다양한 작업에 대해 데이터 흐름 프로그래밍을 위한 오픈소스 소프트웨어 라이브러리 - C++언어로 제작되었고, 구글 검색, 음성 인식, 번역 등의 구글 서비스 전반에서 다양하게 사용되고 있음 도커 (Docker) - 컨테이너 기술을 자동화하여 쉽게 사용할 수 있게 하는 오픈소스 프로젝트 - 소프트웨어 컨테이너 안에 응용 프로그램들을 배치시키는 일 스크래피 (Scrapy) - Python 기반의 웹 크롤링 프레임워크로, 코드 재사용성을 높이는 데 도움이 되며, 대규모의 크롤링 프로젝트에 적합함 증발품 (Vaporware) - 판매 계획 또는 배포 계획은 발표되었으나 실제로 고객에게 판매되거나 배포되지 않고 있는 소프트웨어 ① Stack Guard (스택 가드): 메모리 상에서 버퍼 오버플로우를 방지하기 위해 복귀 주소 앞에 특정 값(Canary)을 삽입하는 보안 기술 ③ Cipher Container (사이퍼 컨테이너): 암호화된 저장 영역 등을 의미할 때 쓰일 수 있는 용어이나, 이 문제에서 설명하는 표준적인 IT 기술 명칭은 아닙니다. ④ Scytale (스카이테일): 고대 그리스에서 사용하던 암호화 도구로, 막대에 종이를 감아 글자를 적는 방식입니다. 보안 역사에서 언급되는 용어입니다. 답: 2번 |
91. 구조적 방법론에 대한 설명으로 옳은 것은?
① 자료(Data) 중심의 방법론이다.
② 구성 요소에는 객체, 클래스, 메시지 등이 있다.
③ 새로운 기능을 추가하는 것이 간단하여 확장성이 보장된다.
④ 분할과 정복(Divide and Conquer) 원리를 적용한다.
| 방법론 구조적 방법론 : 정형화된 분석 절차에 따라 사용자 요구사항을 파악하여 문서화하는 처리(Precess) 중심의 방법론 - 1960년대까지 가장 많이 적용되었던 소프트웨어 개발 방법론 - 쉬운 이해 및 검증이 가능한 프로그램 코드를 생성하는 것이 목적 - 복잡한 문제를 다루기 위해 분할과 정복 원리(Divide and Conquer)를 적용 정보공학 방법론 : 정보 시스템의 개발을 위해 계획, 분석, 설계, 구축에 정형화된 기법들을 상호 연관성 있게 통합 및 적용하는 자료(Data) 중심의 방법론 - 정보 시스템 개발 주기를 이용하여 대규모 정보 시스템을 구축하는데 적합 컴포넌트 기반 방법론 : 기존의 시스템이나 소프트웨어를 구성하는 컴포넌트를 조합하여 하나의 새로운 애플리케이션을 만드는 방법론 - 컴포넌트의 재사용이 가능하여 시간과 노력을 절감할 수 있다. - 새로운 기능을 추가하는 것이 간단하여 확장성이 보장된다. - 유지 보수 비용을 최소화하고 생산성 및 품질을 향상시킬 수 있다. - 개발 준비 단계 → 분석 단계 → 설계 단계 → 구현 단계 → 테스트 단계 → 전개 단계 → 인도 단계 ※객체지향 방법론: 객체 중심, 상속, 캡슐화, 다형성, 추상화, 재사용성 높음. 답: 4번 |
92. 다음에서 설명하는 IT 기술은?
- 네트워크를 제어부, 데이터 전달부로 분리하여 네트워크 관리자가 보다 효율적으로 네트워크를 제어, 관리할 수 있는 기술
- 기존의 라우터, 스위치 등과 같이 하드웨어에 의존하는 네트워크 체계에서 안정성, 속도, 보안 등을 소프트웨어로 제어, 관리하기 위해 개발됨
① SDN(Software Defined Networking)
② NFS(Network File System)
③ Network Mapper
④ AOE Network
| SDN : "제어부와 데이터 전달부의 분리", "소프트웨어로 제어" - 기존의 네트워크 장비(라우터, 스위치 등)는 하드웨어 안에 '두뇌(제어부)'와 '손발(전달부)'이 함께 들어 있었습니다. - SDN은 이 제어부(Control Plane)를 중앙 서버로 옮기고, 실제 장비는 데이터 전송(Data Plane)만 담당하게 합니다. - 이렇게 하면 네트워크 관리자가 중앙에서 소프트웨어 코딩만으로 전 세계의 네트워크 경로를 한꺼번에 조절할 수 있습니다. ② NFS (Network File System): 네트워크를 통해 다른 컴퓨터에 있는 파일을 마치 내 컴퓨터에 있는 파일처럼 사용할 수 있게 해주는 파일 공유 시스템입니다. ③ Network Mapper (Nmap): 네트워크의 보안 취약점을 찾기 위해 어떤 포트가 열려 있는지, 어떤 호스트가 활성화되어 있는지 스캔하는 보안 도구입니다. ④ AOE Network (Activity On Edge): 프로젝트 일정을 관리할 때 작업(Activity)을 간선(Edge)으로 표시하는 네트워크 그래프입니다. (데이터 구조 및 프로젝트 관리 용어) 답: 1번 |
93. Secure 코딩에서 입력 데이터의 보안 약점과 관련한 설명으로 틀린 것은?
① SQL 삽입 : 사용자의 입력 값 등 외부 입력 값이 SQL 쿼리에 삽입되어 공격
② 크로스사이트 스크립트 : 검증되지 않은 외부 입력 값에 의해 브라우저에서 악의적인 코드가 실행
③ 운영체제 명령어 삽입 : 운영체제 명령어 파라미터 입력 값이 적절한 사전검증을 거치지 않고 사용되어 공격자가 운영체제 명령어를 조작
④ 자원 삽입 : 사용자가 내부 입력 값을 통해 시스템 내에 사용이 불가능한 자원을 지속적으로 입력함으로써 시스템에 과부하 발생
| 입력 데이터 검증 및 표현의 보안 약점 SQL 삽입 (SQL Injection) - 웹 응용 프로그램에 SQL을 삽입하여 내부 데이터베이스(DB) 서버의 데이터를 유출 및 변조하고, 관리자 인증을 우회하는 보안 약점 - 동적 쿼리에 사용되는 입력 데이터에 예약어 및 특수문자가 입력되지 않게 필터링 되도록 설정하여 방지할 수 있음 - 사용자의 입력 값 등 외부 입력 값이 SQL 쿼리에 삽입되어 공격 경로 조작 및 자원 삽입 - 데이터 입출력 경로를 조작하여 서버 자원을 수정, 삭제할 수 있는 보안 약점 - 사용자 입력값을 식별자로 사용하는 경우, 경로 순회 공격을 막는 필터를 사용하여 방지할 수 있음 크로스사이트 스크립트(XSS) - 웹페이지에 악의적인 스크립트를 삽입하여 방문자들의 정보를 탈취하거나, 비정상적인 기능 수행을 유발하는 보안 약점 - HTML 태그의 사용을 제한하거나 스크립트에 삽입되지 않도록 '<', '>', '&' 등의 문자를 다른 문자로 치환함으로써 방지할 수 있음 - 검증되지 않은 외부 입력 값에 의해 브라우저에서 악의적인 코드가 실행 운영체제 명령어 삽입 - 외부 입력값을 통해 시스템 명령어의 실행을 유도함으로써 권한을 탈취하거나 시스템 장애를 유발하는 보안 약점 - 웹 인터페이스를 통해 시스템 명령어가 전달되지 않도록 하고, 외부 입력값을 검증 없이 내부 명령어로 사용하지 않음으로써 방지할 수 있음 - 운영체제 명령어 파라미터 입력 값이 적절한 사전검증을 거치지 않고 사용되어 공격자가 운영체제 명령어를 조작 위험한 형식 파일 업로드 - 악의적인 명령어가 포함된 스크립트 파일을 업로드함으로써 시스템에 손상을 주거나, 시스템을 제어할 수 있는 보안 약점 - 업로드 되는 파일의 확장자 제한, 파일명의 암호화, 웹사이트와 파일 서버의 경로 분리, 실행 속성을 제거하는 등의 방법으로 방지할 수 있음 신뢰되지 않는 URL 주소로 자동접속 연결 - 입력 값으로 사이트 주소를 받는 경우 이를 조작하여 방문자를 피싱 사이트로 유도하는 보안 약점 - 연결되는 외부 사이트의 주소를 화이트 리스트로 관리함으로써 방지할 수 있음 메모리 버퍼 오버플로 - 연속된 메모리 공간을 사용하는 프로그램에서 할당된 메모리의 범위를 넘어선 위치에서 자료를 읽거나 쓰려고 할 때 발생하는 보안 약점 - 프로그램의 오동작을 유발시키거나, 악의적인 코드를 실행시켜 공격자가 프로그램을 통제할 수 있는 권한을 획득하게 함. - 메모리 버퍼를 사용할 경우 적절한 버퍼의 크기를 설정하고, 설정된 범위의 메모리 내에서 올바르게 읽거나 쓸 수 있도록 함으로써 방지할 수 있음 ※자원삽입 : 외부 입력값을 제어문이나 자원(파일, 소켓 등)의 식별자로 사용하여, 공격자가 의도하지 않은 자원에 접근하거나 시스템 자원을 수정/삭제하는 보안 약점 ※자원고갈 또는 서비스 거부(Dos)공격 : 사용자가 내부 입력 값을 통해 시스템 내에 사용이 불가능한 자원을 지속적으로 입력함으로써 시스템에 과부하 발생 답: 4번 |
94. DDoS 공격과 연관이 있는 공격 방법은?
① Secure shell
② Tribe Flood Network
③ Nimda
④ Deadlock
| DDos (Distributed Denial of Service, 분산 서비스 거부) 공격 여러 곳에 분산된 공격 지점에서 한 곳의 서버에 대해 분산 서비스 공격을 수행하는 것 분산 서비스 공격용 툴 - Trin00 - TFN (Tribe Flooding Network) - TFN2K - Stacheldraht ① Secure shell (SSH): 원격 컴퓨터에 안전하게 접속하기 위한 보안 프로토콜입니다. 기본 포트는 22번을 사용하며, 전송되는 모든 데이터를 암호화 ③ Nimda (님다): 2001년에 발생한 대규모 컴퓨터 웜(Worm)의 이름입니다. 이메일, 공유 폴더 등을 통해 급속도로 전파되었던 악성코드 ④ Deadlock (교착 상태): 운영체제(OS)에서 프로세스들이 서로 상대방이 가진 자원을 무한히 기다리느라 아무것도 못 하고 멈춰있는 상태. 보안 공격과는 거리가 먼 시스템 운영 용어입니다. 답: 2번 |
95. 메모리 상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술은?
① 모드체크
② 리커버리 통제
③ 시스로그
④ 스택가드
| 스택가드 (Stack Guard): - 널 포인터 역참조와 같이 주소가 저장되는 스택에서 발생하는 보안 약점을 막는 기술 중 하나 - 메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장한 후 그 값이 변경되었을 경우 오버플로우 상태로 판단하여 프로그램 실행을 중단함으로써 잘못된 복귀 주소의 호출을 막는 기술 ASLR (Address Space Layout Randomization) - 실행 시마다 메모리 주소(스택, 힙, 라이브러리 등)를 랜덤하게 배치하여 공격자가 실행 코드의 주소를 예측하지 못하게 함. DEP (Data Execution Prevention, 자료 실행 방지) - 메모리의 데이터 영역(스택 등)에 '실행 권한'을 제거하여, 공격자가 주입한 악성 코드가 실행되지 않도록 차단함 ① 모드체크 (Mode Check): 일반적으로 하드웨어나 소프트웨어가 특정 운영 모드(사용자 모드/커널 모드 등)에 있는지 확인하는 절차를 말하며, 이 문제의 메모리 보호 기술과는 거리가 멉니다. ② 리커버리 통제 (Recovery Control): 장애가 발생했을 때 시스템을 이전의 정상적인 상태로 복구하기 위한 통제 수단(백업, 체크포인트 등)을 의미하는 일반적인 보안/운영 용어입니다. ③ 시스로그 (Syslog): 유닉스/리눅스 계열 시스템에서 로그 메시지를 기록하고 관리하는 표준 프로토콜입니다. 시스템의 활동 기록을 남기는 용도이지 실행 중단 기술이 아닙니다. 답: 4번 |
96. OSI 7 Layer 전 계층의 프로토콜과 패킷 내부의 콘텐츠를 파악하여 침입 시도, 해킹 등을 탐지하고 트래픽을 조정하기 위한 패킷 분석 기술은?
① PLCP(Packet Level Control Processor)
② Traffic Distributor
③ Packet Tree
④ DPI(Deep Packet Inspection)
| 보안 관련 용어 서비스형 볼록체인 (BaaS, Blockchain as a Service) - 블록체인 앱의 개발 환경을 클라우드 기반으로 제공하는 서비스 - 블록체인 네트워크에 노드의 추가 및 제거가 용이하고, 블록체인 플랫폼마다 다른 블록체인 기술을 보다 편리하게 사용할수 있게 함 OWASP (the Open Web Application Security Project) - 웹 정보 노출이나 악성 코드, 스크립트, 보안이 취약한 부분을 연구하는 비영리 단체 - 보안 취약점 중 보안에 미치는 영향이 큰 것을 기준으로 선정한 10대 웹 애플리케이션 취약점을 3~4년에 한 번씩 발표하고 있음 TCP 래퍼 (TCP Wrapper) - 외부 컴퓨터의 접속 인가 여부를 점검하여 접속을 허용 및 거부하는 보안용 도구 - 네트워크에 접속하면 로그인한 다른 컴퓨터 사용자의 ID 및 로그를 조회하여 악용이 가능한 데, 이것을 방지하기 위한 방화벽 역할을 수행함 허니팟 (Honeypot) - 비정상적인 접근을 탐지하기 위해 설치해 둔 시스템 - 침입자를 속여 실제 공격을 당하는 것처럼 보여줌으로써 추적 및 공격기법에 대한 정보를 수집함 DPI (Deep Packet Inspection) OSI 7 Layer 전 계층의 프로토콜과 패킷 내부의 콘텐츠를 파악하여 침입 시도, 해킹 등을 탐지하고, 트래픽을 조정하기 위한 패킷 분석 기술 ① PLCP (Physical Layer Convergence Procedure): 무선 랜(IEEE 802.11)의 물리 계층에서 상위 매체 접근 제어(MAC) 계층과 연결하기 위해 사용하는 프로토콜입니다. 패킷 분석 기술이 아님. ② Traffic Distributor: 네트워크 트래픽을 여러 경로로 분산시켜 주는 장치나 기능을 통칭하는 일반적인 용어 ③ Packet Tree: 데이터 구조에서 패킷이나 데이터를 트리 형태로 관리하는 개념적인 용어일 뿐, 표준적인 패킷 분석 기술 명칭은 아님 답: 4번 |
97. 다음 내용이 설명하는 것은?
- 네트워크상에 광채널 스위치의 이점인 고속 전송과 장거리 연결 및 멀티 프로토콜 기능을 활용
- 각기 다른 운영체제를 가진 여러 기종들이 네트워크상에서 동일 저장장치의 데이터를 공유하게 함으로써, 여러 개의 저장장치나 백업 장비를 단일화시킨 시스템
① SAN
② MBR
③ NAC
④ NIC
| DAS - 연결방식 : 전용 케이블 (직접 연결) - 특징 : 설치가 쉽고 저렴함 - 내 컴퓨터의 외장하드 NAS - 연결방식 : 일반 LAN (이더넷) - 특징 : 파일 공유 용이 (NFS, SMB) - 거실에 둔 공유 폴더 SAN : 'DAS의 빠른 처리 + NAS의 파일 공유'의 장점 결합 - 연결방식 : 전용 고속망 (광채널(FC, 파이버 채널)) - 특징 : 고성능(처리 속도 빠름), 대규모 데이터 - 데이터 센터의 거대 창고 - 저장장치를 공유함으로써 여러개의 저장장치나 백업 장비를 단일화할 수 있다. - 초기 설치 시에는 별도의 네트워크를 구축해야 하므로 비용이 많이 듦 ② MBR (Master Boot Record): 저장장치의 첫 번째 섹터에 위치하며, 운영체제가 어디에 있는지 알려주는 부팅 정보 영역 ③ NAC (Network Access Control): 네트워크에 접속하는 기기의 보안 상태를 검사하여 접속 권한을 통제하는 보안 솔루션 (예: 백신 안 깔리면 인터넷 차단) ④ NIC (Network Interface Card): 컴퓨터를 네트워크에 연결하기 위한 하드웨어, 흔히 말하는 '랜카드' 답: 1번 |
98. Public 메소드로부터 Private 배열이 반환될 경우 발생하는 문제점으로 가장 옳은 것은?
① 메소드로의 접근이 불가능해진다.
② 배열의 주소가 외부로 공개되어 외부에서 접근할 수 있게 된다.
③ 시스템의 내부 정보가 노출된다.
④ 동기화 오류가 발생한다.
| 참조 값 (Reference) - 배열의 특징: 프로그래밍(Java 등)에서 배열은 객체이며, 배열 변수는 실제 데이터가 담긴 메모리 위치를 가리키는 '주소(참조 값)'를 가지고 있습니다. - 문제 상황: 클래스 내부에서 private으로 꽁꽁 숨겨둔 배열이라 할지라도, public 메소드가 이 배열의 주소를 그대로 리턴해버리면 어떻게 될까요? - 결과: 외부에서 이 주소를 받아버리는 순간, private 키워드는 무의미해집니다. 외부 코드가 해당 주소에 직접 접근하여 배열의 내용을 마음대로 수정(조작)할 수 있게 됩니다. 이를 "객체의 무결성이 깨졌다"고 표현합니다. ① 메소드로의 접근이 불가능해진다: public 메소드이므로 접근은 아주 잘 됩니다. 그게 문제입니다. ③ 시스템의 내부 정보가 노출된다: 배열 내용이 보일 순 있지만, 이 문제의 가장 핵심적인 '보안 약점'은 정보 노출보다는 데이터의 직접적인 조작 가능성입니다. (3번은 주로 '오류 메시지 노출' 등에서 정답으로 쓰입니다.) ④ 동기화 오류가 발생한다: 동기화(Synchronization)는 여러 스레드가 동시에 접근할 때 발생하는 문제로, 이 문제의 본질인 접근 제어 위반과는 결이 다릅니다. 답: 2번 |
99. SSH(Secure Shell)에 대한 설명으로 틀린 것은?
① SSH의 기본 네트워크 포트는 25번을 사용한다.
② 전송되는 데이터는 암호화 된다.
③ 키를 통한 인증은 클라이언트의 공개키를 서버에 등록해야 한다.
④ 서로 연결되어 있는 컴퓨터 간 원격 명령 실행이나 셀 서비스 등을 수행한다.
| SSH (Secure SHell, 시큐어 셀) SSH는 다른 컴퓨터에 로그인, 원격 명령 실행, 파일 복사 등을 수행할 수 있도록 다양한 기능을 지원하는 프로토콜 또는 이를 이용한 응용 프로그램 - 데이터 암호화와 강력한 인증 방법으로 보안성이 낮은 네트워크에서도 안전하게 통신할 수 있다. - 키(key)를 통한 인증 방법을 사용하려면 사전에 클라이언트의 공개키를 서버에 등록해야 한다. - 기본적으로 22번 포트를 사용한다. 답: 1번 |
100. 프로젝트의 각 작업들이 언제 시작하고 언제 종료되는지에 대한 작업 일정을 막대 도표를 이용하여 표시하는 프로젝트 일정표는?
① 간트 차트
② 임계 경로 기법
③ PERT
④ WBS
| 간트 차트 (Gantt Chart) - 프로젝트의 각 작업(Task)을 시간축에 따라 막대 모양으로 그린 도표입니다. - 어느 작업이 언제 시작해서 언제 끝나는지, 작업 간에 기간이 어떻게 겹치는지 한눈에 보기 편합니다. - 수평 막대의 길이는 각 작업의 소요 기간을 나타냅니다. 임계 경로 기법 (CPM, Critical Path Method): - 프로젝트를 끝내기 위해 필요한 최장 경로를 찾는 기법입니다. - 이 경로에 있는 작업이 지연되면 전체 프로젝트가 늦어지므로 집중 관리가 필요합니다. PERT (Program Evaluation and Review Technique): - 낙관치, 기대치, 비관치라는 3점 추정 방식을 사용하여 프로젝트 완료 시간을 예측하는 네트워크 모델입니다. (불확실성이 높은 프로젝트에 사용) WBS (Work Breakdown Structure, 작업 분할 구조도): - 프로젝트 전체를 작은 작업 단위로 계층적으로 분할한 계층 구조도입니다. (막대 도표가 아니라 트리 형태에 가깝습니다.) 답: 1번 "막대 도표" → 간트 차트 "3점 추정(낙관, 비관, 기대)" → PERT "최장 경로(지연 방지)" → CPM (임계 경로 기법) "계층적 분할" → WBS |
| 정보처리기사 필기 기출문제 | |||||
| 24년 3회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 24년 2회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 24년 1회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 23년 3회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 23년 2회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
| 23년 1회 | 1과목 | 2과목 | 3과목 | 4과목 | 5과목 |
'자격증 요약 > 정보처리기사' 카테고리의 다른 글
| [24년 1회 5과목] 정보처리기사 필기 문제 풀이 (2) | 2026.01.23 |
|---|---|
| [24년 2회 5과목] 정보처리기사 필기 문제 풀이 (0) | 2026.01.22 |
| [23년 1회 2과목] 정보처리기사 필기 문제 풀이 (0) | 2026.01.21 |
| [23년 2회 2과목] 정보처리기사 필기 문제 풀이 (1) | 2026.01.21 |
| [23년 3회 2과목] 정보처리기사 필기 문제 풀이 (1) | 2026.01.19 |