[Windows]윈도우 시스템 정보 수집 방법

Hyenna·2023년 5월 12일
0

OS

목록 보기
7/9
post-thumbnail
  • 정보 수집은 표적 호스트의 네트워크 구성 및 서비스 파악, 취약점 분석의 기본 정보 확보
  • 다양한 정보 수집을 위해, 서비스를 목록화하여 공격방법 결정

1. NetBIOS 세션 목록화

  • 윈도우 운영체제 목록화에서 null session을 찾는 것이 가장 중요
  • null session은 시스템에 인증되지 않은 연결로서, 공격자에 정보 제공
  • null session 익명채널로 API를 호출하고, 원격 프로시저 호출하여 주요정보 획득 가능
    (* 공유자원, 레지스트리, 트러스트 도메인, 사용자 계정 정책, 서비스와 프로세스 등)

[Null Session이란?]

  • 사용자가 ID와 Password를 입력하지 않고도 공유 대상인 IPC$(Inter Process Communication)에 연결하는 것
    ( *일반적으로 NetBIOS를 사용하는 시스템에서는 IPC$, C$, Admin$은 항상 공유되어있음)
  • Null Session Port : 135~139번

[공격 방법]

  • "net use \\공격서버IP\ ipc$ ""/user:"""
    • net use : 공유 폴더 접근
    • user:"" : 익명 사용자를 의미
    • "" : 패스워드 없는 것을 의미
    • IPC$ : 프로그램 간 통신에 필요한 named pipe를 공유하는 자원, 이 자원은 컴퓨터를 원격 관리하는 동안 그리고 공유 자원을 볼 때 사용됨
    • Admin$ : 컴퓨터를 원격 관리하는 동안 시스템에서 사용하는 공유자원
    • [드라이브 문자]$ : 관리자가 저장 장치의 드라이브에 접근할 수 있도록 해주는 공유자원
    • Print$ : 프린트를 원격 관리하는 동안 사용하는 자원

2. 공유 폴더 목록화

  • null session 연결이 성립되면, 윈도우 net view 명령어로 표적 시스템의 공유 리소스 목록화 수행

[공격 방법]

  • "net view \\공격서버IP"
    • net view : 지정된 PC와 공유된 영역, 호스트 혹은 자원 정보를 얻는데 사용

3. 레지스트리 목록화

  • 레지스트리 목록화는 reg 명령어+옵션으로 레지스트리 값을 추출할 수 있음

[공격 방법]

  • "reg query \\Localhost\ HKLM"
    • HKLM : 얻고자하는 레지스트리 입력

4.트러스트 도메인 목록화

  • 도메인 그룹의 주 도메인 컨트롤러와 백업 도메인 컨트롤러 등의 정보를 nltest로 확인
    ( * 트러스트 : 도메인 간에 설정한 관계로, 한 도메인의 사용자가 다른 도메인의 도메인 컨트롤러에서 인증될 수 있도록 함)

[공격 방법]

  • "nltest /dclist: <도메인명>"
    • nltest :
      • 도메인 컨트롤러 전체 목록 확인
      • PDC 에뮬레이터의 이름 확인
      • 보안 채널 또는 컴퓨터 계정을 질의하거나 재설정
      • 사용가능한 도메인 컨트롤러에 질의하기 위해 DsGetDCName 호출

5. 사용자 계정 목록화

  • 윈도우 운영체제에서 계정은 SID(SecurityID)로 식별
  • SID는 윈도우 운영체제에서 사용자나 그룹 같은 객체의 보안 식별자
  • SID가 같은 경우, 접근 허용 토큰의 일부로 사용되고, 동일 사용자로 인식됨

[공격 방법]

  • "whoami /user"
    • whoami : 현재 사용자 이름을 출력

6. NetBIOS Name 목록화

  • 표적 시스템에 익명 접속이 가능하다면, 표적 네트워크의 모든 도메인과 시스템 목록화가 가능
  • nbtstat 명령어+옵션이나 nbtscan.exe 툴을 사용하여 네트워크 대역으로 스캔 가능

[공격 방법]

  • "nbtstat -A 공격서버IP"
    • nbtstat :
      NetBIOS over TCP/IP를 사용해 스테이션의 프로토콜 사용 현황이
      나 TCP/IP 연결 상태를 검사하기 위한 명령어, 주로 IP충돌을 알아
      낼 때 많이 사용
    • -A : 지정한 IP주소를 사용하는 원격 컴퓨터의 이름 테이블을
      표시

7. MSRPC 목록화

  • RPC(Remote Procedure Call)는 표적시스템이 사용하는 애플리케이션과 서비스 정보를 제공

[공격 방법]

  • "epdump 공격서버IP"
    • epdump : MSRPC 수집 툴

0개의 댓글