diff --git a/modules/net_sniff_dns.go b/modules/net_sniff_dns.go index ab6028c0..5e24d378 100644 --- a/modules/net_sniff_dns.go +++ b/modules/net_sniff_dns.go @@ -1,8 +1,6 @@ package modules import ( - "fmt" - "github.com/evilsocket/bettercap-ng/core" "github.com/google/gopacket" @@ -23,7 +21,7 @@ func dnsParser(ip *layers.IPv4, pkt gopacket.Packet, udp *layers.UDP) bool { if a.IP == nil { continue } - fmt.Printf("[%s] %s %s > %s : %s is %s\n", + SniffPrinter("[%s] %s %s > %s : %s is %s\n", vTime(pkt.Metadata().Timestamp), core.W(core.BG_DGRAY+core.FG_WHITE, "dns"), vIP(ip.SrcIP), diff --git a/modules/net_sniff_http.go b/modules/net_sniff_http.go index 95dce74b..c27ebb33 100644 --- a/modules/net_sniff_http.go +++ b/modules/net_sniff_http.go @@ -31,7 +31,7 @@ func httpParser(ip *layers.IPv4, pkt gopacket.Packet, tcp *layers.TCP) bool { } url += fmt.Sprintf("%s", string(m[2])) - fmt.Printf("[%s] %s %s %s %s\n", + SniffPrinter("[%s] %s %s %s %s\n", vTime(pkt.Metadata().Timestamp), core.W(core.BG_RED+core.FG_BLACK, "http"), vIP(ip.SrcIP), diff --git a/modules/net_sniff_parsers.go b/modules/net_sniff_parsers.go index 2a6b5934..bf21ffc2 100644 --- a/modules/net_sniff_parsers.go +++ b/modules/net_sniff_parsers.go @@ -10,6 +10,10 @@ import ( "github.com/google/gopacket/layers" ) +type SniffPrinterType func(format string, args ...interface{}) (int, error) + +var SniffPrinter = SniffPrinterType(fmt.Printf) + func tcpParser(ip *layers.IPv4, pkt gopacket.Packet, verbose bool) { tcp := pkt.Layer(layers.LayerTypeTCP).(*layers.TCP) @@ -20,7 +24,7 @@ func tcpParser(ip *layers.IPv4, pkt gopacket.Packet, verbose bool) { } if verbose == true { - fmt.Printf("[%s] %s %s:%s > %s:%s %s\n", + SniffPrinter("[%s] %s %s:%s > %s:%s %s\n", vTime(pkt.Metadata().Timestamp), core.W(core.BG_LBLUE+core.FG_BLACK, "tcp"), vIP(ip.SrcIP), @@ -39,7 +43,7 @@ func udpParser(ip *layers.IPv4, pkt gopacket.Packet, verbose bool) { } if verbose == true { - fmt.Printf("[%s] %s %s:%s > %s:%s %s\n", + SniffPrinter("[%s] %s %s:%s > %s:%s %s\n", vTime(pkt.Metadata().Timestamp), core.W(core.BG_DGRAY+core.FG_WHITE, "udp"), vIP(ip.SrcIP), @@ -52,7 +56,7 @@ func udpParser(ip *layers.IPv4, pkt gopacket.Packet, verbose bool) { func unkParser(ip *layers.IPv4, pkt gopacket.Packet, verbose bool) { if verbose == true { - fmt.Printf("[%s] [%s] %s > %s (%d bytes)\n", + SniffPrinter("[%s] [%s] %s > %s (%d bytes)\n", vTime(pkt.Metadata().Timestamp), pkt.TransportLayer().LayerType(), vIP(ip.SrcIP), diff --git a/modules/net_sniff_sni.go b/modules/net_sniff_sni.go index 3a316e50..b6e7612b 100644 --- a/modules/net_sniff_sni.go +++ b/modules/net_sniff_sni.go @@ -31,7 +31,7 @@ func sniParser(ip *layers.IPv4, pkt gopacket.Packet, tcp *layers.TCP) bool { domain = fmt.Sprintf("%s:%d", domain, tcp.DstPort) } - fmt.Printf("[%s] %s %s > %s\n", + SniffPrinter("[%s] %s %s > %s\n", vTime(pkt.Metadata().Timestamp), core.W(core.BG_YELLOW+core.FG_WHITE, "sni"), vIP(ip.SrcIP),