basic_scan

command
v1.2.0 Latest Latest
Warning

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

Go to latest
Published: Oct 1, 2026 License: MIT Imports: 6 Imported by: 0

README

基本扫描示例(v3.0 Engine API)

本示例展示 GXX SDK 最基本的使用方式,通过 *sdk.Engine 实例对单 / 多个目标进行指纹识别。

功能特点

  • 用 sdk.NewEngine + functional options 构造引擎
  • defer engine.Close() 释放资源
  • 用 (*Engine).Scan 对单目标做完整指纹识别
  • 提取技术栈、证书、ICP 备案号

运行

cd example/basic_scan
go run main.go

核心代码

engine, err := sdk.NewEngine(ctx,
    sdk.WithFingerOptions(options),
    sdk.WithTimeout(5 * time.Second),
    sdk.WithRuleConcurrency(200),
)
if err != nil {
    log.Fatal(err)
}
defer engine.Close()

result, err := engine.Scan(ctx, "https://example.com")

自定义参数

sdk.WithTimeout(10*time.Second)     // 请求超时
sdk.WithProxy("http://127.0.0.1:8080") // 代理
sdk.WithRuleConcurrency(500)        // 规则并发
sdk.WithCacheSize(4096)             // 缓存条目数
sdk.WithRateLimit(50, 100)          // per-host 限流
sdk.WithMemoryMonitor(true)         // 启用内存监控

进阶

参考其他示例:

  • example/file_target_scan/:批量扫描 + 流式回调
  • example/proxy_scan/:代理 + 限流
  • example/wappalyzer_scan/:仅技术栈识别

Documentation

Overview

basic_scan 演示如何用 sdk.Engine 对单目标进行完整指纹识别。

  • sdk.NewEngine + functional options 构造引擎
  • defer engine.Close() 释放资源
  • (*Engine).Scan 对单目标完整扫描

Jump to

Keyboard shortcuts

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