January 2018
Intermediate to advanced
340 pages
8h 6m
English
After identifying the ports that are open, you can try to read from the connection and see whether the service provides a banner or an initial message.
The following example works like the previous, but instead of just connecting and disconnecting, it will connect and try to read an initial message from the server. If the server provides any data, it is printed, but if the server does not send any data, nothing is printed:
package mainimport ( "strconv" "log" "net" "time")var ipToScan = "127.0.0.1"func main() { activeThreads := 0 doneChannel := make(chan bool) for port := 0; port <= 1024 ; port++ { go grabBanner(ipToScan, port, doneChannel) activeThreads++ } // Wait for all threads to finish for activeThreads ...Read now
Unlock full access