From 444f55c8f5e98c5d100e4e612473778648c334e2 Mon Sep 17 00:00:00 2001 From: "kali kaneko (leap communications)" Date: Tue, 30 Nov 2021 17:37:49 +0100 Subject: [bug] validate ips --- pkg/helper/helper.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/pkg/helper/helper.go b/pkg/helper/helper.go index 006d23b..d23cefd 100644 --- a/pkg/helper/helper.go +++ b/pkg/helper/helper.go @@ -24,6 +24,7 @@ package helper import ( "encoding/json" "log" + "net" "net/http" "os/exec" ) @@ -128,6 +129,12 @@ func firewallStartHandler(w http.ResponseWriter, r *http.Request) { return } + for _, gw := range gateways { + if !validAddress(gw) { + w.Write([]byte("bad argument")) + } + } + err = firewallStart(gateways) if err != nil { log.Printf("Error starting firewall: %v", err) @@ -167,3 +174,11 @@ func getArgs(r *http.Request) ([]string, error) { err := decoder.Decode(&args) return args, err } + +func validAddress(ip string) bool { + if net.ParseIP(ip) == nil { + return false + } else { + return true + } +} -- cgit v1.2.3