feat: implement DNS server fingerprinting (HAN-384) (#10)
CI / test (push) Has been cancelled
CI / test (push) Has been cancelled
This commit was merged in pull request #10.
This commit is contained in:
+13
-6
@@ -44,8 +44,9 @@ type jsonResult struct {
|
||||
}
|
||||
|
||||
type jsonServer struct {
|
||||
Name string `json:"name"`
|
||||
IPs []string `json:"ips"`
|
||||
Name string `json:"name"`
|
||||
IPs []string `json:"ips"`
|
||||
Version string `json:"version,omitempty"`
|
||||
}
|
||||
|
||||
type jsonSummary struct {
|
||||
@@ -104,10 +105,16 @@ func (f *jsonFormatter) WriteSummary(results []traverse.TraversalResult) error {
|
||||
if f.cfg.ShowServers {
|
||||
servers := collectServers(results)
|
||||
for name, ips := range servers {
|
||||
f.payload.Servers = append(f.payload.Servers, jsonServer{
|
||||
Name: name,
|
||||
IPs: ips,
|
||||
})
|
||||
srv := jsonServer{Name: name, IPs: ips}
|
||||
if f.cfg.ShowVersions && f.cfg.Fingerprints != nil {
|
||||
for _, ip := range ips {
|
||||
if v := f.cfg.Fingerprints[ip]; v != "" {
|
||||
srv.Version = v
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
f.payload.Servers = append(f.payload.Servers, srv)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user