Back to Checks
Amazon MQ broker has automated minor version upgrades enabled
mq_broker_auto_minor_version_upgrades
Service: mqSeverity: low
OfficialBuilt-inVerified
Categories:vulnerabilities
Resource Type:AwsAmazonMQBroker
Amazon MQ brokers have autoMinorVersionUpgrade enabled to automatically apply supported minor and patch engine updates during the scheduled maintenance window.
Risk
Without automatic minor upgrades, brokers may run known-vulnerable engine versions, enabling exploits that impact:
- Confidentiality: message disclosure
- Integrity: tampering or replay
- Availability: crashes/DoS and instability
Delayed patches also increase operational risk and drift.
Run this check with Prowler
Run in Prowler CloudRun
prowler aws --checks mq_broker_auto_minor_version_upgradesRecommendation
Enable autoMinorVersionUpgrade on all brokers to reduce patch latency.
- Align upgrades with a defined maintenance window
- Validate changes in staging before production
- Monitor broker health and logs after updates
- Maintain HA and tested backups for rollback (defense in depth)
Remediation
CLI
aws mq update-broker --broker-id <example_resource_id> --auto-minor-version-upgradeTerraform
# Terraform: Enable automatic minor version upgrades on an MQ broker
resource "aws_mq_broker" "<example_resource_name>" {
broker_name = "<example_resource_name>"
engine_type = "ActiveMQ"
engine_version = "<ENGINE_VERSION>"
host_instance_type = "mq.t3.micro"
publicly_accessible = true
auto_minor_version_upgrade = true # Critical: enables automatic minor version upgrades
user {
username = "<USERNAME>"
password = "<PASSWORD>"
}
}NativeIaC
# CloudFormation: Enable automatic minor version upgrades on an MQ broker
Resources:
<example_resource_name>:
Type: AWS::AmazonMQ::Broker
Properties:
BrokerName: <example_resource_name>
AutoMinorVersionUpgrade: true # Critical: enables automatic minor version upgrades
DeploymentMode: SINGLE_INSTANCE
EngineType: ACTIVEMQ
EngineVersion: <ENGINE_VERSION>
HostInstanceType: mq.t3.micro
PubliclyAccessible: true
Users:
- Username: <USERNAME>
Password: <PASSWORD>Other
1Open the Amazon MQ console
2Go to Brokers and select the target broker
3Click Edit
4Under Maintenance, check Enable automatic minor version upgrades
5Click Save
Check Code
from prowler.lib.check.models import Check, Check_Report_AWS
from prowler.providers.aws.services.mq.mq_client import mq_client
class mq_broker_auto_minor_version_upgrades(Check):
def execute(self):
findings = []
for broker in mq_client.brokers.values():
report = Check_Report_AWS(metadata=self.metadata(), resource=broker)
report.status = "PASS"
report.status_extended = f"MQ Broker {broker.name} does have automated minor version upgrades enabled."
if not broker.auto_minor_version_upgrade:
report.status = "FAIL"
report.status_extended = f"MQ Broker {broker.name} does not have automated minor version upgrades enabled."
findings.append(report)
return findingsReferences
- https://www.trendmicro.com/trendaivisiononecloudriskmanagement/knowledge-base/aws/MQ/auto-minor-version-upgrade.html
- https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/upgrading-brokers.html#upgrading-brokers-automatic-upgrades
- https://docs.aws.amazon.com/securityhub/latest/userguide/mq-controls.html#mq-3
- https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/upgrading-brokers.html#upgrading-brokers-automatic-upgrades.html