GenericMessaging
class: Messaging
Realizing resources
azure azure
| resource | scope | enumerate | required permissions |
|---|---|---|---|
azure:signalr:service |
global | arg:microsoft.signalrservice/signalr |
Microsoft.SignalRService/signalr/read |
As edge source
As edge target
Exposure sites
aws-accessanalyzer-finding-details-metadataaws-appflow-flow-data-destinationaws-athena-query-result-rowsaws-backup-recovery-point-restored-contentaws-bedrock-runtime-prompt-response-payloadaws-cloudfront-key-value-store-valueaws-cloudtrail-event-data-store-query-resultsaws-cloudtrail-event-request-response-payload
Rules that touch GenericMessaging 27
An API Gateway integration's credentials field references an IAM role; reading the integration config reveals which role the API uses as its execution identity.
Redirecting an existing flow's destination to an attacker-controlled endpoint and triggering the flow exfiltrates the SaaS data it reads (Salesforce records, Zendesk tickets, Slack messages, etc.).
aws
CanExfiltrateA Kinesis stream resource policy granting kinesis:PutRecord(s) to a principal in another account is cross-account publish trust, enabling that external principal to trigger the stream's Lambda consumer.
A Kinesis stream resource policy granting read actions (GetRecords/GetShardIterator/SubscribeToShard) to a foreign account enables that account to read the stream's records, supporting data exfiltration.
kinesis:PutResourcePolicy on a stream grants the ability to rewrite the stream's resource policy, enabling privilege escalation via grant injection or cross-account access expansion.
aws
CanModifyPolicykinesis:PutRecord(s) to a stream with an active Lambda ESM triggers the consumer function with an attacker-influenced record payload.
aws
CanTriggerkinesis:GetRecords + kinesis:GetShardIterator lets a principal read raw records from the stream, enabling data exfiltration or credential harvest if records carry sensitive content.
aws
CanReadDatakinesis:RegisterStreamConsumer + kinesis:SubscribeToShard enables reading from a stream via the enhanced fan-out path (push-based), equivalent to GetRecords-based polling.
aws
CanReadDataReading the Secrets Manager secret that holds Amazon MQ broker credentials gives the principal the ability to publish to the broker queue (CONDITIONAL on network reachability to the broker endpoint), which messaging-chains then rolls up to CanTrigger on the Lambda consumer.
aws
CanWriteDataAn Amazon MQ broker with PubliclyAccessible=true is reachable from the internet over wire-protocol ports; obtaining broker credentials is sufficient to publish messages and trigger bound Lambda consumers.
An MSK cluster resource-based policy granting kafka-cluster:WriteData or ReadData to a principal in another account is cross-account publish/consume trust; feeds messaging-chains rule 4 and can-control's CanEnterAccount derivation.
An MSK cluster with publiclyAccessible enabled and an open broker security group (port 9198 from 0.0.0.0/0) is internet-reachable; IAM or SASL/SCRAM authentication still required.
An MSK Replicator reading from a source cluster with kafka-cluster:ReadData permission enables cross-cluster/cross-account data exfiltration of message contents.
aws
CanReadDatakafka:UpdateClusterConfiguration applies a new Kafka broker configuration version to the MSK cluster, affecting settings such as auto.create.topics.enable, log retention, and replication factors.
kafka:UpdateSecurity modifies cluster authentication and encryption settings, including potentially enabling unauthenticated client access, which removes the IAM and Kafka ACL authorization gates.
A Step Functions activity task state embeds the current execution data context as the task payload returned by GetActivityTask; if upstream states processed sensitive data, the payload may contain secrets.
aws
ContainsSecretstates:GetActivityTask returns the next queued task input from a Step Functions activity, exposing the execution data context to the poller - any IAM principal with this permission can dequeue tasks from the activity.
aws
CanReadDataAn Event Hubs namespace with no IP/VNet network restrictions and publicNetworkAccess not Disabled is internet-reachable; any holder of SAS or Entra data-plane credentials can access it from the internet.
azure
ExposedToInternetA namespace or entity authorization rule with usable SAS keys (disableLocalAuth=false) embeds connection-string credential material; any holder of the keys can authenticate to the Event Hubs data plane.
azure
ExposesCredentialFull control of a Service Bus namespace (Contributor / Owner at namespace scope; NOT Service Bus Data Owner which lacks ARM write).
azure
CanAdministerWrite access to Service Bus authorization rules allows creating a new Send-capable SAS rule, then calling listKeys to extract a connection string - a two-step credential escalation.
azure
CanModifyConfigurationA Service Bus namespace with readable SAS keys exposes its connection-string credential to any principal with listKeys access.
azure
ExposesCredentialA Service Bus namespace with active SAS authorization rules embeds connection-string credentials usable at data-plane without Entra RBAC.
azure
ContainsSecretWrite access to the namespace network rule set allows disabling the default deny action or removing IP/VNet filters, opening the data-plane to previously blocked sources.
azure
CanModifyConfigurationA Service Bus namespace with publicNetworkAccess=Enabled and no restrictive IP filter is reachable from the internet; any holder of a valid SAS key or Entra token can connect from any IP.
azure
ExposedToInternetA confirmed event-source binding from a Service Bus queue to a compute consumer (Azure Function serviceBusTrigger, Logic App connector, Container App KEDA scaler) - the Phase-10 binding fact.
azure
CanTrigger