본문 바로가기

안녕하세요!

자격증 준비/정보처리기사

[ 정보처리기사 ] 실기 / 2022년 1회 11~20번

다음에서 설명하는 공격 기법을 쓰시오.

이 공격은 APT 공격에서 주로 쓰이는 공격으로, 공격 대상이 방문할 가능성이 있는
합법적인웹 사이트를 미리 감염시킨 뒤, 잠복하고 있다가 공격 대상이 방문하면
대상의 컴퓨테어 악성코드를 설치하는 방식이다. 
워터링 홀(Watering Hole)
APT(Adavanced Persistent Threat)란 특정 목표 대상에 대해 취약점을 파악하고
지속적으로 다양한 방법을 이용해 공격하는 방법을 말한다.

그 중 Cyber Kill Chain은 APT에 대응하기 위해 록히드 마틴사가 제시한방법으로,
공격자의 공격 단계 중하나만 사전에 확실히 제거해도 실제 공격까지 이어질 수 없다는 점에서 착안한 방어 전략이다.  

 

다음은 V&V 모델을 형상화한 V 다이어그램이다. 빈칸에 들어갈 말을 쓰시오.

a. 단위 테스트
b. 통합 테스트
c. 시스템 테스트
d. 인수 테스트

 

다음 SQL 결과에 알맞는 쿼리를 작성하시오.

[ 성적 테이블 ]

번호 이름 점수
1 홍길동 95
2 임꺽정 90
3 유관순 80
4 이성계 60
SELECT 번호, 이름, 점수
FROM 성적
(  1  ) BY (  2  ) (  3  )

1 : ORDER

2 : 점수
3 : DESC

 

다음에서 설명하는 파이썬 함수를 작성하시오.

 1. 요소를 확장해준다는 의미를 가지고 있으며, 모든 항목을 하나의 요소로 추가한다.

2. 리스트 내부요소를 꺼내주는 함수로서, 그 요소는 리스트 안에서 삭제하고 그 값을 반환한다.

3. 리스트 내부의 요소의 순서는 뒤집는 역할을 한다. 
1. extend
2. pop
3. reverse 

 

다음 파이썬 코드에서 출력되는 a와 b의값을 작성하시오.

def exam(num1, num2=2):
	print('a=', num1, 'b=', num2)
exam(20)
a= 20 b= 2

 

다음 Java 코드 중에서 밑줄에 들어갈 알맞은 코드를 작성하시오.

class Car implements Runnable{
	int a;
    
    public void run() {
    	system.out.print("Hello")
    }
}

public class Main {
	public static void main(String[] args) {
    	Thread t1 = new Thread(new ___());
        t1.start();
    }
}
 Car

 

다음 Java 코드의 출력 결과를 작성하시오.

class A {
    int a;
    int b;
}

public class Main {

    static void func1(A m) {
    	m.a *= 10;
    }
    
    static void func2(A m) {
    	m.a += m.b;
    }
    
    public static void main(String args[]) {
    	A m = new A();
        
        m.a = 100;
        func1(m);
        m.b = m.a;
        func2(m);
        
        System.out.printf("%d", m.a);
    }
}
2000

 

다음 소스코드에서 입력값 5가 들어왔을 때 출력되는 값을 작성하시오.

#include <stdio.h>
int func(int a) {
    if(a <= 1) return 1;
    return a * func(a-1);
}

int main() {
    int a;
    scanf("%d", &a);
    printf("%d", func(a));
}
120
a의 값이 1보다 작거나 같을 때까지 func 함수를 호출하고,
a=1이 되었을 때 return 값으로 돌아가
a * func(a-1)을 수행하게 된다. 

쉽게 말해 우리가 배웠던 팩토리얼인 5! = 120으로 이해하면 된다!

 

다음 C언어 프로그램의 괄호 안에 들어갈 알맞은 연산자를 작성하시오.

#include <stdio.h>
int main() {
    int number = 1234;
    int div = 10;
    int result = 0;

while(number( 1 ) 0) {
    result = result * div;
    result = result + number( 2 ) div;
    number = number( 3 ) div;
}

print("%d", result);
return 0;
}
결과 : 4321
1 : >
2 : %
3 : /

 

다음 C언어 프로그램의 결과를 쓰시오.

#include <stdio.h>
int isPrime(int number) {
    int i;
    for(i=2; i<number; i++) {
    	if(number % i == 0) return 0;
    }
    return 1:
}

int main(void) {
    int number = 13195 max_div=0, i;
    for(i=2, i<number; i++)
    if(isPrime(i) == 1 && number % i == 0) max_div = i;
    
    printf("%d", max_div);
    return 0;
}
29

반응형

 

728x90
반응형

loading