본문 바로가기

카테고리 없음

네트워크 보안기술


네트워크 보안기술

======================================================

정보보호란 (information security)
정보의 수집, 가공, 저장, 검색, 송수신중에 정보의 훼손, 변조, 유출등을

방지하기 위한 관리적, 기술적 수단을 강구하는 것

 

기밀성 서비스 (confidential service) :

A B에게 정보 전달시 제 3자가 알아차릴수 없도록 변환시키는 기술

 

무결성 서비스(intergrity service) :

A B에게 정보 전달시 내용이 중간에 변경되지 않도록 하는 기술

 

인증 서비스 (authentication & indentification service) :

정보를 받는 사람이 누구인지 확인하는 기술

 

접근제어 서비스 (access control service) :

데이타의 허가 받은 사람만이 접근할 수 있도록 하는 기술

 

부인방지 서비스(Non-repudiation Service) :

정보를 송수신 후에 그에 대한 사실의 부인을 방지하는 기술

 

감사 추적 서비스(audit service) :

시스템에서 처리될 명령어를 기록하는 기술

향후 문제발생시 근원지를 확인하기 위한 기술

 

======================================================

) 갑돌이가 갑순이에게 편지 보낼때

 

1. 남이 보지 않았는지

 - 기밀성 (Confidentiality)

 

2. 내용이 변경되지 않았는지

 - 무결성 (integrity) 또는 메시지 인증(message authentication)

 

3. 수신자가 갑순이인지

 - 사용자 인증 (user authentication or Identification)

 

4. 편지를 보냈다는 사실을 부인했는지

 - 부인방지(Non-Repudiation)

 

======================================================

암호화 알고리즘

정보를 보낼 때 다른 사람이 알아보지 못하도록 변조해서 보내는 기술

 

송신자 (메시지,) : 변조 > 수신자(메시지,) : 복조

 

DES (메시지를 56bit단위로 암호)

메시지 : the Des-test contest’s Plaintext

암호문 : 33 11 d1 d1 aa 3k k1 k1 sf as 19….1s es

        12 34 a9 3k a0 13 1k ae os ke a0 oz…

 

3DES(메시지를 168bit단위로 암호)

======================================================

암호

Crypto (그리스어의 비밀과 쓰다라는 말의 합성어)

스키테일 암호 (동일한 막대기를 가지고 있고 종이에 글을 적어서 보내면 수신자는 막대기에 그림처럼 돌려서 글일 읽는방법)

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><?xml:namespace prefix = v />


암호 : Cryptography

평문 : Plaintext

암호문 : Ciphertext or Cryptogram

암호화 : Encryption or Encipher

복호화 : Decryption or Decipher

(key) : 비밀번호

해독 : Cryptanalysis  (비밀번호를 모르는 사람이 알아내는 것)

키 전수조사 : Exhaustive Search (가능성 있는 번호를 모두 입력하는 것)

 

======================================================

암호방식의 구성

송신자(메시지,) : 암호화 -----------> 수신자(메시지,) : 복호화

 

Key 전달방식

송신자와 수신자가 다른 키를 사용하는 방법 : 대칭키 (DES, AES)

송신자와 수신자가 같은 키를 사용하는 방법 : 공개키 (RSA)

 

대칭키 방식

1. 전치 암호방식 (앞뒤를 뒤바꾼다)

:평문) 나는 네트워커가 되려한다

암호문) 되려한다 나는 네트워커가

2. 환자 암호방식 : 글자를 다른 기호로 바꾸는 것

3. 적 암호 : 전치암호와 환자암호를 반복해서 적용하는 것

 

하지만 이런 암호들은 컴퓨터상에서 사용할 수 없는 암호라서 전자적인 암호가 나타났고

DES AES가 대표적이라 할 수 있다. 

======================================================

DES의 기본구조

입출력 크기 : 64bit 단위로 평문을 끊어서 암/복호화

 

평문을 DES로 암호화하면

 

평문 (64bit)

평문1(32Bit)-------------평문2(32Bit)

F함수통과          F함수통과

평문2함수통과결과    평문1함수통과결과

        역 전지(암호문64bit)

 

DES를 본 따서 많은 나라에서 비슷한 암호를 만들었으나 대부분 해독이 되었다.

국내에서도 DES를 본 따서 SEED라는 암호를 만들었다 SEED 128Bit

 

하지만 컴퓨터 기술이 발달함에 따라 새로운 암호 AES(Advanced)가 요구되어 진다.

AES SEED와 동일한 128Bit 단위로 끊어서 처리하게 된다.

======================================================

공개키 암호방식

 

대칭키 암호방식 (예전에 동일한 막대기를 사용한 것 처럼)

 : 암호화 키 = 복호화 키

 

비대칭키 암호방식(공개키 암호방식)

 : 암호화 키 =X 복호화 키

 

대칭키의 문제점 발생 : 인터넷 쇼핑몰 같이 불특정 다수와 거래를 하는데 다수에게

사전에 키를 공유한다는 것은 위험하게 때문에 Diffie Hellman 공개키 암호화 방식을 제안

하였다.

 

공개키 암호방식

공개키(public key) + 개인키(private Key)

 

구조가 복잡하므로 속도가 느리다, 따라서 혼합암호화 방식을 사용하기도 한다.

공개키 최초 개발자들 (우측부터 Diffie | Hellman) 또한 키 합의(DH) protocol 개발

 

RSA 개발자 (좌측부터 Shamir | Rivest | Adleman)

 

======================================================

DH key 합의 protocol

DH 키 합의 프로토콜의 개념 (실제는 곱이 아니라 승수로 계산한다)

갑돌이 ß---------à 갑순이

5                    7

K=7*5=35        K=7*5=35

======================================================

전자서명 PKI

전자서명이란?

사용자의 신원과 문서변경 확인가능

전자서명에 대한 고유한 정보

비대칭 암호화 방식을 이용하여 전자 서명키로 생성

 

전자서명의 구비요건

서명자 인식가능

문서내용 변경여부 확인

동일한 전자서명 재사용 불가

문서작성 사실 부인 방지

 

전자서명은

 컴퓨터 이미지로 작성된 signature 또는 Digital Signature

 하지만 이미지로 작성된 것은 재사용이 가능하므로 전자서명으로 사용할 수 없다.

 전자서명은 PKI라고 하며 공인인증서를 예를 들 수 있다.

======================================================

해시함수

해시함수는 압축과 비슷하다고 생각하면 됨

 

해시함수의 종류

 SHA : 160 bit (미국 NIST)

 MD5 : 128 bit (미국 RSA)

======================================================

보안제품

종류

시스템 보안제품: Firewall (출입국 관리 사무소와 같음, 여권을 검사하듯 패킷검사)

                     IDS/IPS (인공지능 시스템에 의해 Packet 검사 및 filtering)

네트워크 보안제품 : VPN (전용선을 설치하는 것과 같은 효과)

 

======================================================

VPN

가상의 전용선을 설치된 것 같은 효과를 가진 기술이며 tunnel기술이라고도 이야기 할 수 있음

연결 형태에 따른 VPN

Site-to-Site 방식 : Extranet VPN(Business partner), Intranet VPN(Brach office)

Remote Access방식 : remote access user와 통신

 

VPN 터널링 protocol

 방식                       구현 가능한 터널링 프로토콜

 Remote access방식      PPTP, L2TP, IPSec, SSL

 Site-to-Site방식           IPsec, MPLS

 

======================================================

IPsec (IP security protocol : Layer 3 tunneling)

 IETF워킹그룹에 의해 제안되고 표준화된 보안 프로토콜로서, 네트워크 계층에서 암호화를

수행하기 때문에 Remote access방식뿐 아니라 site-to-site방식까지 완벽히 지원하며, VPN

프로토콜과는 달리 애플리케이션과 독립적으로 구현이 가능하다.

 

IPsec 3가지 기능

 인증 : AH(authentication Header)

 인증과 기밀성 및 암호화 : ESP(Encapsulating Security Payload)

 키 교환 : IKE(Internet Key Exchange)

======================================================

IP sec의 구조

1단계 SA

- IPsec 개체간에 인증 및 2단계 SA를 맺는 메시지를 보호하기 위한 세션 키를

 협상한 SA이다

- 2단계 SA를 설정하기 위한 메시지를 보호할 때만 사용하고, IPsec으로 트래픽을

 보호하기 위해서 쓰이지는 않는다.

-또한, 1단계 SA는 방향성을 가지지 않는다.

 

2단계 SA

 -실제 IPsec 프로토콜에 사용할 SA를 뜻한다.

 -방향성을 가지며 포함되는 정보는 다음과 같다

1.인증 메커니즘 : 비밀키/공개키 인증서

2.암호화 알고리즘:모드,키길이

3.해시알고리즘

4.암호화 키 값/인증키 값

5.SA갱시기간 :현재 SA를 폐기하고 새로 갱신해야 하는 시점

======================================================

 

IPSec VPN configuration

R1(config)#crypto isakmp enable  [IKE enable하는 명령어]

R1(config)#crypto isakmp key cisco address ?

  A.B.C.D  Peer IP address

 

R1(config)#crypto isakmp key cisco address 10.1.1.1 255.255.255.0

[ peer 10.1.1.1과 암호화된 cisco라는 교환할 키 값을 생성]

 

R1(config)#crypto isakmp policy 10 [Phase 1단계 설정 시작]

R1(config-isakmp)#authentication ? [키분배시 어떤알고리즘을 사용할 것인지]

  pre-share  Pre-Shared Key [공유 비밀키 방식]

  rsa-encr   Rivest-Shamir-Adleman Encryption [RSA공개 비밀키 방식]

  rsa-sig    Rivest-Shamir-Adleman Signature [CA인증서 교환 방식]

 

R1(config-isakmp)#encryption ? [어떤 암호화 알고리즘 사용할것인지]

  3des  Three key triple DES [3DES 대칭키 암호와 알고리즘]

  aes   AES - Advanced Encryption Standard. [3DES 대칭키 암호와 알고리즘]

  des   DES - Data Encryption Standard (56 bit keys). [3DES 대칭키 암호와 알고리즘]

 

R1(config-isakmp)#group ? [어떤 type DH 알고리즘을 사용할 것인지 결정]

  1  Diffie-Hellman group 1 [768 bit]

  2  Diffie-Hellman group 2 [1028 bit]

  5  Diffie-Hellman group 5 [1536 bit]

 

R1(config-isakmp)#hash ? [암호화/복호화를 위해 어떤 해시인증 알고리즘 사용할 것인지]

  md5  Message Digest 5

  sha  Secure Hash Standard

 

R1(config-isakmp)#lifetime ? [SA갱신시간을 설정한다]

<60-86400>  lifetime in seconds

 

R1(config)#crypto ipsec transform-set TEST ? [어떤방식으로 IPsec 구성할지 결정]

  ah-md5-hmac   AH-HMAC-MD5 transform

  ah-sha-hmac   AH-HMAC-SHA transform

  comp-lzs      IP Compression using the LZS compression algorithm

  esp-3des      ESP transform using 3DES(EDE) cipher (168 bits)

  esp-aes       ESP transform using AES cipher

  esp-des       ESP transform using DES cipher (56 bits)

  esp-md5-hmac  ESP transform using HMAC-MD5 auth

  esp-null      ESP transform w/o cipher

  esp-sha-hmac  ESP transform using HMAC-SHA auth

 

R1(config)#crypto ipsec transform-set TEST esp-des ?

  ah-md5-hmac   AH-HMAC-MD5 transform

  ah-sha-hmac   AH-HMAC-SHA transform

  comp-lzs      IP Compression using the LZS compression algorithm

  esp-md5-hmac  ESP transform using HMAC-MD5 auth

  esp-sha-hmac  ESP transform using HMAC-SHA auth

 

R1(config)#crypto ipsec transform-set TEST esp-des

R1(cfg-crypto-trans)#mode ?

  transport  transport (payload encapsulation) mode

tunnel     tunnel (datagram encapsulation) mode

 

R1(config)#crypto map TEST 10 ipsec-isakmp [crypto map 생성]

R1(config-crypto-map)#set ? [transform-set name peer ip address]  

  identity              Identity restriction.

  isakmp-profile        Specify isakmp Profile

  peer                  Allowed Encryption/Decryption peer.

  pfs                   Specify pfs settings

  security-association  Security association parameters

transform-set         Specify list of transform sets in priority order

 

R1(config-crypto-map)#match address ? [보호되어져야 할 트래픽의 Access-list]

  <100-199>    IP access-list number

  <2000-2699>  IP access-list number (expanded range)

  WORD         Access-list name

 

R1(config)#inter s0/0 [interface Crypto map 적용]

R1(config-if)#crypto map ?

  WORD  Crypto Map tag