AWS - CloudWatch Enum

Unterstützen Sie HackTricks

CloudWatch

CloudWatch sammelt Überwachungs- und Betriebs-daten in Form von Protokollen/Metriken/Ereignissen und bietet eine einheitliche Ansicht der AWS-Ressourcen, Anwendungen und Dienste. CloudWatch Log-Ereignisse haben eine Größenbeschränkung von 256 KB pro Protokollzeile. Es kann Hochauflösungsalarme einstellen, Protokolle und Metriken nebeneinander visualisieren, automatisierte Aktionen durchführen, Probleme beheben und Erkenntnisse gewinnen, um Anwendungen zu optimieren.

Sie können beispielsweise Protokolle von CloudTrail überwachen. Überwachte Ereignisse:

Schlüsselkonzepte

Namespaces

Ein Namespace ist ein Container für CloudWatch-Metriken. Er hilft, Metriken zu kategorisieren und zu isolieren, was die Verwaltung und Analyse erleichtert.

  • Beispiele: AWS/EC2 für EC2-bezogene Metriken, AWS/RDS für RDS-Metriken.

Metriken

Metriken sind Datenpunkte, die über die Zeit gesammelt werden und die Leistung oder Nutzung von AWS-Ressourcen darstellen. Metriken können von AWS-Diensten, benutzerdefinierten Anwendungen oder Drittanbieter-Integrationen gesammelt werden.

  • Beispiel: CPUUtilization, NetworkIn, DiskReadOps.

Dimensionen

Dimensionen sind Schlüssel-Wert-Paare, die Teil von Metriken sind. Sie helfen, eine Metrik eindeutig zu identifizieren und bieten zusätzlichen Kontext, wobei 30 die maximale Anzahl von Dimensionen ist, die mit einer Metrik verknüpft werden können. Dimensionen ermöglichen auch das Filtern und Aggregieren von Metriken basierend auf bestimmten Attributen.

  • Beispiel: Für EC2-Instanzen könnten Dimensionen InstanceId, InstanceType und AvailabilityZone umfassen.

Statistiken

Statistiken sind mathematische Berechnungen, die auf Metrikdaten durchgeführt werden, um sie über die Zeit zusammenzufassen. Zu den gängigen Statistiken gehören Durchschnitt, Summe, Minimum, Maximum und SampleCount.

  • Beispiel: Berechnung der durchschnittlichen CPU-Auslastung über einen Zeitraum von einer Stunde.

Einheiten

Einheiten sind der Messungstyp, der mit einer Metrik verbunden ist. Einheiten helfen, Kontext und Bedeutung zu den Metrikdaten zu liefern. Gängige Einheiten sind Prozent, Bytes, Sekunden, Anzahl.

  • Beispiel: CPUUtilization könnte in Prozent gemessen werden, während NetworkIn in Bytes gemessen werden könnte.

CloudWatch-Funktionen

Dashboard

CloudWatch Dashboards bieten anpassbare Ansichten Ihrer AWS CloudWatch-Metriken. Es ist möglich, Dashboards zu erstellen und zu konfigurieren, um Daten zu visualisieren und Ressourcen in einer einzigen Ansicht zu überwachen, indem verschiedene Metriken aus verschiedenen AWS-Diensten kombiniert werden.

Hauptmerkmale:

  • Widgets: Bausteine von Dashboards, einschließlich Grafiken, Text, Alarme und mehr.

  • Anpassung: Layout und Inhalt können an spezifische Überwachungsbedürfnisse angepasst werden.

Beispielanwendung:

  • Ein einzelnes Dashboard, das wichtige Metriken für Ihre gesamte AWS-Umgebung anzeigt, einschließlich EC2-Instanzen, RDS-Datenbanken und S3-Buckets.

Metrikstream und Metrikdaten

Metrikstreams in AWS CloudWatch ermöglichen es Ihnen, CloudWatch-Metriken kontinuierlich in nahezu Echtzeit an ein Ziel Ihrer Wahl zu streamen. Dies ist besonders nützlich für fortgeschrittene Überwachung, Analysen und benutzerdefinierte Dashboards mit Tools außerhalb von AWS.

Metrikdaten innerhalb von Metrikstreams beziehen sich auf die tatsächlichen Messungen oder Datenpunkte, die gestreamt werden. Diese Datenpunkte repräsentieren verschiedene Metriken wie CPU-Auslastung, Speichernutzung usw. für AWS-Ressourcen.

Beispielanwendung:

  • Echtzeitmetriken an einen Drittanbieter-Überwachungsdienst für fortgeschrittene Analysen senden.

  • Metriken in einem Amazon S3-Bucket für die langfristige Speicherung und Compliance archivieren.

Alarm

CloudWatch-Alarme überwachen Ihre Metriken und führen Aktionen basierend auf vordefinierten Schwellenwerten aus. Wenn eine Metrik einen Schwellenwert überschreitet, kann der Alarm eine oder mehrere Aktionen ausführen, wie z. B. Benachrichtigungen über SNS senden, eine Auto-Scaling-Richtlinie auslösen oder eine AWS Lambda-Funktion ausführen.

Hauptkomponenten:

  • Schwellenwert: Der Wert, bei dem der Alarm ausgelöst wird.

  • Bewertungszeiträume: Die Anzahl der Zeiträume, über die Daten bewertet werden.

  • Datapoints to Alarm: Die Anzahl der Zeiträume mit einem erreichten Schwellenwert, die erforderlich sind, um den Alarm auszulösen.

  • Aktionen: Was passiert, wenn ein Alarmzustand ausgelöst wird (z. B. Benachrichtigung über SNS).

Beispielanwendung:

  • Überwachung der CPU-Auslastung einer EC2-Instanz und Senden einer Benachrichtigung über SNS, wenn sie 80 % für 5 aufeinanderfolgende Minuten überschreitet.

Anomalie-Detektoren

Anomalie-Detektoren verwenden maschinelles Lernen, um automatisch Anomalien in Ihren Metriken zu erkennen. Sie können die Anomalieerkennung auf jede CloudWatch-Metrik anwenden, um Abweichungen von normalen Mustern zu identifizieren, die auf Probleme hinweisen könnten.

Hauptkomponenten:

  • Modelltraining: CloudWatch verwendet historische Daten, um ein Modell zu trainieren und festzustellen, wie normales Verhalten aussieht.

  • Anomalieerkennungsband: Eine visuelle Darstellung des erwarteten Wertebereichs für eine Metrik.

Beispielanwendung:

  • Erkennung ungewöhnlicher CPU-Auslastungsmuster in einer EC2-Instanz, die auf einen Sicherheitsvorfall oder ein Anwendungsproblem hinweisen könnten.

Insight-Regeln und verwaltete Insight-Regeln

Insight-Regeln ermöglichen es Ihnen, Trends zu identifizieren, Spitzen zu erkennen oder andere Muster von Interesse in Ihren Metrikdaten mithilfe von leistungsstarken mathematischen Ausdrücken zu definieren, unter welchen Bedingungen Aktionen ergriffen werden sollten. Diese Regeln können Ihnen helfen, Anomalien oder ungewöhnliches Verhalten in der Leistung und Nutzung Ihrer Ressourcen zu identifizieren.

Verwaltete Insight-Regeln sind vorkonfigurierte Insight-Regeln, die von AWS bereitgestellt werden. Sie sind darauf ausgelegt, spezifische AWS-Dienste oder gängige Anwendungsfälle zu überwachen und können ohne detaillierte Konfiguration aktiviert werden.

Beispielanwendung:

  • Überwachung der RDS-Leistung: Aktivieren Sie eine verwaltete Insight-Regel für Amazon RDS, die wichtige Leistungsindikatoren wie CPU-Auslastung, Speichernutzung und Festplatten-I/O überwacht. Wenn eine dieser Metriken sichere Betriebsgrenzen überschreitet, kann die Regel einen Alarm oder eine automatisierte Minderung auslösen.

CloudWatch-Protokolle

Ermöglicht das Aggregieren und Überwachen von Protokollen aus Anwendungen und Systemen von AWS-Diensten (einschließlich CloudTrail) und von Apps/Systemen (CloudWatch-Agent kann auf einem Host installiert werden). Protokolle können unbegrenzt gespeichert werden (abhängig von den Einstellungen der Protokollgruppe) und können exportiert werden.

Elemente:

Protokollgruppe

Eine Sammlung von Protokollstreams, die dieselben Aufbewahrungs-, Überwachungs- und Zugriffskontrolleinstellungen teilen

Protokollstream

Eine Sequenz von Protokolldaten, die die gleiche Quelle teilen

Abonnementfilter

Definieren ein Filtermuster, das Ereignisse in einer bestimmten Protokollgruppe übereinstimmt, senden sie an Kinesis Data Firehose-Stream, Kinesis-Stream oder eine Lambda-Funktion

CloudWatch-Überwachung & Ereignisse

CloudWatch grundlegend aggregiert Daten alle 5 Minuten (die detaillierte macht das jede Minute). Nach der Aggregation überprüft es die Schwellenwerte der Alarme, falls es einen auslösen muss. In diesem Fall kann CloudWatch bereit sein, ein Ereignis zu senden und einige automatische Aktionen durchzuführen (AWS-Lambda-Funktionen, SNS-Themen, SQS-Warteschlangen, Kinesis-Streams).

Agenteninstallation

Sie können Agenten in Ihren Maschinen/Containern installieren, um automatisch die Protokolle an CloudWatch zurückzusenden.

  • Erstellen Sie eine Rolle und hängen Sie sie an die Instanz mit Berechtigungen, die es CloudWatch ermöglichen, Daten von den Instanzen zu sammeln, zusätzlich zur Interaktion mit dem AWS Systems Manager SSM (CloudWatchAgentAdminPolicy & AmazonEC2RoleforSSM).

  • Laden Sie den Agenten herunter und installieren Sie ihn auf der EC2-Instanz (https://s3.amazonaws.com/amazoncloudwatch-agent/linux/amd64/latest/AmazonCloudWatchAgent.zip). Sie können ihn von innerhalb der EC2 herunterladen oder automatisch mit AWS Systems Manager installieren, indem Sie das Paket AWS-ConfigureAWSPackage auswählen.

  • Konfigurieren und starten Sie den CloudWatch-Agenten.

Eine Protokollgruppe hat viele Streams. Ein Stream hat viele Ereignisse. Und innerhalb jedes Streams sind die Ereignisse in der Reihenfolge garantiert.

Enumeration

# Dashboards #

## Returns a list of the dashboards of your account
aws cloudwatch list-dashboards

## Retrieves the details of the specified dashboard
aws cloudwatch get-dashboard --dashboard-name <value>

# Metrics #

## Returns a list of the specified metric
aws cloudwatch list-metrics [--namespace <value>] [--metric-name <value>] [--dimensions <value>] [--include-linked-accounts | --no-include-linked-accounts]

## Retrieves metric data (this operation can include a CloudWatch Metrics Insights query, and one or more metric math functions)
aws cloudwatch get-metric-data --metric-data-queries <value> --start-time <value> --end-time <value>

## Retrieves statistics for the specified metric and namespace over a range of time
aws cloudwatch get-metric-statistics --namespace <value> --metric-name <value> [--dimensions <value>] --start-time <value> --end-time <value> --period <value>

## Returns a list of the metric streams of your account
aws cloudwatch list-metric-streams

## Retrieves information about the specified metric stream
aws cloudwatch get-metric-stream --name <value>

## Retrieve snapshots of the specified metric widgets
aws cloudwatch get-metric-widget-image --metric-widget <value>

# Alarms #

## Retrieves the specified alarm
aws cloudwatch describe-alarms [--alarm-names <value>] [--alarm-name-prefix <value>] [--alarm-types <value>] [--state-value <value>]

## Retrieves the alarms history, even for deleted alarms
aws cloudwatch describe-alarm-history [--alarm-name <value>] [--alarm-types <value>] [--history-item-type <ConfigurationUpdate | StateUpdate | Action>] [--start-date <value>] [--end-date <value>]

## Retrieves standard alarms based on the specified metric
aws cloudwatch escribe-alarms-for-metric --metric-name <value> --namespace <value> [--dimensions <value>]

# Anomaly Detections #

## Lists the anomaly detection models that you have created in your account
aws cloudwatch describe-anomaly-detectors [--namespace <value>] [--metric-name <value>] [--dimensions <value>]

## Lists all the Contributor Insight rules in your account
aws cloudwatch describe-insight-rules

## Retrieves the data collected over a time range for a given Contributor Insight rule
aws cloudwatch get-insight-rule-report --rule-name <value> --start-time <value> --end-time <value> --period <value>

## Lists managed Contributor Insights rules in your account for a specified resource
aws cloudwatch list-managed-insight-rules --resource-arn <value>

# Tags #

## Lists the tags associated with the specified CloudWatch resources
aws cloudwatch list-tags-for-resource --resource-arn <value>

# CloudWatch Logs #
aws logs tail "<log_group_name>" --followaws logs get-log-events --log-group-name "<log_group_name>" --log-stream-name "<log_stream_name>" --output text > <output_file>

# CloudWatch Events #
aws events list-rules
aws events describe-rule --name <name>aws events list-targets-by-rule --rule <name>aws events list-archives
aws events describe-archive --archive-name <name>aws events list-connections
aws events describe-connection --name <name>aws events list-endpoints
aws events describe-endpoint --name <name>aws events list-event-sources
aws events describe-event-source --name <name>aws events list-replays
aws events list-api-destinations
aws events list-event-buses

Post-Exploitation / Bypass

cloudwatch:DeleteAlarms,cloudwatch:PutMetricAlarm , cloudwatch:PutCompositeAlarm

Ein Angreifer mit diesen Berechtigungen könnte die Überwachungs- und Alarmierungsinfrastruktur einer Organisation erheblich untergraben. Durch das Löschen vorhandener Alarme könnte ein Angreifer entscheidende Benachrichtigungen deaktivieren, die Administratoren über kritische Leistungsprobleme, Sicherheitsverletzungen oder betriebliche Ausfälle informieren. Darüber hinaus könnte der Angreifer durch das Erstellen oder Ändern von Metrik-Alarmen auch Administratoren mit falschen Alarmen in die Irre führen oder legitime Alarme zum Schweigen bringen, wodurch böswillige Aktivitäten effektiv maskiert und rechtzeitige Reaktionen auf tatsächliche Vorfälle verhindert werden.

Darüber hinaus könnte ein Angreifer mit der Berechtigung cloudwatch:PutCompositeAlarm eine Schleife oder einen Zyklus von zusammengesetzten Alarmen erstellen, bei dem zusammengesetzter Alarm A von zusammengesetztem Alarm B abhängt und zusammengesetzter Alarm B auch von zusammengesetztem Alarm A abhängt. In diesem Szenario ist es nicht möglich, einen zusammengesetzten Alarm, der Teil des Zyklus ist, zu löschen, da immer noch ein zusammengesetzter Alarm existiert, der von dem Alarm abhängt, den Sie löschen möchten.

aws cloudwatch put-metric-alarm --cli-input-json <value> | --alarm-name <value> --comparison-operator <value> --evaluation-periods <value> [--datapoints-to-alarm <value>] [--threshold <value>] [--alarm-description <value>] [--alarm-actions <value>] [--metric-name <value>] [--namespace <value>] [--statistic <value>] [--dimensions <value>] [--period <value>]
aws cloudwatch delete-alarms --alarm-names <value>
aws cloudwatch put-composite-alarm --alarm-name <value> --alarm-rule <value> [--no-actions-enabled | --actions-enabled [--alarm-actions <value>] [--insufficient-data-actions <value>] [--ok-actions <value>] ]

Das folgende Beispiel zeigt, wie man einen Metrikalarm unwirksam macht:

  • Dieser Metrikalarm überwacht die durchschnittliche CPU-Auslastung einer bestimmten EC2-Instanz, bewertet die Metrik alle 300 Sekunden und erfordert 6 Bewertungsperioden (insgesamt 30 Minuten). Wenn die durchschnittliche CPU-Auslastung in mindestens 4 dieser Perioden 60 % überschreitet, wird der Alarm ausgelöst und sendet eine Benachrichtigung an das angegebene SNS-Thema.

  • Durch die Änderung des Schwellenwerts auf mehr als 99 %, das Setzen der Periode auf 10 Sekunden, der Bewertungsperioden auf 8640 (da 8640 Perioden von 10 Sekunden 1 Tag entsprechen) und der Datapoints to Alarm auf ebenfalls 8640, wäre es erforderlich, dass die CPU-Auslastung in den gesamten 24 Stunden alle 10 Sekunden über 99 % liegt, um einen Alarm auszulösen.

{
"Namespace": "AWS/EC2",
"MetricName": "CPUUtilization",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-01234567890123456"
}
],
"AlarmActions": [
"arn:aws:sns:us-east-1:123456789012:example_sns"
],
"ComparisonOperator": "GreaterThanThreshold",
"DatapointsToAlarm": 4,
"EvaluationPeriods": 6,
"Period": 300,
"Statistic": "Average",
"Threshold": 60,
"AlarmDescription": "CPU Utilization of i-01234567890123456 over 60%",
"AlarmName": "EC2 instance i-01234567890123456 CPU Utilization"
}

Potenzielle Auswirkungen: Fehlende Benachrichtigungen für kritische Ereignisse, potenzielle unentdeckte Probleme, falsche Alarme, Unterdrückung echter Alarme und möglicherweise verpasste Erkennungen realer Vorfälle.

cloudwatch:DeleteAlarmActions, cloudwatch:EnableAlarmActions, cloudwatch:SetAlarmState

Durch das Löschen von Alarmaktionen könnte der Angreifer kritische Warnungen und automatisierte Reaktionen daran hindern, ausgelöst zu werden, wenn ein Alarmzustand erreicht wird, wie z. B. die Benachrichtigung von Administratoren oder das Auslösen von Auto-Scaling-Aktivitäten. Das unangemessene Aktivieren oder Wiederaktivieren von Alarmaktionen könnte ebenfalls zu unerwartetem Verhalten führen, entweder durch die Reaktivierung zuvor deaktivierter Aktionen oder durch die Änderung, welche Aktionen ausgelöst werden, was potenziell zu Verwirrung und Fehlleitungen bei der Vorfallreaktion führen könnte.

Darüber hinaus könnte ein Angreifer mit der Berechtigung Alarmzustände manipulieren, indem er falsche Alarme erstellt, um Administratoren abzulenken und zu verwirren, oder echte Alarme zum Schweigen bringt, um laufende böswillige Aktivitäten oder kritische Systemausfälle zu verbergen.

  • Wenn Sie SetAlarmState bei einem zusammengesetzten Alarm verwenden, ist nicht garantiert, dass der zusammengesetzte Alarm in seinen tatsächlichen Zustand zurückkehrt. Er kehrt nur dann in seinen tatsächlichen Zustand zurück, wenn einer seiner untergeordneten Alarme den Zustand ändert. Er wird auch neu bewertet, wenn Sie seine Konfiguration aktualisieren.

aws cloudwatch disable-alarm-actions --alarm-names <value>
aws cloudwatch enable-alarm-actions --alarm-names <value>
aws cloudwatch set-alarm-state --alarm-name <value> --state-value <OK | ALARM | INSUFFICIENT_DATA> --state-reason <value> [--state-reason-data <value>]

Potenzielle Auswirkungen: Fehlende Benachrichtigungen für kritische Ereignisse, potenzielle unentdeckte Probleme, falsche Alarme, Unterdrückung echter Alarme und möglicherweise verpasste Erkennungen echter Vorfälle.

cloudwatch:DeleteAnomalyDetector, cloudwatch:PutAnomalyDetector

Ein Angreifer könnte die Fähigkeit zur Erkennung und Reaktion auf ungewöhnliche Muster oder Anomalien in den Metrikdaten gefährden. Durch das Löschen vorhandener Anomalie-Detektoren könnte ein Angreifer kritische Alarmmechanismen deaktivieren; und durch das Erstellen oder Ändern dieser könnte er entweder Fehlkonfigurationen vornehmen oder falsche Positivmeldungen erzeugen, um die Überwachung abzulenken oder zu überwältigen.

aws cloudwatch delete-anomaly-detector [--cli-input-json <value> | --namespace <value> --metric-name <value> --dimensions <value> --stat <value>]
aws cloudwatch put-anomaly-detector [--cli-input-json <value> | --namespace <value> --metric-name <value> --dimensions <value> --stat <value> --configuration <value> --metric-characteristics <value>]

Das folgende Beispiel zeigt, wie man einen Metrik-Anomalie-Detektor unwirksam macht. Dieser Metrik-Anomalie-Detektor überwacht die durchschnittliche CPU-Auslastung einer bestimmten EC2-Instanz, und allein durch das Hinzufügen des Parameters „ExcludedTimeRanges“ mit dem gewünschten Zeitbereich wäre es ausreichend, um sicherzustellen, dass der Anomalie-Detektor während dieses Zeitraums keine relevanten Daten analysiert oder warnt.

{
"SingleMetricAnomalyDetector": {
"Namespace": "AWS/EC2",
"MetricName": "CPUUtilization",
"Stat": "Average",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-0123456789abcdefg"
}
]
}
}

Potenzielle Auswirkungen: Direkte Auswirkungen auf die Erkennung ungewöhnlicher Muster oder Sicherheitsbedrohungen.

cloudwatch:DeleteDashboards, cloudwatch:PutDashboard

Ein Angreifer könnte die Überwachungs- und Visualisierungsfähigkeiten einer Organisation gefährden, indem er deren Dashboards erstellt, ändert oder löscht. Diese Berechtigungen könnten genutzt werden, um die kritische Sichtbarkeit auf die Leistung und Gesundheit von Systemen zu entfernen, Dashboards so zu ändern, dass falsche Daten angezeigt werden, oder böswillige Aktivitäten zu verbergen.

aws cloudwatch delete-dashboards --dashboard-names <value>
aws cloudwatch put-dashboard --dashboard-name <value> --dashboard-body <value>

Potenzielle Auswirkungen: Verlust der Überwachungsansicht und irreführende Informationen.

cloudwatch:DeleteInsightRules, cloudwatch:PutInsightRule, cloudwatch:PutManagedInsightRule

Insight-Regeln werden verwendet, um Anomalien zu erkennen, die Leistung zu optimieren und Ressourcen effektiv zu verwalten. Durch das Löschen vorhandener Insight-Regeln könnte ein Angreifer kritische Überwachungsfähigkeiten entfernen, wodurch das System blind für Leistungsprobleme und Sicherheitsbedrohungen bleibt. Darüber hinaus könnte ein Angreifer Insight-Regeln erstellen oder ändern, um irreführende Daten zu generieren oder böswillige Aktivitäten zu verbergen, was zu falschen Diagnosen und unangemessenen Reaktionen des Betriebsteams führen würde.

aws cloudwatch delete-insight-rules --rule-names <value>
aws cloudwatch put-insight-rule --rule-name <value> --rule-definition <value> [--rule-state <value>]
aws cloudwatch put-managed-insight-rules --managed-rules <value>

Potenzielle Auswirkungen: Schwierigkeiten bei der Erkennung und Reaktion auf Leistungsprobleme und Anomalien, fehlerhafte Entscheidungsfindung und möglicherweise das Verbergen bösartiger Aktivitäten oder Systemausfälle.

cloudwatch:DisableInsightRules, cloudwatch:EnableInsightRules

Durch das Deaktivieren kritischer Einsichtsregeln könnte ein Angreifer die Organisation effektiv blind für wichtige Leistungs- und Sicherheitsmetriken machen. Umgekehrt könnte es durch das Aktivieren oder Konfigurieren irreführender Regeln möglich sein, falsche Daten zu erzeugen, Lärm zu erzeugen oder bösartige Aktivitäten zu verbergen.

aws cloudwatch disable-insight-rules --rule-names <value>
aws cloudwatch enable-insight-rules --rule-names <value>

Potenzielle Auswirkungen: Verwirrung im Operationsteam, was zu verzögerten Reaktionen auf tatsächliche Probleme und unnötigen Maßnahmen aufgrund falscher Alarme führt.

cloudwatch:DeleteMetricStream , cloudwatch:PutMetricStream , cloudwatch:PutMetricData

Ein Angreifer mit den Berechtigungen cloudwatch:DeleteMetricStream , cloudwatch:PutMetricStream wäre in der Lage, Metrikdatenströme zu erstellen und zu löschen, was die Sicherheit, Überwachung und Datenintegrität gefährdet:

  • Bösartige Streams erstellen: Metrikströme erstellen, um sensible Daten an unbefugte Ziele zu senden.

  • Ressourcenmanipulation: Die Erstellung neuer Metrikströme mit übermäßigen Daten könnte viel Lärm erzeugen, was zu falschen Alarmen führt und wahre Probleme maskiert.

  • Überwachungsstörung: Durch das Löschen von Metrikströmen würden Angreifer den kontinuierlichen Fluss von Überwachungsdaten stören. Auf diese Weise wären ihre bösartigen Aktivitäten effektiv verborgen.

Ähnlich wäre es mit der Berechtigung cloudwatch:PutMetricData möglich, Daten zu einem Metrikstrom hinzuzufügen. Dies könnte zu einem DoS führen, aufgrund der Menge an unzulässigen Daten, die hinzugefügt werden, wodurch es völlig nutzlos wird.

aws cloudwatch delete-metric-stream --name <value>
aws cloudwatch put-metric-stream --name <value> [--include-filters <value>] [--exclude-filters <value>] --firehose-arn <value> --role-arn <value> --output-format <value>
aws cloudwatch put-metric-data --namespace <value> [--metric-data <value>] [--metric-name <value>] [--timestamp <value>] [--unit <value>] [--value <value>] [--dimensions <value>]

Beispiel für das Hinzufügen von Daten, die 70 % der CPU-Auslastung über eine gegebene EC2-Instanz entsprechen:

aws cloudwatch put-metric-data --namespace "AWS/EC2" --metric-name "CPUUtilization" --value 70 --unit "Percent" --dimensions "InstanceId=i-0123456789abcdefg"

Potenzielle Auswirkungen: Störung des Flusses von Überwachungsdaten, die die Erkennung von Anomalien und Vorfällen beeinträchtigt, Ressourcennutzung manipuliert und Kosten erhöht, aufgrund der Erstellung übermäßiger Metrikströme.

cloudwatch:StopMetricStreams, cloudwatch:StartMetricStreams

Ein Angreifer würde den Fluss der betroffenen Metrikdatenströme kontrollieren (jeder Datenstrom, wenn es keine Ressourcenbeschränkung gibt). Mit der Berechtigung cloudwatch:StopMetricStreams könnten Angreifer ihre bösartigen Aktivitäten verbergen, indem sie kritische Metrikströme stoppen.

aws cloudwatch stop-metric-streams --names <value>
aws cloudwatch start-metric-streams --names <value>

Potenzielle Auswirkungen: Störung des Flusses von Überwachungsdaten, die die Erkennung von Anomalien und Vorfällen beeinträchtigt.

cloudwatch:TagResource, cloudwatch:UntagResource

Ein Angreifer könnte in der Lage sein, Tags von CloudWatch-Ressourcen (derzeit nur Alarme und Contributor Insights-Regeln) hinzuzufügen, zu ändern oder zu entfernen. Dies könnte die Zugriffssteuerungsrichtlinien Ihrer Organisation, die auf Tags basieren, stören.

aws cloudwatch tag-resource --resource-arn <value> --tags <value>
aws cloudwatch untag-resource --resource-arn <value> --tag-keys <value>

Potenzielle Auswirkungen: Störung der tag-basierten Zugriffskontrollrichtlinien.

Referenzen

Unterstützen Sie HackTricks

Last updated