
Wir freuen uns, Ihnen die Veröffentlichung unseres SSPM-Lösung, BigQuery-Integration, zusammen mit mehreren anderen wichtigen Verbesserungen für diesen Monat:
- SSPM-Einführung
- BigQuery-Datenexporte
- Verbesserungen des Benutzeroberflächenerlebnisses
- Aktualisierungen der Richtlinien
- CLI-Verbesserungen
- MQL- und Ressourcen-Updates
- Weitere neue Funktionen
- Weitere Verbesserungen
Mondoo bringt SaaS-Lösung für Security Posture Management (SSPM) auf den Markt
Wir freuen uns, Ihnen unsere SaaS-Lösung Security Posture Management (SSPM) in Kombination mit xSPM-Funktionen und ein offenes öffentliches Register von Richtlinien für SaaS. Unsere SSPM-Lösung bietet Unternehmen die Gewissheit, dass ihre SaaS-Anwendungen sicher und aktuell sind.
Das offene SSPM von Mondoo basiert auf einer vertrauenswürdigen Open-Source-Grundlage und hilft bei der kontinuierlichen Überwachung von Fehlkonfigurationen cloudbasierter SaaS-Anwendungen.

Mondoo Integrationen ohne Agenten für Google Workspace und Okta
Nach agentenlosen Integrationen für GCP, Azure und MS365, wir freuen uns, Ihnen mitteilen zu können, dass Mondoo jetzt agentenloses kontinuierliches Scannen für Google Workspace- und Okta SaaS-Umgebungen anbietet. Da keine Downloads oder Installationen erforderlich sind, können Sie ganz einfach Integrationen mit Dienstkonten oder Tokens einrichten, um Ihre SaaS-Dienste alle 8 Stunden sicher zu scannen.
Mondoo startet Google BigQuery-Datenexporte
Mondoo freut sich, unsere Integration mit Google BigQuery ankündigen zu können, was Ihre Sicherheitsinformationen und Erkenntnisse grundlegend verändert! Durch die Kombination von Mondoo mit Google BigQuery stellen wir ein leistungsstarkes Team zusammen, das Sicherheitsdatenseen erweitert und die Sicherheit mit einer vollständigen Bewertung personalisiert. Das bedeutet, dass Ihre Sicherheitsabteilung potenzielle Sicherheitsvorfälle schnell erkennen und darauf reagieren kann.
Exporte werden genau wie andere Integrationen in Mondoo konfiguriert und laufen täglich, ohne dass Sie etwas in Ihrer Infrastruktur installieren müssen.
Sobald die Daten exportiert wurden, können sie mit anderen Daten in BigQuery kombiniert und mit den Machine-Learning- und BI-Funktionen von BigQuery analysiert werden.
Erfahren Sie mehr in unserem Blogbeitrag.

Verbesserungen des Benutzeroberflächenerlebnisses
Neue Ansichten über Sicherheitslücken
Wir haben unsere Seite mit Sicherheitslücken überarbeitet, damit Sie Sicherheitslücken in Ihrer Umgebung schneller finden, die am schlimmsten anstößigen Ressourcen identifizieren und neu veröffentlichte CVEs untersuchen können. Ein neues Schwachstellenmenü enthält jetzt individuelle Optionen für Advisories, CVEs, Affected Assets und Mondoo Vulnerability Database (VMD).
Auf den Seiten mit Ratschlägen und CVEs können Sie sich mit spezifischen Sicherheitshinweisen und CVEs von Anbietern vertraut machen, die sich auf Ihre Umgebung auswirken. Sie können sehen, wann diese Probleme zum ersten Mal entdeckt wurden, mit dem Patchen fortfahren und weitere Informationen zu den Ratgebern/CVES erhalten, einschließlich der betroffenen Ressourcen.
Auf der neuen Seite „Betroffene Vermögenswerte“ können Sie schnell in Ressourcen eintauchen, bei denen noch nicht gepatchte CVEs oder Anbieterhinweise in Ihrem Bereich vorhanden sind.
Die komplett überarbeitete Mondoo Vulnerability Database (MVD) bietet Ihnen eine einzige Benutzeroberfläche, über die Sie nach neuen Anbieter-CVEs und Ratschlägen suchen können, auch wenn diese nicht auf Ihre Vermögenswerte zutreffen. Neugierig auf das neue CVE, über das Sie online gelesen haben? Schauen Sie nach, um mehr zu erfahren, einschließlich Details zum CVSSv3-Score und zu allen betroffenen Anlagen in Ihrer Umgebung.
Microsoft 365-Assets, die in der Konsole gruppiert sind
Wir haben die Flottenseite verbessert, sodass Microsoft 365-Assets jetzt gruppiert sind, sodass sie einfacher und schneller gefunden werden können.
Finden Sie Räume in großen Organisationen einfacher
Das Auffinden eines bestimmten Assets wurde durch unsere neuen Links zum Öffnen einzelner Organisationen und die alphabetische Sortierung aller Bereiche erleichtert. Dies vereinfacht das Auffinden eines Assets, wenn Sie eine große Anzahl von Organisationen oder Räumen haben.
Loggen Sie sich mit einem Splash ein
Mit einem Spritzer Mondoo-Violett und Orange haben wir unsere alte Anmeldeseite neu gestaltet, um Ihnen ein noch besseres Anmeldeerlebnis zu bieten.
Find and fix the security risks that pose the biggest threat to your business.
Aktualisierungen der Richtlinien
Neue und aktualisierte Kubernetes-Richtlinien
Kubernetes bewegt sich schnell, daher ist es wichtig, sicherzustellen, dass Ihre Sicherheitsrichtlinien den neuesten und besten Sicherheitsempfehlungen entsprechen. Mondoo enthält jetzt die neuesten CIS-Benchmarks für Kubernetes-Distributionen mit aktualisierten Prüf- und Korrekturmaßnahmen sowie neuen Prüfungen für die Kontrollebene in Cloud-Distributionen:
- Neu: CIS Kubernetes V1.24 Benchmark 1.0
- Aktualisiert: CIS Amazon Elastic Kubernetes Service (EKS) Benchmark 1.2
- Aktualisiert: CIS Google Kubernetes Engine (GKE) Benchmark 1.3
- Aktualisiert: CIS Azure Kubernetes Service (AKS) Benchmark 1.2
- Aktualisiert: CIS RedHat OpenShift Container Platform v4 Benchmark 1.1
Die CIS Google Kubernetes Engine (GKE) Benchmark-Richtlinie wurde um die folgenden neuen Prüfungen erweitert und ist jetzt vollständig von CIS zertifiziert:
- 5.1.1 Stellen Sie sicher, dass Image-Schwachstellen mithilfe von GCR Container Analysis oder einem Drittanbieter gescannt werden
- 5.6.4 Stellen Sie sicher, dass Cluster mit aktiviertem privaten Endpunkt und deaktiviertem öffentlichen Zugriff erstellt werden
Neue Microsoft Workstation-Sicherheitsrichtlinie
Unsere brandneue Microsoft Workstation Security Policy enthält Sicherheitsrichtlinien für Workstations, auf denen Windows 10 und 11 ausgeführt wird.
Neue Linux- und Windows-Arbeitsstationsrichtlinien
Wir haben die Richtlinienumgebung für Linux und Microsoft Azure Security by Mondoo aktualisiert, die sofort einsatzbereit ist:
- Aktualisierte Sicherheit für Linux-Workstations
Wir haben die Bootloader-Sicherheit um die Berechtigungen für /boot/loader/loader.conf erweitert, sodass Sie sicher sein können, dass Ihre Startsequenz nicht manipuliert wurde. - Aktualisierte Linux-Sicherheitsrichtlinie
Wir haben die Zuverlässigkeit der auditierten Paketprüfungen in einigen SUSE-Versionen verbessert. - Stellen Sie sicher, dass sich App Services mit Active Directory authentifizieren können
- Stellen Sie sicher, dass die Web-App die neueste Version der TLS-Verschlüsselung nutzt
- Stellen Sie sicher, dass das Ablaufdatum für alle Schlüssel und Geheimnisse in Schlüsseltresoren festgelegt ist
- Stellen Sie sicher, dass Schlüsseltresore wiederhergestellt werden können
- Stellen Sie sicher, dass alle Vorgänge im Schlüsseltresor protokolliert werden
- Stellen Sie sicher, dass Aktivitätsprotokollwarnungen für die Befehle Create, Update und Delete Network Security Group vorhanden sind
- Stellen Sie sicher, dass „Über Alarme mit hohem Schweregrad benachrichtigen“ aktiviert ist
- Stellen Sie sicher, dass die SSL-Verbindung für den PostgreSQL Database Server aktiviert ist
- Stellen Sie sicher, dass die SSL-Verbindung für den MariaDB-Datenbankserver mit der neuesten Version aktiviert ist
- Stellen Sie sicher, dass der öffentliche Netzwerkzugriff für MariaDB deaktiviert ist
- Stellen Sie sicher, dass die SSL-Verbindung für den MySQL-Datenbankserver mit der neuesten Version aktiviert ist
- Stellen Sie sicher, dass der öffentliche Netzwerkzugriff für SQL Server deaktiviert ist oder nur über Firewallregeln möglich ist
- Stellen Sie sicher, dass der standardmäßige öffentliche Netzwerkzugriff für Key Vault deaktiviert ist
- Stellen Sie sicher, dass alle Aktivitäten auf SQL Server geprüft werden
- Stellen Sie sicher, dass die transparente Datenverschlüsselung auf dem SQL Server aktiviert ist
- Stellen Sie sicher, dass Diagnoseeinstellungen für das Abonnement vorhanden sind
- Stellen Sie sicher, dass die Diagnoseeinstellungen wichtige Sicherheitskategorien erfassen
- Stellen Sie sicher, dass der direkte UDP-Zugriff auf Azure Virtual Machines aus dem Internet eingeschränkt ist
Die CIS Microsoft Azure Foundations Benchmark-Richtlinie wurde von 1.5 auf 2.0 aktualisiert. Diese neue Version enthält überarbeitete Prüf- und Fehlerbehebungsschritte, die den neuesten Benutzeroberflächen- und CLI-Erfahrungen von Azure entsprechen.
Erweiterte Google Workspace-Richtlinie
Wir haben unsere Google Workspace Security by Mondoo-Richtlinie mit drei neuen Prüfungen aktualisiert:
- Stellen Sie sicher, dass mehr als ein Benutzer Super-Admin-Berechtigungen hat
- Benutzern sollte kein weniger sicherer App-Zugriff gewährt werden
- Superuser sollten hardwarebasierte Sicherheitsschlüssel verwenden
Richtlinie von Slack Team Security by Mondoo
Mondoo beinhaltet jetzt eine neue Slack Team Security Policy mit sieben Checks, um dein Slack Team (Workspace) zu schützen:
- Stellen Sie sicher, dass zwischen 2 und 4 Benutzer Administratorrechte haben
- Stellen Sie sicher, dass Administratoren die sicherste 2FA-Methode verwenden
- Stellen Sie sicher, dass alle Benutzer 2FA verwenden
- Verwenden Sie klare Benennungen für externe Kanäle
- Stelle sicher, dass es mindestens einen internen Channel pro Workspace gibt
- Stelle sicher, dass es mindestens einen internen Channel im Workspace gibt und es keine externen Mitglieder gibt.
- Stellen Sie sicher, dass Domain-Whitelisting auf internen Kanälen durchgesetzt wird
Neue Verbesserungen der Okta Security-Richtlinien
Wir haben die kontinuierliche Okta-Scanintegration in die Mondoo-Konsole ausgeliefert. Jetzt haben wir eine neue Mondoo-Sicherheitsrichtlinie und Verbesserungen an den Okta-MQL-Ressourcen, sodass Sie Ihre Okta-Umgebung in nur wenigen Minuten sichern können.
Unsere neue Okta-Sicherheitsrichtlinie von Mondoo beinhaltet 11 Prüfungen, mit denen Sie Ihre Okta-Umgebung sofort schützen können:
- Stellen Sie sicher, dass MFA für jeden aktiv ist, der auf die Okta-Plattform zugreift
- Stellen Sie sicher, dass eine begrenzte Sitzungsdauer durchgesetzt wurde
- Stellen Sie sicher, dass die OpenID- oder SAML-Authentifizierung für den App-Zugriff verwendet wird
- Stellen Sie sicher, dass normale Benutzer sich nicht selbst entsperren können
- Stellen Sie sicher, dass Secure Web Authentication (SWA) für wichtige Apps deaktiviert ist
- Stellen Sie sicher, dass die Option „Bei jeder Anmeldung“ für MFA aktiviert ist
- Stellen Sie sicher, dass „Sitzungscookies über Browsersitzungen hinweg beibehalten“ deaktiviert ist
- Stellen Sie sicher, dass die Anzahl der Benutzer mit Super-Admin-Rechten auf 3 begrenzt ist
- Stellen Sie sicher, dass der starke Faktor für MFA verwendet wird
- Stellen Sie sicher, dass MFA für die Verwendung von Passwort/IDP plus einem anderen Authentifizierungsfaktor konfiguriert ist
- Stellen Sie sicher, dass der Faktor „Passwort/IDP plus Weiteres“ für MFA ausgewählt ist
VMware vCenter Incident Response-Paket
- Neues VMware vCenter Incident Response Pack
Sammeln Sie mit diesem neuen Incident Response Pack wichtige Informationen zu Ihren vSphere- und ESXi-Systemen für den Fall eines Sicherheitsvorfalls.
CLI-Verbesserungen
GCP-Organisationen, -Projekte und -Ordner scannen
Mondoo bietet Ihnen die Möglichkeit, Ihre gesamte GCP-Infrastruktur zu überprüfen, von Ihrer gesamten Organisation bis hin zu einem einzigen Ordner:
cnquery scan gcp org 342423 # <-- scan GCP organization
cnquery scan gcp project mondoo-dev # <-- scan GCP project
cnquery scan gcp folder 3421423 # <-- scan GCP folder
Unterstützung für die Verbindung zu IPv6-Hosts
Wir haben sowohl cnquery als auch cnspec aktualisiert, um direkt über SSH oder mithilfe von Ansible-Inventardateien eine Verbindung zu IPv6-Hosts herzustellen.
cnquery shell ssh chris@fd00::20c:30ff:fe8a:9da0 --ask-pass
Enter password:
→ discover related assets for 1 asset(s)
→ resolved assets resolved-assets=1
interactive shellcnquery>
Geben Sie den Pfad für GCP- und Google Workspace-Anmeldeinformationen an
Sie können jetzt den Pfad zu Ihren GCP- oder Google Workspace-Anmeldeinformationen mit einem neuen Flag --credentials angeben. Shell-Umgebungsvariablen haben weiterhin Vorrang bei der Definition des Pfads. Dies ist jedoch eine hervorragende Methode, um den Pfad festzulegen, wenn Sie keine Shell-ENV-Variablen gesetzt haben.
Mit env var
:
GOOGLE_APPLICATION_CREDENTIALS=~/mondoo-dev-1111111.json cnquery shell gcp
Mit --credentials path
:
cnquery shell gcp --credentials-path ~/mondoo-dev-1111111.json
Verbesserte Scanfehlerausgabe
Vorbei sind kryptische Asset-Verbindungsfehlermeldungen beim Scannen mehrerer Assets! Stattdessen sehen Sie jetzt besser formatierte und analysierte Fehlermeldungen, die es einfacher machen, genau herauszufinden, warum Assets nicht gescannt werden können.
Homebrew installiert jetzt cnspec/cnquery zusammen mit Mondoo
Der Mondoo Homebrew-Tap installiert jetzt sowohl cnquery als auch cnspec als Abhängigkeiten, sodass Sie die volle Leistung von Mondoo in einer Installation haben.
MQL- und Ressourcen-Updates
Sichere dein GKE Control Plane
Die Sicherheit von Cloud Kubernetes geht über die Kubelet- und Cluster-Workloads hinaus. Deshalb haben wir dem GKE-Kontrollplan neue Funktionen zur Datenerfassung hinzugefügt. Verwenden Sie diese neuen Daten, um eine Bestandsaufnahme Ihrer GKE-Konfiguration vorzunehmen oder benutzerdefinierte Sicherheitsrichtlinien für Ihr Unternehmen zu schreiben.
- Addons Config
- Verwaltung von NodePools
- Cluster-Netzwerkkonfiguration
- Cluster-WorkloadIdentityConfig
- Richtlinie zur IP-Zuweisung
- Binäre Autorisierung
- Vermächtnis ABAC
- MasterAuth
Cluster-AddonsConfig
cnquery> gcp.project.gke.clusters{ addonsConfig{*} }
gcp.project.gke.clusters: [
0: {
addonsConfig: {
horizontalPodAutoscaling: {
disabled: false
}
id: "gcp.project.gkeService.cluster/12345/addonsConfig"
gkeBackupAgentConfig: {}
gcePersistentDiskCsiDriverConfig: {
enabled: true
}
networkPolicyConfig: {
disabled: false
}
gcpFilestoreCsiDriverConfig: {
enabled: false
}
dnsCacheConfig: {
enabled: false
}
httpLoadBalancing: {
disabled: false
}
kubernetesDashboard: {
disabled: true
}
configConnectorConfig: {}
cloudRunConfig: {}
}
}
]
Verwaltung von Cluster-Knotenpools
cnquery> gcp.project.gke.clusters{ nodePools{ management } }
gcp.project.gke.clusters: [
0: {
nodePools: [
0: {
management: {
autoRepair: true
autoUpgrade: true
upgradeOptions: {}
}
}
1: {
management: {
autoRepair: true
autoUpgrade: true
upgradeOptions: {}
}
}
]
}
]
Cluster-Netzwerkkonfiguration
cnquery> gcp.project.gke.clusters{ networkConfig{*} }
gcp.project.gke.clusters: [
0: {
networkConfig: {
enableL4IlbSubsetting: false
id: "gcp.project.gkeService.cluster/12345/networkConfig"
dnsConfig: {}
serviceExternalIpsConfig: {
enabled: false
}
subnetworkPath: "projects/project-1/regions/us-central1/subnetworks/mondoo-gke-cluster-2-subnet"
privateIpv6GoogleAccess: "PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED"
datapathProvider: "DATAPATH_PROVIDER_UNSPECIFIED"
networkPath: "projects/project-1/global/networks/mondoo-gke-cluster-2"
subnetwork: gcp.project.computeService.subnetwork name="mondoo-gke-cluster-2-subnet"
enableIntraNodeVisibility: false
defaultSnatStatus: {
disabled: false
}
network: gcp.project.computeService.network name="mondoo-gke-cluster-2"
}
}
]
Cluster-WorkloadIdentityConfig
cnquery> gcp.project.gke.clusters{ workloadIdentityConfig }
gcp.project.gke.clusters: [
0: {
workloadIdentityConfig: {
workloadPool: "mondoo-edge.svc.id.goog"
}
}
]
Richtlinie zur Cluster-IP-Zuweisung
cnquery> gcp.project.gke.clusters{ ipAllocationPolicy{*} }
gcp.project.gke.clusters: [
0: {
ipAllocationPolicy: {
id: "gcp.project.gkeService.cluster/12345/ipAllocationPolicy"
stackType: "IPV4"
tpuIpv4CidrBlock: ""
useRoutes: false
createSubnetwork: false
nodeIpv4CidrBlock: ""
subnetworkName: ""
servicesSecondaryRangeName: "cluster-2-ip-range-svc"
useIpAliases: true
clusterSecondaryRangeName: "cluster-ip-range-pods"
clusterIpv4CidrBlock: "10.20.0.0/16"
ipv6AccessType: "IPV6_ACCESS_TYPE_UNSPECIFIED"
servicesIpv4CidrBlock: "10.30.0.0/16"
}
}
]
Cluster-Binärautorisierung
cnquery> gcp.project.gke.clusters{ binaryAuthorization }
gcp.project.gke.clusters: [
0: {
binaryAuthorization: {
enabled: false
evaluationMode: "EVALUATION_MODE_UNSPECIFIED"
}
}
]
Clustervermächtnis ABAC
cnquery> gcp.project.gke.clusters{ legacyAbac }
gcp.project.gke.clusters: [
0: {
legacyAbac: {
enabled: false
}
}
]
Cluster-MasterAuth
cnquery> gcp.project.gke.clusters{ masterAuth }
gcp.project.gke.clusters: [
0: {
masterAuth: {
clientCertificate: ""
clientCertificateConfig: {}
clientKey: ""
clusterCaCertificate: "***"
password: ""
username: ""
}
}
]
Identifizieren Sie öffentliche IPs in Azure
Die Identifizierung öffentlich zugänglicher Ressourcen ist für den Schutz Ihrer Cloud-Infrastruktur von entscheidender Bedeutung.
Verwenden Sie die neuen PublicIpAddresss-Daten, die in azure.subscription.computeservice.vm und azure.subscription.networkservice verfügbar sind, um schnell Ressourcen zu identifizieren, die möglicherweise fälschlicherweise öffentlich zugänglich gemacht wurden.
Identifizieren Sie alle öffentlichen IP-Adressen in einem Abonnement:
cnquery> azure.subscription.network.publicIpAddresses{*}
azure.subscription.network.publicIpAddresses: [
0: {
name: "super-cool-public-ip"
id: "/subscriptions//resourceGroups//providers/Microsoft.Network/publicIPAddresses/"
location: "uksouth"
tags: {}
ipAddress: "255.255.255.255"
}
]
Identifizieren Sie öffentliche IP-Adressen auf bestimmten VMs:
cnquery> azure.subscription.compute.vms{publicIpAddresses{*}}
azure.subscription.compute.vms: [
0: {
publicIpAddresses: [
0: {
name: "super-cool-public-ip"
id: "/subscriptions//resourceGroups//providers/Microsoft.Network/publicIPAddresses/"
location: "uksouth"
tags: {}
ipAddress: "255.255.255.255"
}
]
name: "vm-name"
}
]
Neue Azure-Ressourcen
cnspec und cnquery werden jetzt mit zusätzlichen Azure-Ressourcen ausgeliefert, sodass Sie alle Aspekte Ihrer Azure-Infrastruktur inventarisieren und sichern können:
Azure.Subscription.Monitor.ApplicationInsights
Mit dieser neuen Azure-Ressource können Sie jede Instanz von Application Insights abfragen.
cnquery> azure.subscription.monitor.applicationInsights
azure.subscription.monitor.applicationInsights: [
0: azure.subscription.monitorService.applicationinsight id = /subscriptions/f1a2873a-6b27-4097-aa7c-3df51f103e96/resourceGroups/cloud-shell-storage-westeurope/providers/microsoft.insights/components/app-insight-test
]
cnquery> azure.subscription.monitor.applicationInsights {name kind location}
azure.subscription.monitor.applicationInsights: [
0: {
name: "app-insight-test"
location: "centralus"
kind: "web"
}
]
Azure.Subscription.Network.BastionHost
Mit dieser neuen Azure-Ressource können Sie alle Bastion-Hosts abfragen, einschließlich ihrer Namen, Standorte und Produkt-SKUs.
cnquery> azure.subscription.network.bastionHosts
azure.subscription.network.bastionHosts: [
0: azure.subscription.networkService.bastionHost id="/subscriptions/f1a2873a-6b27-4097-aa7c-3df51f103e96/resourceGroups/cloud-shell-storage-westeurope/providers/Microsoft.Network/bastionHosts/test-bastion-host" name="test-bastion-host" location="uksouth"
]
cnquery> azure.subscription.network.bastionHosts{name location sku}
azure.subscription.network.bastionHosts: [
0: {
name: "test-bastion-host"
sku: {
name: "Standard"
}
location: "uksouth"
}
]
azure.subscription.sql.VirtualNetworkRule
Mit dieser neuen Azure-Ressource können Sie die Regeln für virtuelle Netzwerke auf einem SQL-Server abfragen. Sie ähnelt den Ressourcen für Firewallregeln.
cnquery> azure.sql.servers[1].virtualNetworkRules{*}
azure.sql.servers[1].virtualNetworkRules: [
0: {
id: "/subscriptions/f1a2873a-6b27-4097-aa7c-3df51f103e96/resourceGroups/cloud-shell-storage-westeurope/providers/Microsoft.Sql/servers/sql-server-mondoo-test/virtualNetworkRules/newVnetRule1"
properties: {
id: "/subscriptions/f1a2873a-6b27-4097-aa7c-3df51f103e96/resourceGroups/cloud-shell-storage-westeurope/providers/Microsoft.Sql/servers/sql-server-mondoo-test/virtualNetworkRules/newVnetRule1"
name: "newVnetRule1"
properties: {
ignoreMissingVnetServiceEndpoint: false
state: "Ready"
virtualNetworkSubnetId: "/subscriptions/f1a2873a-6b27-4097-aa7c-3df51f103e96/resourceGroups/DefaultResourceGroup-CUS/providers/Microsoft.Network/virtualNetworks/prelav-test-VN/subnets/default"
}
type: "Microsoft.Sql/servers/virtualNetworkRules"
}
virtualNetworkSubnetId: "/subscriptions/f1a2873a-6b27-4097-aa7c-3df51f103e96/resourceGroups/DefaultResourceGroup-CUS/providers/Microsoft.Network/virtualNetworks/prelav-test-VN/subnets/default"
type: "Microsoft.Sql/servers/virtualNetworkRules"
name: "newVnetRule1"
}
]
azure.subscription.cosmosDB
Mit dieser neuen Azure-Ressource können Sie den Azure Cosmos DB-Dienst abfragen.
Datenbanken abfragen:
cnquery> azure.subscription.cosmosDb.accounts
azure.subscription.cosmosDb.accounts: [
0: azure.subscription.cosmosdbService.account name="test-cosmosdb-mondoo" location="West US"
1: azure.subscription.cosmosdbService.account name="test-mondoo-cassandra" location="West US"
]
Schreiben Sie Assertionen in die sichere Konfiguration:
cnspec> azure.cosmosDb.accounts{properties['isVirtualNetworkFilterEnabled'] name}
azure.cosmosDb.accounts: [
0: {
properties[isVirtualNetworkFilterEnabled]: true
name: "test-cosmosdb-mondoo"
}
1: {
properties[isVirtualNetworkFilterEnabled]: true
name: "test-mondoo-cassandra"
}
]
Mit Google Workspace verbundene Apps abfragen
Sie können jetzt mit Google Workspace verbundene Apps mit einem neuen abrufen Google Workspace.Verbundene Apps
MQL-Ressource:
googleworkspace.connectedApps { name clientid }
googleworkspace.connectedApps: [
0: {
clientId: "11234434534-abcdefg.apps.googleusercontent.com"
name: "Slack"
}
...
]
Sie können diese Daten auch filtern, um bestimmte verbundene Apps zurückzugeben:
googleworkspace.connectedApps.where( name == /Slack/) { * }
googleworkspace.connectedApps.where: [
0: {
users: [
0: googleworkspace.user primaryEmail="user1@example.com"
]
tokens: [
0: googleworkspace.token displayText="Slack"
]
scopes: [
0: "https://www.googleapis.com/auth/activity"
1: "https://www.googleapis.com/auth/drive.activity"
2: "https://www.googleapis.com/auth/userinfo.profile"
3: "https://www.googleapis.com/auth/userinfo.email"
4: "openid"
5: "https://www.googleapis.com/auth/calendar.readonly"
6: "https://www.googleapis.com/auth/drive"
7: "https://www.googleapis.com/auth/calendar.events"
]
name: "Slack"
clientId: "11234434534-abcdefg.apps.googleusercontent.com"
}
1: {
users: [
0: googleworkspace.user primaryEmail="user1@example.com"
1: googleworkspace.user primaryEmail="user2@example.com"
2: googleworkspace.user primaryEmail="user3@example.com"
3: googleworkspace.user primaryEmail="user4@example.com"
]
tokens: [
0: googleworkspace.token displayText="Slack"
1: googleworkspace.token displayText="Slack"
2: googleworkspace.token displayText="Slack"
3: googleworkspace.token displayText="Slack"
]
scopes: [
0: "https://www.googleapis.com/auth/userinfo.profile"
1: "https://www.googleapis.com/auth/userinfo.email"
2: "openid"
]
name: "Slack"
clientId: "3321342421-abcdefg.apps.googleusercontent.com"
}
2: {
users: [
0: googleworkspace.user primaryEmail="user1@example.com"
1: googleworkspace.user primaryEmail="user2@example.com"
2: googleworkspace.user primaryEmail="user3@example.com"
3: googleworkspace.user primaryEmail="user4@example.com"
]
tokens: [
0: googleworkspace.token displayText="Slack"
1: googleworkspace.token displayText="Slack"
2: googleworkspace.token displayText="Slack"
3: googleworkspace.token displayText="Slack"
]
scopes: [
0: "https://www.googleapis.com/auth/userinfo.profile"
1: "https://www.googleapis.com/auth/userinfo.email"
2: "openid"
]
name: "Slack"
clientId: "6060606090-abcdefg.apps.googleusercontent.com"
}
]
Inspektion von Python-Paketen
Veraltete Pakete enden nicht beim Betriebssystem, daher haben wir unsere erste Anwendungspaketressource mit der MQL-Ressource python.packages eingeführt. Diese neue Ressource erkennt Pakete automatisch auf macOS, Windows und Linux an den folgenden Orten:
- /usr/local/lib/python/ *
- /usr/local/lib64/python/ *
- /usr/lib/python/ *
- /usr/lib64/python/ *
- /opt/homebrew/lib/python/ *
- C: /Python/*
- /system/library/frameworks/python.framework/Versionen
- /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versionen
Jedes Paket gibt Daten zurück, die diesem Pytz-Paket ähnlich sind:
cnquery> python.packages[0]{ * }
python.packages[0]: {
author: "Armin Ronacher"
name: "Babel"
dependencies: [
0: python.package name="pytz" version="2022.7.1"
]
summary: "Internationalization utilities"
id: "/usr/lib/python3.11/site-packages/Babel-2.10.3-py3.11.egg-info/PKG-INFO"
file: file path="/usr/lib/python3.11/site-packages/Babel-2.10.3-py3.11.egg-info/PKG-INFO" size=1283 permissions.string="-rw-r--r--"
license: "BSD"
version: "2.10.3"
}
Um ein bestimmtes Paket auf der Festplatte abzufragen, können Sie den Pfad zur METADATEN-Datei angeben:
cnquery> python.package("/home/jdiaz/.local/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/METADATA"){ * }
python.package: {
version: "1.3.17"
summary: "Command line FTP server tool designed for performance and ease of use."
file: file path="/home/jdiaz/.local/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/METADATA" size=1186 permissions.string="-rw-r--r--"
author: "Vadym Stupakov"
dependencies: data is not a map to auto-expand
id: "/home/jdiaz/.local/lib/python3.11/site-packages/python_ftp_server-1.3.17.dist-info/METADATA"
license: "MIT"
name: "python-ftp-server"
}
Dies ist die erste von vielen neuen Ressourcen für Anwendungspakete, die wir vorstellen werden und mit denen Sie Ihre Anwendungsabhängigkeiten überprüfen und sichern können. Wenn Sie bestimmte Anwendungspaketsysteme haben, die Sie in cnquery und cnspec sehen möchten, teilen Sie uns dies bitte auf unserer GitHub-Diskussionsseite.
Erweiterte Unterstützung für AWS ECS in MQL
In dieser Version haben wir die AWS ECS-Unterstützung von MQL um neue Daten und Ressourcen erheblich erweitert:
aws.ecs.task
enthält jetzt PlatformVersion-Daten.aws.ecs.container
enthält jetzt PlatformVersion-, RuntimeID- und ContainerName-Daten.aws.ecs.cluster
enthält jetzt ContainerInstances-Daten.aws.ecs.image
enthält jetzt URI-Daten, die den URI des Bild-Repositorys offenlegen.- Neu
aws.ecs.instance
Ressource.
Weitere AWS ElasticCache-Daten in MQL
Wir haben aws.elasticache.clusters zugunsten einer neuen Ressource aws.elasticache.cacheClusters verworfen, die Cluster-Daten in einem einfacher zu verwendenden Format präsentiert.
cnquery> aws.elasticache.cacheClusters { * }
aws.elasticache.cacheClusters: [
0: {
arn: "arn:aws:elasticache:us-east-1:ID:cluster:vjtest-001"
notificationConfiguration: ""
cacheSubnetGroupName: "vjtest"
atRestEncryptionEnabled: false
logDeliveryConfigurations: []
ipDiscovery: "ipv4"
authTokenLastModifiedDate: null
numCacheNodes: 1
engine: "redis"
networkType: "ipv4"
region: "us-east-1"
securityGroups: []
transitEncryptionMode: ""
cacheNodeType: "cache.t3.medium"
engineVersion: "7.0.7"
preferredAvailabilityZone: "us-east-1c"
transitEncryptionEnabled: false
cacheClusterId: "vjtest-001"
authTokenEnabled: false
snapshotRetentionLimit: 0
Varianten der Richtlinie
Manchmal unterscheiden sich Abfragen geringfügig, wenn sie in verschiedenen Umgebungen ausgeführt werden. Das kann passieren mit:
- Stark verwandte Abfragen, wie Betriebssystemprüfungen, die auf physischen Servern anders ausgeführt werden als auf Containern
- Abfragen, die auf völlig unterschiedlichen Zielen auf ähnliche Dinge testen
Schauen wir uns das letztere Beispiel an:
queries:
- uid: no-public-ip
title: No public IPs are allowed on internal instances
variants:
- uid: no-public-ip-aws
- uid: no-public-ip-terraform-aws
- uid: no-public-ip-aws
mql: |
aws.ec2.instances.all( publicIp == "" )
filters: |
asset.platform == "aws"
- uid: no-public-ip-terraform-aws
mql: |
terraform.resources.
where( nameLabel == "aws_instance" ).
all( arguments['associate_public_ip_address'] != true )
filters: |
asset.platform == "terraform-hcl"
Diese Abfrage stellt sicher, dass „Auf internen Instanzen keine öffentlichen IPs zulässig sind“. Diese Abfrage wird auf zwei verschiedene Arten implementiert: eine für die AWS-API (no-public-ip-aws) und eine für Terraform (no-public-ip-terraform-aws). Sie können diese Prüfung sowohl für AWS-Konten als auch für Terraform-Dateien durchführen und erhalten konsistente Berichte.
Darüber hinaus befasst sich dies mit einem häufigen Anwendungsfall, bei dem es eine Trennung zwischen Dingen, die in der Entwicklung passieren, und Dingen, die in der Produktion ablaufen, gibt. Wenn Sie separate Tools in verschiedenen Umgebungen oder sogar separate Richtlinien verwenden, mussten Sie zuvor Ausnahmen für bestimmte Prüfungen an beiden Enden des Lebenszyklus verwalten. Bei Varianten können Sie stattdessen Ausnahmen für die kombinierte Prüfung definieren und so sicherstellen, dass sie zwischen Entwicklung und Produktion einheitlich behandelt werden.
Neue Okta MQL-Verbesserungen
Wenn Sie Ihre eigenen Geschäftsrichtlinien für Okta definieren möchten, haben Sie Glück. Wir haben unsere Okta MQL-Richtlinien verbessert, sodass Sie Zugriff auf weitere Informationen zu Ihrer Umgebung erhalten:
- Erfassen Sie okta.role und user.roles, sodass Sie abfragen können, welche Rollen einem Benutzer zugewiesen sind
- Regeln für Zugriffsrichtlinien sammeln
- Korrigieren Sie das Analysieren von Okta.TrustedOrigin.Scopes
Scannen im Kubernetes-Namespace-Bereich
Sie können jetzt einen einzelnen Namespace in einem Kubernetes-Cluster scannen, auch wenn Sie keinen Zugriff auf Ressourcen außerhalb dieses Namespaces haben. Auf diese Weise können Sie alle Workloads in Ihrem Namespace scannen und die Asset-Beziehungen unter dem Namespace in der Mondoo-Konsole durchsuchen.
Beispiel für eine cnquery-Abfrage für einen einzelnen Namespace:
./cnquery run k8s --namespaces default -c "k8s.pods" --discover namespaces
→ loaded configuration from /Users/ivanmilchev/.config/mondoo/mondoo.yml using source default
→ discover related assets for 1 asset(s)
→ resolved assets resolved-assets=1
k8s.pods: [
0: k8s.pod namespace="default" name="nginx" created=2023-03-14 16:59:07 +0100 CET
]
etcd-Datenbankverschlüsselungsstatus in der Ressource gcp.project.gke.cluster
Die Ressource gcp.project.gke.cluster enthält jetzt Informationen zur Verschlüsselung der etcd-Datenbank.
cnquery> gcp.project.gke.clusters[0]{databaseEncryption}
gcp.project.gke.clusters[0]: {
databaseEncryption: {
keyName: "projects/***/locations/us-central1/keyRings/***/cryptoKeys/***"
state: "ENCRYPTED"
}
2FA-Typ in die Ressource slack.users
Die Ressource slack.users enthält jetzt die Art der Zwei-Faktor-Authentifizierung (2FA), die von Benutzern verwendet wird. Auf diese Weise kannst du abfragen, welche Benutzer für unsichere SMS im Vergleich zu sichereren App-basierten 2FA konfiguriert sind.
cnquery> slack.users.where( has2FA == true ){ has2FA twoFactorType }
slack.users.where.list: [
0: {
twoFactorType: "app"
has2FA: true
}
]
Weitere neue Funktionen
cnspec-Container von Red Hat Universal Base Image auf Docker Hub
Wir veröffentlichen jetzt cnspec- und cnquery-Container, die auf Red Hat Universal Base Image basieren, auf Docker Hub. Diese Container eignen sich perfekt für die Ausführung von cnspec und cnquery in OpenShift-Clustern. Sie finden diese Bilder zusammen mit unseren Standardbildern aus Alpine unter https://hub.docker.com/r/mondoo/cnspec und https://hub.docker.com/r/mondoo/cnquery.
Kleinere Installationsgröße
Das Mondoo-Paket wurde optimiert, um den Speicherplatz auf der Festplatte zu reduzieren, der von den Befehlen Mondoo, cnquery und cnspec beansprucht wird. Die alte Mondoo-CLI ist jetzt auf allen Plattformen um 200 MB kleiner. Darüber hinaus sind die CLIs cnquery und cnspec auf Windows-Systemen jeweils ~150 MB kleiner.
Alle macOS-Binärdateien sind jetzt signiert und notariell beglaubigt
Wir signieren und notariell alle Binärdateien für macOS, nicht nur die, die mit der Mondoo-.pkg-Datei installiert wurden. Das heißt, egal wo Sie Mondoo-Pakete verwenden, Sie haben immer eine vollständig gesicherte Binärdatei, die alle Sicherheitsanforderungen von Apple erfüllt.
Richten Sie einen Proxyserver für die gesamte Kommunikation mit der Mondoo-Plattform ein
Problem: Es gab keine Möglichkeit, die Kommunikation von CNSPEC zu Mondoo und von CNQuery zu Mondoo vom Verkehr zu isolieren, der nicht von Mondoo stammt.
Lösung: Ein neuer --api-proxy
Mit dem Konfigurations-Flag können Sie den Proxyserver für API-Aufrufe der Mondoo-Plattform angeben, wenn Sie ein Asset mit dem Befehl cnspec login registrieren. Sie können das auch manuell hinzufügen API-Proxy
Konfigurationsoption in deiner mondoo.yml-Konfiguration.
Weniger API-Aufrufe in der AWS Lambda-Integration
Wir haben unsere Lambda-basierte AWS-Integration optimiert, um die Anzahl der API-Aufrufe durch die Integration zu reduzieren und so die Lambda-Kosten zu senken. Keine Sorge. Sie erhalten immer noch dieselben großartigen AWS-Ressourcenscans, aber jetzt mit zusätzlicher Effizienz.
🐛 Weitere Verbesserungen
- Wir erkennen jetzt Dienste auf Kali Linux korrekt.
- Die Mondoo-EOL-Richtlinie wird jetzt auf FreeBSD-Hosts ausgeführt.
- cnquery run und cnspec run laden jetzt korrekt die Mondoo-Plattformkonfiguration, um EOL- und Paketschwachstellenabfragen zu unterstützen.
- Korrigiert das Parsen von Zeitstempeln in Google Workspace.
- Korrigieren Sie die Setup-Anweisungen für Windows auf der Integrationsseite so, dass sie korrekt kopieren/einfügen.
- Füge fehlende Breadcrumbs zur Seite „Sicherheitslücken“ hinzu.
- Fügen Sie den Einrichtungsseiten für GCP und Okta Integration eine Formularvalidierung hinzu.
- Melden Sie keinen erfolgreichen Schwachstellen-Scan für ein Asset, wenn keine Pakete entdeckt wurden.
- Korrigiere falsche Anführungszeichen im GitLab Docker-Scanning-Beispiel
- Zeigen Sie nicht die Stunde an, wenn Sie ein EOL-Datum für ein Asset melden.
- Korrigieren Sie die falsche GCP-Projekt-ID-Validierung auf der Einrichtungsseite der GCP-Integration.
- Wenn eine Integration noch nie gescannt wurde, zeigen Sie Nie statt 01.01.0001 an.
- Aktualisieren Sie die Links auf den Integrationsseiten, um zu einer bestimmten Dokumentation zu gelangen.
- Verwenden Sie das neueste Microsoft 365-Logo auf der Integrationsseite.
- Verbessern Sie die Leistung beim Scannen von Container-Images im Mondoo Kubernetes Operator.
- Aktualisieren Sie die Tabs auf den Asset-Seiten, damit sie der neuen Navigations-UX entsprechen.
- Fügen Sie das fehlende Okta-Token-Feld zur Einrichtungsseite der Okta-Integration hinzu.
- Link zur neuen CloudShell-Dokumentation im Einrichtungsassistenten für die AWS-Integration.
- Korrigieren Sie die Links zur GCP-Konsole auf der Einrichtungsseite der GCP-Integration so, dass sie korrekt geladen werden, wenn Sie von der GCP abgemeldet sind.
- Geben Sie UDP oder TCP in der Ressource ports.listening an, damit bestimmte Protokolle statt nur ipv4/ipv6 abgefragt werden können.
- Beheben Sie Fehler beim Scannen von Container-Registrierungen.
- Kennzeichnen Sie Container-Image-Assets mit allen erkannten Tags, wenn Sie Container-Registrierungen scannen.
- Versagen Sie nicht bei einem kompletten AWS-Kontoscan, wenn für einen einzelnen Service eine Regionsbeschränkung festgelegt ist.
- Besser scheitern, wenn ein Kubernetes-Namespace aufgrund von Zugriffsfehlern nicht gescannt werden kann.
- Behebt den in 8.0 eingeführten Fehler im cnspec-Bundle-Format.
- Aktualisieren Sie die Fortschrittsleiste des Scannens, um deutlicher zu machen, wann ein Asset nicht bewertet wurde.
- Korrigieren Sie die Textfarbe für das Textfeld der Konsolen-Anmeldeseite auf Schwarz.
- Korrigieren Sie die Links zur Benutzervereinbarung und Datenschutzrichtlinie auf der Konsolen-Anmeldeseite so, dass sie in neuen Fenstern geladen werden.
- Zeigen Sie auf der Flottenseite nicht 0 Andere für Azure-Assets an.
- Korrigieren Sie die außermittigen Spinner-Loader auf den Integrationsseiten.
- Benennen Sie „Aktuelle Hinweise“ auf der Übersichtsseite in „Top Advisories“ um, damit sie besser zu dem passen, was im Widget angezeigt wird.
- Zeigen Sie die genauen Abrechnungsplandaten in der Konsole an.
- Verbessern Sie das Rendern auf der Willkommensseite auf kleinen Displays.
- Behebung des Fehlers, wenn die Befehlsspalte ps keine Daten enthält, und warnt, wenn Daten sonst nicht korrekt analysiert werden können.
- Beheben Sie Fehler beim Einstellen der AWS-Integration.
- Korrigieren Sie das Analysieren von Richtlinien mit einer Reihe von Abhilfemaßnahmen anstelle von einfachen Zeichenketten.
- Verbessern Sie die Audit-/Behebungsschritte in den Sicherheitsrichtlinien von Mondoo.
- Aktualisieren Sie die Befehle cnspec bundle lint und cnspec bundle fmt, um die Mondoo-Richtlinienstruktur ab Version 8.0 zu unterstützen.
- Aktualisieren Sie die Abfrage Ensure, dass Ereignisse, die die obligatorischen Zugriffskontrollen des Systems ändern, in der Richtlinie Linux Security by Mondoo so, dass sie entweder SELinux oder AppArmor unterstützen. Danke @micheelengronne!
- Verbessern Sie die Zuverlässigkeit von Abfragen in der Okta Organization Security by Mondoo-Richtlinie.
- Ersetzen Sie in einigen Anweisungen zur Richtlinienüberprüfung die Mondoo-Shell durch die cnspec-Shell.
- Verbessern Sie die Abhilfemaßnahmen in den Azure-, Google- und AWS-Richtlinien von Mondoo.
- Korrigieren Sie das cnspec-Paket fmt, das scoring_system bei der Konvertierung zwischen den Formaten 7.x und 8.x aus den Richtlinien entfernt hat.
- Korrigieren Sie, dass cnspec bundle fmt eingegebene Dokumente nicht richtig analysiert.
- Wenn Sie Kubernetes-Manifeste scannen, die Ressourcen ohne Namespace enthalten, erstellen Sie kein unbenanntes Namespace-Asset als übergeordnetes Objekt.
- Beheben Sie Fehler beim Abfragen von Azure Cloud Defender-Sicherheitskontakten, wenn keine vorhanden sind.
- Fehler beim Ausführen der github.organization {*} -Abfrage behoben.
- Korrigieren Sie die Berechnung der aggregierten CVSS-Scores in der Ressource platform.advisories.
- Korrigieren Sie einige CIS Kubernetes-Richtlinien, die im Policy Hub nicht angezeigt werden.
- Verbessern Sie die Ad-hoc-Scananweisungen in den AWS/Azure/GCP-Richtlinien.
- Aktualisieren Sie die CIS Azure AKS v.1.2 Pod Security Pod Policy Checks so, dass sie nur auf Kubernetes < 1.25 ausgeführt werden.
- Aktualisieren Sie die Linux Security by Mondoo-Richtlinie. Stellen Sie sicher, dass Ereignisse, die die obligatorischen Zugriffskontrollen des Systems ändern, erfasst werden, erfasst werden, um einen abschließenden Schrägstrich in Verzeichnissen zu erwarten. Danke @micheelengronne!
- Entfernen Sie die Status „Wird ausgeführt“ und „Unbekannt“, die in den Asset-Namen in der Konsole angezeigt wurden und in denen der Asset-Scan-Status nicht konsistent oder korrekt angezeigt wurde.
- Fügen Sie fehlende Impact-Scores zur Windows Security by Mondoo-Richtlinie hinzu.
- Korrigieren Sie, dass der Kubernetes-Operator neu bereitgestellte Workloads in einem Cluster nicht sofort scannt.
- Aktualisieren Sie den Wortlaut auf den Azure- und MS365-Integrationsseiten, um klarer zu machen, dass die PEM-Datei sowohl das Zertifikat als auch den privaten Schlüssel enthalten muss.