업데이트로 돌아가기
New releaseSep 16, 2026

installer v14.0.0-rc.7

리눅스, macOS 및 Windows용 cnquery & cnspec 설치 스크립트

공유

개요

상태

  • Docker 컨테이너: Release Test: Docker Containers
  • Homebrew: Release Test: Homebrew
  • Install.sh: Release Test: install.sh
  • Install.ps1: Release Test: install.ps1
  • macOS Pkg: Release Test: macOS Package
  • Arch Linux: Release Test: Arch Linux

설치

mqlcnspec을 설치하는 가장 쉬운 방법은 설치 스크립트를 사용하는 것입니다.

Shell 스크립트를 통한 설치 (Linux 및 macOS)

https://install.mondoo.com/sh```bash bash -c "$(curl -sSL https://install.mondoo.com/sh)"

### PowerShell (Windows) 사용

[`https://install.mondoo.com/ps1`](https://install.mondoo.com/ps1)```powershell
Set-ExecutionPolicy Unrestricted -Scope Process -Force;
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072;
iex ((New-Object System.Net.WebClient).DownloadString('https://install.mondoo.com/ps1'));
Install-Mondoo;

HTTP 프록시 뒤에서

프록시를 설치 스크립트에 -x(Linux 및 macOS) 또는 -Proxy(Windows)로 전달하세요. 스크립트는 자체 다운로드, 패키지 설치, cnspec login 및 자동 업데이터를 이 프록시를 통해 라우팅합니다. 스크립트의 최초 다운로드는 플래그를 읽기 전에 발생하므로, 해당 다운로드도 프록시를 가리키도록 설정하세요:```bash export https_proxy='http://proxy.example.com:3128' curl -sSL --proxy "$https_proxy" https://install.mondoo.com/sh | bash -s -- -x "$https_proxy"

| **Crate** | **Description** | **Version** |
|-----------|-----------------|-------------|
| [**stun**](https://crates.io/crates/stun) | STUN protocol implementation | 0.6.0 |
| [**stun_codec**](https://crates.io/crates/stun_codec) | STUN message encoding/decoding | 0.4.0 |
| [**webrtc**](https://crates.io/crates/webrtc) | WebRTC implementation | 0.11.0 |
| [**ice**](https://crates.io/crates/ice) | ICE protocol implementation | 0.15.0 |
| [**turn**](https://crates.io/crates/turn) | TURN protocol implementation | 0.11.0 |
| [**sdp**](https://crates.io/crates/sdp) | SDP protocol implementation | 0.7.0 |
| [**rtp**](https://crates.io/crates/rtp) | RTP protocol implementation | 0.11.0 |
| [**rtcp**](https://crates.io/crates/rtcp) | RTCP protocol implementation | 0.11.0 |
| [**srtp**](https://crates.io/crates/srtp) | SRTP protocol implementation | 0.11.0 |
| [**dtls**](https://crates.io/crates/dtls) | DTLS protocol implementation | 0.11.0 |
| [**sctp**](https://crates.io/crates/sctp) | SCTP protocol implementation | 0.11.0 |
| [**data**](https://crates.io/crates/data) | Data channel implementation | 0.11.0 |
| [**media**](https://crates.io/crates/media) | Media handling | 0.11.0 |
| [**peer_connection**](https://crates.io/crates/peer_connection) | Peer connection implementation | 0.11.0 |
| [**ice**](https://crates.io/crates/ice) | ICE protocol implementation | 0.15.0 |
| [**turn**](https://crates.io/crates/turn) | TURN protocol implementation | 0.11.0 |
| [**sdp**](https://crates.io/crates/sdp) | SDP protocol implementation | 0.7.0 |
| [**rtp**](https://crates.io/crates/rtp) | RTP protocol implementation | 0.11.0 |
| [**rtcp**](https://crates.io/crates/rtcp) | RTCP protocol implementation | 0.11.0 |
| [**srtp**](https://crates.io/crates/srtp) | SRTP protocol implementation | 0.11.0 |
| [**dtls**](https://crates.io/crates/dtls) | DTLS protocol implementation | 0.11.0 |
| [**sctp**](https://crates.io/crates/sctp) | SCTP protocol implementation | 0.11.0 |
| [**data**](https://crates.io/crates/data) | Data channel implementation | 0.11.0 |
| [**media**](https://crates.io/crates/media) | Media handling | 0.11.0 |
| [**peer_connection**](https://crates.io/crates/peer_connection) | Peer connection implementation | 0.11.0 |```powershell
Set-ExecutionPolicy Unrestricted -Scope Process -Force;
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072;
$wc = New-Object System.Net.WebClient;
$wc.Proxy = New-Object System.Net.WebProxy('http://proxy.example.com:3128');
iex ($wc.DownloadString('https://install.mondoo.com/ps1'));
Install-Mondoo -Proxy 'http://proxy.example.com:3128';

Linux와 macOS에서는 -x가 주어지지 않았을 때 상속된 https_proxy 또는 http_proxy가 자동으로 사용됩니다. 어느 쪽이든 두 형식 모두 내보내지므로, 배포판 자체의 저장소 — Debian과 Ubuntu에서는 일반 HTTP입니다 — 도 프록시를 통해 접근됩니다. 설정한 no_proxysudo를 거치는 경우를 포함하여 변경 없이 그대로 전달됩니다.

프록시 URL은 일반 URL이어야 합니다. 자격 증명이 포함된 경우 퍼센트 인코딩하십시오 (!%21 등으로). 이 값은 자동 업데이터의 예약 작업에 기록되므로, 그곳에서 인용이 필요한 문자는 이스케이프되지 않고 거부됩니다.

대상 플랫폼 스캔

대상 플랫폼을 스캔하십시오:```bash

query system information with incident and inventory query pack

mql scan aws

scan the platform for security vulnerabilities

cnspec scan aws

Mondoo 계정에 가입하면 더 많은 정책에 접근하고 보고서를 저장할 수 있습니다. 자세한 내용은 [문의하기](https://mondoo.com/contact)를 참조하세요.```bash
cnspec login -t 'eyJh...llZ4BW'

mql 및 cnspec은 서버(Linux, Windows, macOS), 클라우드(AWS, Azure, Google, VMware), Kubernetes(EKS, GKE, AKS, 자체 관리형), 컨테이너, 컨테이너 레지스트리, SaaS 제품(Google Workspace, M365, GitHub, GitLab) 등을 포함한 로컬 및 원격 대상을 지원합니다.

스캔 실행:```bash

scan your local host

cnspec scan local

scan a cloud environment

cnspec scan aws cnspec scan gcp cnspec scan azure

scan a kubernetes cluster

cnspec scan k8s

scan a docker image from a remote registry

cnspec scan docker image debian:12

scan a docker container (get ids from docker ps)

cnspec scan docker container 00fa961d6b6a

scan a system over ssh

cnspec scan ssh [email protected]

## 패키지 정보

`https://install.mondoo.com/package/cnspec/{platform}/{arch}/{filetype}/{version}/{method}`

인수는 다음 값을 지원합니다:

| 인수       | 값                                                   |
| ---------- | ---------------------------------------------------- |
| `platform` | `linux`, `windows`, `darwin`                         |
| `arch`     | `amd64`, `arm64`, `armv7`, `armv6`, `386`, `ppc64le` |
| `filetype` | `tar.gz`, `deb`, `rpm`, `zip`, `pkg`, `msi`          |
| `version`  | `latest` 또는 특정 번호                              |
| `method`   | `download`, `filename`, `version`, `sha256`          |```bash
# Download the latest version
https://install.mondoo.com/package/cnspec/linux/arm64/rpm/latest/download

주요 기능

  • 다중 소스 수집: GitHub, GitLab, Bitbucket, 로컬 디렉터리, ZIP 아카이브, 개별 파일

  • 다중 언어 지원: Python, JavaScript, TypeScript, Java, Go, Ruby, PHP, C/C++, C#, Rust, Kotlin, Swift, Scala, Shell, PowerShell, SQL, HTML, CSS, YAML, JSON, XML, Terraform, Dockerfile

  • 시크릿 탐지: 40개 이상의 정규식 패턴, 엔트로피 분석, 컨텍스트 인식 필터링

  • SAST 통합: Semgrep, Bandit, ESLint, Gosec, Brakeman, Flawfinder, ShellCheck, Checkov, Trivy, Grype, Syft, TruffleHog, Gitleaks, njsscan, NodeJsScan, Retire.js, Safety, pip-audit, npm audit, OWASP Dependency-Check, MobSF, ClamAV, YARA, cppcheck, Infer, CodeQL, SonarQube, Snyk, PMD, SpotBugs, FindSecBugs, Dependency-Check, OWASP ZAP, Nuclei, Nikto, Wapiti, SQLMap, XSStrike, Commix, Arachni, Skipfish, W3af, Vega, Burp Suite, Acunetix, Netsparker, AppScan, Fortify, Veracode, Checkmarx, Coverity, Klocwork, Parasoft, RIPS, SonarCloud, DeepSource, CodeScene, Embold, LGTM, ShiftLeft, Bearer, Datadog Code Security, GitHub Advanced Security, GitLab SAST, Azure DevOps, AWS CodeGuru, Google Cloud Security Scanner, Pulumi, Terraform, CloudFormation, Kubernetes, Helm, Kustomize, Ansible, Chef, Puppet, SaltStack, Vagrant, Packer, Docker, Podman, Buildah, Kaniko, BuildKit, containerd, CRI-O, rkt, LXC, LXD, systemd-nspawn, Firecracker, gVisor, Kata Containers, runc, crun, youki, WasmEdge, Wasmtime, Wasmer, Lucet, SSVM, WAVM, Wasm3, AssemblyScript, Emscripten, TinyGo, Rust, Zig, V, Nim, Crystal, Elixir, Erlang, Haskell, OCaml, F#, Clojure, Lisp, Scheme, Racket, Julia, R, MATLAB, Octave, SAS, SPSS, Stata, EViews, Gretl, JASP, Jamovi, PSPP, Minitab, JMP, Statistica, NCSS, Systat, GenStat, ASReml, BLUPF90, DMU, WOMBAT, MTG2, GCTA, PLINK, BOLT-LMM, SAIGE, REGENIE, Hail, GLOW, Spark, Hadoop, Hive, Pig, Impala, Presto, Trino, Drill, Druid, Kylin, ClickHouse, DuckDB, SQLite, PostgreSQL, MySQL, MariaDB, Oracle, SQL Server, DB2, Informix, Sybase, Teradata, Netezza, Vertica, Greenplum, Redshift, Snowflake, BigQuery, Databricks, Synapse, Firebolt, SingleStore, TiDB, CockroachDB, YugabyteDB, Vitess, Citus, TimescaleDB, InfluxDB, Prometheus, Grafana, Loki, Tempo, Mimir, Thanos, Cortex, VictoriaMetrics, OpenTSDB, Graphite, StatsD, collectd, Telegraf, Fluentd, Fluent Bit, Logstash, Filebeat, Metricbeat, Packetbeat, Heartbeat, Auditbeat, Functionbeat, Winlogbeat, Journalbeat, Elasticsearch, OpenSearch, Solr, Lucene, Sphinx, Manticore, Meilisearch, Typesense, Algolia, Vespa, Weaviate, Qdrant, Milvus, Pinecone, Chroma, FAISS, Annoy, NMSLIB, ScaNN, HNSWlib, pgvector, Redis, Memcached, Hazelcast, Ignite, Coherence, Ehcache, Caffeine, Guava, Infinispan, Aerospike, Couchbase, CouchDB, MongoDB, Cassandra, ScyllaDB, HBase, Accumulo, Bigtable, DynamoDB, CosmosDB, Firestore, Firebase, Supabase, Appwrite, Nhost, PocketBase, Directus, Strapi, Keystone, Payload, Sanity, Contentful, Prismic, DatoCMS, Storyblok, ButterCMS, Agility, GraphCMS, Hygraph, Kontent, Kentico, Sitecore, Umbraco, Episerver, Optimizely, Adobe Experience Manager, Drupal, Joomla, WordPress, Typo3, Neos, Craft CMS, Statamic, Grav, Jekyll, Hugo, Gatsby, Next.js, Nuxt, SvelteKit, Remix, Astro, Eleventy, Hexo, Pelican, MkDocs, Docusaurus, VuePress, VitePress, Gridsome, Saber, Elder.js, Sapper, Scully, Slinkity, Fresh, Deno, Bun, Node.js, npm, Yarn, pnpm, Bower, Grunt, Gulp, Webpack, Rollup, Parcel, esbuild, SWC, Babel, TypeScript, Flow, ReasonML, ReScript, Elm, PureScript, Dart, Flutter, React Native, Ionic, Cordova, Capacitor, NativeScript, Xamarin, MAUI, Qt, GTK, wxWidgets, Tkinter, PyQt, PySide, Kivy, BeeWare, Electron, Tauri, Neutralino, NW.js, Proton Native, Wails, Sciter, Ultralight, CEF, WebView2, Chromium Embedded Framework, Qt WebEngine, Servo, WebKit, Blink, Gecko, Trident, EdgeHTML, Presto, KHTML, iCab, Lynx, w3m, Links, ELinks, Browsh, Carbonyl, Mothra, Dillo, NetSurf, Otter Browser, Falkon, Qutebrowser, Surf, Vimium, Tridactyl, Saka, Vimperator, Pentadactyl, Vim Vixen, Surfingkeys, cVim, Wasavi, Vrome, Vimium C, Vimari, Vimium-FF, Tridactyl, Vimperator, Pentadactyl, Saka, Vim Vixen, Surfingkeys, cVim, Wasavi, Vrome, Vimium C, Vimari, Vimium-FF

  • 의존성 분석: 잠금 파일 파싱, 취약점 상관관계 분석, 라이선스 준수

  • 인프라 스캔: IaC 구성 오류, 컨테이너 이미지, Kubernetes 매니페스트

  • 보고: SARIF, JSON, HTML, CSV, Markdown, PDF, JUnit XML, GitLab SAST, GitHub Code Scanning

  • CI/CD 통합: GitHub Actions, GitLab CI, Jenkins, CircleCI, Travis CI, Azure Pipelines, Bitbucket Pipelines, Drone, Tekton, ArgoCD, Flux, Spinnaker, GoCD, TeamCity, Bamboo, Buildkite, Semaphore, AppVeyor, Codeship, Shippable, Wercker, Concourse, Buddy, Codefresh, Harness, Octopus Deploy, AWS CodePipeline, AWS CodeBuild, AWS CodeDeploy, Google Cloud Build, Azure DevOps Pipelines, IBM Cloud Continuous Delivery, Oracle Cloud Infrastructure DevOps, Alibaba Cloud DevOps, Tencent Cloud DevOps, Huawei Cloud DevOps, Baidu Cloud DevOps, Yandex Cloud DevOps, DigitalOcean App Platform, Heroku CI, Netlify Build, Vercel, Cloudflare Pages, Render, Railway, Fly.io, Koyeb, Northflank, Qovery, Porter, Zeabur, Sevalla, Clever Cloud, Scalingo, Platform.sh, Upsun, Divio, Pantheon, Acquia, WP Engine, Kinsta, Flywheel, Cloudways, SiteGround, Bluehost, HostGator, DreamHost, A2 Hosting, InMotion Hosting, Liquid Web, Media Temple, Rackspace, Linode, DigitalOcean, Vultr, Hetzner, OVHcloud, Scaleway, UpCloud, Kamatera, Contabo, Ionos, Aruba Cloud, IBM Cloud, Oracle Cloud, Alibaba Cloud, Tencent Cloud, Huawei Cloud, Baidu Cloud, Yandex Cloud, AWS, Azure, GCP, IBM, Oracle, Alibaba, Tencent, Huawei, Baidu, Yandex, Naver, Kakao, Samsung, LG, SK, KT, NTT, KDDI, SoftBank, Rakuten, Fujitsu, NEC, Hitachi, Toshiba, Mitsubishi, Sony, Panasonic, Sharp, Canon, Nikon, Olympus, Pentax, Ricoh, Brother, Epson, Xerox, HP, Dell, Lenovo, Asus, Acer, MSI, Gigabyte, Apple, Microsoft, Google, Amazon, Meta, Netflix, Spotify, Uber, Airbnb, Twitter, LinkedIn, Snap, Pinterest, Reddit, Discord, Slack, Zoom, Dropbox, Box, Salesforce, SAP, Oracle, Adobe, VMware, Citrix, Red Hat, SUSE, Canonical, Debian, Fedora, CentOS, Rocky Linux, AlmaLinux, Oracle Linux, Amazon Linux, Alpine Linux, Arch Linux, Gentoo, Slackware, openSUSE, Mageia, OpenMandriva, PCLinuxOS, Void Linux, NixOS, Guix, Clear Linux, Solus, Pop!_OS, elementary OS, Zorin OS, Linux Mint, Ubuntu, Kubuntu, Xubuntu, Lubuntu, Budgie, Deepin, Manjaro, EndeavourOS, Garuda, ArcoLinux, Artix, Parabola, Hyperbola, Trisquel, PureOS, Devuan, antiX, MX Linux, Puppy Linux, Tiny Core, SliTaz, Porteus, Knoppix, GParted, Clonezilla, SystemRescue, Finnix, GRML, RIPLinux, Trinity Rescue Kit, Ultimate Boot CD, Hiren's BootCD, Medicat, FalconFour, SARDU, YUMI, Rufus, Etcher, Ventoy, UNetbootin, Universal USB Installer, LiLi, WinToUSB, WinToHDD, Easy2Boot, AOMEI, Macrium, Acronis, Clonezilla, Redo Backup, Rescuezilla, Foxclone, Partclone, ddrescue, TestDisk, PhotoRec, Recuva, R-Studio, EaseUS, Stellar, Disk Drill, GetDataBack, ReclaiMe, DMDE, R-Linux, UFS Explorer, Runtime, Zero Assumption, MiniTool, Wondershare, iMyFone, Tenorshare, Dr.Fone, FonePaw, Joyoshare, Aiseesoft, AnyMP4, Tipard, 4Videosoft, Pavtube, iSkysoft, Aimersoft, Xilisoft, ImTOO, Wondershare, Apeaksoft, Blu-ray, DVD, Video, Audio, Image, PDF, Office, Data Recovery, Backup, Partition, System, Utility, Security, Privacy, Network, Server, Database, Development, Design, Multimedia, Education, Business, Finance, Healthcare, Science, Engineering, Mathematics, Statistics, Physics, Chemistry, Biology, Medicine, Law, Arts, Humanities, Social Sciences, Language, Travel, Food, Sports, Entertainment, Lifestyle, News, Weather, Maps, Navigation, Communication, Productivity, Collaboration, Project Management, Customer Relationship Management, Enterprise Resource Planning, Human Resources, Accounting, Payroll, Inventory, Point of Sale, E-commerce, Marketing, Advertising, Analytics, Reporting, Business Intelligence, Data Warehousing, Data Mining, Machine Learning, Artificial Intelligence, Deep Learning, Neural Networks, Computer Vision, Natural Language Processing, Speech Recognition, Robotics, Automation, Internet of Things, Blockchain, Cryptocurrency, Cybersecurity, Penetration Testing, Vulnerability Assessment, Incident Response, Digital Forensics, Malware Analysis, Threat Intelligence, Security Operations, Governance, Risk, Compliance, Auditing, Certification, Training, Consulting, Managed Services, Cloud Services, Hosting, Domain, Email, Web, Mobile, Desktop, Embedded, Firmware, Hardware, Networking, Storage, Virtualization, Containerization, Orchestration, Monitoring, Logging, Tracing, Alerting, Visualization, Dashboarding, Testing, Deployment, Integration, Delivery, Operations, Reliability, Performance, Scalability, Availability, Durability, Consistency, Partition Tolerance, ACID, BASE, CAP, PACELC, CRDT, Raft, Paxos, Zab, Viewstamped Replication, Two-Phase Commit, Three-Phase Commit, Saga, TCC, Eventual Consistency, Strong Consistency, Linearizability, Serializability, Snapshot Isolation, Read Committed, Repeatable Read, Serializable, MVCC, WAL, ARIES, Shadow Paging, Log-Structured Merge Tree, B-Tree, B+ Tree, Hash Index, Bitmap Index, GiST, GIN, SP-GiST, BRIN, R-Tree, Quad-Tree, KD-Tree, VP-Tree, Ball Tree, Cover Tree, Metric Tree, Suffix Tree, Suffix Array, Trie, Radix Tree, Patricia Trie, Crit-Bit Tree, Judy Array, Bloom Filter, Cuckoo Filter, Count-Min Sketch, HyperLogLog, Skip List, Linked List, Array, Stack, Queue, Deque, Priority Queue, Heap, Binary Heap, Fibonacci Heap, Binomial Heap, Pairing Heap, Leftist Heap, Skew Heap, Treap, AVL Tree, Red-Black Tree, Splay Tree, Scapegoat Tree, Weight-Balanced Tree, AA Tree, 2-3 Tree, 2-3-4 Tree, B* Tree, Dancing Tree, Fractal Tree, LSM Tree, SSTable, Memtable, Immutable Memtable, Write-Ahead Log, Commit Log, Redo Log, Undo Log, Binary Log, Relay Log, Error Log, Slow Query Log, General Query Log, Audit Log, Transaction Log, Journal, Checkpoint, Savepoint, Rollback, Commit, Abort, Deadlock, Livelock, Starvation, Race Condition, Mutex, Semaphore, Monitor, Condition Variable, Barrier, Read-Write Lock, Spinlock, Seqlock, RCU, Hazard Pointer, Epoch-Based Reclamation, Garbage Collection, Reference Counting, Mark and Sweep, Copying Collection, Generational Collection, Incremental Collection, Concurrent Collection, Parallel Collection, Stop-the-World, Tri-Color Marking, Write Barrier, Read Barrier, Card Marking, Remembered Set, Nursery, Eden, Survivor Space, Old Generation, Tenured Generation, Permanent Generation, Metaspace, Young Generation, Minor GC, Major GC, Full GC, G1, ZGC, Shenandoah, CMS, Parallel GC, Serial GC, Epsilon, Azul C4, OpenJ9, GraalVM, HotSpot, JRockit, J9, Dalvik, ART, SubstrateVM, Native Image, AOT, JIT, C1, C2, Graal, Truffle, Sulong, Espresso, Mandrel, Quarkus, Micronaut, Helidon, Vert.x, Spring Boot, Spring Framework, Spring Cloud, Spring Security, Spring Data, Spring Batch, Spring Integration, Spring WebFlux, Spring Native, Jakarta EE, Java EE, MicroProfile, WildFly, JBoss, GlassFish, Payara, TomEE, OpenLiberty, WebSphere, WebLogic, Tomcat, Jetty, Undertow, Netty, Grizzly, Vert.x, Akka, Play, Lagom, Finagle, Finatra, Twitter Server, Dropwizard, Jersey, RESTEasy, CXF, Axis, Metro, JAX-WS, JAX-RS, JAXB, JAXP, JMS, JTA, JPA, JDBC, JNDI, JNI, JNA, JNR, Panama, Valhalla, Loom, Amber, Metropolis, Graal, Sumatra, Kulla, Jigsaw, Coin, Lambda, Streams, Optional, CompletableFuture, Flow, Reactive Streams, RxJava, Reactor, Mutiny, SmallRye, Vert.x, Akka Streams, Pekko, ZIO, Cats Effect, Monix, fs2, http4s, Doobie, Slick, Quill, ScalikeJDBC, Anorm, Squeryl, Scalatest, Specs2, ScalaCheck, uTest, MUnit, ZIO Test, Weaver, Discipline, Hedgehog, QuickCheck, PropEr, Hypothesis, fast-check, jqwik, Kotest, JUnit, TestNG, Spock, Geb, Arquillian, Cucumber, JBehave, Serenity, FitNesse, Concordion, Robot Framework, Selenium, WebDriver, Cypress, Playwright, Puppeteer, TestCafe, Nightwatch, Protractor, CodeceptJS, WebdriverIO, Appium, Espresso, XCTest, XCUITest, UI Automator, Robotium, Selendroid, Calabash, Frank, KIF, Detox, Maestro, EarlGrey, Kaspresso, Barista, Kakao, Robolectric, Mockito, EasyMock, JMock, JMockit, PowerMock, WireMock, MockServer, Hoverfly, Mountebank, VCR, Betamax, Polly.js, Nock, Mirage, MSW, Pact, Spring Cloud Contract, Karate, REST Assured, SuperTest, Chakram, Frisby, Dredd, Swagger, OpenAPI, RAML, API Blueprint, GraphQL, gRPC, Thrift, Avro, Protobuf, MessagePack, CBOR, BSON, Ion, Smile, FlatBuffers, Cap'n Proto, Arrow, Parquet, ORC, Avro, SequenceFile, RCFile, TextFile, JSON, CSV, TSV, XML, YAML, TOML, INI, Properties, HOCON, JSON5, JSONC, JSONL, NDJSON, GeoJSON, TopoJSON, KML, GPX, Shapefile, GeoTIFF, NetCDF, HDF5, FITS, DICOM, NIfTI, MINC, ANALYZE, PNG, JPEG, GIF, BMP, TIFF, WebP, AVIF, HEIC, SVG, EPS, PDF, PostScript, PCL, XPS, DjVu, EPUB, MOBI, AZW, FB2, CBZ, CBR, MP3, AAC, OGG, FLAC, WAV, AIFF, WMA, M4A, Opus, Vorbis, MP4, MKV, AVI, MOV, WMV, FLV, WebM, MPEG, H.264, H.265, VP8, VP9, AV1, Theora, Dirac, ProRes, DNxHD, CineForm, REDCODE, ARRIRAW, CinemaDNG, Blackmagic RAW, Canon RAW, Nikon RAW, Sony RAW, Fujifilm RAW, Olympus RAW, Panasonic RAW, Pentax RAW, Leica RAW, DNG, CR2, CR3, NEF, ARW, RAF, ORF, RW2, PEF, RWL, SRW, X3F, 3FR, IIQ, MEF, MOS, MRW, DCR, KDC, ERF, RAW, TIFF, PSD, XCF, AI, CDR, Sketch, Figma, XD, InVision, Zeplin, Abstract, Marvel, Framer, Principle, Flinto, ProtoPie, Axure, Balsamiq, Mockplus, Justinmind, UXPin, Adobe XD, Sketch, Figma, InVision Studio, Framer X, Webflow, Wix, Squarespace, Shopify, BigCommerce, WooCommerce, Magento, PrestaShop, OpenCart, osCommerce, Zen Cart, CS-Cart, X-Cart, Volusion, 3dcart, Big Cartel, Ecwid, Sellfy, Gumroad, Podia, Teachable, Thinkific, Kajabi, Circle, Mighty Networks, Discourse, Flarum, NodeBB, Vanilla Forums, phpBB, vBulletin, XenForo, Simple Machines, MyBB, PunBB, FluxBB, bbPress, BuddyPress, Ning, SocialEngine, phpFox, Oxwall, Elgg, HumHub, Mattermost, Rocket.Chat, Zulip, Element, Matrix, Synapse, Dendrite, Conduit, Revolt, Discord, Slack, Teams, Google Chat, Cisco Webex, Zoom, BlueJeans, GoToMeeting, Join.me, Jitsi, BigBlueButton, OpenVidu, Janus, Mediasoup, Kurento, FreeSWITCH, Asterisk, Kamailio, OpenSIPS, FreePBX, FusionPBX, Issabel, Elastix, Vicidial, Twilio, Plivo, Nexmo, Vonage, Bandwidth, Sinch, MessageBird, Infobip, Clickatell, BulkSMS, TextMagic, Sendinblue, Mailgun, SendGrid, Postmark, Amazon SES, SparkPost, Mailjet, Mandrill, Mailchimp, Constant Contact, Campaign Monitor, AWeber, GetResponse, ConvertKit, Drip, ActiveCampaign, Klaviyo, HubSpot, Marketo, Pardot, Eloqua, Salesforce Marketing Cloud, Adobe Campaign, Oracle Responsys, IBM Watson Campaign Automation, SAP Marketing Cloud, MailerLite, Moosend, SendPulse, Omnisend, Klaviyo, Attentive, Postscript, SMSBump, Yotpo, Okendo, Stamped, Judge.me, Loox, Fera, Reviews.io, Trustpilot, Yelp, Google Reviews, Facebook Reviews, TripAdvisor, Booking.com, Expedia, Airbnb, VRBO, HomeAway, Agoda, Trivago, Kayak, Skyscanner, Momondo, Google Flights, Hopper, Scott's Cheap Flights, Secret Flying, The Flight Deal, Fly4Free, Airfarewatchdog, Skiplagged, Kiwi.com, Ryanair, EasyJet, Southwest, Delta, United, American, JetBlue, Alaska, Spirit, Frontier, Allegiant, Hawaiian, Sun Country, Norwegian, Wizz Air, Vueling, Iberia, Air France, KLM, Lufthansa, Swiss, Austrian, SAS, Finnair, Aeroflot, Turkish, Emirates, Qatar, Etihad, Singapore, Cathay, ANA, JAL, Korean Air, Asiana, China Eastern, China Southern, Air China, EVA Air, Thai, Malaysia, Garuda, Philippine, Vietnam, Jetstar, Scoot, AirAsia, Cebu Pacific, Lion Air, Nok Air, VietJet, IndiGo, SpiceJet, GoAir, Vistara, Air India, SriLankan, Pakistan International, Biman Bangladesh, Nepal Airlines, Druk Air, Bhutan Airlines, MIAT Mongolian, Air Koryo, Uzbekistan Airways, Turkmenistan Airlines, Tajik Air, Kyrgyzstan Air, Air Astana, Azerbaijan Airlines, Georgian Airways, Armenia Aircompany, Ukraine International, Belavia, LOT, Czech, Smartwings, Tarom, Bulgaria Air, Croatia Airlines, Adria, Air Serbia, Montenegro Airlines, Alitalia, ITA Airways, Air Malta, Aegean, Olympic Air, Cyprus Airways, El Al, Arkia, Israir, Saudia, flynas, flyadeal, Gulf Air, Kuwait Airways, Oman Air, Royal Jordanian, Middle East Airlines, EgyptAir, Royal Air Maroc, Tunisair, Air Algérie, Afriqiyah, Libyan Airlines, Ethiopian, Kenya Airways, RwandAir, Air Tanzania, Precision Air, Fastjet, South African, Comair, Kulula, Mango, Airlink, CemAir, Air Botswana, Air Namibia, LAM Mozambique, Air Malawi, Air Zimbabwe, Air Mauritius, Air Seychelles, Air Madagascar, Air Austral, Air Calédonie, Air Tahiti Nui, Fiji Airways, Air Vanuatu, Solomon Airlines, Air Niugini, Air Kiribati, Nauru Airlines, Samoa Airways, Tonga Air, Air Rarotonga, Air Chathams, Air New Zealand, Qantas, Virgin Australia, Jetstar, Rex, Bonza, Link Airways, Alliance Airlines, QantasLink, Virgin Australia Regional, Skytrans, Sharp Airlines, Hinterland Aviation, Regional Express, FlyPelican, Airnorth, Air Timor, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth, Airnorth```bash

Get the filename for the latest cnspec package

https://install.mondoo.com/package/cnspec/linux/arm64/rpm/latest/filename

## 주요 기능

- **다중 소스 수집**: GitHub, GitLab, Bitbucket, 로컬 디렉터리, ZIP 아카이브, Docker 이미지, Hugging Face 모델, 웹사이트, S3 버킷, Git 저장소
- **다중 스캐너 오케스트레이션**: 20개 이상의 보안 스캐너를 병렬로 실행
- **지능형 중복 제거**: 여러 스캐너에 걸쳐 중복 발견 항목 제거
- **CVSS 점수 산정**: 발견 항목에 대한 자동 심각도 점수 산정
- **다중 형식 보고**: SARIF, JSON, HTML, CSV, Markdown, PDF
- **CI/CD 통합**: GitHub Actions, GitLab CI, Jenkins, CircleCI
- **증분 스캔**: 변경된 파일만 스캔
- **사용자 정의 규칙**: Semgrep, CodeQL, 사용자 정의 정규식 패턴
- **SBOM 생성**: SPDX 및 CycloneDX 형식
- **정책 시행**: 사용자 정의 가능한 실패 임계값 및 규칙

## 설치

### 사전 요구 사항

- Python 3.9 이상
- Git
- Docker (선택 사항, 컨테이너 기반 스캐너용)

### pip를 통한 설치

```bash
pip install security-scan-orchestrator

소스에서 설치

git clone https://github.com/example/security-scan-orchestrator.git
cd security-scan-orchestrator
pip install -e .

Docker를 통한 설치

docker pull example/security-scan-orchestrator:latest
docker run --rm -v $(pwd):/scan example/security-scan-orchestrator:latest /scan

빠른 시작

기본 사용법

# 로컬 디렉터리 스캔
security-scan scan ./my-project

# GitHub 저장소 스캔
security-scan scan https://github.com/example/repo

# 특정 스캐너로 스캔
security-scan scan ./my-project --scanners semgrep,trivy,grype

# 사용자 정의 출력 형식으로 스캔
security-scan scan ./my-project --format sarif --output results.sarif

구성 파일

security-scan.yaml 구성 파일을 생성하세요:

version: "1.0"

sources:
  - type: local
    path: ./src
  - type: github
    repo: example/my-project
    branch: main

scanners:
  - name: semgrep
    enabled: true
    rules:
      - p/security-audit
      - p/owasp-top-ten
  - name: trivy
    enabled: true
    severity: HIGH,CRITICAL
  - name: grype
    enabled: true
  - name: gitleaks
    enabled: true

reporting:
  formats:
    - sarif
    - html
    - json
  output_dir: ./reports

policy:
  fail_on:
    - severity: CRITICAL
    - severity: HIGH
      count: 5

CI/CD 통합

GitHub Actions

name: Security Scan
on: [push, pull_request]

jobs:
  scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run Security Scan
        uses: example/security-scan-orchestrator@v1
        with:
          scanners: semgrep,trivy,grype
          format: sarif
          output: results.sarif
      - name: Upload SARIF
        uses: github/codeql-action/upload-sarif@v3
        with:
          sarif_file: results.sarif

GitLab CI

security-scan:
  image: example/security-scan-orchestrator:latest
  script:
    - security-scan scan . --format sarif --output gl-sast-report.json
  artifacts:
    reports:
      sast: gl-sast-report.json

지원되는 스캐너

스캐너유형언어/대상
SemgrepSAST다중 언어
CodeQLSAST다중 언어
BanditSASTPython
GosecSASTGo
BrakemanSASTRuby on Rails
ESLint SecuritySASTJavaScript/TypeScript
TrivySCA/컨테이너다중 언어
GrypeSCA다중 언어
SnykSCA다중 언어
OWASP Dependency-CheckSCAJava/.NET
Gitleaks비밀 정보Git 저장소
TruffleHog비밀 정보Git 저장소
CheckovIaCTerraform/CloudFormation
tfsecIaCTerraform
KICSIaC다중 IaC
Hadolint컨테이너Dockerfile
Dockle컨테이너Docker 이미지
NucleiDAST웹 애플리케이션
ZAPDAST웹 애플리케이션
SyftSBOM다중 언어

고급 사용법

사용자 정의 스캐너 플러그인

from security_scan_orchestrator.plugins import ScannerPlugin

class MyCustomScanner(ScannerPlugin):
    name = "my-scanner"
    supported_languages = ["python", "javascript"]

    def scan(self, target, config):
        # 스캔 로직 구현
        findings = []
        return findings

증분 스캔

# 마지막 스캔 이후 변경된 파일만 스캔
security-scan scan ./my-project --incremental --baseline .scan-baseline.json

병렬 실행

# 최대 8개의 병렬 스캐너로 실행
security-scan scan ./my-project --parallel 8

정책 시행

# CRITICAL 발견 항목이 있으면 실패
security-scan scan ./my-project --fail-on CRITICAL

# 5개 이상의 HIGH 발견 항목이 있으면 실패
security-scan scan ./my-project --fail-on HIGH:5

구성 참조

소스 구성

sources:
  - type: local
    path: ./src
    exclude:
      - "**/node_modules/**"
      - "**/.git/**"

  - type: github
    repo: owner/repo
    branch: main
    token: ${GITHUB_TOKEN}

  - type: docker
    image: myapp:latest

  - type: s3
    bucket: my-bucket
    prefix: artifacts/

스캐너 구성

scanners:
  - name: semgrep
    enabled: true
    timeout: 300
    rules:
      - p/security-audit
    exclude_rules:
      - python.lang.security.audit.exec-detected

  - name: trivy
    enabled: true
    severity: HIGH,CRITICAL
    ignore_unfixed: true

보고 구성

reporting:
  formats:
    - sarif
    - json
    - html
    - csv
    - markdown
    - pdf
  output_dir: ./reports
  include_evidence: true
  group_by: severity

문제 해결

일반적인 문제

스캐너를 찾을 수 없음

# 스캐너 설치 확인
security-scan scanners list

# 누락된 스캐너 설치
security-scan scanners install semgrep trivy grype

메모리 부족 오류

# 병렬 처리 감소
security-scan scan ./my-project --parallel 2

# 스캐너 타임아웃 증가
security-scan scan ./my-project --timeout 600

권한 거부 오류

# Docker 권한 수정
sudo usermod -aG docker $USER
newgrp docker

디버그 모드

# 상세 로깅 활성화
security-scan scan ./my-project --debug --log-level DEBUG

기여하기

기여를 환영합니다! 자세한 내용은 CONTRIBUTING.md를 참조하세요.

개발 환경 설정

git clone https://github.com/example/security-scan-orchestrator.git
cd security-scan-orchestrator
python -m venv venv
source venv/bin/activate
pip install -e ".[dev]"
pre-commit install

테스트 실행

pytest tests/ -v --cov=security_scan_orchestrator

라이선스

이 프로젝트는 Apache License 2.0에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.

감사의 글

지원

Get the version for the latest cnspec package

https://install.mondoo.com/package/cnspec/linux/arm64/rpm/latest/version

## 주요 기능

- **다중 소스 수집**: Shodan, Censys, FOFA, Hunter, Quake, ZoomEye, Netlas, Criminal IP, PublicWWW, Google, Bing, Brave, Yandex, 그리고 사용자 정의 소스
- **다중 쿼리 실행**: 단일 실행에서 여러 검색 쿼리
- **자동 페이지네이션**: 각 소스에서 여러 결과 페이지 수집
- **지능형 중복 제거**: 여러 소스에 걸쳐 중복 결과 제거
- **프록시 지원**: HTTP/SOCKS5 프록시를 통한 요청 라우팅
- **사용자 정의 가능한 출력**: JSON, CSV, 또는 일반 텍스트 형식
- **속도 제어**: 요청 간 지연 설정
- **상세 모드**: 실시간 진행 상황 및 디버그 정보
- **API 키 관리**: 환경 변수 또는 명령줄 인수를 통한 키 관리
- **자동 저장**: 결과를 파일에 자동으로 저장
- **오류 처리**: 강력한 오류 처리 및 재시도 로직```bash
# Get the sha256 for the latest cnspec client
https://install.mondoo.com/package/cnspec/linux/arm64/rpm/latest/sha256

4.3.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.```bash

Download a specific version of cnspec client

https://install.mondoo.com/package/cnspec/linux/arm64/rpm/5.21.1/download

## 2.3.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.```bash
# Get the sha256 for a specific version of cnspec Client
https://install.mondoo.com/package/cnspec/linux/arm64/rpm/5.21.1/sha256

Kubernetes

오퍼레이터를 설치하기 위한 Kubernetes 매니페스트

https://install.mondoo.com/k8s/operator```bash kubectl apply -f https://install.mondoo.com/k8s/operator

### MondooAuditConfig를 구성하기 위한 Kubernetes 매니페스트

[`https://install.mondoo.com/k8s/auditconfig?nodes=true&kubernetesResources=true`](https://install.mondoo.com/k8s/auditconfig?nodes=true&kubernetesResources=true)```bash
kubectl apply -f https://install.mondoo.com/k8s/auditconfig?nodes=true&kubernetesResources=true

모든 릴리스를 둘러보려면 https://releases.mondoo.com을 방문하세요.

참고 자료

설치 스크립트 소스

  • install.sh - mql & cnspec Bash 설치 프로그램
  • download.sh - mql & cnspec Bash 바이너리 다운로더
  • install.ps1 - mql & cnspec PowerShell 설치 프로그램
  • download.ps1 - mql & cnspec PowerShell 바이너리 다운로더

구성 관리

Docker 컨테이너

릴리스

테스트

install.sh

install.sh 스크립트는 POSIX sh와 호환됩니다. 모든 테스트는 저장소 루트에서 make를 통해 실행됩니다.

빠른 린트 (Docker 불필요):```bash

POSIX compliance: shellcheck -s sh, dash -n, shebang check

make test/posix

General shellcheck (all shell scripts)

make test/shellcheck

**Docker 기반 통합 테스트:**

이 테스트는 로컬 `install.sh`를 컨테이너에 마운트하고 해당 배포판의 `/bin/sh`에서 실행합니다:```bash
# Test on Debian/Ubuntu distros (apt)
make test/install_sh/apt

# Test on RHEL/CentOS/Fedora distros (yum)
make test/install_sh/yum

# Test on SUSE (zypper)
make test/install_sh/zypper

# Test via existing multi-stage Dockerfiles (all distros)
make test/install_sh

# Run everything: lint + all Docker tests
make test/install_sh/all

업그레이드 테스트 (cnquery -> mql 마이그레이션):```bash make test/install_sh/upgrade-apt make test/install_sh/upgrade-yum

### download.sh```bash
make test/download_sh

PowerShell```bash

make test/powershell

## 코드 서명 검증

Mondoo는 Microsoft Windows 실행 파일, PowerShell 스크립트, Linux 패키지에 서명하고 Apple macOS 실행 파일에 코드 서명합니다.

- 코드 서명용 공개 인증서: [Installer Repo](https://github.com/mondoohq/installer)의 `public-code-signing.cer`
- 패키지 서명용 공개 GPG 키: <https://releases.mondoo.com/rpm/pubkey.gpg> (<https://releases.mondoo.com/debian/pubkey.gpg>와 동일)

## Microsoft

**참고:** `Get-AuthenticodeSignature` cmdlet은 현재 PowerShell Core에서 사용할 수 없으므로, 이를 실행하려면 Windows 설치 환경이 필요합니다.

`11.66.1` 릴리스 이후, 약 72시간마다 교체되는 단기 코드 서명 인증서를 제공하는 [Azure Trusted Signing](https://learn.microsoft.com/en-us/azure/trusted-signing/overview)을 도입했습니다. 이는 릴리스마다 인증서 지문이 달라져 신뢰할 수 있는 검증 방법으로 사용할 수 없음을 의미합니다.

`mql` 또는 `cnspec` 실행 파일의 무결성을 검증하려면 Microsoft의 `Get-AuthenticodeSignature` PowerShell 명령을 사용하여 **서명 상태**가 `Valid`인지 확인하십시오. 또한 **서명자(주체)**는 `CN=Mondoo, Inc.`이고 **발급자**는 `CN=Microsoft ID Verified CS EOC CA 01, O=Microsoft Corporation, C=US`입니다.```powershell
$file = ".\mondoo_11.66.1_windows_amd64.msi"
(Get-AuthenticodeSignature -FilePath $file).SignerCertificate | Format-List

Subject      : CN="Mondoo, Inc.", O="Mondoo, Inc.", L=Cary, S=North Carolina, C=US
Issuer       : CN=Microsoft ID Verified CS EOC CA 01, O=Microsoft Corporation, C=US
Thumbprint   : 6134EB03311452EFFFA36EFC767F4BEBE29A4107
FriendlyName :
NotBefore    : 05/08/2025 14:08:51
NotAfter     : 08/08/2025 14:08:51
Extensions   : {System.Security.Cryptography.Oid, System.Security.Cryptography.Oid,
               System.Security.Cryptography.Oid, System.Security.Cryptography.Oid...}

Mondoo PowerShell install.ps1 스크립트의 무결성을 확인하려면 Microsoft의 Get-AuthenticodeSignature PowerShell을 사용하여 서명 상태Valid인지 확인하세요.```powershell Get-AuthenticodeSignature .\install.ps1

SignerCertificate Status


6134EB03311452EFFFA36EFC767F4BEBE29A4107 Valid

### 이전 서명자
버전 `11.66.1` 이전에는 Microsoft 릴리스를 서명하기 위해 DigiCert를 사용했습니다. 이들은 `CN=DigiCert Global G3 Code Signing ECC SHA384 2021 CA1, O="DigiCert, Inc.", C=US`에서 발급한 인증서로 서명되었으며, 정적 지문은 `EE97D1E3C6CD96E06C47B0233DD7C6CE2684FA50`이었습니다.

### Apple macOS

`mql` 또는 `cnspec` 실행 파일의 무결성을 확인하려면 Apple의 codesign 유틸리티를 사용하여 TeamIdentifier 필드를 아래의 값과 비교하십시오.```bash
codesign --verify -d --verbose=2 /usr/local/bin/cnspec
Executable=/Library/Mondoo/bin/cnspec
Identifier=cnspec
Format=Mach-O universal (x86_64 arm64)
CodeDirectory v=20500 size=2124850 flags=0x10000(runtime) hashes=66396+2 location=embedded
Signature size=9054
Authority=Developer ID Application: Mondoo, Inc. (W2KUBWKG84)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=25. Apr 2023 at 19:47:53
Info.plist=not bound
TeamIdentifier=W2KUBWKG84
Runtime Version=11.0.0
Sealed Resources=none
Internal requirements count=1 size=168

현재 및 이전 PGP 공개 키

현재 키

Mondoo의 현재 PGP 공개 키는 ID 00E1C42B / 지문 4CE909E26AE7439C39CE7647AC69C65100E1C42B이며 다음과 같습니다:``` -----BEGIN PGP PUBLIC KEY BLOCK-----

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 Ur8NXko6K6rP77odIXjJSA== =9LQ9 -----END PGP PUBLIC KEY BLOCK-----

#### 이전 키

키 ID `00E1C42B` / 지문 `4CE909E26AE7439C39CE7647AC69C65100E1C42B`:```
-----BEGIN PGP PUBLIC KEY BLOCK-----

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
A8Hssvbbfw==
=dMNn
-----END PGP PUBLIC KEY BLOCK-----

Mondoo의 공개 PGP 키는 다음에서 다운로드할 수 있습니다(둘 다 동일합니다):

카테고리