자격증/정보처리산업기사
Part 02. 프로그래밍 언어 활용 | Chapter 05. 보안 공격 및 예방
devvnn
2022. 2. 8. 21:14
Section 01. 위험 관리 ★★
1. 위험 분석 방법론
- 계량화 여부에 따른 방법 : 정량적, 정성적 기법
- 접근 방식에 따른 방법 : 전문가 판단법, 상세 위험 접근법, 복합적 접근법
2. 취약성 유형 中 결점 이용 유형
- 웹 서버를 운영하는 운영체제에 다량의 트래픽을 일으켜 운영체제가 중단되는 경우의 취약성 유형
3. 잔여 위험
- 잔여 위험이 너무 작은 것도 바람직하지 않음
- 잔여위험은 항상 음(-)이 아닌 양(+)의 비트 값만을 가짐
- 잔여 위험의 비율이 낮다는 것은 통제 구현 비용이 증가했다고 볼 수 있기때문에, 위험 관리가 효율적으로 되었다고 볼 수 없음
4. 정보 시스템의 취약성
- 인적 취약성 : 가장 위험한 취약성
- 환경적 취약성 : 먼지, 습도, 온도
- 자연적 취약점 : 천재지변
- 소프트웨어 취약성 : 프로그램이나 DBMS 등이 접근이 허술
- 하드웨어 취약성 : 시스템의 고장으로 인해 정보가 파괴
Section 02. 악성 프로그램 ★★★
1. 백도어 공격
- 넷버스(Netbus), 백오리피스(Back Orifice) 등
# 무차별 공격 : 가능한 모든 값을 대입하여 암호를 해독하는 공격 방법으로 성공하지 못하더라도 서버에 부하를 줄 수 있는 방법
2. 버포 오버플로우(소프트웨어 취약점)
- 메모리를 다루는 데 오류가 발생하여 잘못된 동작을 하는 프로그램 취약점
# FTP 바운스 공격 : FTP 프로토콜 자체의 취약점을 이용한 공격 방법
# SQL 삽입 : 데이터베이스의 인증을 우회하거나 데이터를 조작
# 디렉터리 접근 공격 : 웹 서버의 관리 소홀로 파일, 디렉터리 등을 노출시키는 취약점을 이용
3. 랜섬웨어(Ransomware, 정보보안 침해 공격)
- 인터넷 사용자의 컴퓨터에 침입해 내부 문서 파일 등을 암호화해 사용자가 열지 못하게 하는 공격으로, 암호 해독용 프로그램의 전달을 조건으로 사용자에게 돈을 요구하기도 함
# Smishing(스미싱) : 문자 메시지 내에 인터넷 주소를 사용자가 클릭하면 악성 코드가 스마트폰에 설치되어 피해자가 모르는 사이에 소액결제 피해 발생 또는 개인, 금융 정보를 탈취하는 피해 유형
# C-brain : 아무런 의미가 없는 용어로 회사명이나 제품명으로 사용되는 상업적인 단어
# Trojan Horse(트로이잔 목마) 공격 : 일반 사용자의 이메일에 트로이잔 목마 프로그램을 추가, 일반 사용자는 자신도 모르게 트로이잔 프로그램을 실행시켜 해당 시스템에 접근할 수 있는 백도어를 만들게 하거나 시스템에 피해를 주게 함
4. Smurfing
- IP 또는 ICMP의 특성을 악용하여 특정 사이트에 집중적으로 데이터를 보내 네트워크 또는 시스템의 상태를 불능으로 만드는 공격 방법
# TearDrop : 네트워크 프로토콜 스택의 취약점을 이용한 공격 방법으로 시스템에서 패킷을 재조립 할 때, 비정상 패킷이 정상 패킷의 재조립을 방해함으로써 네트워크를 마비시키는 공격
# Qshing : QR 코드를 통해 악성 앱을 내려 받도록 유도하거나 악성 프로그램을 설치하여 공격하는 기법
5. Key Logger Attack
- 컴퓨터 사용자의 키보드 움직임을 탐지해 아이디, 패스워드 등 개인의 중요한 정보를 몰래 빼가는 해킹 공격
# Worm : 파괴 기능 없이 확신의 목적을 갖는 프로그램
# Rollback : 데이터베이스에서 하나의 트랜잭션을 처리하는 중에 오류가 발생하면 취소하여 원래의 내용으로 복원하게 하는 작업
# Zombie Worm : 사용자의 시스템에 몰래 머무르다가 해커의 명령에 따라 웜을 발생시키는 컴퓨터 시스템
4. 스택 가드
- 메모리상에서 프로그램의 복귀 주소와 변수 사이에 특정 값을 저장해 두었다가 그 값이 변경되었을 경우 오버플로우 상태로 가정하여 프로그램 실행을 중단하는 기술
# 모드 체크 : 데이터를 입력할 때 문자의 종류를 체크하여 이상 유무를 검색하는 방식
# 리커버리 통제 : 전문 보안 시스템 관리자 집단이나 조직에 체계적인 통제를 받아 복구해야 완벽하지는 않더라도 원래 상태와 가까운 상태로 복구할 수 있음
# 시스로그 : 유닉스/리눅스 운영체제에서 관리하는 로그 파일로 응용 프로그램의 실행 내용을 기록
Section 03. 암호 기술 ★★★
1. 송수신측에서 전달된 메시지나 신호를 인증하는 이유
- 메시지나 신호의 기밀성 유지를 위하여(기밀성)
- 수신측에서 수신된 정보를 부정하지 않게 하기 위하여(부인봉쇄)
- 정보 변형 여부를 검증하기 위하여(무결성)
# 전달된 메시지의 순서와 속도맞춤 -> 통신 네트워크 기술에서 전달될 메시지를 효과적으로 목적지에 전달하기 위한 기술
2. 정보가 갖추어야 할 기능
- 무결성, 기밀성, 가용성, 부인봉쇄
3. 평문 Cryptography 를 4인 블록으로 나누고 블록 내에서 {3, 1, 2, 4}의 순서대로 전치 암호를 생성
- 평문 : Cryptography
- 블록 : Cryp togr aphy
- 암호 : yCrp gtor hapy(블록 내에서 {3, 1, 2, 4}의 순서대로 전치 암호를 생성)
4. 공개키 암호화 방식
- 암호와 해독에 다른 키를 사용
- 암호키는 공개되기 때문에 누구나 사용할 수 있음(키 분배가 용이, 관리해야 할 키 개수가 적음)
- 해독키는 당사자만 알고있음
- 공개키로 암호화된 메시지는 반드시 개인키(비밀키)로 복호화해야 한다
- 비대칭 암호 기법이라고도 함
- 대표적인 기법은 RSA기법이 있음
# 키 분배는 비밀키 암호 방식보다 어렵지 X
Section 04. 정보 추적 기술 ★★
1. DRM(디지털 저작권 관리)
- 디지털 콘텐츠의 저작권을 보호하기 위한 기술로 DVD와 다운로드된 음원, 유료 소프트웨어 등에 적용됨. 다운로드된 음원, 유료 소프트웨어 등에 적용. 이는 주로 콘텐츠의 불법적인 복제나 허가받지 않은 기기에서의 콘텐츠 소비를 방지
# IPS : 침입 예방 시스템
# GPL : 현재 가장 많은 오픈 소스 소프트웨어가 채택하고 있는 라이선스
# VPN : 공중망을 사설망처럼 이용하는 가상 사설망
2. 디지털 저작권 관리의 기술 요소
- 크랙 방지 기술
- 정책 관리 기술
- 암호화 기술
# 네트워크를 보호하는 방화벽과는 관계 없음
3. 핑거 프린팅 : 디지털 콘텐츠를 구매할 때 구매자의 정보를 삽입하여 불법 배포 발견 시 최초의 배포자를 추적할 수 있게 하는 기술
- 워터마킹 : 원본의 내용을 왜곡하지 않는 범위 내에서 사용자가 인식하지 못하도록 저작권 정보를 디지털 콘텐츠에 삽입하는 기술
4. 디지털 증거의 법적 효력을 인정받기 위해 포렌식 과정에서 지켜야 하는 원칙
- 정당성의 원칙
- 무결성의 원칙
- 재현의 원칙
- 신속성의 원칙
- 연계 보관성의 원칙
예상문제
1. 위험 분석 방법
- 델파이법 : 시스템에 관한 전문적인 지식을 가진 전문가 집단을 구성하고 토론을 통해 정보 시스템이 직면한 다양한 위협과 취약성을 분석하는 방법
- 상세 위험 분석 접근법 : 자신의 가치 분석, 위협 분석, 취약점 분석을 수행하여 위험을 분석하는 방법
- 기준선 접근법 : 표준화된 보호 대책의 세트를 체크 리스트 형태로 구현하여 이를 기반으로 보호 대책을 식별하는 방법
2. 상세 위험 접근법
- 조직 내에 알맞은 정보보안 대책을 마련할 수 있지만 전문적인 지식이 필요하며, 시간과 노력이 많이 소요되는 위험 분석 방법론
3-4. 사회 공학적 공격
- 정보보안에서 사람의 심리적인 취약점을 악용하여 비밀 정보를 취득하거나 컴퓨터 접근 권한 등을 얻으려고 하는 공격 방법
- 불법적인 조직의 공작으로 정보가 노출된다
- 조직 내부에 존재하는 내부 스파이에게 이용당한다
- 믿었던 사람에게 중요한 정보가 노출되거나 빼앗기는 경우
# 스니핑 : 허가받지 않은 사용자가 중요한 정보를 몰래 엿듣게 됨
5. 스턱스넷(Stuxnet)
- 산업 소프트웨어와 공정 설비를 공격 목표로 하는 극도로 정교한 군사적 수준의 사이버 무기로 지칭됨. 공정 설비와 연결된 프로그램이 논리제어장치의 코드를 악의적으로 변경하여 제어권을 획득하며, 네트워크와 이동 저장 매체인 USB를 통해 전파되며 SCADA 시스템이 공격 목표임
# 오토런 바이러스 : 주로 USB 같은 이동형 저장 장치에 복사되어 전파되는 악성 코드
6. 스파이웨어
- 웜의 일정으로 공개 또는 무료 프로그램에 포함되어 전달됨
- 프로그램 설치 시에 동의 내용을 확인하지 않는 점을 악용한 프로그램
7. 매크로 바이러스
- MS 오피스와 같은 응용 프로그램의 문서 파일에 삽입되어 스크립트 형태의 실행 환경을 악용하는 악성 코드
# 애드웨어 : 광고와 소프트웨어의 합성어로 특정 프로그램을 실행할 때 자동으로 보이는 광고용 프로그램
# 트로이 목마 : 일반 사용자에게 특정 이메일을 수신하게 하여 좀비 PC로 만드는 형태의 공격 방법
# 백도어 : 시스템 접근에 대한 사용자 인증을 거치지 않고, 응용 프로그램 또는 시스템에 접근할 수 있도록 하는 조치. 악용될 경우, 공격자가 시스템에 불법적으로 접근한 후, 나중을 위해서 언제든 시스템에 접근할 수 있도록 조치를 취할 수 있음
8. 스푸핑(Spoofing) : 승인받은 사용자인 것처럼 시스템에 접근하거나 네트워크상에서 허가된 주소로 가장하여 접근 통제를 우회하는 행위로 스푸핑은 의도적인 행위를 위해 타인의 신분으로 위장하는 것을 말함
# 스푸핑 -> 위장, 스니핑 : 훔쳐보기
9. 액티브 콘텐츠 공격
- 이메일 열람시 HTML 기능이 있는 이메일 클라이언트나 웹 브라우저를 이용하는 사용자를 대상으로 하는 공격 기법
- 클라이언트 프로그램의 버그나 시스템 버그로 인한 것이 아니므로 보안 패치로 해결되지 못함
10. 시스템 침투를 위한 일반적인 해킹 과정 중 마지막 순서?
- 로그 기록 등의 흔적 삭제
- 다시 공격이 필요한 경우 침입이 용이하도록 은닉 채널을 이용하여 백도어를 만들어내는 것
11. KRACK
- WPA2를 공격하기 위한 방식으로, WPA2의 4-WAY 핸드셰이크 과정에서 메시지를 조작하고 재전송하여 정보를 획득하는 공격 방식
# Ping of Death : 인터넷 프로토콜 허용 범위(최대 65.536바이트) 이상의 큰 패킷을 고의로 전송하는 서비스 거부(DoS) 공격 방법 중의 하나
# Smurf : DoS의 일종으로 TCP/IP의 icmp(예 Ping)의 취약성을 이용하여 공격하는 방법
# Slowloris : HTTP 연결을 끝내지 않게 계속 유지하면서 가용량을 소진시키는 공격 방법
12. Land Attack
- 공격 대상의 송수신측 주소를 동일하게 변조하여 송수신측에서 전달되는 패킷이 다시 송식측으로 전달되는 루프 현상을 이용하는 형태의 공격
# War Driving : 차량을 이용하여 구내 통신망에 무단 접속
# Smurf Attack : ICMP의 취약점을 이용하여 대량의 PING 전송
# Session Hijacking : 세션 정보를 취득하여 공격
13. Clipping Level
- 인터넷 뱅킹 시에 패스워드나 보안 카드 번호 입력이 비정상적으로 5번 입력 되는 경우에 인터넷 뱅킹을 차단하는 기준이 되는 수치나 기술
- 클리핑 레벨을 5로 설정할 경우 정상적인 사용자는 5번을 초과하는 입력이 있을 수 없다고 보기 때문에 공격자의 행위로 간주
14. 블루투스 공격 방법
- 블루 스나프(BlueSnarf) : 블루투스의 취약점을 이용하여 임의 파일에 접근하는 공격 방법이며, 블루투스 장치끼리 인증 없이 정보를 간편하게 교환하기 위해 개발된 OP-P 기능을 사용하여 공격자가 블루투스 장치로부터 주소록, 달력 등의 내용을 요청해 이를 열람하거나 취약한 파일에 접근하는 공격 방법
- 블루 프린팅 : 서비스 발견 프로토콜을 통하여 블루투스 장치들을 검색하고 모델을 확인
- 블루버그 : 10미터 이내에 거리에서 블루투스 기능이 있는 불특정 번호로 전화를 걸어 SMS 보내기, 읽기 및 쓰기 등을 통해 공격할 수 있음
- 블루재킹 : 블루투스를 이용해 스팸처럼 메시지를 주변에 휴대폰 사용자에게 퍼트리는 악성 프로그램
15. 서비스 거부 공격 방법
- Smurf
- SYN Flooding
- UDF Flooding
# ARP Spoofing : 공격 서버에 부하를 주어 정상적인 서비스가 되지 못하는 공격이 아니라 사용자의 중요 정보를 해킹하기 위해 신분을 위장하는 행위
16. ASLR
- 메모리 변조 공격을 방지하기 위한 기술 중 하나로, 프로세스의 중요 데이터 영역의 주소를 임의로 재배치하여 공격자가 공격 대상 주소를 예측하기 어렵게 하는 방식
# canary : 버퍼 오버플로우를 감시하기 위해 버퍼와 제어 데이터 사이에 위치한 값들. 버퍼가 오버플로우하면 오염될 첫 데이터는 카나리가 되며, 카나리 값을 검증하여 버퍼 오버플로우에 대한 경고가 발생하게 됨
# no-execute : 명령어 코드 또는 데이터 저장 메모리 영역을 공격자가 전혀 알지 못하도록 따로 분리하여 사용하는 기술로 일반적인 실행 메모리 영역의 실행 권한은 모두 삭제함으로써 공격형 악성 소프트웨어를 실행하지 못하게 막는 데 사용
# 버퍼 오버플로우 : 메모리 영역에 비정상적인 데이터나 비트를 채워 시스템의 정상적인 동작을 방해하는 공격 방식
17. 암호학에서 사용하는 용어
- 평문 : 누구나 알아볼 수 있는 문서
- 암호화 : 평문을 암호문으로 만드는 과정
- 복호화 : 암호문을 복호화 키를 사용하여 평문으로 변경하는 과정
- 복호화 키 : 암포문을 평문으로 변경할 때 사용하는 값이나 데이터
# 복호문이라는 건 없음!
18. 정보 보증의 기능
- 기밀성, 무결성, 부인 봉쇄, 가용성
19. 인가
- 사용자가 보호되어야 할 특정 시스템에 대한 사용권한을 부여받는 것
# 인증 : 사용 여부의 타당성
20. 공개키 암호
- 공개키 인증서를 공개키 디렉터리에 저장하여 공개
- 사용자가 증가할수록 필요한 비밀키의 개수가 증가하는 암호 방식의 단점을 해결할 수 있음
- 일반적으로 대칭키 암호 방식보다 암호화 속도가 느림
# 대칭키 암호 방식 : n명의 사용자로 구성된 시스템에서는 n(n-1)/2개의 키가 요구됨
21. 공개키를 사용하는 전자서명의 특징
- 송신자는 자신의 개인키로 서명하고 수신자는 송신자의 공개키로 서명을 검증함
- 전자서명은 사용자 인증, 무결성, 부인방지 기능을 제공하는 것이지 기밀성을 지키기 위한 것이 아님
- 기밀성이 필요하다면 메시지 자체를 별도의 함호화를 행해서 전달해야 함
- 신뢰할 수 있는 제3자를 이용하면 부인봉쇄가 가능
- 메시지로부터 얻은 일정 크기의 해시값을 서명에 이용할 수 있음
22. 하이브리드 암호화 시스템(송신자가 수신자에게 문서를 보낼 때의 과정과 각 시점에 적용되는 암호 시스템)
- 문서는 대칭키 방식으로, 키는 공개키 방식으로
- 대칭키 암호 시스템 : 키를 사용하여 문서를 암호화 할 대
- 공개키 암호 시스템 : 문서를 암, 복호화 하는데 필요한 키를 암호화할 때
- 대칭키 암호 시스템 : 키를 사용하여 암호화된 문서를 복호화 할 때
23. 현재 10명이 사용하는 암호 시스템을 20명이 사용할 수 있도록 확장하려면 필요한 키의 개수도 늘어난다. 대칭키 암호 시스템과 공개키 암호 시스템을 채택할 때 추가로 필요한 키의 개수를 각 각 구분하여 순서대로 나열.
10명의 키의 개수
- 대칭키 암호 시스템 => {n(n-1)}/2 = {10(10-1)}/2 = 45개
- 공개키 암호 시스템 => 2n = 2*10개 = 20개
20명의 키의 개수
- 대칭키 암호 시스템 => {n(n-1)}/2 = 20(20-1)/2 = 190개
- 공개키 암호 시스템 => 2n = 2*20ro = 40개
10명이 추가되는 경우의 키의 개수
- 대칭키 암호 시스템 190 - 45 = 145
- 공개키 암호 시스템 40 - 20 = 20
< 결과 >
145, 20
24. DRM
- 디지털 콘텐츠의 불법 복제와 유포를 막고, 저작권 보유자의 이익과 권리를 보호해 주는 기술과 서비스
- DRM은 파일을 저장할 때, 암호화를 사용
- 온라인 음악 서비스, 인터넷 동영상 서비스, 전자책, CD/DVD 등의 분야에서 불법 복제 방지 기술로 활용
# 클리어링 하우스 : 라이선스 생성 및 발급 관리를 처리
25. 디지털 포렌식의 기본 원칙
- 정당성의 원칙 : 모든 증거는 적법한 절차를 거쳐서 획득되어야 한다
- 신속성의 원칙 : 컴퓨터 내부의 정보 획득은 신속하게 이루어져야 함
- 재현의 원칙 : 증거자료는 같은 환경에서 같은 결과가 나오도록 재현할 수 있어야 한다
- 연계 보관성의 법칙 : 증거물을 획득, 이송, 분석, 보관, 법정 제출의 각 단계에서 담당자 및 책임자를 명확히 해야 함
- 무결성의 원칙 : 획득한 정보는 위 변조 되지 않았음을 입증할 수 있어야 함