models

package
v0.11.1 Latest Latest
Warning

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

Go to latest
Published: May 1, 2025 License: MIT Imports: 0 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ScannerRestler string = "RESTler"
	ScannerZap     string = "Zap"
	ScannerNuclei  string = "Nuclei"
)
View Source
const (
	AppTypeREST string = "REST"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Alerts added in v0.9.13

type Alerts struct {
	PluginID   string      `json:"pluginid"`
	AlertRef   string      `json:"alertRef"`
	Alert      string      `json:"alert"`
	Name       string      `json:"name"`
	Riskcode   string      `json:"riskcode"`
	Confidence string      `json:"confidence"`
	Riskdesc   string      `json:"riskdesc"`
	Desc       string      `json:"desc"`
	Instances  []Instances `json:"instances"`
	Count      string      `json:"count"`
	Solution   string      `json:"solution"`
	Otherinfo  string      `json:"otherinfo"`
	Reference  string      `json:"reference"`
	CWE        string      `json:"cweid"`
	Wascid     string      `json:"wascid"`
	Sourceid   string      `json:"sourceid"`
	Tags       []Tags      `json:"tags"`
}

type AuthConfig added in v0.1.0

type AuthConfig struct {
	// Single user authentication fields
	Method          AuthMethod             `json:"method,omitempty"`
	Username        string                 `json:"username,omitempty"`
	UserDescription string                 `json:"userDescription,omitempty"`
	Headers         map[string]string      `json:"headers,omitempty"`
	Password        string                 `json:"password,omitempty"`
	Token           string                 `json:"token,omitempty"`
	ClientID        string                 `json:"clientId,omitempty"`
	ClientSecret    string                 `json:"clientSecret,omitempty"`
	TokenURL        string                 `json:"tokenUrl,omitempty"`
	Scope           string                 `json:"scope,omitempty"`
	LoginURL        string                 `json:"loginUrl,omitempty"`
	LoginBody       interface{}            `json:"loginBody,omitempty"`
	LoginSelector   string                 `json:"loginSelector,omitempty"`
	CustomHeaders   map[string]string      `json:"customHeaders,omitempty"`
	CustomParams    map[string]interface{} `json:"customParams,omitempty"`

	// Multi-user authentication fields
	AuthorizationModel bool       `json:"authorizationModel,omitempty"`
	Users              []UserAuth `json:"users,omitempty"`
}

AuthConfig represents the authentication configuration for Nullify DAST

type AuthMethod added in v0.11.0

type AuthMethod string
const (
	AuthMethodNone    AuthMethod = "none"
	AuthMethodBasic   AuthMethod = "basic"
	AuthMethodBearer  AuthMethod = "bearer"
	AuthMethodSession AuthMethod = "session"
	AuthMethodOAuth   AuthMethod = "oauth"
	AuthMethodSAML    AuthMethod = "saml"
	AuthMethodJWT     AuthMethod = "jwt"
	AuthMethodCustom  AuthMethod = "custom"
)

type AuthSources

type AuthSources struct {
	NullifyToken string `json:"nullifyToken" arg:"--nullify-token" help:"Nullify API token"`
	GitHubToken  string `json:"githubToken" arg:"--github-token" help:"GitHub actions job token to exchange for a Nullify API token"`
}

type DASTFinding added in v0.1.0

type DASTFinding struct {
	ID       string `json:"id"`
	Scanner  string `json:"scanner"`
	Title    string `json:"title"`
	Severity string `json:"severity"`
	AppType  string `json:"appType"`
	CWE      string `json:"cwe"`
	Solution string `json:"solution"`
	Tags     []Tags
	REST     RESTFinding `json:"rest"`
}

type Instances added in v0.9.13

type Instances struct {
	URI            string `json:"uri"`
	Method         string `json:"method"`
	Param          string `json:"param"`
	Attack         string `json:"attack"`
	Evidence       string `json:"evidence"`
	Otherinfo      string `json:"otherinfo"`
	RequestHeader  string `json:"request-header"`
	RequestBody    string `json:"request-body"`
	ResponseHeader string `json:"response-header"`
	ResponseBody   string `json:"response-body"`
}

type MultiUserAuthConfig added in v0.11.0

type MultiUserAuthConfig struct {
	Method        AuthMethod             `json:"method,omitempty"`
	Username      string                 `json:"username,omitempty"`
	Password      string                 `json:"password,omitempty"`
	Token         string                 `json:"token,omitempty"`
	ClientID      string                 `json:"clientId,omitempty"`
	ClientSecret  string                 `json:"clientSecret,omitempty"`
	TokenURL      string                 `json:"tokenUrl,omitempty"`
	Scope         string                 `json:"scope,omitempty"`
	LoginURL      string                 `json:"loginUrl,omitempty"`
	LoginBody     interface{}            `json:"loginBody,omitempty"`
	LoginSelector string                 `json:"loginSelector,omitempty"`
	CustomHeaders map[string]string      `json:"customHeaders,omitempty"`
	CustomParams  map[string]interface{} `json:"customParams,omitempty"`
}

type RESTFinding added in v0.1.0

type RESTFinding struct {
	AppName                  string            `json:"appName"`
	Host                     string            `json:"host"`
	HTTPVersion              string            `json:"httpVersion"`
	Method                   string            `json:"method"`
	Path                     string            `json:"path"`
	QueryParameters          map[string]string `json:"queryParameters"`
	VulnerableParameterName  string            `json:"vulnerableParameterName"`
	VulnerableParameterValue string            `json:"vulnerableParameterValue"`
	ErrorType                string            `json:"errorType"`
	ErrorDescription         string            `json:"errorDescription"`
	PreviousResponse         string            `json:"previousResponse"`
	URI                      string            `json:"uri"`
	RequestHeader            map[string]string `json:"requestHeader"`
	RequestBody              string            `json:"requestBody"`
	ResponseHeader           map[string]string `json:"responseHeader"`
	ResponseBody             string            `json:"responseBody"`
}

type RequestDashboardTarget

type RequestDashboardTarget struct {
	GitHubRepository string `query:"githubRepository,omitempty" json:"githubRepository,omitempty"`
}

type RequestProvider

type RequestProvider struct {
	GitHubOwnerID int64  `query:"githubOwnerId,omitempty"    json:"githubOwnerId,omitempty"`
	GitHubOwner   string `query:"githubOwner,omitempty"      json:"githubOwner,omitempty"`
}

type Site added in v0.9.13

type Site struct {
	Name   string   `json:"@name"`
	Host   string   `json:"@host"`
	Port   string   `json:"@port"`
	Ssl    string   `json:"@ssl"`
	Alerts []Alerts `json:"alerts"`
}

type Tags added in v0.9.13

type Tags struct {
	Tag  string `json:"tag"`
	Link string `json:"link"`
}

type UserAuth added in v0.11.0

type UserAuth struct {
	RoleName        string              `json:"roleName"`
	RoleDescription string              `json:"roleDescription,omitempty"`
	UserDescription string              `json:"userDescription,omitempty"`
	AuthConfig      MultiUserAuthConfig `json:"authConfig"`
}

type ZAPSummary added in v0.9.13

type ZAPSummary struct {
	ProgramName string `json:"@programName"`
	Version     string `json:"@version"`
	Generated   string `json:"@generated"`
	Site        []Site `json:"site"`
}

Jump to

Keyboard shortcuts

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