net.Dial and net.DialTCP create network connections. Dial() is an SSRF sink when the address is user-controlled.
.Dial().DialTCP().LookupHost().Dial()SinkDial(network, address string) (Conn, error)
Creates network connection to address. SSRF sink when address is user-controlled.
1.DialTCP()SinkDialTCP(network string, laddr, raddr *TCPAddr) (*TCPConn, error)
Creates TCP connection. SSRF sink when raddr is user-controlled.
2.LookupHost()SinkLookupHost(host string) ([]string, error)
DNS lookup. SSRF vector when host is user-controlled.
0| FQN | Field | |
|---|---|---|
| net | fqns[0] |
Wrong FQN → 0 findings. Verify with: change fqns to garbage → must produce 0 results.
// standard library — no go.mod entry required
from codepathfinder.go_rule import GoNetDial