INNER CODE UNIT · Go
BruteAsterisk
x90skysn3k/brutespray · brute/asterisk.go:12
func BruteAsterisk(host string, port int, user, password string, timeout time.Duration, cm *modules.ConnectionManager, params ModuleParams) *BruteResult {
addr := fmt.Sprintf("%s:%d", host, port)
conn, err := cm.Dial("tcp", addr)
if err != nil {
return &BruteResult{AuthSuccess: false, ConnectionSuccess: false, Error: err}
}
defer func() {
_ = conn.Close()
}()
deadline := time.Now().Add(timeout)
_ = conn.SetDeadline(deadline)
r := bufio.NewReader(conn)
// Read AMI banner (e.g., "Asterisk Call Manager/...")
banner, err := r.ReadString('\n')