위협 (Threat)

초급보안수정일

정보보호에서 위협(Threat)은 보안을 침해할 수 있는 잠재적 가능성으로, 해를 끼칠 수 있는 주체·상황·능력·행위·사건이 존재할 때 생깁니다. 암호학에서는 특히 상대방(공격자)이 무엇을 알고 무엇을 할 수 있는지를 가리키며, 이를 정리한 것이 위협 모델입니다.

자세히 알아보기

위협은 비슷한 용어와 구분해야 합니다. 취약점(vulnerability)은 시스템의 설계·구현·운영에 있는 결함이나 약점이고, 공격(attack)은 위협이 실제 행동으로 옮겨진 것입니다. 예를 들어 「지갑 비밀번호를 추측하려는 사람이 있다」는 위협이고, 「비밀번호 시도 횟수 제한이 없다」는 취약점이며, 실제로 비밀번호를 대입하는 것이 공격입니다. 위협은 그것을 일으키는 주체인 위협 행위자(threat agent)와 그 행위자의 능력으로 설명합니다.

위협 모델은 보호할 자산, 공격자의 목표, 공격자가 가진 능력과 접근 범위를 명시한 가정입니다. 통신을 엿듣기만 하는 수동적 공격자인지, 메시지를 가로채 바꾸거나 끼워 넣을 수 있는 능동적 공격자인지, 계산 자원은 얼마나 되는지 등을 정합니다. 암호 시스템의 안전성은 언제나 「어떤 위협 모델에서 안전한가」라는 조건 아래에서만 말할 수 있습니다.

위협 모델을 세울 때는 공격자의 능력을 낮게 가정하지 않는 것이 원칙입니다. 상대가 알려지지 않은 기법이나 예상보다 많은 자원을 가졌을 수 있고, 어떤 암호가 강하다는 믿음도 증명된 사실이 아니라 현재까지 깨지지 않았다는 경험에 가깝습니다. 그래서 설계자는 공격자가 알고리즘의 세부를 모두 안다고 가정하고, 비밀은 키에만 두며, 새로운 공격이 알려지면 가정을 다시 점검합니다. 반대로 실현 가능성이 거의 없는 위협까지 모두 막으려 하면 시스템이 불필요하게 복잡해지므로, 위협의 가능성과 영향을 따져 우선순위를 정합니다.

블록체인·암호화폐에서는

암호화폐 이용자에게 대표적인 위협은 개인 키나 시드 문구 탈취, 피싱 사이트와 가짜 지갑 앱, 승인(approve) 권한을 악용하는 악성 스마트 계약, 주소를 바꿔치기하는 클립보드 악성코드 등입니다. 프로토콜 수준에서는 네트워크 해시파워나 지분의 다수를 확보한 공격자에 의한 이중 지불, 노드를 고립시키는 네트워크 공격 등이 위협 모델에 포함됩니다. 각 위협에 대해 하드웨어 지갑, 주소 확인, 권한 철회 같은 대응을 고르게 됩니다.

쉽게 말하면

집의 보안을 생각할 때 「누가, 어떤 도구로, 어디로 들어올 수 있는가」를 따지는 것이 위협 분석입니다. 잠기지 않는 창문은 취약점이고, 그 창문으로 들어오려는 사람이 있다는 사실이 위협이며, 실제로 창문을 여는 순간이 공격입니다. 문이 아무리 튼튼해도 상대가 어떤 도구를 가졌는지는 끝까지 확신할 수 없으므로 점검을 계속합니다.

이 글은 학습을 위한 일반 정보이며 투자 권유나 법률 자문이 아닙니다. 가상자산은 가격 변동이 크고 원금 손실 위험이 있습니다.