A penetration tester is assessing an industrial MQTT broker that requires client authentication but lacks Access Control Lists (ACLs). The tester successfully connects using valid credentials. Which attack technique can the tester leverage to perform denial-of-service against sensitive actuator topics?
Trap 1: Executing an MQTT-specific TCP SYN flood against port 1883
This is a standard network-layer TCP SYN flood, not an application-layer MQTT attack leveraging missing ACLs.
Trap 2: Subscribing to the '$SYS/#' system topic hierarchy using wildcard…
While '$SYS/#' provides broker telemetry, standard brokers restrict publishing to '$SYS', and reading telemetry does not inherently cause a denial of service.
Trap 3: Sending a CONNECT packet with an invalid keep-alive timer value of…
A keep-alive value of zero disables the keep-alive mechanism, which is a valid configuration and does not cause a denial of service on standard brokers.
- A
Executing an MQTT-specific TCP SYN flood against port 1883
Why it fails: This is a standard network-layer TCP SYN flood, not an application-layer MQTT attack leveraging missing ACLs.
- B
Subscribing to the '$SYS/#' system topic hierarchy using wildcard expansion
Why it fails: While '$SYS/#' provides broker telemetry, standard brokers restrict publishing to '$SYS', and reading telemetry does not inherently cause a denial of service.
- C
Sending a CONNECT packet with an invalid keep-alive timer value of zero
Why it fails: A keep-alive value of zero disables the keep-alive mechanism, which is a valid configuration and does not cause a denial of service on standard brokers.
- D
Publishing retained messages with empty payloads to critical command topics
Retained messages with empty payloads overwrite the broker's stored value for a topic, so every new subscriber immediately receives a blank command, clearing actuator setpoints. Without ACLs, valid credentials permit publishing to sensitive command topics, achieving denial-of-service.