Mac에 대한 DEX 검사 정의

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기10분
  • Mac에 대한 검사 정의는 Mac 장치의 성능, 보안 및 규정 준수를 평가하는 미리 결정된 규칙 및 기준 세트입니다. 이러한 검사는 CPU 사용량, 메모리 사용량, 배터리 세부 정보 및 방화벽 상태와 같은 다양한 측면을 다룰 수 있습니다.

    macOS 시스템의 경우 전체 데이터를 검색하려면 다음 컨텐츠를 /etc/sudoers에 포함합니다.
    _servicenow ALL=NOPASSWD: SETENV: /Library/Caches/servicenow/agent-client-collector/osquery/bin/osqueryi *, /usr/bin/mdls, /usr/bin/log, /bin/kill, /bin/launchctl
    Defaults:_servicenow !requiretty

    검사 정의 - 애플리케이션(메트릭)

    DEX은 애플리케이션이 실행되고 있지 않아도 액세스할 수 있는 os.mac.check-app-version, os.mac.check-app-is-installed 및 os.mac.check-app-last-updated 검사 정의를 제외하고 애플리케이션이 실행될 때만 액세스 가능한 다음 검사 정의를 제공합니다. 검사 정의 매개변수에는 다음 항목이 있습니다.
    • appName = 애플리케이션 이름. 예: Webex
    • appSysId= 애플리케이션의 시스템 ID입니다.
    • primaryProcess = 파이프 기호( | )로 구분된 애플리케이션의 기본 프로세스 목록입니다. 엔드포인트 장치에 존재하는 첫 번째 프로세스에 우선 순위가 부여됩니다. 예 1: Webex.app. 예제 2: Microsoft Teams.app | Microsoft Teams Classic.app.
      주:
      Teams 애플리케이션의 기본 프로세스가 한 엔드포인트 디바이스의 Microsoft Teams.app 이고 다른 엔드포인트 디바이스의 Microsoft Teams classic.app 인 경우 엔드포인트 디바이스의 프로세스 가용성에 따라 우선순위를 결정할 때 엔드포인트 디바이스에 먼저 존재하는 프로세스가 우선적으로 적용됩니다.
    • secondaryProcesses = 파이프 기호( | )로 구분된 애플리케이션의 보조 프로세스 목록입니다. 예: Cisco WebEx Start.app | webexmtaV2.app.
    검사 정의 이름 검사 정의 매개변수 설명
    os.mac.check-app-cpu-usage
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션에서 사용하는 CPU 자원의 양을 확인합니다.
    os.mac.check-app-memory-usage
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션에서 사용하는 메모리 자원의 양을 확인합니다.
    os.mac.check-app-listening-ports
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    열려 있고 들어오는 네트워크 트래픽이 애플리케이션에 도달할 수 있는 포트 번호를 검색합니다.
    os.mac.check-app-last-updated
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    최신 애플리케이션 업데이트 설치의 시간과 날짜를 확인합니다.
    주:
    이 검사 정의는 애플리케이션이 실행 중이지 않아도 사용할 수 있습니다.
    os.mac.check-app-version
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션의 버전 번호를 조회합니다.
    주:
    • 이 검사 정의는 애플리케이션이 실행 중이지 않아도 사용할 수 있습니다.
    • 애플리케이션에 버전이 없는 경우 검사 정의는 해당 애플리케이션에 대해 문자열 &quot;unversioned&quot;를 반환합니다.
    os.mac.check-app-is-installed
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션이 장치에 설치되어 있는지 여부를 확인합니다.
    주:
    이 검사 정의는 애플리케이션이 실행 중이지 않아도 사용할 수 있습니다.
    os.mac.check-app-is-running
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션이 현재 실행 중 상태인지 여부를 확인합니다.
    os.mac.check-app-uptime
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    지정된 애플리케이션의 가동 시간을 확인합니다.
    os.mac.check-app-last-access-time
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션이 실행된 가장 최근 시간을 확인합니다.
    주:
    • 이 검사 정의는 애플리케이션이 실행 중이지 않아도 사용할 수 있습니다.
    • 사용자가 지난 7일 이내에 애플리케이션을 실행하지 않은 경우 마지막 액세스 시간은 비어 있습니다.
    os.mac.check-app-io-usage-read
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션의 읽기 I/O(입력/출력) 작업 사용량을 확인합니다.
    os.mac.check-app-io-usage-write
    • --appName=<애플리케이션 이름>
    • --primaryProcess=<기본 프로세스 이름>
    • --secondaryProcesses=&lt;파이프 기호로 구분된 보조 프로세스의 목록입니다>
    • --appSysId=&lt;애플리케이션의 sys ID입니다>
    애플리케이션의 쓰기 I/O(입력/출력) 작업 사용량을 확인합니다.

    검사 정의 - 장치(메트릭)

    DEX은 장치에 대해 다음과 같은 유형의 검사 정의를 제공합니다.
    검사 정의 이름 설명
    os.mac.check-system-cpu-usage CPU 사용률을 확인합니다.
    os.mac.check-system-cpu-details CPU 이름, 물리적 및 논리적 코어 수, 아키텍처 정보를 조회합니다.
    os.mac.check-system-memory-usage 시스템 메모리 사용률을 확인합니다.
    os.mac.check-system-uptime 시스템이 마지막으로 부팅된 이후 경과한 시간을 확인합니다.
    os.mac.check-system-time Unix 타임스탬프를 사용하여 UTC(조정된 범용 시간)의 현재 시간을 확인합니다.
    os.mac.check-system-device-details 섀시의 유형, 모델 및 일련 번호를 조회합니다.
    os.mac.check-system-disk-details 총 공간, 사용된 공간 및 여유 공간(바이트 단위)과 같은 디스크 상세 정보를 조회합니다.
    os.mac.check-system-disk-io-usage-read 초당 읽기 디스크 바이트를 조회합니다.
    os.mac.check-system-disk-io-usage-write 초당 쓰기 디스크 바이트를 조회합니다.
    os.mac.check-system-disk-usage 전체 공간의 백분율로 디스크 사용 공간을 조회합니다.
    os.mac.check-system-os-details 운영 체제의 이름, 버전, 플랫폼, 아키텍처 및 설치 날짜를 조회합니다.
    os.mac.check-system-net-bytes-incoming 모든 네트워크 장치에서 초당 수신 네트워크 바이트를 조회합니다.
    os.mac.check-system-net-bytes-outgoing 모든 네트워크 장치에서 초당 발신 네트워크 바이트를 조회합니다.
    os.mac.check-system-logged-in-users 현재 장치에 로그인한 사용자의 상세 정보를 조회합니다.
    os.mac.check-system-session-time 현재 로그인한 사용자의 세션 시간(분 단위)을 조회합니다.
    os.mac.check-system-network-details 이더넷, Wi-Fi 및 기타 관련 정보 등 네트워크 상세 정보를 조회합니다.
    os.mac.check-system-battery-details 배터리 잔량 백분율, 설계된 전압, 예상 실행 시간 및 배터리의 최대 용량을 포함한 배터리 관련 데이터를 검색합니다.
    주:
    이 검사 정의는 가상 머신에 적용할 수 없습니다.
    os.mac.check-system-firewall-enabled 운영 체제 방화벽이 활성 상태이고 사용되고 있는지 확인합니다.
    os.mac.check-system-pending-updates 보류 중인 소프트웨어 업데이트의 상태를 확인합니다.
    os.mac.check-system-admin-users 로컬 관리 권한이 있는 모든 사용자 계정을 조회합니다.

    검사 정의 - 진단 작업

    DEX 은 진단 작업에 대해 다음과 같은 유형의 검사 정의를 제공합니다.
    검사 정의 이름 검사 정의 매개변수 설명
    os.mac.check-app-process-ids --pid=<프로세스 이름> 애플리케이션과 연결된 상위 프로세스와 모든 하위 프로세스의 프로세스 ID(PID)를 조회합니다.
    os.mac.check-process-cpu 해당 사항 없음 실행 중인 모든 프로세스의 목록과 CPU 사용률, CPU 시간, PID(프로세스 ID), 상위 프로세스 ID(PPID) 및 이름을 조회합니다.
    os.mac.check-process-memory 해당 사항 없음 실행 중인 모든 프로세스의 목록과 메모리 사용량(KB), PID(프로세스 ID), 상위 프로세스 ID(PPID) 및 이름을 조회합니다.
    os.mac.check-process-data 해당 사항 없음 현재 실행 중인 모든 프로세스의 CPU 사용량, 메모리 사용량 및 디스크 사용량을 조회합니다.
    os.mac.check-process-disk 해당 사항 없음 실행 중인 모든 프로세스의 목록과 디스크 사용량(바이트), PID(프로세스 ID), 상위 프로세스 ID(PPID) 및 이름을 조회합니다.
    os.mac.check-traceroute

    --traceroute=<url>

    --max_hops = &lt;기본값은 65>

    --timeout = &lt;기본값은 5>

    각 네트워크 홉에 대한 IP 주소, 도메인 이름 및 RTT(왕복 시간)를 조회합니다.
    os.mac.check-ping-test --ping=&lt;URL> 제공된 URL에 ping 요청을 보내고 URL에 현재 연결할 수 있는지 여부를 나타내는 연결 상태를 반환합니다.

    검사 정의 - 정정 작업

    DEX 은 정정 작업에 대해 다음과 같은 유형의 검사 정의를 제공합니다.
    검사 정의 이름 검사 정의 매개변수 설명
    os.mac.action-kill-process

    --pid=<프로세스 id>

    또는

    --app_name=&lt;실행 파일 이름입니다>

    주:
    프로세스 ID는 애플리케이션 이름보다 우선합니다.
    실행 중인 프로세스 또는 PID(프로세스 ID) 또는 실행(.app) 파일 이름으로 지정된 여러 프로세스를 종료합니다.
    os.mac.action-restart-service --service_name=<서비스 이름> 시스템에 대한 입력으로 서비스 이름을 사용하는 로깅된 사용자 서비스를 다시 시작합니다.