시스템 보안 · 취약점 › C. Linux 정보 노출 및 수집 · 10/50편 (전체 110/450)
학습 단계: 시스템·OS 정보 수집
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.
개별 조회(OS·커널·호스트·자원·디스크·마운트·환경변수)는 각각 정상일 수 있습니다. 하지만 한 세션에서 짧은 시간에 여러 종류를 연속 조회하면 정찰로 판정됩니다. 이 편은 101~109를 하나의 "시스템 정보 정찰" 유스케이스로 묶습니다.
시스템 정보 정찰 세트 (한 세션)
OS(C01) → 커널(C02) → 호스트(C03) → 활동(C04)
→ CPU(C05) → 메모리(C06) → 디스크(C07) → 마운트(C08) → 환경변수(C09)
판정 기준
조회 밀도 : N분 내 서로 다른 정보 M종 이상
순서 : 로그인 직후 집중
주체 : 평소 이런 조회를 안 하던 계정/서비스 계정
기준선 : 관리자의 평소 조회 패턴과 다름
| 판정 요소 | 기준 |
|---|---|
| 조회 종류 수 | 한 세션 M종 이상(예: 5종) |
| 시간 창 | 짧은 시간(예: 2분) |
| 시점 | 로그인 직후 |
| 주체 | 서비스 계정·비관리망·새벽 |
| 기준선 | 계정 평소 조회 패턴 |
# 세션별 시스템 정보 조회 종류 수 집계 (분석 방법)
for ses in $(sudo ausearch -k recon_sysinfo,recon_cmd,recon_hw,recon_disk,recon_mount,recon_env,recon_environ -i --start today 2>/dev/null | grep -oE 'ses=[0-9]+' | sort -u | cut -d= -f2); do
n=$(sudo ausearch --session $ses -k recon_sysinfo,recon_cmd,recon_hw,recon_disk,recon_mount -i 2>/dev/null | grep -oE 'key="[^"]+"' | sort -u | wc -l)
echo "ses=$ses 정찰종류=$n"
done | sort -t= -k3 -rn | head
ses=8 정찰종류=1 (admin1, 단발)
관리자 세션은 조회 종류가 1~2개에 그치고, 업무 맥락과 일치합니다(정상).
ses=12 정찰종류=6 (devops, 02:11~02:13)
정찰 세트를 타임라인으로 본 예시입니다(가상의 예시).
02:11:40 uname -a (커널)
02:11:42 cat /etc/os-release (OS)
02:11:48 hostnamectl (호스트)
02:12:00 w / last (활동)
02:12:10 cat /proc/cpuinfo (CPU)
02:12:14 cat /proc/meminfo (메모리)
02:12:30 cat /proc/mounts (마운트)
→ 50초 내 7종, 한 세션(ses=12), 로그인 직후 = 시스템 정보 정찰 확정
| 지표 | 값 |
|---|---|
| 종류 수 | 7종 |
| 시간 창 | 약 50초 |
| 시점 | 로그인 직후 |
| 판정 | 시스템 정보 정찰 |
<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_c,recon,">
<!-- 한 위치(세션)에서 정찰성 조회가 짧은 시간에 다수 -->
<rule id="102090" level="10" frequency="6" timeframe="120">
<if_group>audit</if_group>
<field name="audit.key" type="pcre2">recon_(sysinfo|cmd|hw|disk|mount|env|environ)</field>
<same_field field="audit.session" />
<description>단일 세션의 다종 시스템 정보 수집(정찰 세트)</description>
<mitre><id>T1082</id></mitre>
</rule>
</group>
same_field로 세션을 묶는 방식은 버전에 따라 다르므로, 지원하지 않으면 SIEM 집계(세션별 distinct key count)로 구현합니다(146·148편).
| 구분 | 핵심 내용 |
|---|---|
| 판정 | 세션 내 조회 종류 수 × 시간 밀도 |
| 요소 | 종류 수·시간 창·시점·주체·기준선 |
| 세트 | OS·커널·호스트·자원·디스크·마운트·환경변수 |
| 다음 단계 | 네트워크(C11~)·권한(C21~)·프로세스(C31~) 정찰 |
| 면접 포인트 | "개별 조회는 정상 — 세션 내 다종 연속이 정찰 판정의 핵심" |
다음 편 111. Linux 정보 수집 — 네트워크 인터페이스 정보 조회 흔적 에서는 2단계로 넘어가 네트워크 인터페이스 정보 조회 흔적을 다룹니다.
이전 편: 109. Linux 정보 수집 — 환경변수·실행 환경 정보 수집
📚 시리즈 전체 보기: 시스템 보안 · 취약점