AWS - CloudWatch Enum

CloudWatch συλλέγει παρακολούθηση και λειτουργικά δεδομένα σε μορφή logs/metrics/events παρέχοντας μια ενιαία προβολή των πόρων του AWS, εφαρμογών και υπηρεσιών. Τα CloudWatch Log Event έχουν μια περιορισμένη μέγεθος των 256KB σε κάθε γραμμή log. Μπορεί να ορίσει υψηλή ανάλυση συναγερμούς, να οπτικοποιήσει logs και metrics δίπλα-δίπλα, να πάρει αυτοματοποιημένες ενέργειες, να εντοπίσει προβλήματα και να ανακαλύψει εισαγωγές για τη βελτιστοποίηση εφαρμογών.

Μπορείτε να παρακολουθήσετε για παράδειγμα logs από το CloudTrail. Συμβάντα που παρακολουθούνται:

  • Αλλαγές σε Security Groups και NACLs

  • Έναρξη, Διακοπή, επανεκκίνηση και τερματισμός των EC2 instances

  • Αλλαγές στις πολιτικές ασφαλείας εντός του IAM και του S3

  • Αποτυχημένες προσπάθειες σύνδεσης στην κονσόλα διαχείρισης του AWS

  • Κλήσεις API που οδήγησαν σε αποτυχημένη εξουσιοδότηση

Βασικές έννοιες

Namespaces

Ένα namespace είναι ένας δοχείο για τα μετρήσιμα του CloudWatch. Βοηθά στην κατηγοριοποίηση και απομόνωση των μετρητών, κάνοντας ευκολότερη τη διαχείριση και ανάλυσή τους.

  • Παραδείγματα: AWS/EC2 για μετρήσεις που σχετίζονται με το EC2, AWS/RDS για μετρήσεις RDS.

Μετρήσεις

Οι μετρήσεις είναι σημεία δεδομένων που συλλέγονται με την πάροδο του χρόνου και αντιπροσωπεύουν την απόδοση ή τη χρήση των πόρων του AWS. Οι μετρήσεις μπορούν να συλλεχθούν από υπηρεσίες AWS, προσαρμοσμένες εφαρμογές ή ενσωματώσεις τρίτων.

  • Παράδειγμα: CPUUtilization, NetworkIn, DiskReadOps.

Διαστάσεις

Οι διαστάσεις είναι ζεύγη κλειδιού-τιμής που αποτελούν μέρος των μετρήσεων. Βοηθούν στη μοναδική ταυτοποίηση μιας μετρικής και παρέχουν επιπλέον πλαίσιο, με το 30 να είναι ο μέγιστος αριθμός διαστάσεων που μπορούν να συσχετιστούν με μια μετρική. Οι διαστάσεις επίσης επιτρέπουν το φιλτράρισμα και τη συγκέντρωση μετρήσεων με βάση συγκεκριμένα χαρακτηριστικά.

  • Παράδειγμα: Για παράδειγμα, για τις περιπτώσεις EC2, οι διαστάσεις μπορεί να περιλαμβάνουν το InstanceId, το InstanceType και τη Ζώνη Διαθεσιμότητας.

Στατιστικά

Τα στατιστικά είναι μαθηματικοί υπολογισμοί που πραγματοποιούνται στα δεδομένα μετρήσεων για να τα συνοψίσουν με την πάροδο του χρόνου. Συνήθη στατιστικά περιλαμβάνουν Μέσο, Άθροισμα, Ελάχιστο, Μέγιστο και Αριθμό Δειγμάτων.

  • Παράδειγμα: Υπολογισμός της μέσης χρήσης CPU κατά τη διάρκεια μιας ώρας.

Μονάδες

Οι μονάδες είναι ο τύπος μέτρησης που συσχετίζεται με μια μετρική. Οι μονάδες βοηθούν στην παροχή πλαισίου και νοήματος στα δεδομένα της μετρικής. Συνήθεις μονάδες περιλαμβάνουν το Ποσοστό, τα Bytes, τα Δευτερόλεπτα, τον Αριθμό.

  • Παράδειγμα: Η CPUUtilization μπορεί να μετρηθεί σε Ποσοστό, ενώ το NetworkIn μπορεί να μετρηθεί σε Bytes.

Χαρακτηριστικά CloudWatch

Πίνακας ελέγχου

Οι Πίνακες Ελέγχου του CloudWatch παρέχουν προσαρμόσιμες προβολές των μετρήσεων του AWS CloudWatch σας. Είναι δυνατόν να δημιουργήσετε και να διαμορφώσετε πίνακες ελέγχου για να οπτικοποιήσετε δεδομένα και να παρακολουθήσετε πόρους σε μια μόνο προβολή, συνδυάζοντας διαφορετικές μετρήσεις από διάφορες υπηρεσίες του AWS.

Κύρια Χαρακτηριστικά:

  • Widgets: Οι βασικές μονάδες των πίνακων ελέγχου, συμπεριλαμβανομένων γραφημάτων, κειμένου, συναγερμών και άλλων.

  • Προσαρμογή: Η διάταξη και το περιεχόμενο μπορούν να προσαρμοστούν για να ταιριάζουν σε συγκεκριμένες ανάγκες παρακολούθησης.

Παράδειγμα Χρήσης:

  • Ένας μόνο πίνακας εμφάνισης βασικών μετρήσεων για ολόκληρο το περιβάλλον AWS σας, συμπεριλαμβανομένων των EC2 instances, των βάσεων δεδομένων RDS και των κάδων S3.

Ροή Μετρικών και Δεδομένα Μετρικών

Οι Ροές Μετρικών στο AWS CloudWatch σας επιτρέπουν να ροή μετρήσεις CloudWatch σε προορισμό της επιλογής σας σε πραγματικό χρόνο. Αυτό είναι ιδιαίτερα χρήσιμο για προηγμένη παρακολούθηση, αναλύσεις και προσαρμοσμένους πίνακες ελέγχου χρησιμοποιώντας εργαλεία έξω από το AWS.

Τα Δεδομένα Μετρικών μέσα στις Ροές Μετρικών αναφέρονται στις πραγματικές μετρήσεις ή σημεία δεδομένων που ρέουν. Αυτά τα σημεία δεδομένων αντιπροσωπεύουν διάφορες μετρήσεις όπως η χρήση CPU, η χρήση μνήμης κ.λπ., για πόρους AWS.

Παράδειγμα Χρήσης:

  • Αποστολή μετρήσεων σε πραγματικό χρόνο σε έναν υπηρεσία παρακολούθησης τρίτων για προηγμένη ανάλυση.

  • Αρχειοθέτηση μετρήσεων σε ένα κάδο Amazon S3 για αποθήκευση και συμμόρφωση μακροπρόθεσμα.

Συναγερμός

Οι Συναγερμοί του CloudWatch παρακολουθούν τις μετρήσεις σας και εκτελούν ενέργειες με βάση προκαθορισμένα όρια. Όταν μια μετρική υπερβαίνει ένα όριο, ο συναγερμός μπορεί να εκτελέσει μία ή περισσότερες ενέργειες, όπως αποστολή ειδοποιήσεων μέσω SNS, ενεργοποίηση πολιτικής αυτόματης κλιμάκωσης ή εκτέλεση λειτουργίας AWS Lambda.

Κύρια Στοιχεία:

  • Όριο: Η τιμή στην οποία ενεργοποιείται ο συναγερμός.

  • Περίοδοι Αξιολόγησης: Ο αριθμός των περιόδων κατά τις οποίες αξιολογούνται τα δεδομένα.

  • Δείγματα Δεδομένων προς Συναγερμό: Ο αριθμός των περιόδων με καταγεγραμμένο όριο που απαιτείται για την ενεργοποίηση του συναγερμο

Παρακολούθηση & Συμβάντα CloudWatch

Το CloudWatch βασικό συγκεντρώνει δεδομένα κάθε 5 λεπτά (το λεπτομερές το κάνει κάθε 1 λεπτό). Μετά τη συγκέντρωση, ελέγχει τα όρια των συναγερμών σε περίπτωση που χρειάζεται να ενεργοποιήσει έναν. Σε αυτήν την περίπτωση, το CLoudWatch μπορεί να είναι έτοιμο να στείλει ένα συμβάν και να εκτελέσει μερικές αυτόματες ενέργειες (συναρτήσεις AWS lambda, θέματα SNS, ουρές SQS, ροές Kinesis)

Εγκατάσταση Πράκτορα

Μπορείτε να εγκαταστήσετε πράκτορες μέσα στις μηχανές/δοχεία σας για να στέλνουν αυτόματα τα αρχεία καταγραφής πίσω στο CloudWatch.

  • Δημιουργήστε ένα ρόλο και συνδέστε τον στην πρόσβαση με δικαιώματα που επιτρέπουν στο CloudWatch να συλλέγει δεδομένα από τις προσθήκες εκτός από την αλληλεπίδραση με τον διαχειριστή συστημάτων AWS SSM (CloudWatchAgentAdminPolicy & AmazonEC2RoleforSSM)

  • Λήψη και εγκατάσταση του πράκτορα στην προσθήκη EC2 (https://s3.amazonaws.com/amazoncloudwatch-agent/linux/amd64/latest/AmazonCloudWatchAgent.zip). Μπορείτε να το κατεβάσετε από μέσα στην προσθήκη EC2 ή να το εγκαταστήσετε αυτόματα χρησιμοποιώντας τον Διαχειριστή Συστημάτων AWS επιλέγοντας το πακέτο AWS-ConfigureAWSPackage

  • Διαμορφώστε και ξεκινήστε τον Πράκτορα CloudWatch

Ένα ομάδα καταγραφής έχει πολλά ρεύματα. Ένα ρεύμα έχει πολλά συμβάντα. Και μέσα σε κάθε ρεύμα, τα συμβάντα είναι εγγυημένα να είναι με σειρά.

# 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:ΔιαγραφήΣυναγερμών, cloudwatch:ΤοποθέτησηΜετρικούΣυναγερμού, cloudwatch:ΤοποθέτησηΣυνθετικούΣυναγερμού

Ένας επιτιθέμενος με αυτές τις άδειες θα μπορούσε σημαντικά να υπονομεύσει την παρακολούθηση και την υποδειξης υποδομή μιας οργάνωσης. Διαγράφοντας υπάρχοντες συναγερμούς, ένας επιτιθέμενος θα μπορούσε να απενεργοποιήσει κρίσιμες ειδοποιήσεις που ειδοποιούν τους διαχειριστές για κρίσιμα θέματα απόδοσης, παραβάσεις ασφαλείας ή λαθών λειτουργίας. Επιπλέον, δημιουργώντας ή τροποποιώντας μετρικούς συναγερμούς, ο επιτιθέμενος θα μπορούσε επίσης να παραπλανήσει τους διαχειριστές με ψευδείς ειδοποιήσεις ή να σιωπήσει τους νόμιμους συναγερμούς, με αποτέλεσμα να κρύψει κακόβουλες δραστηριότητες και να εμποδίσει έγκαιρες αντιδράσεις σε πραγματικά περιστατικά.

Επιπλέον, με την άδεια cloudwatch:ΤοποθέτησηΣυνθετικούΣυναγερμού, ένας επιτιθέμενος θα μπορούσε να δημιουργήσει έναν κύκλο συνθετικών συναγερμών, όπου ο συνθετικός συναγερμός Α εξαρτάται από τον συνθετικό συναγερμό Β, και ο συνθετικός συναγερμός Β εξαρτάται επίσης από τον συνθετικό συναγερμό Α. Σε αυτό το σενάριο, δεν είναι δυνατή η διαγραφή οποιουδήποτε συνθετικού συναγερμού που είναι μέρος του κύκλου επειδή υπάρχει πάντα ακόμα ένας συνθετικός συναγερμός που εξαρτάται από αυτόν τον συναγερμό που θέλετε να διαγράψετε.

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>] ]

Το παρακάτω παράδειγμα δείχνει πώς να καταστήσετε ένα μετρικό συναγερμό ανενεργό:

  • Αυτός ο μετρικός συναγερμός παρακολουθεί τη μέση χρήση CPU ενός συγκεκριμένου παραδείγματος EC2, αξιολογεί τη μετρική κάθε 300 δευτερόλεπτα και απαιτεί 6 περίοδους αξιολόγησης (συνολικά 30 λεπτά). Εάν η μέση χρήση CPU υπερβεί το 60% για τουλάχιστον 4 από αυτές τις περιόδους, ο συναγερμός θα ενεργοποιηθεί και θα στείλει ειδοποίηση στο συγκεκριμένο θέμα SNS.

  • Αλλάζοντας το Κατώφλι ώστε να είναι πάνω από το 99%, ορίζοντας την Περίοδο σε 10 δευτερόλεπτα, τις Περιόδους Αξιολόγησης σε 8640 (καθώς 8640 περίοδοι των 10 δευτερολέπτων ισούνται με 1 ημέρα), και τα Δεδομένα στον Συναγερμό σε 8640 επίσης, θα ήταν απαραίτητο η χρήση CPU να είναι πάνω από το 99% κάθε 10 δευτερόλεπτα καθ' όλη τη διάρκεια των 24 ωρών για να ενεργοποιηθεί ένας συναγερμός.

{
"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"
}

Πιθανή Επίπτωση: Έλλειψη ειδοποιήσεων για κρίσιμα γεγονότα, πιθανά μη ανιχνευμένα προβλήματα, ψευδείς ειδοποιήσεις, κατάσβεση γνήσιων ειδοποιήσεων και πιθανώς αναπάντητες ανιχνεύσεις πραγματικών περιστατικών.

cloudwatch:DeleteAlarmActions, cloudwatch:EnableAlarmActions , cloudwatch:SetAlarmState

Διαγράφοντας τις ενέργειες συναγερμού, ο επιτιθέμενος θα μπορούσε να αποτρέψει την ενεργοποίηση κρίσιμων ειδοποιήσεων και αυτόματων αντιδράσεων όταν επιτευχθεί η κατάσταση συναγερμού, όπως η ειδοποίηση διαχειριστών ή η ενεργοποίηση δραστηριοτήτων αυτόματης κλιμάκωσης. Η ανεπιθύμητη ενεργοποίηση ή επανενεργοποίηση ενεργειών συναγερμού θα μπορούσε επίσης να οδηγήσει σε απροσδόκητες συμπεριφορές, είτε επαναενεργοποιώντας προηγουμένως απενεργοποιημένες ενέργειες είτε τροποποιώντας ποιες ενέργειες ενεργοποιούνται, προκαλώντας πιθανώς σύγχυση και παραπλάνηση στην αντίδραση σε περιστατικά.

Επιπλέον, ένας επιτιθέμενος με την άδεια θα μπορούσε να χειρίζεται τις καταστάσεις συναγερμού, μπορώντας να δημιουργεί ψευδείς συναγερμούς για να αποσπάσει την προσοχή και να μπερδέψει τους διαχειριστές, ή να σιωπήσει γνήσιους συναγερμούς για να κρύψει ενεργότητες κακόβουλου λογισμικού ή κρίσιμες αποτυχίες συστήματος.

  • Εάν χρησιμοποιήσετε το SetAlarmState σε ένα σύνθετο συναγερμό, ο σύνθετος συναγερμός δεν εγγυάται ότι θα επιστρέψει στην πραγματική του κατάσταση. Επιστρέφει στην πραγματική του κατάσταση μόνο όταν οποιοδήποτε από τα παιδικά του συναγερμού αλλάξει κατάσταση. Επανεκτιμάται επίσης εάν ενημερώσετε τη διαμόρφωσή του.

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>]

Πιθανή Επίδραση: Έλλειψη ειδοποιήσεων για κρίσιμα γεγονότα, πιθανά μη ανιχνευμένα προβλήματα, ψευδείς ειδοποιήσεις, κατάσβεση γνήσιων ειδοποιήσεων και πιθανώς αναπάντητες ανιχνεύσεις πραγματικών περιστατικών.

cloudwatch:DeleteAnomalyDetector, cloudwatch:PutAnomalyDetector

Ένας επιτιθέμενος θα μπορούσε να θέσει σε κίνδυνο τη δυνατότητα ανίχνευσης και αντίδρασης σε ασυνήθιστα πρότυπα ή ανωμαλίες στα μετρήσιμα δεδομένα. Διαγράφοντας υπάρχοντες ανιχνευτές ανωμαλιών, ένας επιτιθέμενος θα μπορούσε να απενεργοποιήσει κρίσιμους μηχανισμούς ειδοποίησης· και δημιουργώντας ή τροποποιώντας τους, θα μπορούσε είτε να ρυθμίσει εσφαλμένα είτε να δημιουργήσει ψευδείς θετικές ειδοποιήσεις προκειμένου να αποσπάσει την προσοχή ή να υπερβεί την παρακολούθηση.

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>]

Το παρακάτω παράδειγμα δείχνει πώς να καταστήσετε ανενεργό έναν ανιχνευτή μετρικών ανωμαλιών. Αυτός ο ανιχνευτής μετρικών ανωμαλιών παρακολουθεί τη μέση χρήση CPU ενός συγκεκριμένου παραδείγματος EC2, και απλά προσθέτοντας την παράμετρο "ExcludedTimeRanges" με το επιθυμητό χρονικό εύρος, θα ήταν αρκετό για να διασφαλίσετε ότι ο ανιχνευτής ανωμαλιών δεν αναλύει ή δεν ειδοποιεί για οποιαδήποτε σχετικά δεδομένα κατά τη διάρκεια εκείνης της περιόδου.

{
"SingleMetricAnomalyDetector": {
"Namespace": "AWS/EC2",
"MetricName": "CPUUtilization",
"Stat": "Average",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-0123456789abcdefg"
}
]
}
}
{
"SingleMetricAnomalyDetector": {
"Namespace": "AWS/EC2",
"MetricName": "CPUUtilization",
"Stat": "Average",
"Dimensions": [
{
"Name": "InstanceId",
"Value": "i-0123456789abcdefg"
}
]
},
"Configuration": {
"ExcludedTimeRanges": [
{
"StartTime": "2023-01-01T00:00:00Z",
"EndTime": "2053-01-01T23:59:59Z"
}
],
"Timezone": "Europe/Madrid"
}
}

**Πιθανή Επίπτωση**: Άμεση επίδραση στον εντοπισμό ασυνήθιστων προτύπων ή απειλών ασφαλείας.

cloudwatch:DeleteDashboards, cloudwatch:PutDashboard

Ένας επιτιθέμενος θα μπορούσε να διακινδυνεύσει τις δυνατότητες παρακολούθησης και οπτικοποίησης μιας οργάνωσης δημιουργώντας, τροποποιώντας ή διαγράφοντας τα πίνακες ελέγχου της. Αυτές οι άδειες θα μπορούσαν να χρησιμοποιηθούν για να αφαιρέσουν κρίσιμη ορατότητα στην απόδοση και την υγεία των συστημάτων, να τροποποιήσουν τους πίνακες ελέγχου για να εμφανίζουν εσφαλμένα δεδομένα ή να κρύψουν κακόβουλες δραστηριότητες.

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

Πιθανή Επίπτωση: Απώλεια ορατότητας παρακολούθησης και παραπλανητικές πληροφορίες.

cloudwatch:DeleteInsightRules, cloudwatch:PutInsightRule ,cloudwatch:PutManagedInsightRule

Οι κανόνες Insight χρησιμοποιούνται για την ανίχνευση ανωμαλιών, τη βελτιστοποίηση της απόδοσης και τη διαχείριση των πόρων με αποτελεσματικό τρόπο. Με τη διαγραφή υπαρχόντων κανόνων Insight, ένας επιτιθέμενος θα μπορούσε να αφαιρέσει κρίσιμες δυνατότητες παρακολούθησης, αφήνοντας το σύστημα τυφλό σε θέματα απόδοσης και απειλές ασφαλείας. Επιπλέον, ένας επιτιθέμενος θα μπορούσε να δημιουργήσει ή να τροποποιήσει κανόνες Insight για να παράγει παραπλανητικά δεδομένα ή να κρύψει κακόβουλες δραστηριότητες, οδηγώντας σε εσφαλμένες διαγνώσεις και ακατάλληλες αντιδράσεις από την ομάδα λειτουργιών.

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>

Πιθανή Επίδραση: Δυσκολία στον εντοπισμό και αντίδραση σε θέματα απόδοσης και ανωμαλιών, λανθασμένη λήψη αποφάσεων και πιθανή κρυψίνη κακόβουλων δραστηριοτήτων ή αποτυχιών συστήματος.

cloudwatch:DisableInsightRules, cloudwatch:EnableInsightRules

Απενεργοποιώντας κρίσιμους κανόνες εισόδου, ένας επιτιθέμενος θα μπορούσε να τυφλώσει αποτελεσματικά τον οργανισμό σε κύριες μετρήσεις απόδοσης και ασφάλειας. Αντίστροφα, με την ενεργοποίηση ή ρύθμιση παραπλανητικών κανόνων, θα μπορούσε να είναι δυνατή η δημιουργία ψευδών δεδομένων, η δημιουργία θορύβου ή η κρυψίνη κακόβουλης δραστηριότητας.

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

Πιθανή Επίδραση: Σύγχυση μεταξύ της ομάδας λειτουργιών, οδηγώντας σε καθυστερημένες αντιδράσεις σε πραγματικά θέματα και περιττές ενέργειες βασισμένες σε ψευδείς ειδοποιήσεις.

cloudwatch:DeleteMetricStream , cloudwatch:PutMetricStream , cloudwatch:PutMetricData

Ένας επιτιθέμενος με τις άδειες cloudwatch:DeleteMetricStream , cloudwatch:PutMetricStream θα μπορούσε να δημιουργήσει και να διαγράψει ροές δεδομένων μετρήσεων, διακινδυνεύοντας την ασφάλεια, την παρακολούθηση και την ακεραιότητα των δεδομένων:

  • Δημιουργία κακόβουλων ροών: Δημιουργία ροών μετρήσεων για να στείλει ευαίσθητα δεδομένα σε μη εξουσιοδοτημένους προορισμούς.

  • Παρεμβολή στους πόρους: Η δημιουργία νέων ροών μετρήσεων με υπερβολικά δεδομένα θα μπορούσε να παράγει πολύ θόρυβο, προκαλώντας εσφαλμένες ειδοποιήσεις, καλύπτοντας τα πραγματικά θέματα.

  • Διαταραχή της παρακολούθησης: Διαγράφοντας ροές μετρήσεων, οι επιτιθέμενοι θα διακόψουν τη συνεχή ροή των δεδομένων παρακολούθησης. Με αυτόν τον τρόπο, οι κακόβουλες δραστηριότητές τους θα κρύβονται αποτελεσματικά.

Με παρόμοιο τρόπο, με την άδεια cloudwatch:PutMetricData, θα ήταν δυνατή η προσθήκη δεδομένων σε μια ροή μετρήσεων. Αυτό θα μπορούσε να οδηγήσει σε DoS λόγω της ποσότητας ανακατεμένων δεδομένων, καθιστώντας το εντελώς άχρηστο.

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>]

Παράδειγμα προσθήκης δεδομένων που αντιστοιχούν σε μια χρήση CPU 70% σε ένα συγκεκριμένο παράδειγμα EC2:

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

Πιθανή Επίδραση: Διακοπή στη ροή των δεδομένων παρακολούθησης, επηρεάζοντας την ανίχνευση ανωμαλιών και περιστατικών, τη χειραγώγηση πόρων και την αύξηση του κόστους λόγω της δημιουργίας υπερβολικών ροών μετρήσεων.

cloudwatch:StopMetricStreams, cloudwatch:StartMetricStreams

Ένας επιτιθέμενος θα μπορούσε να ελέγχει τη ροή των επηρεαζόμενων ροών δεδομένων μετρήσεων (κάθε ροή δεδομένων αν δεν υπάρχει περιορισμός πόρων). Με την άδεια cloudwatch:StopMetricStreams, οι επιτιθέμενοι θα μπορούσαν να κρύψουν τις κακόβουλες δραστηριότητές τους σταματώντας κρίσιμες ροές μετρήσεων.

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

Πιθανή Επίπτωση: Διακοπή στη ροή των δεδομένων παρακολούθησης, επηρεάζοντας την ανίχνευση ανωμαλιών και περιστατικών.

cloudwatch:TagResource, cloudwatch:UntagResource

Ένας επιτιθέμενος θα μπορούσε να προσθέσει, να τροποποιήσει ή να αφαιρέσει ετικέτες από πόρους CloudWatch (προς το παρόν μόνο συναγερμούς και κανόνες Contributor Insights). Αυτό θα μπορούσε να διακόψει τις πολιτικές ελέγχου πρόσβασης της οργάνωσής σας με βάση τις ετικέτες.

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

Πιθανή Επίπτωση: Διαταραχή των πολιτικών ελέγχου πρόσβασης βασισμένων σε ετικέτες.

Αναφορές

Μάθετε το χάκινγκ στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!

Άλλοι τρόποι υποστήριξης του HackTricks:

Last updated