주제

자동대응(SOAR) 설계

조회 → 판정 → 차단을 분리한 레지스트리·어댑터 구조, 그리고 "실패를 성공으로 기록하지 않는" 원칙

원칙

  1. 조회 실패는 깨끗함이 아니다: 위협 인텔 조회가 실패하면 “정상”이 아니라 enrichment_failed로 남기고, 간격을 늘려 가며 재조회한다.
  2. 차단하지 않았으면 차단했다고 기록하지 않는다: 방화벽에 쓴 뒤 다시 읽어서 확인한다.
  3. 멱등: 같은 IOC를 여러 번 처리해도 결과가 같다.
  4. 확장은 등록으로: 인텔 소스나 방화벽 벤더는 어댑터를 등록하면 추가된다. 스키마는 바꾸지 않는다.

외부 SOAR를 쓰던 시절의 “콜백 미도달” 장애는 엔진을 동기 실행으로 바꾸면서 구조적으로 사라졌다.