core

package
v1.3.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 4, 2018 License: MIT Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	Name    = "aquatone"
	Version = "1.3.2"
	Author  = "Michael Henriksen"
	Website = "https://github.com/michenriksen/aquatone"
)
View Source
const (
	Host          = "host"
	URL           = "url"
	URLResponsive = "url:responsive"
	TCPPort       = "port:tcp"
)
View Source
const (
	FATAL     = 5
	ERROR     = 4
	WARN      = 3
	IMPORTANT = 2
	INFO      = 1
	DEBUG     = 0
)
View Source
const (
	Template = `` /* 11800-byte string literal not displayed */

)

Variables

View Source
var (
	SmallPortList = []int{80, 443}

	MediumPortList = []int{80, 443, 8000, 8080, 8443}

	LargePortList = []int{80, 81, 443, 591, 2082, 2087, 2095, 2096, 3000, 8000, 8001,
		8008, 8080, 8083, 8443, 8834, 8888}

	XLargePortList = []int{80, 81, 300, 443, 591, 593, 832, 981, 1010, 1311,
		2082, 2087, 2095, 2096, 2480, 3000, 3128, 3333, 4243, 4567,
		4711, 4712, 4993, 5000, 5104, 5108, 5800, 6543, 7000, 7396,
		7474, 8000, 8001, 8008, 8014, 8042, 8069, 8080, 8081, 8088,
		8090, 8091, 8118, 8123, 8172, 8222, 8243, 8280, 8281, 8333,
		8443, 8500, 8834, 8880, 8888, 8983, 9000, 9043, 9060, 9080,
		9090, 9091, 9200, 9443, 9800, 9981, 12443, 16080, 18091, 18092,
		20720, 28017}
)

Functions

func GetPageStructure

func GetPageStructure(body io.Reader) ([]string, error)

func GetSimilarity

func GetSimilarity(a, b []string) float64

func HostAndPortToURL

func HostAndPortToURL(host string, port int, protocol string) string

Types

type Header struct {
	Name  string
	Value string
}

func (Header) IsInsecure

func (h Header) IsInsecure() bool

func (Header) IsSecure

func (h Header) IsSecure() bool

type Logger

type Logger struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func (*Logger) Debug

func (l *Logger) Debug(format string, args ...interface{})

func (*Logger) Error

func (l *Logger) Error(format string, args ...interface{})

func (*Logger) Fatal

func (l *Logger) Fatal(format string, args ...interface{})

func (*Logger) Important

func (l *Logger) Important(format string, args ...interface{})

func (*Logger) Info

func (l *Logger) Info(format string, args ...interface{})

func (*Logger) Log

func (l *Logger) Log(level int, format string, args ...interface{})

func (*Logger) SetDebug

func (l *Logger) SetDebug(d bool)

func (*Logger) SetSilent

func (l *Logger) SetSilent(s bool)

func (*Logger) Warn

func (l *Logger) Warn(format string, args ...interface{})

type Options

type Options struct {
	Threads           *int
	OutDir            *string
	Proxy             *string
	ChromePath        *string
	Resolution        *string
	Ports             *string
	ScanTimeout       *int
	HTTPTimeout       *int
	ScreenshotTimeout *int
	Nmap              *bool
	SaveBody          *bool
	Silent            *bool
	Debug             *bool
}

func ParseOptions

func ParseOptions() (Options, error)

type Page

type Page struct {
	URL            string
	Status         string
	Headers        []Header
	HeadersPath    string
	BodyPath       string
	ScreenshotPath string
	HasScreenshot  bool
}

func NewCluster

func NewCluster(urls []string, session *Session) ([]Page, error)

func NewPage

func NewPage(url string, session *Session) (Page, error)

func (*Page) AddHeader

func (p *Page) AddHeader(name string, value string)

type Report

type Report struct {
	Data ReportData
}

func NewReport

func NewReport(data ReportData) *Report

func (*Report) Render

func (r *Report) Render(dest io.Writer) error

type ReportData

type ReportData struct {
	Session  *Session
	Clusters [][]Page
}

type Session

type Session struct {
	sync.Mutex
	Version        string
	Options        Options `json:"-"`
	Out            *Logger `json:"-"`
	Stats          *Stats
	ResponsiveURLs []string
	Ports          []int
	EventBus       EventBus.Bus                  `json:"-"`
	WaitGroup      sizedwaitgroup.SizedWaitGroup `json:"-"`
}

func NewSession

func NewSession() (*Session, error)

func (*Session) AddResponsiveURL

func (s *Session) AddResponsiveURL(url string)

func (*Session) BaseFilenameFromURL

func (s *Session) BaseFilenameFromURL(stru string) string

func (*Session) End

func (s *Session) End()

func (*Session) GetFilePath

func (s *Session) GetFilePath(p string) string

func (*Session) ReadFile

func (s *Session) ReadFile(p string) ([]byte, error)

func (*Session) Start

func (s *Session) Start()

type Stats

type Stats struct {
	StartedAt            time.Time
	FinishedAt           time.Time
	PortOpen             uint32
	PortClosed           uint32
	RequestSuccessful    uint32
	RequestFailed        uint32
	ResponseCode2xx      uint32
	ResponseCode3xx      uint32
	ResponseCode4xx      uint32
	ResponseCode5xx      uint32
	ScreenshotSuccessful uint32
	ScreenshotFailed     uint32
}

func (*Stats) Duration

func (s *Stats) Duration() time.Duration

func (*Stats) IncrementPortClosed

func (s *Stats) IncrementPortClosed()

func (*Stats) IncrementPortOpen

func (s *Stats) IncrementPortOpen()

func (*Stats) IncrementRequestFailed

func (s *Stats) IncrementRequestFailed()

func (*Stats) IncrementRequestSuccessful

func (s *Stats) IncrementRequestSuccessful()

func (*Stats) IncrementResponseCode2xx

func (s *Stats) IncrementResponseCode2xx()

func (*Stats) IncrementResponseCode3xx

func (s *Stats) IncrementResponseCode3xx()

func (*Stats) IncrementResponseCode4xx

func (s *Stats) IncrementResponseCode4xx()

func (*Stats) IncrementResponseCode5xx

func (s *Stats) IncrementResponseCode5xx()

func (*Stats) IncrementScreenshotFailed

func (s *Stats) IncrementScreenshotFailed()

func (*Stats) IncrementScreenshotSuccessful

func (s *Stats) IncrementScreenshotSuccessful()

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL