-
Notifications
You must be signed in to change notification settings - Fork 14k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UDPScanner library does not detect broadcast packets #9244
Comments
sounds useful. Is this different enough to have a different mixin? UDPBroadcastScanner? |
I don't see any precedent for Socket::SO_BROADCAST being used in framework, but rather always raw sockets. Why is that? |
This has since caused an issue on two separate occasions. Once, on a device I promptly irrecoverably bricked because I'm awesome. Similar to the ASUS Infosvr service, the device replies to Secondly, on a HID VertX door controller, as per #10126. |
I'm undecided on The modules for the protocols mentioned above are dual use - they can be used to gather information from an IP directly, or all IPs that respond to a There's also the issue of whether broadcast modules should be moved to I have no intention of resolving this issue, but will leave the PRs open should someone wish to resolve the issue in the future. |
This issue also affects the |
Hi! This issue has been left open with no activity for a while now. We get a lot of issues, so we currently close issues after 60 days of inactivity. It’s been at least 30 days since the last update here. As a friendly reminder: the best way to see this issue, or any other, fixed is to open a Pull Request. |
Current behavior
The UDPScanner library does not detect broadcast packets.
There are services which will send a reply to a broadcast address, not the source IP address, regardless of whether the initial packet was broadcast or was sent to the host directly.
The
scanner_process
method is not executed when broadcast traffic appears on the network interface. As such, the@results
variable is never populated with the replies, and no replies are available inscanner_postscan
.The current approach taken by various auxiliary modules (scanner and discovery) is to use the
Msf::Exploit::Capture
library and bespoke spaghetti code that's not reusable.Additionally, this approach requires custom timeouts for the capture. Attempting to combine this approach with the UDPScanner library, so as to take advantage of the request batching, will cause the module to block on the UDPScanner's
ScannerRecvWindow
timeout duration which is executed for each batch of hosts.Expected behavior
The UDPScanner library should be able to detect broadcast packets.
Given that several UDPScanner modules already operate on the assumption that only network traffic directed at the metasploit host should be parsed, and given the noisy nature of modern networks thanks to zero-conf, any changes which allow broadcast traffic to be parsed by the UDPScanner library should probably be added as an optional configuration option (off by default).
The text was updated successfully, but these errors were encountered: