Συντάκτης: Evan Harris
Κίνδυνος: Χαμηλός
Επηρεαζόμενο στοιχείο: AWS Labs’ Amazon MQ Broker MCP Server

TL;DR

Μια ευπάθεια στον διακομιστή Amazon MQ Broker MCP της AWS Labs θα μπορούσε να επιτρέψει σε μη ελεγμένους ως προς την ταυτότητα επιτιθέμενους στο ίδιο δίκτυο να διαγράφουν και να δημιουργούν brokers Amazon MQ όταν ο διακομιστής MCP εκτελείται σε λειτουργία SSE. Αναφέραμε την ευπάθεια στην AWS. Διόρθωσαν το ζήτημα αφαιρώντας εντελώς το SSE. Δεν εκτέθηκαν διαπιστευτήρια, αλλά το ελάττωμα παραβίαζε τις αρχές των ελάχιστων προνομίων και θα μπορούσε να προκαλέσει λειτουργική διαταραχή. Οι χρήστες θα πρέπει να αναβαθμιστούν στην τελευταία έκδοση άμεσα.

Υπόβαθρο

Ο διακομιστής Amazon MQ Broker MCP της AWS Labs επιτρέπει στους βοηθούς AI να διαχειρίζονται brokers Amazon MQ μέσω απλών εντολών για τη δημιουργία, τη διαγραφή και τη διαμόρφωση της υποδομής ανταλλαγής μηνυμάτων που τροφοδοτεί κατανεμημένες εφαρμογές.

Ανακαλύψαμε μια ευπάθεια έκθεσης δικτύου στη λειτουργία SSE του διακομιστή Amazon MQ MCP που επιτρέπει σε επιτιθέμενους στο ίδιο δίκτυο να καταλαμβάνουν λειτουργίες διαχείρισης broker.

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

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

Επισκόπηση

%%{init: {'themeVariables': {'fontSize': '18px'}}}%%
flowchart TD
    A[Developer runs MCP Server
with --sse flag] --> B[Server binds to
0.0.0.0:8888
No authentication required] B --> C[Attacker gains network
access
• Open firewall rule
• Exposed port
• Local compromise] C --> D[Attacker discovers SSE
endpoint
Port scan or service
discovery] D --> E[Connect using MCP
Inspector
target-ip:8888/sse] E --> F[Enumerate available tools
list_brokers, delete_broker,
etc.] F --> G[List existing MQ brokers
Identify managed brokers
with mcp_server_version tag] G --> H{Server launched with
--allow-resource-creation?} H -->|Yes| I[Full Control:
• Delete brokers
• Create new brokers
• Resource sprawl
• Quota exhaustion] H -->|No| J[Limited Control:
• Delete existing brokers
• Denial of service
• Operational disruption] I --> K[Impact: Unauthorized
infrastructure management
without AWS credentials] J --> K style A fill:#e3f2fd style B fill:#fff3e0 style C fill:#ffebee style D fill:#ffebee style E fill:#ffebee style F fill:#ffebee style G fill:#ffebee style H fill:#fff9c4 style I fill:#ffcdd2 style J fill:#ffcdd2 style K fill:#c8e6c9

Σενάριο επίθεσης

  1. Ένας προγραμματιστής ή operator εκτελεί τον διακομιστή MQ MCP με:

    uv run server.py --sse

    Από προεπιλογή, ο διακομιστής MQ MCP δεσμεύεται στο 0.0.0.0, εκθέτοντας τον διακομιστή σε επιθέσεις βασισμένες στο δίκτυο.

  2. Ένας επιτιθέμενος αποκτά πρόσβαση στο δίκτυο όπου εκτελείται αυτός ο διακομιστής (π.χ. μέσω ενός ανοιχτού κανόνα τείχους προστασίας, μιας εκτεθειμένης θύρας ή μιας τοπικής παραβίασης).

  3. Ο επιτιθέμενος συνδέεται στην προεπιλεγμένη θύρα SSE (συνήθως 8888) χρησιμοποιώντας έναν client όπως ο MCP Inspector.

  4. Μόλις συνδεθεί, ο επιτιθέμενος μπορεί να:

    4.1 Απαριθμήσει τους brokers MQ χρησιμοποιώντας το εργαλείο list_brokers

    4.2 Εντοπίσει brokers με ετικέτα mcp_server_version, η οποία τους επισημαίνει ως διαχειριζόμενους από έναν διακομιστή MCP

    4.3 Εκτελέσει μεταλλακτικές λειτουργίες όπως delete_broker

  5. Εάν ο διακομιστής MCP εκκινήθηκε με το επιπλέον flag --allow-resource-creation, τότε ο επιτιθέμενος θα μπορούσε επίσης να δημιουργήσει νέους brokers MQ, οδηγώντας δυνητικά σε διάχυση πόρων ή εξάντληση ποσοστώσεων.

Proof of Concept

Μια βασική επίθεση αποδείχθηκε χρησιμοποιώντας:

  • Έναν διακομιστή MCP θύμα με ενεργοποιημένο το --sse
  • Έναν προσομοιωμένο επιτιθέμενο εντός του ίδιου δικτύου
  • Τον client MCP Inspector για σύνδεση και έκδοση εντολών

Ο επιτιθέμενος μπόρεσε να:

  • Απαριθμήσει brokers
  • Διαγράψει οποιονδήποτε broker με την κατάλληλη ετικέτα διαχείρισης
  • (Εάν είχε διαμορφωθεί) Δημιουργήσει νέους brokers στον λογαριασμό AWS του θύματος

Σε κανένα σημείο της επίθεσης δεν εκτέθηκαν ούτε απαιτήθηκαν διαπιστευτήρια AWS.

Αντίκτυπος

  • Άρνηση εξυπηρέτησης μέσω αφαίρεσης broker
  • Μη εξουσιοδοτημένη διαγραφή brokers Amazon MQ
  • Μη εξουσιοδοτημένη δημιουργία πόρων εάν είναι ενεργοποιημένο το --allow-resource-creation
  • Παραβίαση των ελάχιστων προνομίων, παρόλο που οι χρήστες λειτουργούν εντός των αναμενόμενων ορίων

Απόκριση της AWS Labs

Αφού γνωστοποιήσαμε το ζήτημα στις 22 Μαΐου 2025, η AWS Labs επιβεβαίωσε γρήγορα την ευπάθεια και έλαβε αποφασιστικά μέτρα. Αντί να υλοποιήσει έλεγχο ταυτότητας για τη λειτουργία SSE, η AWS Labs επέλεξε να αφαιρέσει εντελώς τη λειτουργικότητα SSE από τον διακομιστή MCP.

Η διόρθωση, που κυκλοφόρησε στο pull request #417, εξαλείφει πλήρως τη λειτουργία μεταφοράς SSE που δημιούργησε τη μη ελεγχόμενη ως προς την ταυτότητα έκθεση δικτύου. Από την έκδοση της 27ης Μαΐου 2025, το exploit που παρουσιάζεται εδώ δεν είναι πλέον δυνατό.

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

Συστάσεις

Για τους τελικούς χρήστες

  • Αναβαθμίστε στην τελευταία έκδοση του AWS MQ MCP Server
  • Μην εκθέτετε διακομιστές MCP σε δημόσια ή μη έμπιστα δίκτυα
  • Ελέγξτε τις εσωτερικές υπηρεσίες δικτύου για τυχαία έκθεση προνομιακού εργαλείου
  • Αποφύγετε τη μετάδοση του --allow-resource-creation εκτός εάν απαιτείται ρητά για την περίπτωση χρήσης σας

Χρονολόγιο

Ημερομηνία Συμβάν
21 Μαΐου 2025 Ανακαλύφθηκε η ευπάθεια
22 Μαΐου 2025 Αναφέρθηκε η ευπάθεια στην AWS Labs
27 Μαΐου 2025 Η AWS Labs κυκλοφορεί τη διόρθωση (PR #417) αφαιρώντας την υποστήριξη SSE
8 Ιανουαρίου 2026 Η Amazon CNA σήμανε το ζήτημα ως εκτός πεδίου εφαρμογής λόγω μη προεπιλεγμένης διαμόρφωσης
9 Ιανουαρίου 2026 Συμφωνήθηκε η ημερομηνία δημοσίευσης
15 Ιανουαρίου 2026 Δημόσια γνωστοποίηση