utils

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Mar 20, 2023 License: MIT Imports: 8 Imported by: 5

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	BodyA0 = `(?:`
	BodyB0 = `(`
	BodyC0 = `(?:[\.]{1,2}/[A-Za-z0-9-_/\\?&@\.?=%]+)`
	BodyC1 = `|(https?://[A-Za-z0-9_\-\.]+([\.]{0,2})?\/[A-Za-z0-9-_/\\?&@\.?=%]+)`
	BodyC2 = `|(/[A-Za-z0-9-_/\\?&@\.%]+\.(aspx?|action|cfm|cgi|do|pl|css|x?html?|js(p|on)?|pdf|php5?|py|rss))`
	BodyB1 = `)`
	BodyA1 = `)`

	JsA0 = `(?:"|'|\s)`
	JsB0 = `(`
	JsC0 = `((https?://[A-Za-z0-9_\-\.]+(:\d{1,5})?)+([\.]{1,2})?/[A-Za-z0-9/\-_\.\\%]+([\?|#][^"']+)?)`
	JsC1 = `|((\.{1,2}/)?[a-zA-Z0-9\-_/\\%]+\.(aspx?|js(on|p)?|html|php5?|html|action|do)([\?|#][^"']+)?)`
	JsC2 = `|((\.{0,2}/)[a-zA-Z0-9\-_/\\%]+(/|\\)[a-zA-Z0-9\-_]{3,}([\?|#][^"|']+)?)`
	JsC3 = `|((\.{0,2})[a-zA-Z0-9\-_/\\%]{3,}/)`
	JsB1 = `)`
	JsA1 = `(?:"|'|\s)`
)
View Source
var DefaultFormFillData = FormFillData{
	Email:       fmt.Sprintf("%s@katanacrawler.io", xid.New().String()),
	Color:       "#e66465",
	Password:    "katanaP@assw0rd1",
	PhoneNumber: "2124567890",
	Placeholder: "katana",
}

Functions

func ExtractBodyEndpoints

func ExtractBodyEndpoints(data string) []string

ExtractBodyEndpoints extracts body endpoints from a data item

func ExtractRelativeEndpoints

func ExtractRelativeEndpoints(data string) []string

ExtractRelativeEndpoints extracts relative endpoints from a data item

func FlattenHeaders added in v1.0.0

func FlattenHeaders(headers map[string][]string) map[string]string

func FormInputFillSuggestions

func FormInputFillSuggestions(inputs []FormInput) map[string]string

FormInputFillSuggestions returns a list of form filling suggestions for inputs returning the specified recommended values.

func IsURL

func IsURL(url string) bool

IsURL returns true if a provided string is URL

func ParseLinkTag

func ParseLinkTag(value string) []string

ParseLinkTag parses link tag values returning found urls

Inspired from: https://github.com/tomnomnom/linkheader

func ParseRefreshTag

func ParseRefreshTag(value string) string

ParseRefreshTag parses refresh tag values returning found urls

func ParseSRCSetTag

func ParseSRCSetTag(value string) []string

ParseSRCSetTag parses srcset tag returning found URLs

func WebUserAgent

func WebUserAgent() string

WebUserAgent returns the chrome-web user agent

Types

type FormFillData

type FormFillData struct {
	Email       string `yaml:"email"`
	Color       string `yaml:"color"`
	Password    string `yaml:"password"`
	PhoneNumber string `yaml:"phone"`
	Placeholder string `yaml:"placeholder"`
}

FormFillData contains suggestions for form filling

var FormData FormFillData

FormData is the global form fill data instance

type FormInput

type FormInput struct {
	Type       string
	Name       string
	Value      string
	Attributes map[string]string
}

FormInput is an input for a form field

func ConvertGoquerySelectionToFormInput

func ConvertGoquerySelectionToFormInput(item *goquery.Selection) FormInput

ConvertGoquerySelectionToFormInput converts goquery selection to form input

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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