Documentation
¶
Index ¶
- func GetMonitorStats() (float64, float64)
- func GetUserIDFromContext(r *http.Request) string
- func GetWebpathFS() embed.FS
- func GetWebpathIndexPath() string
- func InitMonitor()
- func StartServer(addr string) error
- func StopMonitor()
- type APIResponse
- type AssetSetContent
- type AssetSetInfo
- type AssetsListResponse
- type Claims
- type ForceStopRequest
- type LoginRequest
- type LoginResponse
- type PocsListItem
- type PocsListResponse
- type ReportItem
- type ReportListRequest
- type ReportListResponse
- type ScanCreateRequest
- type ScanEvent
- type ScanInitInfo
- type ScanProgressData
- type ScanStatusData
- type SystemMonitor
- type Task
- type TaskManager
- type TaskStatus
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetMonitorStats ¶ added in v3.2.7
GetMonitorStats 获取当前的 CPU 和内存使用率
func GetUserIDFromContext ¶ added in v3.2.0
func GetWebpathFS ¶ added in v3.2.2
func GetWebpathIndexPath ¶ added in v3.2.2
func GetWebpathIndexPath() string
func StartServer ¶
Types ¶
type APIResponse ¶ added in v3.2.0
type APIResponse struct {
Success bool `json:"success"`
Message string `json:"message"`
Data interface{} `json:"data,omitempty"`
}
通用API响应
type AssetSetContent ¶ added in v3.2.7
type AssetSetContent struct {
Info AssetSetInfo `json:"info"`
Items []string `json:"items"`
}
资产集合内容响应
type AssetSetInfo ¶ added in v3.2.7
type AssetSetInfo struct {
ID string `json:"id"`
Name string `json:"name"`
Path string `json:"path"`
Category string `json:"category,omitempty"`
Tags []string `json:"tags,omitempty"`
Created string `json:"created,omitempty"`
Updated string `json:"updated,omitempty"`
LineCount int `json:"line_count"`
Favorite bool `json:"favorite,omitempty"`
}
资产地址集合元信息
type AssetsListResponse ¶ added in v3.2.7
type AssetsListResponse struct {
Items []AssetSetInfo `json:"items"`
Total int `json:"total"`
UpdatedAt string `json:"updated_at"`
}
资产集合列表响应
type Claims ¶ added in v3.2.0
type Claims struct {
UserID string `json:"user_id"`
LoginTime int64 `json:"login_time"`
jwt.RegisteredClaims
}
JWT Claims结构
type ForceStopRequest ¶ added in v3.2.7
type LoginRequest ¶ added in v3.2.0
type LoginRequest struct {
Password string `json:"password"`
}
登录请求结构
type LoginResponse ¶ added in v3.2.0
type LoginResponse struct {
Success bool `json:"success"`
Message string `json:"message"`
Token string `json:"token,omitempty"`
Expires int64 `json:"expires,omitempty"`
}
登录响应结构
type PocsListItem ¶ added in v3.2.2
type PocsListItem struct {
ID string `json:"id"`
Name string `json:"name"`
Severity string `json:"severity"`
Author []string `json:"author,omitempty"`
Tags []string `json:"tags,omitempty"`
Source string `json:"source"` // builtin/curated/my/local
Path string `json:"path,omitempty"`
Created string `json:"created,omitempty"`
}
POC 列表 - 单条记录
type PocsListResponse ¶ added in v3.2.2
type PocsListResponse struct {
Items []PocsListItem `json:"items"`
Page int `json:"page"`
PageSize int `json:"page_size"`
Total int `json:"total"`
TotalPages int `json:"total_pages"`
Source string `json:"source"`
Severity []string `json:"severity,omitempty"`
Tags []string `json:"tags,omitempty"`
Author []string `json:"author,omitempty"`
Keyword string `json:"keyword,omitempty"`
}
POC 列表 - 响应
type ReportItem ¶ added in v3.2.0
type ReportItem struct {
ID string `json:"id"`
TaskID string `json:"taskId"`
VulID string `json:"vulId"`
VulName string `json:"vulName"`
Target string `json:"target"`
FullTarget string `json:"fullTarget,omitempty"`
Severity string `json:"severity"`
Created string `json:"created"`
PocInfo interface{} `json:"pocInfo,omitempty"` // 展开后的 POC 信息(与前端展示一致)
ResultList interface{} `json:"resultList,omitempty"` // 解析后的请求响应列表
}
报告列表 - 单条记录
type ReportListRequest ¶ added in v3.2.0
type ReportListRequest struct {
Keyword string `json:"keyword,omitempty"`
Severity []string `json:"severity,omitempty"` // 多个值,如 ["high","critical"]
Page int `json:"page"` // 从1开始
PageSize int `json:"page_size"` // 默认50,最大500
}
报告列表 - 请求
type ReportListResponse ¶ added in v3.2.0
type ReportListResponse struct {
Items []ReportItem `json:"items"`
Page int `json:"page"`
PageSize int `json:"page_size"`
Total int64 `json:"total"`
TotalPages int `json:"total_pages"`
Keyword string `json:"keyword,omitempty"`
Severity []string `json:"severity,omitempty"`
}
报告列表 - 响应
type ScanCreateRequest ¶ added in v3.2.7
type ScanCreateRequest struct {
Targets []string `json:"targets,omitempty"`
AssetSetID string `json:"assetSetId,omitempty"`
PocFile string `json:"poc_file,omitempty"`
PocSource string `json:"poc_source,omitempty"`
PocIDs []string `json:"poc_ids,omitempty"`
Search string `json:"search,omitempty"`
Severity string `json:"severity,omitempty"`
Concurrency int `json:"concurrency,omitempty"`
RateLimit int `json:"rate_limit,omitempty"`
Timeout int `json:"timeout,omitempty"`
Retries int `json:"retries,omitempty"`
MaxHostError int `json:"max_host_error,omitempty"`
Proxy string `json:"proxy,omitempty"`
FollowRedirects bool `json:"follow_redirects,omitempty"`
EnableOOB bool `json:"enable_oob,omitempty"`
OOB string `json:"oob,omitempty"`
OOBKey string `json:"oob_key,omitempty"`
OOBDomain string `json:"oob_domain,omitempty"`
OOBApiUrl string `json:"oob_api_url,omitempty"`
OOBHttpUrl string `json:"oob_http_url,omitempty"`
TaskName string `json:"task_name,omitempty"`
Labels []string `json:"labels,omitempty"`
EnableStream bool `json:"enable_stream"`
Smart bool `json:"smart,omitempty"`
}
type ScanEvent ¶ added in v3.2.7
type ScanEvent struct {
Type string `json:"type"`
Data interface{} `json:"data"`
}
type ScanInitInfo ¶ added in v3.2.7
type ScanProgressData ¶ added in v3.2.7
type ScanStatusData ¶ added in v3.2.7
type ScanStatusData struct {
Status string `json:"status"`
Progress ScanProgressData `json:"progress"`
Stats struct {
CompletedScans int `json:"completedScans"`
TotalScans int `json:"totalScans"`
FoundVulns int `json:"foundVulns"`
} `json:"stats"`
TaskID string `json:"taskId,omitempty"`
InstanceID string `json:"instance_id,omitempty"`
BaseURL string `json:"base_url,omitempty"`
}
type SystemMonitor ¶ added in v3.2.7
type SystemMonitor struct {
// contains filtered or unexported fields
}
type Task ¶ added in v3.2.7
type Task struct {
ID string
Name string
CreatedAt time.Time
Status TaskStatus
Scanner *afrog.SDKScanner
SeverityStats map[string]int
Subscribers map[chan ScanEvent]struct{}
// contains filtered or unexported fields
}
type TaskManager ¶ added in v3.2.7
type TaskManager struct {
// contains filtered or unexported fields
}
type TaskStatus ¶ added in v3.2.7
type TaskStatus string
const ( TaskStarting TaskStatus = "starting" TaskRunning TaskStatus = "running" TaskPaused TaskStatus = "paused" TaskCompleted TaskStatus = "completed" TaskFailed TaskStatus = "failed" TaskCancelled TaskStatus = "cancelled" )
Click to show internal directories.
Click to hide internal directories.