Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
omigood — OMIGOD! OM I GOOD? Wiz의 위협 연구팀이 발견한 "OMIGOD" 취약점 중 하나인 CVE-2021-38647에 취약한 VM을 탐지하는 무료 스캐너입니다. | Kitploit
도구/GitHubGitHub/marcosimioni/omigood
ReconnaissanceVulnerability ScannersExploitationInformation GatheringPenetration TestingCloud Security
GitHubmarcosimioni/omigood

omigood

OMIGOD! OM I GOOD? Wiz의 위협 연구팀이 발견한 "OMIGOD" 취약점 중 하나인 CVE-2021-38647에 취약한 VM을 탐지하는 무료 스캐너입니다.

저장소 보기
2034년 전Kitploit 검토 완료

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

omigood (내가 괜찮다고?)

이 저장소는 Wiz의 위협 연구팀이 발견한 "OMIGOD" 취약점 중 하나, 특히 CVE-2021-38647에 취약한 VM을 탐지하는 무료 스캐너를 포함하고 있습니다.

Wiz의 원본 블로그 게시물: https://www.wiz.io/blog/omigod-critical-vulnerabilities-in-omi-azure

개요

스캐너는 Azure API에 연결하기 위해 Azure 자격 증명이 필요하며, 구독 및 리소스 그룹이 주어지면(또는 기본적으로 사용 가능한 모든 항목을 스캔) Linux VM 목록을 검색하고 머신이 취약할 수 있는지 보고합니다.

또한 Microsoft의 자체 도구도 확인하세요: https://github.com/microsoft/OMS-Agent-for-Linux/tree/master/tools/OMIcheck

인증

Azure API에 인증하려면 azure cli(기본값)와 대화형 브라우저 인증이 모두 지원됩니다. --auth 명령줄 매개변수를 확인하세요.

수행되는 검사

Linux 머신 자체에서 명령을 실행하지 않고 머신이 OMI에 취약한지 여부를 판단하는 직접적인 방법은 없습니다. 이는 Azure API를 통해 확장을 사용하여 RunShellCommand 명령을 실행함으로써 지원됩니다. Microsoft의 자체 도구(https://github.com/microsoft/OMS-Agent-for-Linux/tree/master/tools/OMIcheck)도 이 접근 방식을 사용합니다.

VM이 취약하더라도 HTTP/HTTPS를 통해 OMI 서버를 노출하지 않을 수 있으며(기본값), 노출하더라도 해당 포트가 Azure의 네트워크 보안 그룹에 의해 차단될 수 있으므로 연결할 수 없을 수 있습니다. 이것이 패치를 피해야 하는 이유는 아니지만, 취약한 Linux VM이 많다면 어떤 VM이 더 노출되어 있는지 파악하여 우선순위를 정하는 것이 유용할 수 있습니다.

omigood는 더 포괄적인 접근 방식을 따르며, 명령줄 옵션을 통해 트리거할 수 있는 여러 검사 항목이 포함된 JSON 출력을 생성하여 공격 표면을 결정할 수 있습니다.

omigood가 수행하는 검사는 다음과 같습니다:

  • Azure API를 통해 VM이 Linux를 실행 중인지 확인
  • Azure API를 통해 VM이 OMSAgentForLinux 확장을 실행 중인지 확인 (이는 머신이 OMI도 실행 중일 가능성이 높다는 좋은 힌트)
  • Azure API를 통해 OMS Agent의 버전 확인 (OMI 버전과 종종 연관됨). 이 검사는 VM에서 스크립트를 실행하지 않고 수행할 수 있습니다. OMS Agent는 최소 버전 1.13.40 이상이어야 합니다. 실행하는 스크립트는 여기에서 확인할 수 있습니다.
  • Azure API를 통해 VM의 네트워크 보안 그룹을 확인하고 (거짓 양성을 유발할 수 있는 매우 간단한 알고리즘 사용) OMI 서버 포트가 열려 있을 수 있는지 확인
  • Azure API를 통해 VM의 유효 네트워크 보안 그룹(네트워크 인터페이스와 서브넷의 조합)을 확인하고 OMI 서버 포트가 열려 있을 수 있는지 확인. 이 검사는 선택 사항이며 VM이 실행 중이어야 하고, 더 높은 API 권한이 필요하며 실행 시간이 더 오래 걸립니다. -e 명령줄 옵션으로 활성화하세요.
  • Azure API를 사용하여 VM에서 간단한 bash 스크립트를 실행하여 OMI 서버가 실행 중인지, 버전이 무엇인지, UNIX 소켓(기본값)에만 노출되었는지 또는 TCP에도 노출되었는지 확인. 이 검사는 선택 사항이며 VM이 실행 중이어야 하고, 더 높은 API 권한이 필요하며 실행 시간이 더 오래 걸립니다. -r 명령줄 옵션으로 활성화하세요. 사용에 따른 책임은 본인에게 있습니다!
  • /usr/bin/id 명령을 실행하여 머신의 공용 IP를 공격해 봄. 이 검사는 선택 사항이며 VM을 익스플로잇하려는 시도를 포함합니다. -a 명령줄 옵션으로 활성화하세요. 테스트할 권한이 있는 대상에만 사용하세요. 사용에 따른 책임은 본인에게 있습니다!

출력

생성된 JSON 출력 파일에는 스캔된 VM에 대한 모든 정보(ID, 운영 체제, 네트워크 보안 그룹, 전원 상태 등)가 포함되어 있습니다.

검사와 관련된 플래그('YES'/'NO')는 다음과 같습니다:

  • check_oms_extension: VM에서 OMS Agent 확장이 발견된 경우 YES.
  • check_oms_vulnerable: OMS Agent 확장 버전이 1.13.40 미만인 경우 YES.
  • check_permissive_rules: 네트워크 보안 그룹 규칙이 OMI 포트에 대한 연결을 허용하는 것으로 보이는 경우 YES.
  • check_permissive_effective_rules: 유효 보안 규칙이 OMI 포트에 대한 연결을 허용하는 것으로 보이는 경우 YES. -e 명령줄 옵션을 사용한 경우에만 해당.
  • check_omi_vulnerable: 스크립트를 통해 OMI 서버 버전을 검색했으며 1.6.8-1 미만인 것으로 확인된 경우 YES. -r 명령줄 옵션을 사용한 경우에만 해당.
  • check_omi_listening_on_tcp: 스크립트를 통해 OMI 서버 상태를 검색했으며 TCP에서 수신 중이고 UNIX 소켓만 있는 것은 아닌 경우 YES. -r 명령줄 옵션을 사용한 경우에만 해당.
  • check_attack_successful: VM의 공용 IP에 대한 공격이 성공한 경우 YES. -r 명령줄 옵션을 사용한 경우에만 해당.

사용법

root@kitploit:~
usage: omigood_scanner.py [-h] [-v] [--auth {azurecli,interactivebrowser}] [-r] [-a] [-e] [-s SUBSCRIPTIONS]
                          [-g RESOURCEGROUPS] [-m VMS] -o OUTPUT

OMIGood scanner for CVE-2021-38647

optional arguments:
  -h, --help            show this help message and exit
  -v, --verbose         [OPTIONAL] Verbose mode: Displays additional debug details.
  --auth {azurecli,interactivebrowser}
                        Authentication mode. Default: azurecli.
  -r, --runscript       [OPTIONAL] Run Script. Runs bash script on target VMs to check for OMI server, agent and
                        version. Disabled by default. Use at your own risk.
  -a, --attack          [OPTIONAL] Try to attack the host. Disabled by default. Use at your own risk.
  -e, --effective       [OPTIONAL] Check Effective Security Rules. Disabled by default. Requires higher permissions on
                        Azure.
  -s SUBSCRIPTIONS, --subscriptions SUBSCRIPTIONS
                        [OPTIONAL] Comma separate list of subscriptions IDs. If not specified, it will try all.
  -g RESOURCEGROUPS, --resourcegroups RESOURCEGROUPS
                        [OPTIONAL] Comma separated list of Resource Group names. If not specified, it will try all. If
                        specified, it will work only with a single subscription provided.
  -m VMS, --vms VMS     [OPTIONAL] Comma separated list of VM names. If not specified, it will try all. If specified,
                        it will work only with a single subscription and a single resource group provided.
  -o OUTPUT, --output OUTPUT
                        JSON output file with results.

기여자

  • Marco Simioni
  • Francesco Vigo
  • Giordano Bianchi

면책 조항

이 저장소에서 제공되는 소프트웨어 및 코드 샘플은 명시적이든 묵시적이든 어떠한 종류의 보증 없이 "있는 그대로" 제공됩니다. 사용에 따른 책임은 본인에게 있습니다.

도구 다운로드