728x90
반응형
1. 암호화 (Encryption)
- 정의: 데이터를 인가되지 않은 사용자로부터 보호하기 위해 데이터를 변환하는 과정입니다. 데이터를 특정 키로 암호화하고, 복호화 키를 가진 사용자만 데이터를 복원할 수 있습니다.
- 종류:
- 대칭 키 암호화 (Symmetric Key Encryption): 암호화와 복호화에 같은 키를 사용합니다. (예: AES, DES)
- 비대칭 키 암호화 (Asymmetric Key Encryption): 암호화와 복호화에 서로 다른 키를 사용합니다. (예: RSA, ECC)
2. 네트워크 보안 프로토콜
- TLS (Transport Layer Security):
- 정의: 네트워크 통신에서 데이터를 안전하게 전송하기 위한 프로토콜입니다. 암호화를 통해 기밀성, 무결성, 인증을 보장합니다.
- 활용: HTTPS와 같이 웹 통신에서 안전한 연결을 제공.
- SSL (Secure Sockets Layer):
- 정의: TLS의 이전 버전으로, 웹 브라우저와 서버 간의 데이터를 안전하게 주고받는 데 사용됩니다. 현재는 TLS로 대체되었습니다.
- IPSec (Internet Protocol Security):
- 정의: IP 계층에서의 보안을 제공하는 프로토콜로, 데이터의 무결성, 인증, 암호화를 통해 안전한 통신을 보장합니다.
- 활용: VPN을 통한 안전한 통신.
- SSH (Secure Shell):
- 정의: 안전하게 네트워크 서비스를 제공하기 위한 원격 로그인 프로토콜입니다.
- 활용: 원격 서버에 안전하게 접속하고 명령어를 실행할 때 사용됩니다.
- ICMP (Internet Control Message Protocol):
- 정의: 네트워크에서 오류 메시지를 전송하거나 네트워크 상태를 점검하는 데 사용되는 프로토콜입니다.
- 활용: ping 명령어를 사용하여 네트워크 연결 상태를 확인하는 데 사용.
3. 보안 공격 유형
1) DoS (Denial of Service, 서비스 거부 공격)
- 정의: 시스템에 과부하를 일으켜 정상적인 서비스를 방해하는 공격입니다.
- 예시: ICMP Flooding (Ping flood) - 서버에 대량의 ICMP 패킷을 보내서 네트워크를 마비시킴.
2) DDoS (Distributed Denial of Service)
- 정의: 다수의 장치를 이용해 동시다발적으로 공격을 가하여 서비스를 마비시키는 공격입니다.
- 특징: 분산된 여러 대의 컴퓨터(봇넷)를 통해 동시에 공격을 수행함으로써 방어가 어려움.
3) 피싱 (Phishing)
- 정의: 사기성 웹사이트나 이메일을 이용해 사용자의 개인정보(비밀번호, 신용카드 정보 등)를 유출하는 공격입니다.
- 대응 방법: 의심스러운 링크 클릭을 피하고, 공식 사이트에서 로그인.
4) 스미싱 (Smishing)
- 정의: 문자 메시지를 통해 악성 링크를 전달하여 개인정보를 빼내는 피싱의 일종입니다.
5) MITM (Man-In-The-Middle) 공격
- 정의: 통신하는 두 당사자 사이에 공격자가 중간에 위치하여 데이터를 탈취하거나 변조하는 공격입니다.
- 대응 방법: TLS/SSL을 사용하여 통신 암호화를 적용.
6) SQL Injection
- 정의: 웹 애플리케이션의 취약한 SQL 쿼리를 악용하여 데이터베이스에 명령을 실행하게 하는 공격입니다.
- 대응 방법: 입력 값 검증과 SQL 쿼리에서 Prepared Statement 사용.
7) XSS (Cross-Site Scripting)
- 정의: 웹사이트에서 사용자의 브라우저에 악성 스크립트를 삽입하여 정보 탈취나 세션 하이재킹을 시도하는 공격입니다.
- 대응 방법: 사용자 입력값을 철저히 검증하고 특수 문자를 이스케이프 처리.
8) 랜섬웨어 (Ransomware)
- 정의: 악성 소프트웨어로 사용자의 데이터를 암호화한 후, 이를 해제하는 대가로 금전을 요구하는 공격입니다.
- 대응 방법: 주기적인 백업과 최신 보안 패치 적용.
4. 보안 개념
1) 기밀성 (Confidentiality)
- 정의: 인가된 사용자만이 데이터에 접근할 수 있도록 보호하는 것을 의미합니다.
- 방법: 암호화를 통해 기밀성을 보장합니다.
2) 무결성 (Integrity)
- 정의: 데이터가 정확하게 유지되고, 인가되지 않은 수정으로부터 보호되는 것을 의미합니다.
- 방법: 해시 함수나 디지털 서명을 통해 무결성을 확인합니다.
3) 가용성 (Availability)
- 정의: 인가된 사용자가 필요할 때 시스템이나 데이터에 접근할 수 있도록 보장하는 것을 의미합니다.
- 방법: 시스템의 백업, 복구 계획 등이 가용성을 보장합니다.
4) 인증 (Authentication)
- 정의: 시스템이 사용자의 신원을 확인하는 과정입니다.
- 방법: 패스워드, OTP(One Time Password), 생체 인증 등을 통해 인증합니다.
5) 권한 부여 (Authorization)
- 정의: 인증된 사용자가 어떤 자원에 접근할 수 있는지를 결정하는 과정입니다.
- 방법: 접근 제어 목록(ACL) 등을 통해 권한을 관리합니다.
6) 비밀성 (Non-repudiation)
- 정의: 특정 행위나 거래에 대해 나중에 부인할 수 없도록 증명하는 특성입니다.
- 방법: 디지털 서명 등을 통해 제공됩니다.
7) 접근 제어 (Access Control)
- 정의: 인가된 사용자만이 시스템 자원에 접근할 수 있도록 하는 기법입니다.
- 방법:
- DAC (Discretionary Access Control): 소유자가 접근 권한을 결정.
- MAC (Mandatory Access Control): 관리자에 의해 중앙에서 통제.
- RBAC (Role-Based Access Control): 사용자의 역할에 따라 접근을 제어.
5. 보안 기술
1) 방화벽 (Firewall)
- 정의: 네트워크 경계에서 트래픽을 필터링하여 허가된 트래픽만 통과시키는 보안 장치입니다.
- 종류: 패킷 필터링 방화벽, 상태 기반 방화벽(Stateful Firewall), 애플리케이션 방화벽.
2) IDS/IPS (Intrusion Detection/Prevention System)
- IDS (침입 탐지 시스템): 네트워크나 시스템에서 비정상적인 활동을 탐지하여 경고를 발송합니다.
- IPS (침입 방지 시스템): IDS의 기능에 더해 비정상적인 활동을 자동으로 차단하는 기능도 제공됩니다.
3) VPN (Virtual Private Network)
- 정의: 인터넷과 같은 공용 네트워크를 통해 안전하게 데이터를 주고받을 수 있도록 암호화된 가상 네트워크를 제공합니다.
- 활용: 원격 근무자나 지점 간 안전한 네트워크 연결을 위해 사용.
4) APT (Advanced Persistent Threats)
- 정의: 지속적이고 정교한 공격으로, 공격자는 장기적으로 시스템에 침투하여 정보를 수집하거나 피해를 줍니다.
- 방법: 사회공학 기법, 악성코드 등을 이용한 공격.
보안 정리 요약:
- 암호화: 대칭, 비대칭 암호화 및 해시 함수.
- 보안 프로토콜: TLS, IPSec, SSH, ICMP 등.
- 공격 유형: DoS, DDoS, 피싱, 스미싱, SQL Injection, XSS, 랜섬웨어.
- 보안 개념: 기밀성, 무결성, 가용성, 인증, 권한 부여, 비밀성.
- 보안 기술: 방화벽, IDS/IPS, VPN, APT.
이러한 보안 요소들은 시스템과 데이터를 보호하는 데 필수적인 구성 요소들입니다.
'Category > 정보처리기사' 카테고리의 다른 글
| L2TP(Layer 2 Tunneling Protocol)란? (0) | 2024.10.10 |
|---|---|
| AJAX (Asynchronous JavaScript and XML)란? (0) | 2024.10.10 |
| 프록시 패턴(Proxy Pattern)이란? (1) | 2024.10.09 |
| 데이터베이스 주요 용어 정리 (1) | 2024.10.09 |
| 암호화 알고리즘 정리 (9) | 2024.10.09 |