Class: SMBClient

smb.SMBClient SMBClient is a client for SMB servers. Internally client uses github.com/zmap/zgrab2/lib/smb/smb driver. github.com/projectdiscovery/go-smb2 driver Example
const smb = require('nuclei/smb');
const client = new smb.Client();

Table of contents

Constructors

Methods

Constructors

constructor

new SMBClient(): SMBClient

Returns

SMBClient

Defined in

smb.ts:17

Methods

ConnectSMBInfoMode

ConnectSMBInfoMode(host, port): SMBLog ConnectSMBInfoMode tries to connect to provided host and port and discovery SMB information Returns handshake log and error. If error is not nil, state will be false

Parameters

NameType
hoststring
portnumber

Returns

SMBLog Example
const smb = require('nuclei/smb');
const client = new smb.Client();
const info = client.ConnectSMBInfoMode('acme.com', 445);
log(to_json(info));

Defined in

smb.ts:31

DetectSMBGhost

DetectSMBGhost(host, port): boolean DetectSMBGhost tries to detect SMBGhost vulnerability by using SMBv3 compression feature. If the host is vulnerable, it returns true.

Parameters

NameType
hoststring
portnumber

Returns

boolean Example
const smb = require('nuclei/smb');
const isSMBGhost = smb.DetectSMBGhost('acme.com', 445);

Defined in

smb.ts:84

ListSMBv2Metadata

ListSMBv2Metadata(host, port): ServiceSMB ListSMBv2Metadata tries to connect to provided host and port and list SMBv2 metadata. Returns metadata and error. If error is not nil, state will be false

Parameters

NameType
hoststring
portnumber

Returns

ServiceSMB Example
const smb = require('nuclei/smb');
const client = new smb.Client();
const metadata = client.ListSMBv2Metadata('acme.com', 445);
log(to_json(metadata));

Defined in

smb.ts:49

ListShares

ListShares(host, port, user): string[] ListShares tries to connect to provided host and port and list shares by using given credentials. Credentials cannot be blank. guest or anonymous credentials can be used by providing empty password.

Parameters

NameType
hoststring
portnumber
userstring

Returns

string[] Example
const smb = require('nuclei/smb');
const client = new smb.Client();
const shares = client.ListShares('acme.com', 445, 'username', 'password');
	for (const share of shares) {
		  log(share);
	}

Defined in

smb.ts:69