096. 계정 · 인증 보안 — ELK 인증 대시보드 구성

changseop lee·5일 전

시스템 보안 · 취약점 › B. 계정 · 인증 보안 강화 · 46/50편 (전체 096/450)
학습 단계: 5단계 · SOC 관제 연계
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

개별 룰이 Alert를 만들어도, 전체 상황은 대시보드로 봐야 빠르게 파악됩니다. 인증 대시보드는 "지금 인증이 정상인가"를 한 화면에서 보여줍니다.

인증 대시보드 패널 구성
 ① 로그인 성공/실패 추이    (시간축 라인)
 ② 출발지 IP Top / 지도     (GeoIP, 해외·비관리망)
 ③ 계정별 실패 Top          (표적 계정)
 ④ 돌파·이상 로그인          (커스텀 룰 101200대)
 ⑤ 권한 상승 이벤트          (sudo/su, 101050대)
 ⑥ 계정 변경·지속성          (생성·그룹·키, 101260대)
 ⑦ 로그 수신 공백            (서버별 마지막 수신)

대시보드는 기준선(026편)을 시각적 배경으로 삼아, "평소와 다름"을 눈으로 포착하게 합니다.

2. 왜 중요한가

  • Alert만 보면 개별 사건은 알아도 전체 추세·분포를 놓칩니다(예: 여러 서버에 퍼진 스프레이).
  • 출발지 지도·계정별 집계는 brute-force/스프레이/열거를 한눈에 구분하게 합니다(072·073·071편).
  • 대시보드의 급변(실패 급증, 새벽 성공)은 룰이 미처 못 잡은 이상도 사람이 포착하게 합니다.

3. 핵심 명령어 / 설정

패널데이터
성공/실패 추이rule.id:(5715 or 5716) 시간축
출발지 지도data.srcip + GeoIP
계정별 실패rule.id:5716 Terms(data.srcuser)
돌파·이상rule.id:(101200 or 101220 or 101171)
권한 상승rule.groups:privilege
수신 공백서버별 max(@timestamp)

4. 실습 (실습 예시)

# Kibana 시각화 정의 (개념)
① Line:  X=@timestamp(시간), Y=count, Split=rule.id(5715 성공/5716 실패)
② Map:   Coordinate=srcip GeoIP, 색상=count  (내부망은 별도 표시)
③ Data table: rows=data.srcuser, metric=count, filter rule.id:5716, 정렬 desc
④ Metric/Alert list: filter rule.id:(101190 101200 101210 101220 101370)
⑦ Data table: rows=agent.name, metric=max(@timestamp), 임계=현재-N분

# 저장 검색(Saved Search): 출발지/계정/세션 타임라인(043편)
data.srcip:"{IP}" and rule.groups:("authentication" or "privilege")  → 시간순

Wazuh는 기본 대시보드(Security events, Authentication)를 제공하므로, 여기에 커스텀 룰(101xxx) 패널을 추가하는 방식이 효율적입니다.

5. 정상 상태

[인증 대시보드 — 평소]
성공/실패 추이 : 업무 시간대 완만, 실패 소수
출발지        : 관리망(192.168.56.0/24) 집중
계정별 실패    : admin1 3, devops 2 (오타 수준)
돌파·이상      : 0
수신 공백      : 0

실패가 적고 관리망에 집중되며 이상 패널이 비어 있는 상태가 정상입니다.

6. 이상 상태

[인증 대시보드 — 10월 2일 새벽]
성공/실패 추이 : 02~03시 실패 급증(수백)
출발지        : 192.168.56.77 단일 집중(비관리망)
계정별 실패    : devops 220, 다수 계정 2~3 (brute + 스프레이 혼재)
돌파·이상      : 101220 devops 1건, 101190 열거 1건
수신 공백      : rocky9-web01 03:30 이후 수신 없음
  • 한 화면에서 열거→brute/스프레이→돌파→수신 공백(은폐) 흐름이 드러남
  • 출발지 단일 집중 + 새벽 → 공격 명확
  • 수신 공백 패널이 에이전트 중지(A영역 039편)까지 포착

7. 로그 분석 (분석 방법)

대시보드에서 드릴다운하는 분석 흐름입니다(가상의 예시).

①추이 급증 포착 → ②지도에서 192.168.56.77 식별 → ③계정별에서 devops 표적 확인
 → ④돌파 패널에서 101220(돌파) 확인 → 저장검색으로 세션 타임라인(043편)
 → ⑦수신 공백으로 은폐 시점 확인 → A영역 설정 대시보드(046편)와 교차
단계패널
포착추이 급증
식별출발지 지도
확정돌파·이상
추적저장 검색(타임라인)

대시보드는 "포착 → 식별 → 확정 → 추적"의 진입점 역할을 합니다.

8. SOC 관제 포인트

  • 인증 대시보드는 추이·출발지·계정·돌파·권한·수신공백 패널을 기본 구성합니다.
  • 기준선(026편)을 배경으로 "평소와 다름"을 시각적으로 포착합니다.
  • 대시보드 → 저장 검색(타임라인, 043편) → A영역 대시보드로 이어지는 드릴다운을 설계합니다.

9. 탐지 규칙

대시보드는 룰이 아니라 시각화·저장 검색으로 구성하되, 핵심 지표는 알림과 연동합니다.

# Kibana 알림(개념): 출발지별 실패 급증
WHEN count() GROUP BY data.srcip OVER last 5m IS ABOVE 100 → 알림

# Wazuh: 대시보드 패널은 rule.id/groups 기반 필터로 구성
rule.groups: "authentication" and rule.level >= 10

지도(GeoIP)는 외부 노출 서버에서 해외 로그인 포착에 특히 유용합니다. 내부망 전용 서버는 신뢰 구역별 색상 구분으로 대체합니다.

10. 대응 방법

  1. 초기 확인 — 대시보드에서 기준선을 벗어난 패널(추이·출발지·계정)을 포착합니다.
  2. 범위 확인 — 드릴다운으로 출발지·계정·세션을 특정하고 타임라인(043편)으로 넘어갑니다.
  3. 증거 확보 — 대시보드 상태(스크린샷·쿼리)와 근거 로그를 보존합니다.
  4. 차단/조치 — 확정 시 계정·IP 대응을 진행하고 전 서버 확산을 대시보드로 확인합니다.
  5. 재발 방지 — 인증 대시보드와 드릴다운 저장 검색을 운영 표준으로 유지합니다.

11. 핵심 정리

패널포착 대상
성공/실패 추이급증·업무 외 활동
출발지 지도비관리망·해외·단일 집중
계정별 실패표적 계정, 스프레이 분산
돌파·이상/수신공백침입 성공·은폐
면접 포인트"대시보드는 포착→식별→확정→추적의 진입점"

12. 다음 편 예고

다음 편 097. 계정 · 인증 보안 — 이상 로그인 탐지 시나리오 설계 에서는 탐지를 설계로 정리하는 이상 로그인 탐지 시나리오 설계를 다룹니다.


이전 편: 095. 계정 · 인증 보안 — Wazuh 인증 커스텀 룰과 상관 룰
📚 시리즈 전체 보기: 시스템 보안 · 취약점

profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글