정보 보안에서 보안 공격(Security Attack)은 공격 방식과 목표에 따라 여러 가지로 분류됩니다. 크게 암호분석 공격과 비암호분석 공격으로 나뉘며, 비암호분석 공격은 다시 기밀성, 무결성, 가용성이라는 보안의 3대 목표를 위협하는 공격으로 구분할 수 있습니다.
1. 암호분석 공격(Cryptanalytic Attacks)
암호분석 공격은 통계적 기법과 대수학적 기법을 결합하여 암호(cipher)의 비밀 키를 알아내는 것을 목표로 하는 공격입니다. 이 기법은 암호화 알고리즘의 수학적 특성을 면밀히 검토하며, 암호화 알고리즘의 출력 분포가 균등 분포(uniform distribution)와 구별되는 지점, 즉 '구별자(distinguisher)'를 발견하는 데 초점을 맞춥니다.
2. 비암호분석 공격(Non-cryptanalytic Attacks)
비암호분석 공격은 암호화 알고리즘 자체의 수학적 약점을 이용하지 않습니다. 대신 보안의 세 가지 핵심 목표인 기밀성(confidentiality), 무결성(integrity), 가용성(availability)을 직접 위협합니다.
기밀성을 위협하는 공격
스누핑(Snooping) – 데이터에 대한 무단 접근을 의미합니다. 스누핑을 방지하려면 암호화 기법을 활용해 권한 없는 사용자가 데이터 내용을 알아볼 수 없도록 조치해야 합니다.
트래픽 분석(Traffic Analysis) – 암호화로 데이터 본문을 숨겼더라도, 공격자는 네트워크의 온라인 트래픽을 감청하여 누가 누구와 통신하는지, 통신량은 어느 정도인지 등 다른 유형의 정보를 얻으려 할 수 있습니다.
무결성을 위협하는 공격
수정(Modification) – 공격자가 정보에 접근한 뒤 자신에게 유리하도록 데이터를 변조하는 공격입니다.
사칭(Masquerading / Spoofing) – 한 개체가 다른 개체인 것처럼 가장하는 공격입니다.
재전송(Replaying) – 공격자가 사용자가 전송한 메시지의 복사본을 가로챈 후, 나중에 이를 다시 전송하여 무단 효과를 일으키는 공격입니다.
부인(Repudiation) – 통신 당사자 중 한쪽이 수행하는 공격입니다. 발신자가 메시지를 보낸 사실을 부인하거나, 수신자가 나중에 메시지를 받은 사실을 부인할 수 있습니다.
가용성을 위협하는 공격 – 서비스 거부(DoS)
가용성을 위협하는 대표적인 공격은 서비스 거부(Denial of Service, DoS)입니다. 이 공격은 시스템의 서비스 속도를 현저히 느리게 하거나 아예 중단시킬 수 있습니다. 예를 들어 DoS 공격자는 서버에 비정상적으로 많은 요청을 보내 과부하를 일으켜 서버를 다운시킵니다.
DoS 공격은 방어하기가 까다롭습니다. 해커는 서버에 연결 요청만 보내고 실제로는 응답하지 않습니다. 서버가 승인(acknowledgement)을 보내고 세션을 맺으려 해도 요청을 보낸 시스템을 찾을 수 없습니다. 해커가 이런 응답 불가능한 세션 요청을 계속 쏟아붓으면 서버는 심각하게 느려지다가 결국 충돌하게 됩니다.
서비스 거부 공격은 Kerberos 인증 프로토콜에서도 완전히 정의되지 않습니다. 프로토콜 내에는 침입자가 응용 프로그램이 정상적인 인증 절차에 참여하지 못하도록 방해할 수 있는 지점이 존재합니다. 따라서 이러한 공격의 탐지와 대응(일부는 시스템의 평범한 "정상적인" 오류처럼 보일 수 있음)은 자동화된 도구보다는 관리자와 사용자의 판단에 맡기는 것이 가장 효과적인 경우가 많습니다.