Skip to main content

simulator

实例名实例描述
defaultChangeMode(simulator.loginDetectMode) -1
htmlChangeMode(simulator.loginDetectMode) 1
leaklessDefault(simulator.LeaklessMode) 0
leaklessOff(simulator.LeaklessMode) -1
leaklessOn(simulator.LeaklessMode) 1
simple(map[string]interface {}) map[string]interface {}{"CreateBrowser": (func(...simple.BrowserConfigOpt) (simple.VBrowser, error))(0x2a81e20), "bodyModifyTarget": "body", "bodyReplaceTarget": "bodyReplace", "createBrowser": (func(...simple.BrowserConfigOpt) (simple.VBrowser, error))(0x2a81e20), "exePath": (func(string) simple.BrowserConfigOpt)(0x2a81420), "headersModifyTarget": "headers", "headless": (func(bool) simple.BrowserConfigOpt)(0x2a81720), "hijack": (func(bool) simple.BrowserConfigOpt)(0x2a817a0), "hostModifyTarget": "host", "leakless": (func(bool) simple.BrowserConfigOpt)(0x2a81da0), "noSandBox": (func(bool) simple.BrowserConfigOpt)(0x2a816a0), "proxy": (func(string, ...string) simple.BrowserConfigOpt)(0x2a81500), "requestModify": (func(string, simple.ModifyTarget, interface {}) simple.BrowserConfigOpt)(0x2a81aa0), "responseModify": (func(string, simple.ModifyTarget, interface {}) simple.BrowserConfigOpt)(0x2a81820), "timeout": (func(int) simple.BrowserConfigOpt)(0x2a81d20), "wsAddress": (func(string) simple.BrowserConfigOpt)(0x2a81340)}
urlChangeMode(simulator.loginDetectMode) 0
函数名函数描述/介绍
simulator.HttpBruteForceHttpBruteForce 进行目标url的页面进行http爆破 第一个参数为目标url,后面可以添加零个或多个请求选项,用于对此次请求进行配置 返回值包括channel和错误,从channel中获取爆破结果
simulator.captchaImgSelectorcaptchaImgSelector 是一个请求选项 用于在验证码图片位置识别错误时输入验证码图片对应的selector
simulator.captchaInputSelectorcaptchaInputSelector 是一个请求选项 用于在验证码输入框位置识别错误时输入验证码输入框对应的selector
simulator.captchaModecaptchaMode 特殊选项 如果你不知道怎么用请勿使用
simulator.captchaTypecaptchaType 是一个请求选项 用于标识使用验证码的种类 其中1 其他(正常请勿使用)2 老版ddddocr server接口(url以/ocr/b64/json结尾) 3 新版ddddocr server接口(url以/ocr结尾)
simulator.captchaUrlcaptchaUrl 是一个请求选项 用于验证码的url地址
simulator.exePathexePath 是一个请求选项 用于输入浏览器路径
simulator.extraWaitLoadTimeextraWaitLoadTime 是一个请求选项 用于选择页面加载的额外页面等待时间 单位毫秒
simulator.fromPlugin
simulator.leaklessStatusleaklessStatus 是一个请求选项 用于选择是否自动关闭浏览器进程 simulator.leaklessOn为开启 simulator.leaklessOff为关闭 simulator.leaklessDefault为默认 浏览器自动进程关闭进行在windows下会报病毒 默认在w...
simulator.loginDetectModeloginDetectMode 是一个请求选项 用于选择识别登录跳转的模式, 其中simulator.htmlChangeMode 表示检测html变化程度 超过一定数字则认为发生登录跳转 simulator.urlChangeMode 表示检测url变化 如果url发生变化则认为登录成功 ...
simulator.passwordpassword 是一个请求选项 用于输入爆破的密码
simulator.passwordListpasswordList 是一个请求选项 用于输入爆破的密码的列表
simulator.passwordSelectorpasswordSelector 是一个请求选项 用于在密码框位置识别错误时输入密码框对应的selector
simulator.preAction
simulator.proxyproxy 是一个请求选项 用于输入代理服务器地址
simulator.runtimeID
simulator.saveToDB
simulator.sourceType
simulator.submitButtonSelectorsubmitButtonSelector 是一个请求选项 用于在提交登录按钮位置识别错误时输入提交登录按钮对应的selector
simulator.usernameusername 是一个请求选项 用于输入爆破的用户名
simulator.usernameListusernameList 是一个请求选项 用于输入爆破的用户名的列表
simulator.usernameSelectorusernameSelector 是一个请求选项 用于在用户框位置识别错误时输入用户框对应的selector
simulator.wsAddresswsAddress 是一个请求选项 用于输入浏览器的websocket地址

函数定义#

HttpBruteForce#

详细描述#

HttpBruteForce 进行目标url的页面进行http爆破 第一个参数为目标url,后面可以添加零个或多个请求选项,用于对此次请求进行配置 返回值包括channel和错误,从channel中获取爆破结果

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.username("admin"), simulator.password("admin", "luckyadmin123"))
    for item := range ch {        yakit.Info(`[bruteforce] %s:%s login %v with info: %s`, item.Username(), item.Password(), item.Status(), item.Info())    }

定义#

HttpBruteForce(targetUrl string, opts ...BruteConfigOpt) (chan Result, error)

参数#

参数名参数类型参数解释
targetUrlstring
opts...BruteConfigOpt

返回值#

返回值(顺序)返回值类型返回值解释
r1chan Result
r2error

captchaImgSelector#

详细描述#

captchaImgSelector 是一个请求选项 用于在验证码图片位置识别错误时输入验证码图片对应的selector

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.captchaImgSelector("#img"))

定义#

captchaImgSelector(selector string) BruteConfigOpt

参数#

参数名参数类型参数解释
selectorstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

captchaInputSelector#

详细描述#

captchaInputSelector 是一个请求选项 用于在验证码输入框位置识别错误时输入验证码输入框对应的selector

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.captchaInputSelector("#captcha"))

定义#

captchaInputSelector(selector string) BruteConfigOpt

参数#

参数名参数类型参数解释
selectorstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

captchaMode#

详细描述#

captchaMode 特殊选项 如果你不知道怎么用请勿使用

定义#

captchaMode(mode string) BruteConfigOpt

参数#

参数名参数类型参数解释
modestring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

captchaType#

详细描述#

captchaType 是一个请求选项 用于标识使用验证码的种类 其中1 其他(正常请勿使用)2 老版ddddocr server接口(url以/ocr/b64/json结尾) 3 新版ddddocr server接口(url以/ocr结尾)

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.captchaType(3))

定义#

captchaType(typeEnum int) BruteConfigOpt

参数#

参数名参数类型参数解释
typeEnumint

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

captchaUrl#

详细描述#

captchaUrl 是一个请求选项 用于验证码的url地址

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.captchaUrl("http://localhost:8088/"))

定义#

captchaUrl(url string) BruteConfigOpt

参数#

参数名参数类型参数解释
urlstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

exePath#

详细描述#

exePath 是一个请求选项 用于输入浏览器路径

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.exePath("/Applications/Google Chrome.app/Contents/MacOS/Google Chrome")) // 不存在用户名密码的代理

定义#

exePath(exePath string) BruteConfigOpt

参数#

参数名参数类型参数解释
exePathstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

extraWaitLoadTime#

详细描述#

extraWaitLoadTime 是一个请求选项 用于选择页面加载的额外页面等待时间 单位毫秒

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.extraWaitLoadTime(1000))

定义#

extraWaitLoadTime(time int) BruteConfigOpt

参数#

参数名参数类型参数解释
timeint

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

fromPlugin#

详细描述#

定义#

fromPlugin(fromPlugin string) BruteConfigOpt

参数#

参数名参数类型参数解释
fromPluginstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

leaklessStatus#

详细描述#

leaklessStatus 是一个请求选项 用于选择是否自动关闭浏览器进程

simulator.leaklessOn为开启 simulator.leaklessOff为关闭 simulator.leaklessDefault为默认

浏览器自动进程关闭进行在windows下会报病毒 默认在windows下会关闭

当关闭时 如果强制关闭爬虫进程时chrome进程会存在于后台 浏览器进程后台过多时请手动进行关闭

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.leaklessStatus(simulator.leaklessDefault))

定义#

leaklessStatus(leakless LeaklessMode) BruteConfigOpt

参数#

参数名参数类型参数解释
leaklessLeaklessMode

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

loginDetectMode#

详细描述#

loginDetectMode 是一个请求选项 用于选择识别登录跳转的模式,

其中simulator.htmlChangeMode 表示检测html变化程度 超过一定数字则认为发生登录跳转

simulator.urlChangeMode 表示检测url变化 如果url发生变化则认为登录成功

simulator.defaultChangeMode 表示同时使用以上两种策略

第二个参数表示检测html变化程度的比例,超过该比例则认为发生变化 默认为0.6

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.loginDetectMode(simulator.htmlChangeMode, 0.6))

定义#

loginDetectMode(mode loginDetectMode, degree ...float64) BruteConfigOpt

参数#

参数名参数类型参数解释
modeloginDetectMode
degree...float64

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

password#

详细描述#

password 是一个请求选项 用于输入爆破的密码

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.username("admin", "root"), simulator.password("admin", "luckyadmin123"))

定义#

password(password ...string) BruteConfigOpt

参数#

参数名参数类型参数解释
password...string

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

passwordList#

详细描述#

passwordList 是一个请求选项 用于输入爆破的密码的列表

Example:


    userList = ["admin", "root"]    passList = ["123", "admin"]    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.usernameList(userList), simulator.passwordList(passList))

定义#

passwordList(password []string) BruteConfigOpt

参数#

参数名参数类型参数解释
password[]string

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

passwordSelector#

详细描述#

passwordSelector 是一个请求选项 用于在密码框位置识别错误时输入密码框对应的selector

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.passwordSelector("#password"))

定义#

passwordSelector(selector string) BruteConfigOpt

参数#

参数名参数类型参数解释
selectorstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

preAction#

详细描述#

定义#

preAction(actionsJs string) BruteConfigOpt

参数#

参数名参数类型参数解释
actionsJsstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

proxy#

详细描述#

proxy 是一个请求选项 用于输入代理服务器地址

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.proxy("http://127.0.0.1:8123/")) // 不存在用户名密码的代理    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.proxy("http://127.0.0.1:8123/", "admin", "123321")) // 存在用户名密码的代理

定义#

proxy(proxy string, details ...string) BruteConfigOpt

参数#

参数名参数类型参数解释
proxystring
details...string

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

runtimeID#

详细描述#

定义#

runtimeID(runtimeID string) BruteConfigOpt

参数#

参数名参数类型参数解释
runtimeIDstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

saveToDB#

详细描述#

定义#

saveToDB(saveToDB bool) BruteConfigOpt

参数#

参数名参数类型参数解释
saveToDBbool

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

sourceType#

详细描述#

定义#

sourceType(sourceType string) BruteConfigOpt

参数#

参数名参数类型参数解释
sourceTypestring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

submitButtonSelector#

详细描述#

submitButtonSelector 是一个请求选项 用于在提交登录按钮位置识别错误时输入提交登录按钮对应的selector

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.submitButtonSelector("#login"))

定义#

submitButtonSelector(selector string) BruteConfigOpt

参数#

参数名参数类型参数解释
selectorstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

username#

详细描述#

username 是一个请求选项 用于输入爆破的用户名

Example:

    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.username("admin", "root"), simulator.password("admin", "luckyadmin123"))

定义#

username(username ...string) BruteConfigOpt

参数#

参数名参数类型参数解释
username...string

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

usernameList#

详细描述#

usernameList 是一个请求选项 用于输入爆破的用户名的列表

Example:


    userList = ["admin", "root"]    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.usernameList(userList), simulator.password("admin", "luckyadmin123"))

定义#

usernameList(username []string) BruteConfigOpt

参数#

参数名参数类型参数解释
username[]string

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

usernameSelector#

详细描述#

usernameSelector 是一个请求选项 用于在用户框位置识别错误时输入用户框对应的selector

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.usernameSelector("#username"))

定义#

usernameSelector(selector string) BruteConfigOpt

参数#

参数名参数类型参数解释
selectorstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt

wsAddress#

详细描述#

wsAddress 是一个请求选项 用于输入浏览器的websocket地址

Example:


    ch, err = simulator.HttpBruteForce("http://127.0.0.1:8080/", simulator.wsAddress("http://127.0.0.1:7317/"))

定义#

wsAddress(ws string) BruteConfigOpt

参数#

参数名参数类型参数解释
wsstring

返回值#

返回值(顺序)返回值类型返回值解释
r1BruteConfigOpt