관리 메뉴

Information Security

정보보안기사 18회 실기 본문

보안기사 실기

정보보안기사 18회 실기

HackingPractice 2022. 10. 18. 07:30

[단답형]

1. EAP를 통해 인증을 수행하고 AES-CCMP 기반 암호화를 지원하는 무선랜 보안 표준은?

(답) WPA2

 

* 최근 기출문제에서도 지속적으로 출제된 문제입니다. 점수를 주기 위한 문제이므로 반드시 맞춰야 합니다.

2. 바이러스 토탈(Virustotal)에서 제작하였고, 악성코드의 특성과 행위에 포함된 패턴을 이용하여 악성코드를 분류하는 툴의 이름은?

(답) YARA

* 보안관제 실무를 수행하는 분들에게는 익숙한 용어이겠으나, 그렇지 않은 대다수 분들은 맞추기 어려운 문제였습니다.

3. SW 개발 보안과 관련하여 ( )에 들어갈 취약점명(공격기법)을 기술하시오.

( A ) : DB와 연결되어 있는 애플리케이션의 입력값을 조작하여 의도하지 않은 결과를 반환하도록 하는 공격 기법

( B ) : 게시판, 웹, 메일 등에 삽입된 악의적인 스크립트에 의해 쿠키 및 기타 개인정보를 특정 사이트로 전송시키는 공격 기법

( C ) : 적절한 검증 절차를 수행하지 않은 사용자 입력값이 운영체제 명령어의 일부로 전달되어 의도하지 않은 시스템 명령어가 실행되도록 하는 공격 기법

(답) SQL Injection, XSS, 운영체제 명령어 삽입

* 기출문제와 교재에 다수 등장했던 공격 기법입니다. 점수를 주기 위한 문제이므로 반드시 맞춰야 합니다.

4. 마이크로소프트 오피스와 애플리케이션 사이 데이터를 전달하는 프로토콜로 엑셀에서 이 기능이 활성화될 시 악용될 수 있다. 해당 프로토콜의 이름을 기술하시오.

(답) DDE(Dynamic Data Exchange)

* 기출문제와 동일하게 출제되었습니다. 점수를 주기 위한 문제이므로 반드시 맞춰야 합니다.

5. 위험관리와 관련하여 ( )에 들어갈 용어를 기술하시오.

( A ) : ( B )로 부터 보호해야 할 대상

( B ) : ( A ) 에 손실을 발생시키는 원인이나 행위

( C ) : ( B ) 에 의하여 손실이 발생하게 되는 ( A )에 내재된 약점

(답) 자산, 위협, 취약점

* 위험 관리의 3요소는 기출문제와 교재에서 많이 다루어진 내용입니다. 반드시 맞춰야 하는 문제입니다.

6. 정보의 무결성, 서비스의 연속성, 정보자산의 보호를 위한 것으로 기업 거버넌스의 부분집합으로서 전략적 방향을 제시하며 목적 달성, 적절한 위험관리, 조직 자산의 책임 있는 사용, 기업 보안 프로그램의 성공과 실패가 모니터링됨을 보장하는 것을 무엇이라고 하나?

(답) 정보보안 거버넌스

* 문제가 명확하지 않아 정보보안 거버넌스를 답으로 가정하고 문제를 복원했습니다. 정보보호관리체계는 정보자산의 무결성, 기밀성, 가용성을 보장하기 위한 절차와 과정을 체계적으로 수립, 문서화하고 지속적으로 관리 운영하는 체계입니다. 정보보안거버넌스는 정보보호관리체계 활동의 효과성을 보장하기 위하여 평가, 지시, 모니터링하는 상위 레벨에서의 프로세스 및 실행 체계입니다.

7. DDoS, APT 등 공격 수행 시 C&C 서버와 접속하기 위한 도메인명을 지속적으로 변경하여 보안장비의 탐지를 우회하기 위한 기법을 무엇이라고 하는가? ​

(답) DGA(Domain Generation Algorithm)

* 정답을 맞힌 분이 거의 없을 것으로 보이는 생소한 문제입니다.

- DGA는 공격 대상 시스템에 설치된 악성코드가 C&C와 통신하는 과정에서 특정한 규칙에 따라 도메인명을 임의로 생성하는 알고리즘입니다. C&C 서버로 접속하는 도메인명을 지속적으로 변경하기 때문에 보안장비의 Domain Reputation 기반 탐지 및 차단을 우회할 수 있습니다.

- Domain Shadowing의 경우 적법한 절차로 도메인을 소유하고 있는 도메인 관리자의 개인 정보를 탈취하여, 도메인 소유자 몰래, 많은 서브도메인을 등록시켜 놓고 사용하는 기법입니다. 문제에서 도메인명을 임시로 부여한다고 했다면 Domain Shadowing이 아닌 DGA가 정답에 가까운 것으로 판단됩니다.

8. 위험분석절차 중 다음 ( )안에 들어갈 절차명을 기술하시오.

1) ( A )

2) ( B )

3) 기존 보안대책 평가

4) 취약성 평가

5) 위험평가

(답)

( A ) : 자산식별

( B ) : 자산 가치 및 의존도 평가

* 교재에 있는 내용이나, 정확하게 절차명을 기술하기는 어려웠으리라 판단됩니다. 최소한 부분점수 1점(자산식별) 획득이 필요합니다.

9. HTTP 관련 공격 중 헤더의 CRLF(개행문자) 필드 부분을 조작함으로써 웹서버로 조작된 HTTP 헤더를 지속적으로 보내 서비스의 가용성을 떨어뜨리는 공격은?

(답) Slow HTTP Header DoS 공격(Slowloris)

* 교재와 기출문제로 많이 다루어진 문제로 반드시 맞춰야 합니다.

10. 모바일 앱의 특정화면으로 바로 이동할 수 있도록 지원하는 기능으로 공격자에 의하여 악용되는 경우 앱내 민감한 개인정보(카드정보, 주소 등)가 노출될 수 있는 취약점이 있다. 이 기능의 이름은 무엇인가?

(답) 모바일 딥링크

* 정답을 맞춘 분이 거의 없을 것으로 보이는 생소한 문제입니다.

[서술형]

11. SQL Injection을 예방하기 위한 prepared statement 에 대하여 다음 물음에 답하시오.

(1) prepared statement 의 개념

(2) prepared statement가 SQL injection 공격을 막을 수 있는 이유

(답)

(1) 최초에 한번 쿼리를 분석해 최적화 수행 후 메모리에 저장해 두고, 다음 요청 부터는 저장된 결과를 재사용하여 쿼리를 수행하는 방식이다. 성능 측면의 효율이 높고, SQL 인젝션 방지가 가능하다. 참고로 일반 statement 방식은 실행시마다 쿼리를 분석해 최적화 수행후 실행하는 방식이라 효율이 낮고 SQL Injection 공격에 취약함.

(2) 사용자가 입력한 값이 SQL 명령의 일부가 아닌 매개 변수로 처리되기 때문에 SQL 인젝션 공격을 막을 수 있음.

예) statement 방식

String query = "INSERT into student VALUES('" + user + "')";

Statement stmt = conn.createStatement();

stmt.executeQuery(query);

user에 Robert');DROP table students;-- 값을 입력면 다음과 같이 SQL명령문의 일부로 처리되어 students 테이블이 drop되게 됨.

INSERT into student VALUES('Robert');DROP table students;--')

예) preparedstatement 방식

PreparedStatement stmt = conn.prepareStatement("INSERT into student VALUES(?)");

stmt.setString(1,user);

stmt.execute();

user에 Robert');DROP table students;-- 값을 입력하더라도 해당 값이 그대로 매개변수로 user 컬럼에 입력이 됨.

* Prepared Statement 문에 대한 이해가 없으면, 답변하기 까다로운 문제 입니다. 교재에 있는 예문을 최대한 끄집어 내어, statement 방식과 비교를 통해 설명을 한다면 좀 더 효과적인 답변이 될 수 있습니다. 부분점수 7점 이상 획득이 필요합니다.

12. DRDoS에 대하여 다음을 설명하시오.

1) DRDoS의 공격 원리

2) 기존 DoS와의 차이점

3) Unicast RPF

(답)

1) 공격자는 소스 IP를 공격대상의 IP로 위조하여 다수의 반사서버로 요청을 보내고, 공격대상 서버는 반사서버로 부터 다수의 응답을 받아 서비스 거부 상태에 빠짐

2) a) 출발지 IP가 위조되고, 반사서버를 통해 공격이 수행되므로 공격의 출처를 파악하기 어려움.

b) 다수의 좀비 PC를 동원하지 않더라도 대량의 공격 패킷을 만들어 낼수 있어 효율이 높음

3) ​인터페이스를 통해 들어오는 패킷의 ip에 대하여 라우팅 테이블을 확인하여 들어온 인터페이스로 나갈 수 있는 Reverse path가 존재하면 통과시키고, 존재하지 않으면 IP가 위조된 것으로 판단하고 차단 시킴

* DRDoS, Unicast RPF는 교재에 있는 토픽이므로 10점 이상 획득이 필요 합니다.

13. 패킷 필터링 방화벽과 관련하여 다음 물음에 답하시오.

1) 존재하지 않는 외부 IP를 이용한 Spoofing 공격에 대응하기 위한 패킷필터링 방화벽 기술의 이름과 원리

2) 공격자가 패킷을 소형 단편화하여 tiny fragment 공격을 수행하는 이유

3) Tiny fragment 공격 대응 방법

4) stateful 패킷필터링과 일반 패킷 필터링 방화벽의 차이점

(답)

1) Ingress 필터링 : 인터넷 상에서 사용되지 않는 IP 대역은 들어오지 못하게 차단함.

2) 쪼개진 패킷을 재조합하는 기능을 제공하지 않는 방화벽의 경우 이렇게 다수로 쪼개진 패킷을 탐지하거나 차단할 수 없는 약점이 있기 때문임.

3-1) 단편화된 패킷을 재조합하는 기능이 있는 방화벽을 사용

3-2) Port 번호가 포함되어 있지 않을 정도로 분할된 패킷은 필터링 장비(IDS, IPS)에서 탐지 or 차단.

4-1) 일반 패킷 필터링 방화벽은 지나가는 패킷 헤더안의 IP주소와 Port 주소만을 단순검색하여 통제함. Tiny fragment 와 같은 공격에 취약하나 처리 속도는 빠름.

4-2) Stateful 패킷 필터링 방화벽은 동일한 출발지 IP주소, 출발지 포트 번호, 목적지 IP주소, 목적지 포트 번호 상태 등을 갖는 패킷들의 상태를 저장하고 그룹으로 필터링 함으로써 일반 패킷 필터링 방식보다 신뢰성 높고 정교하게 공격을 막을 수 있음. 예를 들어 SYN 요청을 통해 Establish가 되지 않은 상태에서 Establish된 것처럼 조작된 패킷은 차단 가능함.

* Stateful Inspection 기반 방화벽은 교재에 포함된 토픽 입니다. 물어본 4개의 문항을 정확히 맞추기는 어렵겠으나, stateful에 대하여 이해하고 있는 내용을 기반으로 최대한 성의있고 치열하게 답안을 작성하는 것이 중요합니다. 부분 점수 3~5점 획득이 필요합니다.

[실무형]

14. 다음은 email 관련 로그이다. 이에 대하여 다음 물음에 답하시오.

[Email로그]

1 Delivered-To: hbiden@rosemontseneca.com

2 Received: by 10.36.47.149 with SMTP id j143csp13601itj;

3 Fri, 17 Apr 2015 06:00:53 -0700 (PDT)

4 X-Received: by 10.55.27.42 with SMTP id b42mr5166039qkb.53.1429275653296;

5 Fri, 17 Apr 2015 06:00:53 -0700 (PDT)

6 Return-Path: <v.pozharskyi.ukraine@gmail.com>

7 Received: from mail-qc0-x232.google.com (mail-qc0-x232.google.com. [2607:f8b0:400d:c01::232])

8 by mx.google.com with ESMTPS id u123si11512941qhd.83.2015.04.17.06.00.52

9 for <hbiden@rosemontseneca.com>

10 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);

11 Fri, 17 Apr 2015 06:00:53 -0700 (PDT)

12 Received-SPF: pass (google.com: domain of v.pozharskyi.ukraine@gmail.com designates 2607:f8b0:400d:c01::232 as permitted sender) client-ip=2607:f8b0:400d:c01::232;

13 Authentication-Results: mx.google.com;

14 spf=pass (google.com: domain of v.pozharskyi.ukraine@gmail.com designates 2607:f8b0:400d:c01::232 as permitted sender) smtp.mail=v.pozharskyi.ukraine@gmail.com;

15 dkim=pass header.i=@gmail.com;

1) 10번째 줄에서 RSA의 용도는?

2) 이메일 로그에서 확인할 수 있는 스팸메일 대응 기법명과 동작원리를 설명하시오.

(답)

1) 인증서(서버 공개키) 검증을 위하여 사용됨. 즉, TLS 로 암호화통신을 하기 위하여 ECDHE로 키교환을 하는 과정에서 생성되는 변수를 송신자의 개인키로 서명하고 공개키로 검증하도록 함으로서 송신자의 정당성을 인증하기 위함. 이를 통하여 키교환 과정에서의 중간자 공격을 막을 수 있음.

*참고로 cipher에서 ECDHE는 키교환, RSA는 인증, AES128로 암호화, GCM(Galois/Counter Mode)으로 블록암호화 운용방식 선택, SHA256으로 메시지 인증(무결성 검증)을 의미함.

2-1) SPF : 이메일 발송도메인의 DNS에 txt레코드로 등록된 IP주소와 실제 메일의 송신 IP를 비교하여 메일 도메인의 정당성을 검증

2-2) DKIM : 이메일 서버의 개인키로 이메일 헤더를 전자서명하고, 메일 도메인서버의 txt레코드로 등록된 공개키로 검증하도록 함으로써, 메일 헤더가 변조되지 않았고 실제 해당 도메인에서 발송된 것을 확인 가능

* 실제 문제에서 제시된 로그에서 spf, dkim이 모두 나왔다고 가정하고 답안을 작성했습니다. SPF, DKIM은 기출문제이기 때문에 정확하게 이해하고 있어야 합니다. 그리고, RSA를 많은 분들이 암호화라고 하신 것 같은데, 인증이 맞습니다. 부분점수 7점 이상 획득이 필요한 문제입니다.

15. 리눅스의 보안 설정과 관련하여 다음 물음에 답하시오.

1) 계정임계값을 설정하는 파일명( A )과 ( B ) 에 들어갈 설정값을 기술하시오.

auth required /lib/security/pam_tally.so ( B ) =5 unlock_time=120 no_magic root reset

2) IPTable에 신규 정책을 등록하려고 한다. 패킷을 차단하기 위해 ( C )에 들어갈 옵션은 무엇인가?

#iptables -A INPUT -p tcp -s 172.30.1.55 --dport 21 -j ( C )

3) /etc/shadow 파일의 소유자를 root로 변경하고(D), 소유자에게만 읽기 권한을 부여(E)하기 위한 명령어를 기술하시오.

4) 다음 아파치 설정에서 Limitrequestbody 5000000 의 의미(F)를 설명하시오.

<Directory "var/www/html/uploads">

Limitrequestbody 5000000

</Directory>

(답)

(1-A) /etc/pam.d/system-auth or /etc/pam.d/common-auth

(1-B) deny

(2-C) DROP

(3-D) chown root /etc/shadow

(3-E) chmod 400 /etc/shadow

(4-F) 아파치 웹서버에 업로드 가능한 파일의 크기를 5,000,000 바이트(약 5M바이트)로 제한함으로써 악의적인 웹 쉘 업로드를 방지하기 위한 설정임.

* 리눅스 OS 보안과 관련하여 기출문제로 자주 출제되었던 항목이 통합되어 출제 되었습니다. 10점 이상 획득이 필요합니다.

16. 특정 공격과 관련된 로그를 보고 다음 물음에 답하시오.

[로그]

DNS standard query 0x2872 ANY cpsc.gov United states Korea, Republic of

DNS standard query 0x2872 ANY cpsc.gov United states Korea, Republic of

DNS standard query 0x2872 ANY cpsc.gov United states Korea, Republic of

DNS standard query 0x2872 ANY cpsc.gov United states Korea, Republic of

1) 어떤 공격이 수행된 것인가?

2) 해당 공격이 수행된 것으로 판단한 이유는?

3) 해당 공격의 원리는?

4) 공격자들이 이 기법을 사용하는 이유 두 가지는?

(답)

1) DNS 증폭 DoS 공격(DNS amplifcation DoS attack)

2) DNS query 수행시 ANY 타입으로 질의를 다수 수행하였음.

3) 출발지 IP를 공격 대상 서버의 IP로 위조 후 DNS 쿼리 타입을 ANY로 지정하여 request를 대량으로 수행하면, 다양한 TYPE의 레코드들이 모두 Response 되므로 응답이 증폭되어 공격 대상 서버에 부하를 주게됨

4-1) 출발지 IP가 위조되고, 반사 서버를 통해 공격이 수행되므로 공격의 출처를 파악하기 어려움. 특히 UDP는 별도의 인증 절차가 없으므로 공격 수행이 용이함

4-2) 다수의 좀비 PC를 동원하지 않더라도 대량의 공격 패킷을 만들어 낼 수 있어 효율이 높음. 특히 쿼리 타입을 any나 txt로 하면 reponse 사이즈가 증폭되어 작은 사이즈의 DNS 질의에 대해 큰 사이즈의 DNS 응답 메시지 발생되어 증폭 효과가 큼. 90바이트 질의, 3370바이트 응답(37.4배 증폭 효과)

'보안기사 실기' 카테고리의 다른 글

정보보안기사 20회 실기  (0) 2022.10.18
정보보안기사 19회 실기  (0) 2022.10.18
정보보안기사 16회 실기  (0) 2022.02.11
정보보안기사 17회 실기  (0) 2021.09.23
정보보안기사 실기 15회  (0) 2020.11.09