Using router object returned from get_router locally, allow adjustment of firewall rules. [requires LAN to have access to 8080]
Firewalls are quite powerful and can add more layers of security to networks, but sadly they do not seem to be utilized by players as much as they could be.
The main 2 reasons I assume players do not make better use of firewalls is disables & lack of way to programmatically adjust firewall rules.
Currently, the only way to access firewall configuration is with a shell on the network that can launch browser.exe. My proposed change would leverage these existing mechanics to facilitate usage of methods like get_router.add_rule(...) .
In order for an attacker to change the rules, they would need to be able to launch a program on a computer with a LAN that is allowed to connect to the router via port 8080. This can be circumvented by the server owner by ensuring file permissions are restrictive and maintaining best practices. This is the current case with Browser.exe.
The end result of this change is a new way for white hats to protect their networks, enforce global ban lists etc, & also as an attack vector for malicious programs.
add_rule
// add_rule(ACTION: string, PORT: number, SOURCE: string, DESTINATION: string) : 1 on success, string on failure
// usage
Router = get_router
Router.add_rule("ALLOW", 22, "ANY", "192.168.0.2")
remove_rule
// remove_rule(ACTION: string, PORT: number, SOURCE: string, DESTINATION: string) : 1 on success, string on failure
// usage
Router = get_router
Router.remove_rule("ALLOW", 22, "ANY", "192.168.0.2")
For changing rules on specific router/switch on a network, specificy the LAN of the device
specific_router = get_router("10.0.21.1") // must be a LAN
specific_router.add_rule("ALLOW", 22, "192.168.1.4", "10.0.21.2")