119. Linux 정보 수집 — 네트워크 서비스·소켓 정보 수집

changseop lee·5일 전

시스템 보안 · 취약점

목록 보기
119/150

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

선행 학습

1. 개념

포트(C17)·연결(C18)에 이어, 공격자는 "어떤 서비스가 그 포트를 쓰고, 어떻게 구성됐는가" 를 파악합니다. 포트 번호만으로는 추정이지만, 서비스 이름·버전·설정까지 알면 정확한 공격 표면이 됩니다.

서비스 매핑 조회
 ss -p (프로세스 포함)      → 포트↔프로세스
 systemctl list-units (C34) → 서비스 목록
 /etc/services              → 포트↔서비스명 참조
 서비스별 설정 파일(C39)    → 구성 상세

종합: 포트 3306 → mysqld → MySQL 버전/설정 → 정확한 공격 표면

C영역의 네트워크 정찰(C11~19)은 "외부에서 안 보이는 내부 구성"을 침입 후 조회로 완성하는 과정입니다.

2. 왜 중요한가

  • 서비스 이름·버전까지 파악하면, 공격자는 해당 서비스의 알려진 취약점을 노릴 수 있습니다(A영역 24편 패치 상태와 연계).
  • 네트워크 서비스 정찰은 포트·연결 정찰의 종합으로, "무엇을 다음에 공격할지"를 확정하는 단계입니다.
  • A영역 13편(불필요한 서비스 식별)이 방어자의 서비스 점검이라면, 여기서는 공격자의 서비스 매핑입니다.

3. 핵심 명령어 / 설정

조회정보
ss -p포트↔프로세스
systemctl list-units --type=service서비스 목록(C34)
/etc/services포트↔서비스명
서비스 설정 파일구성 상세(C39)

4. 실습 (실습 예시)

# 서비스 매핑 조회 감사 (실습 예시)
-w /etc/services -p r -k recon_net
# ss -p는 C17, systemctl은 C34 감사로 포함

# 세션에서 서비스 매핑 조회 흐름 (분석 방법)
sudo ausearch --session 12 -i 2>/dev/null | grep -E 'comm="ss"|comm="systemctl"|/etc/services' | tail

5. 정상 상태

$ sudo ausearch -k recon_net -i --start today | grep services | tail -1
(정상: /etc/services 참조는 드물고, 관리자는 서비스명을 이미 앎)

관리자는 서비스 구성을 이미 알고 있어 /etc/services를 뒤지는 일이 드뭅니다. 반복 참조는 오히려 정찰 신호입니다.

6. 이상 상태

02:13:40 auid=devops ses=12 comm="ss" a1="-tulpnp"
02:13:42 auid=devops ses=12 comm="systemctl" (list-units)
02:13:45 auid=devops ses=12 comm="cat" name="/etc/services"
  • 포트↔프로세스(ss -p) + 서비스 목록 + 포트 참조(/etc/services) 연속 → 서비스 매핑 종합
  • 포트·연결·서비스를 묶어 정확한 공격 표면 확정
  • 이후 특정 서비스 설정(C39)·취약점 공격으로 이어질 것으로 예상

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

서비스 매핑 정찰 흐름입니다(가상의 예시 로그).

type=EXECVE ... a0="ss" a1="-tulpnp"
type=EXECVE ... a0="systemctl" a1="list-units" a2="--type=service"
type=PATH ... name="/etc/services"
관찰해석
ss -p포트↔프로세스 매핑
systemctl list서비스 목록
/etc/services포트↔서비스명
종합공격 표면 확정

8. SOC 관제 포인트

  • 서비스 매핑 조회는 포트·연결 정찰(C17·C18)의 종합으로 봅니다.
  • 식별된 서비스의 버전·패치 상태(A영역 24편)와 연계해 공격 가능성을 평가합니다.
  • 서비스 매핑 뒤 특정 서비스 설정 조회(C39)·접근(E영역)으로 이어지는지 확인합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_c,recon,">
  <rule id="102180" level="6">
    <if_group>audit</if_group>
    <field name="audit.key">recon_net</field>
    <match>/etc/services</match>
    <description>네트워크 서비스 매핑 정보 조회</description>
    <mitre><id>T1049</id></mitre>
  </rule>
</group>

서비스 매핑은 네트워크 정찰 세트(120편)에 포함합니다.

10. 대응 방법

  1. 초기 확인 — 서비스 매핑 조회의 연속성·주체와 식별된 서비스를 확인합니다.
  2. 범위 확인 — 식별 서비스의 설정 조회(C39)·접근(E영역)으로 이어졌는지 확인합니다.
  3. 증거 확보 — 세션 조회 흐름을 보존합니다.
  4. 차단/조치 — 탈취 세션이면 B영역 대응과 서비스 점검을 진행합니다.
  5. 재발 방지 — 서비스 매핑 조회를 네트워크 정찰 상관에 포함합니다.

11. 핵심 정리

조회정보
ss -p포트↔프로세스
systemctl list서비스 목록
/etc/services포트↔서비스명
구분(관리자는 구성 숙지) vs 서비스 매핑 종합 조회(정찰)
면접 포인트"포트+프로세스+서비스명 매핑으로 정확한 공격 표면이 확정된다"

12. 다음 편 예고

다음 편 120. Linux 정보 수집 — 네트워크 정보 수집 종합 분석 에서는 2단계를 마무리하는 네트워크 정보 수집 종합 분석을 다룹니다.


이전 편: 118. Linux 정보 수집 — 현재 네트워크 연결 조회
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글