309. 내부 확장·측면 이동 — SSH를 통한 측면 이동 탐지

changseop lee·6일 전

시스템 보안 · 취약점

목록 보기
309/450

시스템 보안 · 취약점 › G. 내부 확장 · 측면 이동 징후 · 9/50편 (전체 309/450)
학습 단계: 인증·자격증명 기반 이동
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

2단계는 인증·자격증명 기반 이동을 다룹니다. 첫 번째는 SSH 측면 이동입니다. SSH는 Linux 원격 접속의 표준이라, 측면 이동의 가장 흔한 경로입니다. 공격자는 탈취한 자격증명·키로 내부 호스트에 SSH 로그인해 확산합니다.

SSH 측면 이동 패턴
 거점 → 내부 호스트 SSH 로그인(Accepted)
 탈취 자격증명·키로 인증(B·E·F영역 연계)
 연쇄: A → B → C (multi-hop)
 출발지 이상: 서비스 서버가 SSH 출발지가 됨

인증 로그(Accepted from <거점>) + 연결 패턴으로 탐지

핵심은 "내부 SSH 로그인의 출발지·목적지·계정이 기준선(G04)을 벗어나는가"입니다. 특히 서비스 서버가 SSH 출발지가 되는 것이 강한 신호입니다.

2. 왜 중요한가

  • SSH는 Linux 측면 이동의 주 경로로, 내부 SSH 로그인 패턴이 핵심 탐지 대상입니다.
  • 서비스 서버(웹·앱)가 SSH 출발지가 되는 것은 정상 운영에 거의 없는 신호입니다.
  • 탈취 자격증명·키(E11·F25) 재사용과 연계해 봅니다.

3. 핵심 명령어 / 설정

SSH 이동 신호패턴위험
서비스 서버 발 SSHweb→내부높음
핵심 자산 행 SSH→db·dc높음
연쇄 SSH(multi-hop)A→B→C높음
새 자격증명·키탈취 재사용높음
관리 호스트 SSH정상정상

4. 실습 (실습 예시)

# SSH 측면 이동 탐지 (분석 방법)
# 내부 SSH 로그인 성공(출발지별)
sudo grep 'Accepted' /var/log/secure 2>/dev/null | grep -oE 'for [a-z]+ from [0-9.]+' | sort | uniq -c | sort -rn | tail
# 서비스 서버 발 SSH(비관리 출발지)
sudo ausearch -k lateral -i --start recent 2>/dev/null | grep -E 'comm="ssh"' | grep -vE 'mgmt|backup'

5. 정상 상태

$ (내부 SSH 로그인)
  120 for deploy from 10.0.0.10 (mgmt01 — 정상)

내부 SSH 로그인이 관리 호스트(mgmt01)에서 정상 계정으로만 발생하는 상태가 정상입니다.

6. 이상 상태

$ (내부 SSH 로그인)
  for root from 10.0.0.50 (web01 → db01)
  for root from 10.0.0.60 (db01 → dc01, 연쇄)
  • web01(웹 서버)에서 db01로 root SSH → 서비스 서버 발 측면 이동
  • db01 → dc01 연쇄 SSH → multi-hop 확산
  • 서비스 서버 발·핵심 자산 행·연쇄 SSH → 정탐

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

SSH 측면 이동 분석입니다(가상의 예시).

[거점] web01 (F영역)
   ↓ SSH (탈취 키, E11/F25)
[1홉] db01 (Accepted for root from web01)
   ↓ SSH (db01에서 탈취한 자격증명)
[2홉] dc01 (Accepted for root from db01)
   ↓
[목표] 도메인 컨트롤러·핵심 자산
 = 서비스 서버 발 + 연쇄 SSH = 측면 이동
홉로그
web→dbAccepted from web01
db→dcAccepted from db01
출발지서비스 서버(이상)
연쇄multi-hop

인증 로그의 출발지 연쇄로 SSH 측면 이동 경로가 드러납니다.

8. SOC 관제 포인트

  • SSH는 Linux 측면 이동의 가장 흔한 경로입니다.
  • 서비스 서버 발 SSH·핵심 자산 행·연쇄(multi-hop)가 핵심 신호입니다.
  • 탈취 자격증명·키(E11·F25) 재사용과 연계해 탐지합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_g,lateral,">
  <rule id="106080" level="12">
    <decoded_as>sshd</decoded_as>
    <field name="srcip" type="pcre2">^10\.0\.0\.(5[0-9]|[6-9][0-9])$</field>
    <field name="dstuser" type="pcre2">^(root|admin)$</field>
    <description>서비스 서버 발 내부 SSH 로그인(측면 이동)</description>
    <mitre><id>T1021.004</id></mitre>
  </rule>
</group>

정상 관리·백업 호스트는 화이트리스트로 제외합니다. 연쇄 SSH는 출발지-목적지 상관(G42)으로 추적합니다.

10. 대응 방법

  1. 초기 확인 — 내부 SSH 로그인의 출발지·목적지·계정을 확인합니다.
  2. 범위 확인 — 서비스 서버 발·핵심 자산 행·연쇄(multi-hop)·탈취 자격증명을 확인합니다.
  3. 증거 확보 — SSH 인증 로그와 출발지-목적지 경로를 보존합니다.
  4. 차단/조치 — SSH 측면 이동 정탐이면 경로 차단·확산 호스트 격리·자격증명 교체를 진행합니다.
  5. 재발 방지 — 내부 SSH 로그인 패턴 기반 측면 이동 탐지를 운영합니다.

11. 핵심 정리

SSH 이동 신호패턴
서비스 서버 발web→내부
핵심 자산 행→db·dc
연쇄(multi-hop)A→B→C
관리 호스트정상
면접 포인트"SSH는 Linux 측면 이동 주 경로 — 서비스 서버 발·연쇄가 강한 신호"

12. 다음 편 예고

다음 편 310. 내부 확장·측면 이동 — 탈취한 SSH 키 재사용 탐지 에서는 탈취한 SSH 키 재사용을 다루는 탈취한 SSH 키 재사용 탐지를 다룹니다.


이전 편: 308. 내부 확장·측면 이동 — 내부 확장·측면 이동 판정 기준
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글