시스템 보안 · 취약점 › C. Linux 정보 노출 및 수집 · 26/50편 (전체 126/450)
학습 단계: 사용자·권한 정보 수집
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

과거 로그인 이력 조회는 공격자가 "정상 사용자는 언제, 어디서 접속하는가" 를 학습하는 정찰입니다. 이 패턴을 알면, 공격자는 정상처럼 보이는 시간·출발지로 접속해 탐지를 피할 수 있습니다(B영역 26편 기준선의 역이용).

과거 로그인 조회
 last             → 로그인 이력(사용자·출발지·시각)
 lastlog          → 계정별 마지막 로그인
 /var/log/wtmp    → 로그인 이력(파일)

공격자의 역이용
 "admin1은 평일 09시 192.168.56.5에서 접속" 학습
   → 공격자가 그 시간·대역을 흉내 → B영역 27편 이상 탐지 회피

B영역 25·26편이 방어자의 로그인 분석·기준선이라면, 여기서는 공격자가 같은 정보를 조회해 위장에 쓰는 정찰입니다.

2. 왜 중요한가

  • 로그인 패턴 학습은 공격자가 B영역의 이상 탐지(27편 다축 이탈)를 회피하도록 돕습니다.
  • lastlog 조회로 휴면 계정(B영역 33편)을 식별해, 눈에 덜 띄는 계정을 고를 수 있습니다.
  • 과거 로그인 조회는 "앞으로 어떻게 위장할까"의 정찰이라, 이후 접속이 더 교묘해질 수 있음을 예고합니다.

3. 핵심 명령어 / 설정

조회정보
last로그인 이력(사용자·출발지·시각)
lastlog계정별 마지막 로그인(휴면 식별)
/var/log/wtmp이력 파일
관심정상 패턴·휴면 계정

4. 실습 (실습 예시)

# 과거 로그인 조회 감사 (C04의 recon_activity 공유)
-a always,exit -F arch=b64 -S execve -F path=/usr/bin/last -F auid>=1000 -F auid!=unset -k recon_activity
-a always,exit -F arch=b64 -S execve -F path=/usr/bin/lastlog -F auid>=1000 -F auid!=unset -k recon_activity
-w /var/log/wtmp -p r -k recon_activity

# 세션에서 과거 로그인 조회 (분석 방법)
sudo ausearch -k recon_activity -i --start recent | grep -E 'comm="last"|comm="lastlog"|wtmp' | tail

/var/log/wtmp 읽기는 last 명령이 하므로, 사람 세션의 last/lastlog 실행을 중심으로 봅니다.

5. 정상 상태

$ sudo ausearch -k recon_activity -i --start today | grep 'comm="last"' | tail -1
10:30:02 auid=admin1 ses=8 comm="last"  (접속 이력 점검)

관리자가 접속 이력을 점검하는 단발 조회는 정상입니다(B영역 25편 분석 포함).

6. 이상 상태

02:14:20 auid=devops ses=12 comm="last"
02:14:23 auid=devops ses=12 comm="lastlog"
  • last(이력) + lastlog(계정별 마지막) 연속 조회 → 정상 패턴·휴면 계정 학습
  • admin1의 평소 출발지·시간 파악 → 위장 접속 준비(B영역 27편 회피)
  • lastlog로 휴면 계정 식별 → 눈에 덜 띄는 표적 선별(B영역 33편)

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

패턴 학습 정찰 흐름입니다(가상의 예시 로그).

type=EXECVE ... a0="last"
type=SYSCALL ... auid=devops ses=12 comm="last" key="recon_activity"
type=EXECVE ... a0="lastlog"
관찰해석
last정상 로그인 패턴 학습
lastlog휴면 계정 식별
접속자 정찰(C24)과 결합위장 전략 수립
ses=12정찰 세션

패턴 학습 뒤 위장 접속이 나타나면, B영역 27·28편(이상 로그인·동시 세션)으로 포착합니다.

8. SOC 관제 포인트

  • 과거 로그인 조회는 정상 패턴·휴면 계정 학습 관점으로 봅니다(위장 준비).
  • 패턴 학습 뒤 위장 접속·휴면 계정 사용(B영역 27·33편)을 연계 감시합니다.
  • 접속자(C24)+과거 로그인(C25) 조회를 묶어 접속 정찰로 봅니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_c,recon,">
  <rule id="102240" level="7">
    <if_group>audit</if_group>
    <field name="audit.key">recon_activity</field>
    <regex type="pcre2">a0="(last|lastlog)"</regex>
    <description>과거 로그인 이력 조회(정상 패턴 학습 정찰)</description>
    <mitre><id>T1033</id></mitre>
  </rule>
</group>

과거 로그인 조회는 접속·활동 정찰로 묶어 계정 정찰 세트(130편)에 포함합니다.

10. 대응 방법

  1. 초기 확인 — 과거 로그인 조회의 연속성·주체와 학습 대상(정상 패턴·휴면 계정)을 확인합니다.
  2. 범위 확인 — 학습 뒤 위장 접속·휴면 계정 사용(B영역 27·33편)을 연계 확인합니다.
  3. 증거 확보 — 세션 조회 흐름을 보존합니다.
  4. 차단/조치 — 탈취 세션이면 B영역 대응과 기준선 재점검을 진행합니다.
  5. 재발 방지 — 과거 로그인 조회를 접속 정찰 상관에 포함합니다.

11. 핵심 정리

조회정보
last로그인 이력(패턴)
lastlog계정별 마지막(휴면)
wtmp이력 파일
구분이력 점검(정상) vs 패턴·휴면 학습(정찰)
면접 포인트"과거 로그인 조회는 B영역 기준선을 공격자가 역이용하는 위장 정찰"

12. 다음 편 예고

다음 편 127. Linux 정보 수집 — sudo 권한 정보 열람 에서는 권한 확인 정찰의 핵심인 sudo 권한 정보 열람을 다룹니다.


이전 편: 125. Linux 정보 수집 — 현재 세션 조회
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글