Route Table should have a default route for internet traffic control
High
Azure
General
routetables-route-table-default-route
Applies to
Microsoft.Network/routeTables
What CGPulse checks
A resource passes this rule when hasDefaultRoute must equal true. Anything else is reported as a finding with the evaluated property value attached as evidence.
How to fix it
Add a default route (0.0.0.0/0) to control internet-bound traffic through a firewall or NVA. In Azure Portal: Route Table > Routes > Add route. See: https://learn.microsoft.com/en-us/azure/virtual-network/manage-route-table
CLI
az network route-table route create -g "{rg}" --route-table-name "{name}" -n "default-to-nva" --address-prefix 0.0.0.0/0 --next-hop-type VirtualAppliance --next-hop-ip-address "<firewall-ip>"Bicep
resource routeTable 'Microsoft.Network/routeTables@2024-01-01' = {
name: '{name}'
location: location
properties: {
routes: [{
name: 'default-to-nva'
properties: {
addressPrefix: '0.0.0.0/0'
nextHopType: 'VirtualAppliance'
nextHopIpAddress: '<firewall-private-ip>'
}
}]
}
}Terraform
resource "azurerm_route_table" "{name}" {
name = "{name}"
resource_group_name = "{rg}"
location = var.location
route {
name = "default-to-nva"
address_prefix = "0.0.0.0/0"
next_hop_type = "VirtualAppliance"
next_hop_in_ip_address = "<firewall-private-ip>"
}
}
Compliance frameworks
Is your environment compliant with this rule?
CGPulse checks it — and 621 others — against your Azure and AWS accounts with read-only access.
Related Azure rules
- Action Group should be enabled
- Activity Log Alert should be enabled
- AKS cluster logs should be sent to Log Analytics
- AKS cluster must enable RBAC
- AKS cluster must enable RBAC
- AKS cluster should be a private cluster
- AKS cluster should disable local accounts
- AKS cluster should enable Azure RBAC for Kubernetes