티스토리 뷰
보안과 관련된 용어를 정리한 자료입니다.
1. Access control list
접근 제어 목록(Access Control List)는 서비스로의 접근이나 거부를 제어하는 수단으로 자주 사용되는 방법이다. 이것은 특정 데이터 및 프로그램에 접근할 수 있는 사용자를 지정한다. ACL에서는 일반적으로 접근할 수 있는 사용자와 사용할 수 있는 서비스 기능의 목록을 가지고 있다. 예를 들어, 파일 XYZ에 대해 ACL에 (Alice, delete)와 같은 목록이 있다면, Alice에게 XYZ 파일을 삭제할 권한을 부여한 것이다.
2. Access matrix
1971년 Butler W. Lampson에 의해 처음 소개되었으며, 운영체제(OS)의 보호 메커니즘에서 일반적으로 사용되고 있다. 이것은 주체와 객체의 접근허용권한을 주체는 행(row)으로 객체는 열(column)로 나타난 테이블이다. 한 명의 사용자가 가지는 다양한 리소스에 대한 권한을 나타내는 것은 행(row)이다. 예를 들면 다음과 같다.
사용자 l 파일1 l 파일2 l 파일3
사용자1 l 읽기 l 쓰기 l 실행
사용자2 l R/W l NONE l R
위 형태는 임의적 접근통제기법(DAC: Discretionary Access Control) 유형의 접근통제로서 단점으로 테이블 관리가 어렵다는 점이 있다. 이에 반해 ACL은 객체의 관점에서 접근권한을 지정한 목록이다.
3. Authentication
인증은 임의 정보에 접근할 수 있는 주체의 능력이나 주체의 자격을 검증하는데 사용되는 수단으로 시스템의 부당한 사용이나 정보의 부당한 전송 등을 방어할 수 있다.
이것은 한 개인을 식별하는 보안 절차를 나타내며 이 과정에서 개인은 자신이 누구라고 주장하도록 보장하지만 개인의 접근 권한에는 영향을 미치지 않는다. 사용자 이름, 패스워드 및 생체측정 스캐닝 등은 모두 인증 기술들이다.
인증에는 크게 사람에 대한 인증(사용자를 검증하는 과정)과 데이터에 대한 인증(데이터의 무결성 검증)의 두 가지가 있다.
4. Authorization
Authorization은 누구에게 무엇을 할 수 있거나, 가질 수 있는 권한을 부여하는 과정이다. 다중 사용자 컴퓨터 시스템에서, 시스템 관리자는 어떤 사용자가 그 시스템을 액세스할 수 있는지, 그리고 부여된 사용권한은 어디까지인지(파일 디렉토리의 접근 범위, 허용된 액세스 시간, 할당된 저장 공간의 크기 등)를 그 시스템을 위해 정의한다. 어떤 사람이 컴퓨터 운영체계나 응용프로그램에 로그온 했을 때, 그 시스템이나 응용프로그램은 그 세션 동안 그 사용자에게 어떤 자원의 이용을 허락해야하는지 확인한다. 그러므로, authorization이라고 표현되는 권한부여는 때로 시스템관리자에 의해 미리 설정되는 권한들과 사용자가 액세스를 해 왔을 때 미리 설정된 권한을 실제로 확인하는 일 모두를 지칭하기도 한다. 논리적으로 인증은 권한부여에 우선한다.
5. Audit
감사(audit)은 제어 확립, 정책 및 운영 절차를 준수하고 제어, 정책, 또는 절차에 있어서 실질적 변경 사항을 제안하기 위한 기록 및 활동에 대해 독립적으로 조사하는 행위를 의미한다.
첫째, 이것은 한 대 이상 컴퓨터에 설치된 모든 소프트웨어 및/또는 하드웨어에 대한 목록 작성 과정을 말한다. 일단 감사가 수행되면 허가 받지 않은 소프트웨어, 하드웨어 구성 요소 누락 등을 확인하기 위해 데이터를 분석할 수 있다.
둘째, 모든 보안 관련 사건에 대한 목록 작성 과정을 말한다. 이 과정에는 사건을 일으킨 사용자도 포함된다.
6. Availability
가용성(Availability)는 인가를 받은 사용자가 정보나 서비스를 요구할 경우, 정보시스템에 대한 사용 가능 여부에 대한 요구 사항이다. 가용성의 유지는 보안 시스템의 주요 기능 중 하나다. 보 자원의 가용성에 대한 공격을 서비스 거부(DoS) 공격이라고 한다.
7. Access Control
접근을 감시하고, 접근을 요청하는 사용자 식별, 접근 시도 기록, 접근 허용 또는 거부를 위한 하드웨어, 소프트웨어 및 관리자가 수행하는 일련의 절차이다. 보안의 기초는 컴퓨터 네트워크 및 시스템에 접근할 수 있는 사람을 파악하는 능력이다. 사용자가 네트워크에 로그인할 수 있도록 인증해주는 컴퓨터 응용 프로그램인 접근 제어 프로토콜을 사용하여 제어를 수행할 수 있다.
8. Asymmetric key pair
공개키 기반 암호화에서 비밀 함수를 정의하는 비밀키와 공개 함수를 정의하는 공개 키들의 쌍을 의미한다.
9. CA (Certificate Authority)
인터넷이 발전하기 이전에 모든 안전한 거래는 양 당사자가 자신임을 주장한 바로 그 당사자들이라는 점을 보장해줄 수 있었던 공증인, 변호사 또는 중계인 등, 제3의 신뢰 기관과 관련이 있었다. 디지털 시대에 와서는 인증서 발행 기관(CA)이 위와 동일한 역할을 맡게 되었다.
VeriSign 또는 Entrust 등 CA 벤더들은 개인의 공공 키와 함께 개인의 신원과 소속이 포함된 인증서를 발행한다. 이 인증서는 전자 서명과 함께 묶여 특정 디렉토리에 저장된다. 발신자의 브라우저에서 해당 디렉토리에 있는 수신자의 인증서를 찾아볼 수 있고 인증서에 내장된 키를 사용하여 메시지를 암호화할 수 있다. 그런 다음 발신자는 자신의 비밀 키를 사용하여 메시지에 서명할 수 있으며, 수신자는 CA에서 보증하는 발신자의 공개 키를 사용하여 서명의 진위를 증명할 수 있다.
10. Ciphertext
제3자의 불법적 획득을 방지하기 위해 평문을 암호화함으로서 생성되는 해독할 수 없는 문장으로 복호화 알고리즘을 이용하여 평문으로 변환할 수 있다.
11. Cleartext
Cleartext는 데이터 통신에서 다른 처리 없이 사람이 즉시 이해할 수 있는 데이터나 메시지의 형식을 의미한다. 특히, 이것은 암호화 없이 전송되거나 저장된 메시지라는 의미를 함축하고 있다. 그래서 이것은 Plaintext와 동일하지는 않다. Plaintext는 암호화 과정에 입력으로 사용되는 평문을 의미하며 그 결과로 나오는 것이 Ciphertext이다. 즉, Plaintext는 암호화 될 수 있다는 의미를 포함하고 있지만, Cleartext는 그렇지 않다.
12. Confidentiality
인가되지 않은 방식으로 정보를 획득할 수 없도록 하는 것으로, 정보의 기밀을 유지하는 것은 정보 보안 요구 사항의 기본 사항 중 하나로써 프라이버시와 거의 동일하다. 데이터의 기밀성이 지켜지지 못한 경우 위험에 노출되었다고 말한다.
13. Covert channel
은닉채널(Covert channel)은 기본 채널에 기생하는 통신 채널이다. 기본 채널에서 신호 대 잡음비를 축소해서 기본 채널의 대역폭을 축소시킨 것으로, 은닉 메시지는 다른 사람이 눈으로는 볼 수 없으며, 송신자와 수신자만이 알 수 있다. 예를 들면, 스테가노그래피에서 숨겨진 메시지를 사진 속에 부호화하여 보내면 사진을 보는 사람은 보지 못하지만 수신자는 이미지 안에 있는 메시지를 추출해 낼 수 있다.
14. CRL (Certificate Revocation List)
폐기된 인증서를 이용자들이 확인할 수 있도록 그 목록을 배포, 공표하기 위한 메커니즘이다. 주로 인증 기관에서 관리하며 메시지를 전달할 때 인증서와 함께 전달된다. 인증서 폐기 목록에는 취소된 인증서들의 일련번호가 들어 있으며 이를 받은 당사자는 목록을 참조하여 취소된 인증서를 사용하지 않도록 해야 한다.
15. Cryptography
암호문은 공공망을 통한 전송을 위해 데이터를 비밀 코드로 변환하는 과정을 말한다. 원문이 암호 알고리즘에 따라 코드문 또는 암호문으로 변환된다. 데이터를 안전하게 보호하는 학문으로 알려져 있는 암호문은 정보를 보관하거나, 관련이 없는 당사지들이 보관된 정보를 알거나 접근하지 못하도록 그리고 통신 방법을 알지 못하도록 차단하는 방식으로 당사자 끼리만 통신할 수 있도록 해준다.
암호화 과정은 알기 쉬운 텍스트를 가져와서 이를 알기 힘든 데이터 조각(암호문이라고 함)으로 변형한다. 복호화 과정은 알기 힘든 데이터를 알기 쉬운 데이터로 복구한다. 두 가지 모두 수학 공식 또는 알고리즘과 키라는 비밀 데이터 시퀀스가 필요하다.
암호 서비스는 기밀성(데이터를 비밀로 유지), 무결성(데이터의 수정 방지), 진위성(자원 또는 사용자의 신원)과 부인 방지(메시지 또는 트랜잭션이 발신 및/또는 수신되었음을 증명함)를 제공한다. 암호문에는 두 가지 종류가 있다. 공유/비밀 키(대칭) 암호문에서는 양 교신 당사자들이 비밀로서 공유하는 키가 하나만 있다. 암호화 및 복호화 시 동일한 키가 사용된다. 공개 키 (비대칭) 암호문에서는 암호화 및 복호화 시 각기 다른 키가 사용된다. 한 당사자에게는 두 가지 키,즉 공개 키와 비밀 키가 있다. 이 두 가지 키는 수학적으로 관련이 있지만 공개 키에서 비밀 키를 알아내기란 실질적으로 불가능하다. 어떤 사람의 공개 키(공개 디렉토리에서 입수)를 사용하여 암호화 된 메시지는 과련된 비밀 키를 사용해야만 복호화 할 수 있다. 바꾸어 말해서, 비밀 키는 문서를 “서명”하는데 사용하고 공개 키는 문서의 출처를 입증하는데 사용할 수 있다.
16. DAC (Discretionary Access Control)
DAC는 접근 제어 정책의 하나로, 시스템 객체에 대한 접근을 사용자 개인 또는 그룹의 식별자를 기반으로 하는 방법이다. 임의라는 말은 어떤 종류의 접근 권한을 갖는 사용자는 다른 사용자에게 자신의 판단에 따라 권한을 줄 수 있다는 뜻이다. 또한 주체 및 객체의 신분이나 임의 접근 제어 규칙에 기초하여 객체에 대한 주체의 접근을 제어하는 기능을 나타내기도 한다.
17. DOS (Denial of service)
DOS는 시스템의 정상적인 기능을 방해하여 인증된 사용자에 의한 해당 시스템 및 데이터에 대한 합법적인 접근을 방해하기 위해 특별히 의도된 공격을 의미한다. 또한 시스템의 일부에서 의도된 목적과 일치하여 기능하지 못하도록 방해하는 일련의 조치를 말하며, 여기에는 인증되지 않은 파괴, 수정, 또는 서비스 지연을 유발하는 모든 행위도 포함된다.
DOS는 공격자가 이익을 얻는 것은 아니지만, 정당한 사용자에 대한 서비스가 거부된다. 또한 데이터 파괴 또는 수정이나 시스템 손상, 인증된 사용자에 대한 서비스 지연/방해되는 등, 시스템의 서비스를 과부하시킴으로써 일어날 수 있다.
DOS는 대개 원격 통신(인터넷을 통한)을 사용하는 외부 소스나 회사에 대해 자신의 손상을 회복 또는 복수하려는 의도로 이루어지는 경우가 많으며, 다루기 가장 어려운 공격 중 하나이다.
18. Decryption
비밀 형식으로 암호화된 데이터를 해독하는 과정을 말한다. 복화화는 비밀 키나 패스워드를 필요로 한다. 즉, 암호화된 문장을 평문으로 변경하며, 대응되는 암호화(Encryption) 과정의 역과정으로 암호적 알고리즘에 의하여 암호문을 평문으로 대응시키는 변환을 수행한다.
19. Digital Signature
전자 서명이란 메시지의 진위성과 무결성 및 부인방지를 보증하기 위한 과정으로, 일반적으로 전자 상거래 보안을 위해 사용된다. 전자 인증서와 유사한 전자 서명은 발신자의 신원을 확인하기 위해 전자 메시지에 첨부되는 코드이다.
전자 서명은 메시지와 함께 암호화된 텍스트를 함께 전송하기 때문에, 수신자가 메시지를 확인하려면 일단 서명을 복호화하고 해쉬값을 재계산해야한다. 이때 해쉬값이 일치하면 메시지와 발신자의 진위가 증명되는 것이다. 효율적인 전자서명은 변조를 할 수 없도록 하는 것이다.
이러한 위험 요소를 제거하기 위해 전자 서명은 공개키 암호 알고리즘과 해쉬 코드를 사용한다. 해쉬 코드는 문서에 아주 조금이라도 변경이 있다면, 동일한 코드를 생성하지 않는 특징이 있다. 이는 문서에 첨부되어 문서와 함께 전송되며, 수신인에 의해 확인된다. 따라서 내용까지 확인할 수 있다. 또한 올바른 전송자만이 올바른 개인 키를 사용하여 해쉬 코드를 생성할 수 있기 때문에
20. Data Integrity (file integrity)
Data Integrity는 데이터를 인가되지 않은 방법으로 변경할 수 없도록 보호하는 것을 의미한다.
21. Encryption
암호화는 데이터를 인가되지 않은 사람이 알아 볼 수 없는 암호문(ciphertext)의 형태로 변환하는 것을 말하며, 이와 반대로 복호화(Decrpytion)는 암호회된 데이터를 원래의 형태로 다시 변환하는 과정이다.
암호화와 복호화는 처음에 전쟁시 적에게 정보가 유출되는 것을 방지하기 위해 사용되었으나, 오늘날에는 주로 인터넷 전송과 시스템 데이터의 보안을 유지하기 위해 사용되고 있다.
암호화와 복호화는 암호 알고리즘과 키를 이용함으로써 수행되는데, 이때 사용하는 키의 종류에 따라 암호화 키와 복호화 키가 동일한 대칭키 암호 알고리즘과 암호화 키와 복호화 키가 서로 다른 공개키 암호 알고리즘으로 구분된다. 그러나 암호 알고리즘과 키를 이용하여 암호화된 데이터도 완벽히 안전할 수는 없다. 암호화는 인가되지 않은 사람이 복호화를 시도할 경우, 이를 어렵게 만들 수 있기는 하지만 무제한적인 처리 능력과 시간만 보장된다면, 어떠한 암호 시스템도 무너질 수 밖에 없다.
따라서, 암호화의 목적은 데이터의 비밀이 유지되어야 하는 기간 내에 암호문을 보호하는 것이라고 할 수 있으며, 강력한 암호화라는 것은 효과적인 암호의 유효 기간 내에 실제로 키를 발견하는 것이 불가능 할 것이라는 의미를 내포한다. 이때 강력한 암호화와 약한 암호화의 차이는 단지 처리 능력의 문제일 뿐이기 때문에, 컴퓨터의 기능이 급속히 향상되고 비용까지 내려감에 따라 현재의 "강력한 암호화"는 결국 "약한 암호화"가 될 수 밖에 없을 것이다.
22. End-to-end encryption
암호화 방법 중의 하나로, 메시지를 암호화해서 전송하고 최초 도착하는 노드에서 복호화한 다음 다시 암호화해서 전송하는 방식을 의미한다. 모든 중간 노드를 통과할 때는 복호화, 암호화 과정을 거친다. 온라인 암호화라고도 한다.
23. Hash
해쉬(Hash)는 가변 길이 데이터 블록이나 메시지를 해쉬코드라는 고정 길이 및 유일한 값으로 대응시키는 것을 말한다.
24. Hash function
해쉬코드를 생성하기 위해 임의의 비트 문자열을 고정된 비트 문자열로 출력하는 함수로서 다음과 같은 성질을 만족해야 한다.
① 주어진 출력에 대해 그 입력값을 찾아내기가 계산상 불가능해야 한다.
② 주어진 입력에 대해 같은 출력값을 갖는 또 다른 입력값을 찾기가 계산상 불가능해야 한다.
③ 같은 출력을 내는 임의의 다른 두 입력을 찾기가 계산상 불가능해야 한다.
25. Integrity
정보 보안의 요구 사항중 하나인 무결성은 데이터나 리소스를 인증되지 않은 변경으로부터 보호하는 것을 의미하며, 무결성에 실패한 데이터는 손상되었다고 말한다. 이것은 정보 및 자원을 불법적인 변경으로부터 보호하는 성질을 의미한다.
26. Intrusion detection
침입 탐지 시스템(IDS)은 네트워크 시스템 파일과 로그인을 감시하여 컴퓨터 시스템에 침입하거나 이를 악용하려는 침입자를 찾아낸다.
침입 탐지 시스템의 두 가지 주요 유형은 익명적 탐지(anomaly detection)와 악용 탐지(misuse detection)이다. 익명적 탐지기는 정상적인 시스템 사용에서 발생하는 행동을 탐지하며, 악용 탐지기는 알려진 공격 시나리오와 일치하는 행동을 탐지한다.
27. IPSec (Internet Protocol Security)
IPSec(인터넷 프로토콜 보안)은 정보 패킷이 패킷 헤더 또는 주소에 따라 교환되는 IP 계층에서의 보안적인 패킷 교환을 보장하는 일련의 프로토콜로 구성된다.
IPSec은 Internet Engineering Task Force(IETF, 인터넷에서 정보 교환의 표준을 지지하는 조직)에서 개발 및 관리되며, 인터넷 보안 연합(Internet Security Association) 및 키 관리 프로토콜(Key Management Protocol)로 가능하게 된 프로세스인
28. Key Distribution Center (KDC)
키 분배 센터로서 키를 나누는 각 객체에게 키를 생성하고 분배해주는 신뢰할 수 있는 센터이다.
29. Kerberos
개방 네트워크상에서 인증과 통신의 암호화를 시행하여, 보안성을 확보하기 위한 알고리듬이다. 미국 MIT에서 개발한 것으로, 버전 5의 규격은 RFC 1510에 규정되어 있다. ‘신뢰를 바탕으로 한 제3기관에 의한 인증’의 정신에 따라 증명서를 발행하는 키 분배 센터(KDC)가 KDC 관리 영역에 속하는 복수 클라이언트와 서버 간의 인증과 암호 키 발행을 담당한다. 구체적으로는 KDC가 각 클라이언트의 패스워드를 기초로 생성한 일정 기간의 신분 증명서(TGT:ticket-granting ticket)를 관리 영역 내 각 애플리케이션 서버에 접근 시 사용해서 패스워드가 누설되는 위험 부담을 줄이고 있다. MIT가 개발한 것은 미국 정부에서 수출을 규제하고 있으나, 커베로스 버전 4의 스웨덴 스톡홀름 왕립 연구소(KTH) 판인 ‘KTH-KRB’ 등은 쉽게 구할 수 있다. 이 알고리듬의 3가지 주요 역할은 인증, 승인 및 ID 발행이다.
30. Logging
Logging은 컴퓨터 동작 상태에 따른 변화를 시간에 따라 기록하는 것이다.
31. Logic Bomb
포크 폭탄으로도 알려져 있으며 실행시 특정 조건이나 컴퓨터의 특정 상태를 확인하는 상주형 컴퓨터 프로그램으로서 조건이 만족하면 인증되지 않은 활동의 범행을 시작한다.
보통의 프로그램에 오류를 발생시키는 프로그램 루틴을 무단으로 삽입하여, 특정한 조건의 발생이나 특정한 데이터의 입력을 기폭제로 컴퓨터에 부정한 행위를 실행시키는 것이다. 프로그램이 전혀 예상하지 못한 파국적인 오류를 범하게 한다. 주로 이메일 폭탄, 전자 편지 폭탄, 컴퓨터 바이러스 등과 같이 인터넷 등 컴퓨터 통신망을 이용한 범죄나 사이버 테러리즘의 수법으로 사용된다. 오류를 발생시키는 부호의 삽입에는 보통 트로이 목마를 응용한다.
32. Mutual Authentication
두 개체가 서로 상대방의 신분을 확인시켜 주는 실체 인증 방법이다. 기술적으로 클라이언트나 사용자가 서버를 스스로 인증하고, 서버도 같은 방식으로 사용자를 인증하는 것을 의미한다. 일반적으로 이것은 사용자의 액션이 없이도 클라이언트 프로세스와 서버 프로세스를 수행한다.
33. MAC (Mandatory Access Control)
강제적 액세스 제어는 이름 그대로 엄격한 방법이다. MAC을 사용하고 있는 시스템의 유저들은 자신들의 정보에 어떠한 액세스 허가도 설정할 수 없다. 대신에 시스템 보안 정책에 지정된 MAC는 OS에 의해 실시되며, 해당 시스템의 모든 동작에 적용된다. MAC 기반 시스템은 데이터 분류 레벨(public, confidential, secret, top secret)과 데이터 분류 레벨에 상응하는 보안 취급 허가 라벨(security clearance labels)을 사용하여, 시스템 관리자에 의해 설정된 보안 정책에 따라서 어떤 액세스 제한이 실시될 것인지 결정된다. 추가적으로 그룹별 또는 도메인별로 액세스 제어를 강제할 수 있고, 그 외에도 요구되는 보안 취급 허가 라벨을 더할 수 있는데, 주체(유저나 어플리케이션)은 적절한 그룹이나 도메인에 속해 있어야 한다. 예를 들어, 리서치 그룹에만 속해 있는 기밀 라벨이 붙어있는 파일은 마케팅 그룹에 속한 유저가 액세스할 수 없는데, 해당 유저가 기밀보다 높은 보안 취급 레벨(예: top secret)을 가지고 있다고 해도 안 된다. 이 개념을 구획화(compartmentalization) 또는 need to know라고도 한다.
MAC 기반 시스템이 적절하게 사용되면, DAC기반 시스템보다 더 안전하지만, MAC은 추가적인 제어와 제한이 운영 체제에 의해 강제되므로 사용 및 관리하기가 더 어렵다. MAC기반 시스템은 일반적으로 정부, 군대, 재경부와 같이 복잡성과 비용에 상관 없이 높은 보안이 요구되는 곳에서 사용된다.
34. MAC (Message Authentication Code)
데이터 무결성 메카니즘에서 쓰이는 암호적 검사값으로서 암호화 과정에서 계산되어 메시지에 첨가되는 코드이다. 만약 복호화 과정에서 계산된 신분인증 코드가 첨가된 코드와 일치된다면 메시지가 전송되는 과정에서 변경되지 않았음을 보장할 수 있다.
35. Masquerade
Masquerade는 한 개체가 다른 개체처럼 흉내 내는 것을 말한다. 보안과는 약간 다르지만 리눅스에서 사용하는 IP Masquerade를 통해 세부 의미를 살펴보면 다음과 같다.
IP Masquerade는 리눅스에서 지원하는 네트워킹의 한 기능이다. 요즘같이 IP가 고갈되어 가는 시대에 활용가치가 높은 네트워킹 기법이라 할 수 있겠다.
IP Masquerade란 무엇인가? 예를 들어보자. 당신의 사무실에 4대의 컴퓨터가 LAN으로 연결되어 있고 한 대의 컴퓨터만이 인터넷에 연결되어 있다. 오직 한 대만이 공식 IP 주소를 가지고 있으며 나머지는 할당받은 IP가 없다. 나머지 세 대의 컴퓨터는 공식 IP를 할당받지 못한다면 나머지 컴퓨터들은 인터넷에 접속을 못 하는 것인가? 그렇지 않다. 그 해답이 바로 IP Masquerade이다. 간단히 요점만 설명하면 리눅스 호스트에 IP Masquerade 기능을 설정하면 나머지 세 대의 컴퓨터들은 인터넷의 공식적인 접촉을 IP Masquerade 리눅스 호스트의 공식 IP를 이용한다. 마치 자기가 그 IP를 가지고 있는 양 인터넷에서 모든 활동이 이루어진다.
공식 IP주소를 가지고 있는 하나의 리눅스 호스트가 PPP 또는 이더넷을 통해 인터넷에 연결되어 있다면, 이 리눅스와 연결되어 있는 다른 컴퓨터도 공식적으로 할당된 IP 주소 없이 인터넷에 접속할 수 있다. 이 기능은 많은 상업적 방화벽 또는 네트워크 라우터에서 지원하지만 리눅스에서는 커널 컴파일 및 몇 가지 설정을 통해 쉽게 구현할 수 있다.
인터넷에 접속되어 있는 다른 컴퓨터들은 나머지 세 대의 컴퓨터에서 나오는 인터넷 접속이 IP Masquerade가 구현된 리눅스 서버에서만 나오는 것으로 인식한다. IP Masquerade는 이러한 기능을 제공하는 것뿐만 아니라 매우 안전한 네트워크 환경도 제공한다. Masquerade로 구성된 시스템 및 내부 LAN의 보안을 깨트리는 것은, 잘 만들어진 방화벽의 보안을 깨트리는 것만큼 매우 어렵다.
36. Non-repudiation
부인방지는 메시지의 송수신자가 송수신 사실을 부인하지 못하도록 하는 방법이다. 이것은 문서나 송,수신자가 유효한 상태일 때 발생하는 기능으로 암호화에 있어서 부인방지는 액세스를 보호하기 위해 개인 키를 사용하는 사람에게 적용되는 것이다. 이로써 해당 개인의 전자 서명을 사용하여 서명된 모든 메시지는 이들로부터 비롯될 수 있음을 보증한다. 전자 상거래에서 키 주인이 재정적 거래에 전자 서명을 사용하면, 이 거래의 대상인이 누구인지를 보증하게 된다.
데이터
37. PKI (Public Key Infrastructure)
PKI(공개키 기반구조)는 인터넷 트랜잭션과 관련된 각 당사자의 진위를 확인하고 사기나 방해 행위에 대해 보호하고 부인봉쇄를 위한 시스템을 말하며 따라서 트랜잭션 거부에 대해 스스로를 보호할 수 있다.
제3의 신뢰 기관이라고 하는 인증서 발행 기관에서 사용자의 신원의 핵심 구성 요소를 지정하는 전자 메시지의 첨부 형태로 전자 인증서를 발행한다. 인터넷 트랜잭션에 서명이 이루어지는 동안 한 당사자에서 다른 당사자로 암호화된 메시지가 트랜잭션이 처리되기 전에 검증된다.
PKI는 소프트웨어 응용 프로그램에 내장되거나 서비스 또는 제품으로 제공된다. 전자상거래 리더들은 PKI가 트랜잭션 보안 및 무결성에 있어서 매우 중요하고 소프트웨어 업계는 이들의 사용을 위해 개방 표준을 채택하는 쪽으로 선회하고 있다. PKI 데이터를 포함하는 디렉토리 시스템을 간소화 하는 것이 한 가지 도전으로 남아 있다.
PKI는 공개 키 암호화와 전자 서명 서비스를 제공하기 위해 필요한 전반적인 시스템에 부여되는 용어이다. 따라서 PKI의 목적은 키와 인증서를 관리하고 따라서 진정한 네트워크 환경을 구축하고 유지 관리하는 것이다.
공개키 암호 기술이 인터넷을 이용한 많은 응용 분야에 사용되면서 공개키가 누구나 접근 가능한 공개 디렉토리(Public directory)에 사용자의 고유이름, 사용자의 공개키 등의 형태로 저장이 되면서 공개키의 노출에 따른 상대방의 공개키 신뢰 여부가 문제로 대두되었다. 이러한 문제는 공개키 메커니즘의 응용분야가 많아지면서 매우 중요한 해결과제로 부상하였으며 문제에 대한 해결책으로 제시된 것이 바로 공개키 기반 구축(PKI:Public Key Infrastructure)이다.
PKI란 사용자의 공개키를 인증해주는 인증기관들의 네트워크로 모르는 사람과의 비밀통신을 가능하게 하는 암호학적 키와 인증서(certificate)의 배달시스템. 현재 많은 국가들이 PKI에 관심을 갖고 그 실용화에 노력하고 있는데 PKI는 공개키 메커니즘을 사용하는 모든 분야(전자서명, 전자상거래 등)가 안전하게 구현되기 위해서는 반드시 구축되어야 할 기반이다.
PKI의 주요 기능에 인증서관리, 키관리, 암호화, 전자서명이 있다. PKI public key, certificate format은 X.509v3와 동일하다. PKI의 구성요소에는 인증서버, 키관리시스템, 디렉토리서버, PKI client 등이 있다.
38. PGP (Pretty Good Privacy)
PGP는 필립 짐머만에 의해 개발되었으며, PC와 Mac에서 데이터 파일이나 전자우편 메시지를 암호화 하기 위한 공개키 암호화 프로그램을 말한다. PGP는 강력한 암호화 기능 및 사용의 편의성으로 가장 강력한 암호화 유틸리티 중 하나로 인정 받고 있다.
또한 PGP에는 인증 기능들이 있기 때문에 발신자로 보이는 사람에 의해 메시지가 실질적으로 전송되었는지 확인할 수 있으며, 메시지를 보낸 것을 부인하지 못하도록 방지하는 부인봉쇄 기능을 제공한다.
39. Plaintext (Cleartext)
Plaintext는 암호화 대상이 되는 문자열이나 암호문을 복호화한 본래의 문자열을 의미한다. Cleartext와 비슷하게 사용되지만 Cleartext는 암호화 하지 않았다는 의미를 함축하고 있다는 점에서 Plaintext와 구분되기도 한다.
40. Public key
Public Key는 공개키 암호시스템에서 사용되는 한 실체의 비대칭 키 쌍중에서 공개되는 키를 말하며 이를 이용한 서명시스템에서 서명의 진위를 판단하는 데 사용되는 키로서 검증키라고도 한다.
공개키 암호 시스템에서는 데이터를 잠그기 위한 암호화를 하기 위해서는 공개키를 사용하고 데이터를 잠금 해제하기 위한 복호화를 하기 위해서는 공개키와 쌍이 되는 비밀키를 사용한다. 공개키는 신뢰할 수 있는 디렉토리에 게시를 한다. 공개키를 안전하게 관리하고 신뢰하는 기관을 인증기관(CA, Certificate Authority)이라고 한다.
41. Private key
Private Key는 공개키 암호시스템에서 사용되는 한 개체의 비대칭 키 쌍중에서 그 개체만이 사용하는 공개되지 않은 키를 말한다. 즉, 이것은 공개 키 암호 알고리즘과 함께 사용되는 암호 키를 말하며 유일하게 개체와 관련있지만 공개되지는 않는다.
42. Privacy
신뢰는 모든 전자 비즈니스 관계의 중심에 있고 가치의 안전한 상호 교환시 프라이버시에 의존한다.
컴퓨터 보안 대책을 통해 특정 데이터를 알고 접근하는 권한 및 인증을 가지거나 가지지 못한 사람을 제어하는 정도까지 프라이버시를 보호한다. 암호화와 같은 컴퓨터 보안 대책은 네트워크 정보에 대한 프라이버시를 보장한다.
43. Privilege
사용자, 프로그램, 프로세서에 부여된 특권을 나타내며 시스템의 접근 통제보다 우선한다.
44. Protocol Analyzer
연결 프로토콜에 따라 데이터 전송을 행하는 장치에 접속하여, 접속된 장치에 관해 연결 프로토콜의 해석, 데이터 전송의 모의시험 및 송수신 데이터의 감시 기능 등을 하는 장치를 말한다.
45. RBAC (Role-based Access Control)
역할 기반 액세스 모델에서는 권한이나 퍼미션이 개개의 유저가 아닌 역할에게 할당된다. 따라서 액세스 제어의 실시나 관리를 쉽고 유연하게 할 수 있는 장점이 있다. 예를 들어, 마케팅 파일에의 액세스는 마케팅 매니저 역할에게만 부여되고 있고, Ann, David, Joe는 마케팅 매니저 역할을 부여받고 있다. 나중에 David이 다른 부서로 이동하면, 그가 갖고 있는 마케팅 매니저 역할만 무효로 하면 되므로 다른 작업은 필요 없다. 당신이 수천 명의 직원과 수백 개의 역할이 있는 조직에 이 방식을 적용하면, 보안과 편리함을 얻을 수 있다.
46. Risk Analysis (Risk Assessment)
한 조직의 정보 자원, 기존 제어 및 컴퓨터 시스템 취약성에 대한 분석을 말한다. 위험 분석은 잠재적인 피해 수준을 현금 및 기타 자산으로 파악한다.
보호할 필요가 있는 내용, 다른 대상으로부터 보호해야할 내용, 그리고 보호하는 방법을 파악하는 것은 사용자의 모든 위험을 조사하고 심각성 수준별로 이러한 위험들에 대해 등급을 매기는 과정을 말한다.
47. Replay Attack
Replay Attack은 프로토콜상에서 유효 메시지를 골라 복사한 후 나중에 재전송함으로써 정당한 사용자로 가장하는 공격을 말한다. 시간이나 순서에 따른 유효성을 검출할 수 있도록 순서 번호나 타임스탬프, 또는 도전/응답 등으로 방어할 수 있다.
48. Session key
통신을 하는 상대방끼리 하나의 통신 세션 동안에만 사용하는 암호화 키로서 하나의 키를 사용한 암호문이 많을 경우 이를 분석하여 키를 계산할 가능성이 있으므로 이를 막기 위하여 사용하는 임시적인 키를 말한다.
49. SET (Secure Electronic Transaction)
인터넷과 같은 개방형 네트워크에서 안전한 상거래를 보장해 주는 보안 프로토콜로서 SET 프로토콜은 메시지의 암호화, 인증(Authentication) 및 디지털 서명 등을 통해 인터넷상에서 안전한 전자상거래가 이루어질 수 있도록 한다. 이것은 인터넷에서 인정한 신용 카드 트랜잭션을 가능하게 해주는 최신 표준이며 전자상거래 보안의 핵심 구성요소이다.
SET은 디지털 서명을 이용하여 판매자들이 구매자들의 신원을 검증할 수 있도록 해준다. 또한 구매자들의 신용 카드 번호가 검증을 위해 신용 카드 발급업체에 바로 전송시키고 판매자들에게 번호를 노출시키지 않고 청구함으로써 구매자들을 보호해준다.
50. S/MIME (Secure MIME)
S/MIME(보안된 범용 확장 인터넷 우편)은 메시지에 전자 서명(digital signature)과 암호화 기능(encryption)을 첨부한 프로토콜이다. MIME은 공식적으로 제안된 인터넷 상의 전자 우편 확장 형식인데 인터넷의 전자 우편 문서는 header와 몸체의 두 부분으로 나뉘게 된다. Header는 우편물의 내용을 원하는 장소에 제대로 보낼 수 있게 하는데 꼭 필요한 정보를 담는 설정 항목(field)과 각 설정 항목에 기재된 설정값(value)들의 짝들로 이루어진 구조화된 부분인 반면 전자 우편의 몸체 부분은 MIME 형식을 따르는 전자 우편의 경우를 제외하면 형식이 없는 보통 글 파일의 형태이다.
MIME 형태의 전자 우편에서는 몸체의 서식 구조가 정해져 있어 MIME 형태를 따르는 전자 우편은 몸체에 특수한 형태의 글이나 그림, 소리 그리고 그 밖에 다른 내용을 규정된 서식 구조에 따라 넣을 수 있게 만들어져 있다. 하지만 MIME 자체로서는 그 어떠한 보안 장치가 마련되어 있지 않는데 비해 S/MIME은 PKCS #7의 서식에 다라 전자 서명이나 암호화와 같은 보안 장치를 제공하고 있다. 이 방법에 따르면 MIME은 기존의 보통 MIME 몸체에 대해 암호화 작업을 하여 만들어진 산물인 PKCS #7메시지를 몸체에 덧붙이게 된다.
51. Sniffing
해킹의 한 유형으로, 통신망상에 전송되는 패킷 정보를 읽어 보는 것이다. 다른 사람의 계정이나 비밀 번호를 알아내기 위해 사용되며, 이를 방지하기 위해서는 데이터 패킷을 암호화하여 전송한다.
52. Spoofing
스푸핑(spoofing)이라 함은, 타인의 시스템 자원에 접근할 목적으로 IP를 날조하여 정당한 사용자인 것처럼 보이게 하거나 승인받은 사용자인 체 하여 시스템에 접근함으로써 추적을 피하는 고급 해킹 수법이다.
스푸핑의 대표적인 예로는 IP 스푸핑을 들 수 있다. 1995년 미국의 케빈 미트닉이 이 기법을 사용하여 해킹 범죄를 저질렀다가 체포된 사건으로 더욱 유명해졌는데, 보안에 원천적으로 취약한 TCP/IP 프로토콜의 취약점을 이용하여 여러 가지 공격 방법들이 존재한다.
IP 스푸핑은 공격 대상인 호스트의 IP 주소를 교묘히 바꾸어서 이를 이용해 해킹을 하는 것이다. 만일 특정 호스트에 있는 정보를 훔쳐내고 싶다면, 자신이 현재 머물러 있는 IP 주소를 그 특정 호스트와 함께 하드 디스크를 공유하고 있는 다른 호스트의 주소로 위장하고, 마치 자신이 진짜 호스트인 것처럼 정보를 보내어 공격대상 호스트의 하드 디스크를 공유하도록 만든다. 이 기법은 IP를 속여서 공격하기 때문에 추적이 쉽지 않고, 아무런 흔적도 남지 않고 기지 않고 원하는 정보를 몰래 훔쳐내올 수 있게 되는 것이다.
53. SSL
SSL은 인터넷 상에서 비밀 문서를 전송하기 위해 넷스케이프에서 최초로 개발한 프로토콜이다. SSL은 비밀 키를 사용하여 SSL 연결을 통해 전송되는 데이터를 암호화한다. SSL은 신용 카드 번호 등 또한 기밀 사용자 정보를 입수하기 위해 사용할 수도 있다.
SSL 연결을 필요로 하는 웹 페이지는 https:로 시작한다. 더욱 새로운 보안 프로토콜은 TLS (트랜잭션 레이어 보안)은 때때로 SSL 응용 프로그램과 통합되어 결과적으로 인터넷 보안의 표준으로 자리잡을 것이다.
TLS는 복잡한 삼중 DES 암호화를 사용하여 클라이언트와 호스간의 터널을 생성함으로써 전자상거래를 위한 메일 암호화 및 인증을 제공한다.
웹서버와 브라우저간 secure WWW 연결을 위한 프로토콜로 사용되는 SSL(Secure Sockets Layer)은 Terrisa가 개발해 Netscape사가 자사 제품의 암호화 프로토콜로 사용하는 프로토콜이다. SSL은 HTTP 프로토콜을 확장시켜 Web의 보안을 향상시킨 S-HTTP와는 달리 TCP와 응용 프로그램 사이에 존재하는 프로토콜이기 때문에 HTTP뿐 아니라 NNTP, FTP 등의 다른 응용 프로그램에서도 사용할 수 있다는 장점이 있다.
SSL에 의해서 제공되는 보안 기능은 서버와 클라이언트의 인증, 메시지의 기밀성과 무결성 등이다. Netscape SSL은 RC2, RC4라고 하는 대칭형 암호알고리즘을 사용하며 미국 외에서 사용가능한 키 길이는 얼마전까지 40bit key로 제한되어 있었다. 그러나 1997년 6월 24일, 미상무성이 Netscape 와 Microsoft사의 128bit 암호화가 가능한 제품의 수출을 허가하였고 현재는 128bit SSL이 국내에서도 사용되고 있다. 128bit SSL이 허용된다는 것은 128bit 세션키를 사용하는 RC2, RC4 알고리즘을 Netscape 와 서번간에 사용하는 것이 허용된다는 것을 의미하며 최신버젼의 Netscape 브라우저의 경우 SSL v2는 40bit RC2, RC4를, SSL v3는 128bit RC4를 지원한다.
54. SSH
보안 등급이 낮은 네트워크상에서 보안 등급이 높은 원격 접속 개시나 데이터 전송을 실현하는 규약을 의미한다. 이 규약에는 전송 계층 프로토콜, 사용자 인증 프로토콜, 연결 프로토콜 등 3종류가 있다. 전송 계층 프로토콜은 TCP/IP의 상위에서 사용하는 것으로, 암호화 데이터 전송이나 서버 인증 기능이 있다. 여러 종류의 암호 기술을 사용할 수 있고, 암호 키의 교환이나 이용하는 암호 기술의 교섭 방법이 정해져 있다. 사용자 인증 프로토콜은 SSH 트랜스포트층 프로토콜의 상위에서 동작한다.
55. Threat
보안에 해를 끼치는 행동이나 사건을 의미하며 능동적 위협과 수동적 위협으로 나누어 진다. 능동적 위협(active threat)은 단순히 정보를 가로채는 것 이외에 그 정보를 훼손, 변조하는 행위를 의미한다. 수동적 위협(passive threat)은 단순히 정보만을 가로채고 훼손, 변조하지 않는 것을 말한다.
56. TLS (Transport Layer Security)
현재 널리 사용되고 있는 SSL(Secure Sockets Layer)을 대신하는 차세대 안전 통신 규약이다. SSL에 비해 강력한 암호화를 실현할 수 있고 폭이 넓은 망의 통신 규약에 대응하는 점에서 주목을 끌고 있다. 암호화에는 3개의 다른 데이터 암호화 표준(DES) 키를 사용한 트리플 DES 기술이 응용되고 있다. SSL은 TCP/IP에만 대응하지만 전송 계층 보안(TLS)은 네트웨어나 순차 패킷 교환(SPX), 애플토크(Apple-Talk) 등의 통신망 통신 규약에도 대응하고 있다. 또 오류 메시지 처리 기능이 다소 개선된 것으로 평가되고 있으며 미국 마이크로소프트사, 넷스케이프 커뮤니케이션스사가 TLS의 대응을 진행시켰다.
57. Traffic analysis
출현, 부재, 양, 방향, 빈도 등 트래픽 흐름을 관찰함으로써 정보를 추측하는 것을 말한다. 이러한 네트워크 트래픽을 감시하고 분석하는 프로그램을 스니퍼라고 하며, 병목현상 등과 같은 문제점을 발견해 낸다. 이런 정보를 이용하면, 네트워크 관리자는 트래픽의 동향을 효율적으로 유지할 수 있다.
58. Trojan horse
옛 오딧세우스 소설에서 이름을 가져다 붙인 트로이 목마는 컴퓨터 시스템에서 정상적인 기능을 하는 프로그램으로 가장해 다른 프로그램 안에 숨어 있다가 그 프로그램이 실행될 때 자신이 활성화하는 악성 프로그램을 말한다.
컴퓨터 바이러스와 달리 자기 복사 능력은 없지만, 자기자신이 실행되는 순간 시스템에 직접적인 피해를 가하는 특징을 가지고 있다.
트로이 목마 프로그램은 고의적으로 포함되었다는 점에서 프로그래머의 실수인 일명 버그(Bug)와는 다르며, 자기 자신을 다른 파일에 복사하지 않는다는 점에서 컴퓨터 바이러스와 다르다. 따라서 어떤 프로그램을 실행시켰을 때 하드 디스크의 파일을 지우되 다른 프로그램에 복사되지 않으면, 이것은 컴퓨터 바이러스가 아니라 트로이 목마 프로그램이라 할 수 있다.
현재까지 수많은 트로이 목마들이 발견되었으며, 가장 대표적인 것이 백오리피스(Back Orifice)이다. 종래의 트로이 목마 프로그램은 실행시 하드 디스크를 포맷해 버리는 등 그 자체로 피해를 주는 형태가 주종을 이루었지만, 최근의 백오리피스와 같은 프로그램은 여기서 나아가 백도어(Back door) 방식으로 시스템이나 사용자 정보를 몰래 빼오는 형태가 많아지는 추세이다.
트로이 목마 프로그램은 일반적인 백신 프로그램에 그에 해당하는 진단/삭제 기능을 추가함으로써 퇴치가 가능하지만, 그 대처 방법은 컴퓨터 바이러스와는 차이가 있다.
컴퓨터 바이러스는 다른 프로그램에도 감염될 수 있기 때문에 한 프로그램에서 컴퓨터 바이러스가 발견되면 다른 프로그램도 모두 검사해 봐야 한다. 이에 반해 트로이 목마 프로그램은 자기 복사 능력이 없어 한 프로그램 내에서만 존재하기 때문에 백신으로 검사해도 치료가 불가능하다. 그러나 그 프로그램만 지워버리면 문제가 간단히 해결된다.
59. Vulnerability
컴퓨터 시스템 즉, 하드웨어, 소프트웨어, 펌웨어 등의 시스템에서 제기되는 보안상의 결점을 말한다. 자동화 시스템 보안 절차, 관리상 제어, 물리적 배치, 내부 제어 등이 취약하면 인가를 받지 않은 접근에 의해 중요한 정보가 침해 당할 수 있다. 이를 방지하기 위해 암호화, 침입탐지, 침입차단 등의 다양한 보안 기법이 이용되고 있다.
60. X.509
암호학에서 X.509는 공개키 인증서와 인증 알고리즘의 표준 가운데서 공개키 기반(PKI)의 ITU-T 표준이다.
X.509는 1988년 6월 3일 X.500 표준안의 일환으로 시작되었다. 1993년 인증기관 고유 식별자와 주체고유 식별자가 추가된 v2가 발표되었으며, 1996년에 확장 요소(Extension)를 이용해 데이터를 추가할 수 있는 v3가 발표되어 현재 쓰이고 있다. PGP처럼 상호 신뢰를 기반으로 하는 웹 모델과 달리, X.509는 매우 엄격한 수직적 구조를 채택하였다. 따라서 하나의 인증 기관을 정점으로하는 트리 구조를 갖게 된다. 이러한 형태의 불편함을 해소하기 위해, v3는 보다 유연한 구조를 채택하여 몇개의 신용할만한 Root CA끼리는 상호 인증, 혹은 자가 인증을 허용하고 있다.
참고자료
[1] http://unix.co.kr/bbs/board.php?bo_table=02_06&wr_id=8&page=4, 보안 및 암호 용어사전
[2] http://kr.ahnlab.com/info/securityinfo/term.jsp,
[3] http://en.wikipedia.org/wiki/Access_control_list, Wikipedia
[4] http://en.wikipedia.org/wiki/Access_matrix, Wikipedia
[5] http://blog.naver.com/eugene1975?Redirect=Log&logNo=40015612029, Access Control Matrix 모델이란
[6] http://www.terms.co.kr/authorization.htm 텀즈
[7] http://en.wikipedia.org/wiki/Cleartext Wikipedia
[8] http://terms.naver.com/ Naver 용어사전
[9] http://en.wikipedia.org/wiki/Mutual_Authentication Wikipedia
[10] http://misman95.egloos.com/1822590 불사조 블로그
[11] http://www.linuxlab.co.kr/docs/5-4.htm IP Masquerade 강상민
[12] http://terms.co.kr/sniffer.htm 텀즈
[13] http://ko.wikipedia.org/wiki/X.509 Wikepedia
'컴퓨터공학 > 전산보안론' 카테고리의 다른 글
제로보드 4 악성코드 대응 (0) | 2011.01.05 |
---|---|
부채널 공격(Side Channel Attacks)에 대하여.. (2) | 2009.03.31 |
관용 암호와 공개키 암호 비교 (0) | 2008.12.29 |
블록 암호의 운용 모드 (4) | 2008.10.26 |
전산 보안 - DES 암호 알고리즘 (0) | 2008.09.19 |
- Total
- Today
- Yesterday
- 안드로이드
- 구글
- 하둡
- HTML
- 세미나
- java
- 아이폰
- ms
- 분석
- 마케팅
- 빅데이터
- 클라우드
- 모바일
- fingra.ph
- r
- 디자인
- 자바스크립트
- Hadoop
- 맥
- 애플
- 책
- 통계
- 웹
- 자바
- mysql
- SCORM
- XML
- 프로젝트
- 도서
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |