Skip to main content

类: Client

kerberos.Client 已知问题: gokrb5 库中的硬编码超时 TGT / Session 处理未暴露 Client 是 kerberos 客户端 示例
const kerberos = require('nuclei/kerberos');
// 如果 controller 为空,将执行默认 kdc 服务器的 dns 查询
const client = new kerberos.Client('acme.com', 'kdc.acme.com');

目录

构造函数

属性

方法

构造函数

constructor

new Client(domain, controller?): Client

参数

名称类型
domainstring
controller?string

返回值

Client

定义于

kerberos.ts:90

属性

Krb5Config

Optional Krb5Config: Config

定义于

kerberos.ts:82

Realm

Optional Realm: string

定义于

kerberos.ts:86

controller

Optional controller: string

定义于

kerberos.ts:90

domain

domain: string

定义于

kerberos.ts:90

方法

EnumerateUser

EnumerateUser(username): EnumerateUserResponse EnumerateUser 尝试通过禁用 PA-FX-FAST 获取 AS-REP 哈希

参数

名称类型
usernamestring

返回值

EnumerateUserResponse 示例
const kerberos = require('nuclei/kerberos');
const client = new kerberos.Client('acme.com', 'kdc.acme.com');
const resp = client.EnumerateUser('pdtm');
log(resp);

定义于

kerberos.ts:122

GetServiceTicket

GetServiceTicket(User): TGS GetServiceTicket 为给定的用户、密码和 SPN 返回 TGS

参数

名称类型
Userstring

返回值

TGS 示例
const kerberos = require('nuclei/kerberos');
const client = new kerberos.Client('acme.com', 'kdc.acme.com');
const resp = client.GetServiceTicket('pdtm', 'password', 'HOST/CLIENT1');
log(resp);

定义于

kerberos.ts:137

SetConfig

SetConfig(cfg): void SetConfig 为 kerberos 客户端设置额外配置 注意:目前由于 fastdialer,ip 和超时覆盖仅在 EnumerateUser 中支持 但可以扩展到其他方法

参数

名称类型
cfgConfig

返回值

void 示例
const kerberos = require('nuclei/kerberos');
const client = new kerberos.Client('acme.com', 'kdc.acme.com');
const cfg = new kerberos.Config();
cfg.SetIPAddress('192.168.100.22');
cfg.SetTimeout(5);
client.SetConfig(cfg);

定义于

kerberos.ts:107