Greetings.
I see Vallepu Venkateswarlu has explained that virtual machines in the same subnet can communicate based on a default NSG rule allowing intra-subnet traffic.
This is because the default rule of AllowVNetInBound takes precedence over DenyAllInbound and hence the Intra-Subnet traffic is allowed.
I also see you mentioned "successful attempts to bypass the NSG from malicious IPs"
- Can you please share the list of source IP(s)
- Is this being simulated by you?
- Or some random IP(s) you are considering to be malicious?
Next Steps:
- You mentioned UFW is logging traffic on Port 80
- Can you please share what are the source IPs here? Are they from
- private IPs of the VMs from same subnet/VNET
- or Public IPs
- or 168.63.129.16 (Wireserver) IP?
If they are from Private IPs,
- Then you have to create a custom NSG rule and explicitly block the traffic
If they are from 168.63.129.16 (Wireserver) IP,
- Then I would recommend you let it be
- As certain health checks from platform are done from 168.63.129.16
If they are from Public IP,
- Ideally, this should not be happening with default NSG rules.
- Can you confirm if this VM is behind an Azure Load Balancer or not?
- Can you run the IP flow verify or NSG diagnostics with source IP as the packet logged by UFW (This is important to identify which rule is allowing the packets, please do not test with a random public IP)
Cheers,
Kapil