An open API service indexing awesome lists of open source software.

https://github.com/mr-won/information_security_outline

정보 보안 개론 정리
https://github.com/mr-won/information_security_outline

information-security

Last synced: over 1 year ago
JSON representation

정보 보안 개론 정리

Awesome Lists containing this project

README

          

# Information_Security_Outline.
정보 보안 개론 정리

## 정보 보안의 역사

1. 1950년대 이전

암호화 기계 에니그마, 최초의 컴퓨터 콜로서스, 콜로서스의 개발자이자 인공지능의 개념 최초 해커 앨런 튜닝

2. 1960년대

최초의 컴퓨터 연동망 ARPA, 유닉스 운영체제 (켄 톰프슨, 데니스 리치) 개발, 전화망 해킹으로 무료 장거리 전화 시도

3. 1970년대

최초의 이메일 전송, 마이크로소프트 설립, 애플 컴퓨터 탄생, C 언어 개발

4. 1980년대

네트워크 해킹 시작, 카오스 컴퓨터 클럽, GNU와 리처드 스톨먼

케빈 미트닉 크래커

로버트 모리스 해커

5. 1990년대

데프콘 해킹 대회, 트로이 목마 백 오리피스

6. 2000년대

분산 서비스 공격으로 인터넷 대란, 웜 삼총사 ( 베이글 웜, 마이둠 웜, 넷스카이 웜) 등장, 개인 정보 유출과 도용, 전자 상거래 교란, 지능적 지속 위협(APT) 공격에 의한 금융 해킹

7. 2010년대

농협 사이버 테러, 해킹의 대상이자 도구가 된 스마트폰, 가상 화폐 해킹

## 보안의 3대 요소

기밀성 : 인가된 사용자만 정보 자산에 접근할 수 있도록 하는 것 ( 방화벽, 암호, 패스워드 )
무결성 : 적절한 권한을 가진 사용자가 인가한 방법으로만 정보를 변경할 수 있도록 하는 것 ( 위조 지폐 )
가용성 : 정보 자산에 대해 필요한 시점에 접근이 가능하도록 하는 것( 24시간 편의점 )

## 보안 전문가의 자격 요건

윤리 의식 : 진정한 정보 보안 전문가는 반드시 올바른 윤리 의식을 갖추어야 한다. 정보 보안 전문가가 참고할 보안 관련법으로는 정보통신망 이용촉진 및 정보 보호 등에 관한 법률, 정보통신기반 보호법 등이 있다.

다양한 분야의 지식 : 정보 보안 전문가는 운영체제, 네트워크, 프로그래밍, 서버, 보안 시스템 등 전문성을 갖춰야 한다.

## 해킹의 사전적 의미

해킹은 디자이너가 의도하지 않았던 방법으로 시스템의 특성이나 규칙을 이용한 창조적인 사용법을 찾는 것

## 보안 인증 방법

알고 있는 것 : 패스워드와 같이 머릿속으로 기억하고 있는 정보를 이용하여 인증을 수행

가지고 있는 것 : 신분증이나 OTP 장치 등으로 인증 수행

스스로의 모습 : 홍채와 같은 생체 정보로 인증 수행

위치하는 곳 : 콜백 등 사용자의 위치 정보를 이용하여 인증 수행

## 세션 관리

세션이란 컴퓨터와 사용자 간 또는 두 컴퓨터 간의 활성화된 접속

세션 하이재킹이나 네트워크 패킷 스니핑을 막기 위해 암호화를 적용

지속적인 인증을 통해 세션의 유효성을 검증한다.

## NTFS 파일 시스템 우선 규칙

NTFS 접근 권한이 누적된다.
파일접근이 디렉터리 접근 권한보다 우선
허용보다 거부가 우선

## AAA

Authentication ( 인증 ) : 자신의 신원을 시스템에 증명하는 과정
Authorization( 인가 ) : 인증이 수행된 객체에 대해 이미 설정된 권한 구성에서 객체가 요구하는 접근 권한 부여의 적절성을 확인하는 과정
Auccouting : 접근에 성공한 객체에 대한 로그를 남기는 활동

## 서비스 거부 공격 ( Dos )

취약점 공격형 : 공격 대상이 특정 형태의 오류가 있는 네트워크 패킷의 처리 로직에 문제가 있을 때 그것을 이용하여 오작동을 유발하는 공격형태로 보잉크/봉크/
티어드롭 공격( 패킷의 시퀀스 넘버와 길이를 조작하여 데이터 부분이 겹치거나 빠지도록 전송 ) -> 패치관리(과부화, 반복되는 패킷 무시로 조치)
랜드 공격(출발지 ip와 목적지 ip를 같게 보냄)이 있다.

자원 고갈 공격형 : 네트워크 대역폭이나 시스템의 CPU, 세션 등의 자원을 소모 시키는 공격 랜드 공격

죽음의 핑 공격 : ping 명령을 보낼 때 대상에게 패킷을 최대한 길게 보내서 마비 -> ping이 사용하는 ICMP 프로토콜을 차단

SYN 플러딩 공격 : 제한된 동시 사용자 수에 존재하지 않는 클라이언트가 접속한 것처럼 해서 다른 사용자가 서비스를 제공받지 못하도록 함 -> SYN Received의 대기시간을 줄이거나 침입 방지 시스템 IPS 구축

스머프 공격 : 다이렉트 브로드캐스트를 통해 엉뚱한 네트워크가 수많은 ICMP reply를 받게되는 것

## 분산 서비스 거부 공격 ( DDos ) : 다수의 공격지점에서 동시에 한곳을 공격하는 형태

공격자, 마스터(핸들러), 에이전트(데몬)

## 스니핑 공격

데이터 링크 계층과 네트워크 계층의 필터링을 해제하는 랜 카드의 모드 프러미스큐어스 모드로 만들어서 도청

탐지방법 : 위조된 Arp request나 MAC 주소를 보냈을 때 reply를 받으면 스니핑하고 있는 것이다.

## 스푸핑 공격

공격 대상 : MAC 주소, IP 주소, 포트 등 네트워크 통신과 관련된 모든 것
시스템 권한 얻기, 암호화된 세션 복호화하기, 네트워크 트래픽 흐름 바꾸기 등

ARP 스푸핑 공격 : 가짜 MAC 주소를 보내서 패킷을 중간에서 받고 나눠줌

IP 스푸핑 공격 : IP 주소를 속여서 트러스트 관계를 맺고 있는 서버와 클라이언트를 확인하고 패스워드 없이 접근

ICMP 리다이렉트 공격 : 스니핑 시스템을 네트워크에 존재하는 또 다른 라우터라고 속임 로드 밸런싱(일을 처리할 때 부하를 적절히 나눠주는 것)

DNS 스푸핑 공격 : 실제 DNS 서버보다 공격 대상에게 DNS response를 보내서 잘못된 ip 주소로 웹 접속을 하도록 함 -> URL과 IP를 hosts 파일에 등록 but 모든 서버에 대한 스푸핑을 막기는 어렵다.

## 세션 하이재킹 공격

TCP 세션 하이재킹 -> 잘못된 시퀀스 넘버를 사용해서 세션에 혼란을 주고 자신이 끼어들어가는 방식 -> 텔넷 X SSH와 같은 세션에 대한 인증 수준이 높은 프로토콜로 접속 MAC 주소 고정 -> ARP 스푸핑을 막아줌 세션 하이재킹 예방

## 웹 서버와 WAS의 차이점

Web 서버는 웹 브라우저 클라이언트로 http 요청을 받아들이고 html과 같은 웹 페이지를 반환하는 프로그램으로 웹 서버가 동적 컨텐츠를 받아들이면 WAS에 요청을 넘겨주고 처리한 결과를 사용자에게 전달해준다.

WAS 주로 동적 컨텐츠를 수애한느 것으로 구별된다. 데이터베이스 서버와 같이 수행
웹 서버 단독으로는 수행할 수 없는 데이터베이스의 조회나 다양한 로직 처리가 필요한 동적 처리를 담당 WAS는 Servlet, JSP 구동 환경을 제공해주어서 웹 컨테이너, 서블릿 컨테이너라고 불린다.

## 방화벽과 프록시 서버의 차이점

방화벽과 프록시 서버의 가장 큰 차이점은 기본적으로 방화벽이 IP 패킷을 필터링하고 인증되지 않은 연결에 대한 액세스를 차단한다는 것입니다. 반면 프록시 서버는 주로 외부 사용자와 공용 네트워크 간의 연결을 설정하는 조정자 역할을합니다.

## 사설망(Trust Zone) vs 공중망(Public Zone)

사설망 - 우리가 사용하는 가정집 공유기안의 네트워크입니다.
공중망 - 불특정 다수의 사용자에게 서비스를 제공하는 망으로 인터넷이 대표적인 공중망

## 공격에 대한 여러 방어기제

1. 공급망 공격 : 소프트웨어가 만들어지는 과정에서 바이러스코드가 삽입
납품 기관에서는 아무런 의심없이 다운로드

1-1 방어기제 : 소프트웨어 개발 보안 적용, Secure coding : 설계단계에 안전한 소프트웨어 개발

2. Bug Bounty : 취약점 신고 포상제 : 보안성을 고도화하기 위해 시행

2-1 문제점 : 화이트해커에 지급하는 제도 but 금전적 문제로 결탁하는 문제 발생

## 네트워크 계층별 보안

2계층 IP,ICMP,ARP 보안책 IPsec <- IP
3계층 TCP 보안책 SSL, TLS <- Port

## 네트워크 연결 과정 허점

1. DNS Spoofing
2. 3way handshaking 허점 : SYN Flooding
3. SSL 허점 : Packet Sniffing 패킷 스니핑

## 프러미스큐어스 모드와 바이패스 모드의 차이점

스니핑을 하려면 랜 카드를 스니핑이 가능한 모드로 변경해야 한다. 이를 프러미스큐어스 모드
패킷에 대한 분석까지 하드웨어로 구현되어 있는 랜 카드

## 스니퍼 대응책 (수동적)

바로 암호화 SSL(웹), SSH(텔넷), VPN

## DDos

Back-log-queue를 채우는것

## 무차별 대입(brute force) -무식하지만 위협

생일공격(birthday), 중간만남(meet in the media attack)

## 클라우드 법 vs GDPR(General Data Protection)
클라우드 국내법이 주로 개인정보를 ‘보호’하는 데 목적을 둔다면, GDPR은 개인정보의 ‘활용과 보호의 균형'에 무게를 두고 있습니다.
GDPR : 최소권한, 임무 분리

## 기밀성, 무결성 , 가용성

기밀성 (공개 노출) : 스누핑 : 소극적이고 수동적 공격, 가로채기
무결성 (위변조) : Modification 스푸핑 : 적극적이고 능동적인 공격
가용성 (지체,재난) : DDos

## 인증(certification) vs 인증(authentication)

인증(certification 즉 자격을 증명한다는 뜻이다. 신원검증이 아니다.
인증(authentication) 신원 검증이다.

## 무결성, 인증, 부인방지

무결성: 백업파일과 동일한가

무결성+인증: 해쉬코드로 해쉬값을 비교 (패스워드, 메시지인증코드) (전수공격,생일공격에 약함) -> 대칭적(symmetric)

무결성+인증+부인방지 : 키값비교 (중간자공격에 약함) -> 비대칭적(asymmetric)