140. Linux 정보 수집 — 프로세스·서비스·파일 정보 수집 종합 분석

changseop lee·2일 전

시스템 보안 · 취약점

목록 보기
140/150

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

선행 학습

1. 개념

프로세스·서비스·파일 정찰(C31~39)은 "무엇이 돌고, 무엇이 등록됐고, 어떤 파일이 있는가"를 파악해 지속성 등록·탈취 대상·탐지 회피를 준비하는 단계입니다. 이 영역의 핵심은 정상 운영 명령과 의심 연속 조회의 구분입니다.

프로세스·서비스·파일 정찰 세트 (한 세션)
 프로세스(C31·32) → 도구(C33) → 서비스(C34·35) → cron(C36)
   → 파일 탐색(C37) → 중요 파일(C38) → 설정(C39)

수렴점
 - 지속성 준비: systemd(C35)·cron(C36) 등록 위치
 - 탈취 준비: 중요 파일(C38)·설정 자격증명(C39)
 - 회피 준비: 보안 솔루션(C31·34)

2. 왜 중요한가

  • 이 영역의 명령(ps·systemctl·find·cat)은 관리자가 매일 쓰는 것이라, 단건 탐지는 오탐투성이입니다. 연속·대상·맥락으로 구분해야 합니다.
  • 세트로 보면 지속성·탈취·회피 준비가 한 세션에 수렴하는 것이 드러납니다.
  • 정상 운영과 정찰의 경계를 표로 정리해 두면 판단이 일관됩니다(문제 지문의 비교표).

3. 핵심 명령어 / 설정

정상 운영 vs 의심 연속 조회 비교(문제 지문 기반 확장):

구분정상적인 관리의심 가능한 패턴
프로세스 조회정기 점검·부하 확인짧은 시간 반복, 보안 솔루션 조준(C31)
서비스 조회장애 대응전수+보안 서비스 연속(C34), systemd 구조 학습(C35)
파일 조회특정 작업 디렉터리전체 파일시스템·민감 패턴 탐색(C37·38)
설정 조회변경 작업(쓰기)자격증명 파일 읽기, 인증·네트워크와 연속(C39)

4. 실습 (실습 예시)

# 프로세스·서비스·파일 정찰 세트의 세션별 조회 종류 집계 (분석 방법)
for ses in $(sudo ausearch -k recon_proc,recon_svc,recon_file,recon_tool,recon_persist -i --start today 2>/dev/null | grep -oE 'ses=[0-9]+' | sort -u | cut -d= -f2); do
  n=$(sudo ausearch --session $ses -k recon_proc,recon_svc,recon_file,recon_tool,recon_persist -i 2>/dev/null | grep -oE 'key="[^"]+"' | sort -u | wc -l)
  echo "ses=$ses 정찰키종류=$n"
done | sort -t= -k2 -rn | head

5. 정상 상태

ses=8  정찰키종류=1  (admin1, 특정 작업)

관리자 세션은 특정 작업 맥락의 단일 종류 조회에 그치고, 보안 솔루션 조준·전체 탐색이 없는 상태가 정상입니다.

6. 이상 상태

ses=12 정찰키종류=5  (devops, 02:15~02:16)
 recon_proc(보안솔루션) + recon_svc(systemd) + recon_persist(cron) + recon_file(민감파일) + recon_tool(LOLBins)
  • 한 세션에서 프로세스·서비스·cron·파일·도구 5종 정찰 결합 → 지속성+탈취+회피 준비 종합
  • 보안 솔루션 조준(C31) + systemd/cron 조회(C35·36) + 민감 파일(C38) → 다음 단계(F영역 지속성·E영역 탈취) 임박
  • 시스템(C10)·네트워크(C20)·계정(C30) 정찰에 이어 4단계 정찰 완료

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

프로세스·파일 정찰 세트 타임라인입니다(가상의 예시).

02:15:10 ps aux / pgrep wazuh   (프로세스·보안솔루션, C31)
02:15:40 systemctl list/status  (서비스, C34·35)
02:16:00 crontab -l / cron.d    (cron, C36)
02:16:10 find / -name id_rsa    (민감 파일, C37·38)
02:16:35 cat .env / my.cnf      (설정 자격증명, C39)
 → 1분 반 내 5종, 한 세션 = 지속성+탈취+회피 준비 정찰
수렴점조회
회피보안 솔루션(C31·34)
지속성systemd·cron(C35·36)
탈취중요 파일·설정(C38·39)

8. SOC 관제 포인트

  • 프로세스·서비스·파일 정찰은 세션 내 조회 키 종류·대상으로 판정합니다(개별 명령 아님).
  • 보안 솔루션 조준·systemd/cron 조회·자격증명 파일 열람이 결합되면 다음 단계(E·F영역) 임박입니다.
  • 정상/의심 비교표를 판단 기준으로 운영합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_c,recon,">
  <rule id="102390" level="10" frequency="5" timeframe="180">
    <if_group>audit</if_group>
    <field name="audit.key" type="pcre2">recon_(proc|svc|file|tool|persist)</field>
    <same_field field="audit.session" />
    <description>단일 세션의 다종 프로세스·서비스·파일 정보 수집(정찰 세트)</description>
    <mitre><id>T1057</id></mitre>
  </rule>
</group>

same_field 미지원 시 SIEM 집계로 구현합니다(146·148편). E·F영역 룰과 연계합니다.

10. 대응 방법

  1. 초기 확인 — 프로세스·파일 정찰 세션의 조회 키 종류·대상·주체를 확인합니다.
  2. 범위 확인 — 지속성(F영역)·탈취(E영역)·회피(A영역 39편)로 이어졌는지 확인합니다.
  3. 증거 확보 — 세션 조회 흐름과 비교표 기반 판정을 보존합니다.
  4. 차단/조치 — 탈취·지속성 세션이면 E·F영역 대응과 연계합니다.
  5. 재발 방지 — 프로세스·파일 정찰 세트 탐지를 운영 기준으로 둡니다.

11. 핵심 정리

구분핵심 내용
세트프로세스·도구·서비스·cron·파일·설정
수렴점회피(보안솔루션)·지속성(systemd/cron)·탈취(파일/설정)
판정세션 내 조회 키 종류·대상 + 비교표
다음탈취(E영역)·지속성(F영역)·회피(A영역 39편)
면접 포인트"매일 쓰는 명령이라 단건은 오탐 — 연속·대상·맥락으로 구분"

12. 다음 편 예고

다음 편 141. Linux 정보 수집 — 로그 파일 접근 흔적 에서는 5단계로 넘어가 로그 파일 접근 흔적을 다룹니다.


이전 편: 139. Linux 정보 수집 — 설정 파일 탐색 흔적
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글