Options
All
  • Public
  • Public/Protected
  • All
Menu

Class SliverClient

Hierarchy

  • SliverClient

Index

Constructors

constructor

Properties

Private _config

Private _events

_events: null | ClientReadableStream<Event> = null

Private _rpc

_rpc: null | SliverRPCClient = null

Private _tunnelStream

_tunnelStream: null | ClientDuplexStream<TunnelData, TunnelData> = null

client$

client$: Observable<Event> = ...

Private empty

empty: Empty = ...

event$

event$: Subject<Event> = ...

job$

job$: Observable<Event> = ...

loot$

loot$: Observable<Event> = ...

Private lootEventTypes

lootEventTypes: string[] = ...

session$

session$: Observable<Event> = ...

Accessors

config

isConnected

  • get isConnected(): boolean

rpc

tunnelStream

Methods

canaries

  • canaries(timeout?: number): Promise<undefined | DNSCanary[]>

connect

Private deadline

  • deadline(timeout: number): { deadline: number }
  • Parameters

    • timeout: number

    Returns { deadline: number }

    • deadline: number

deleteImplantBuild

  • deleteImplantBuild(name: string, timeout?: number): Promise<void>
  • Parameters

    • name: string
    • timeout: number = ...

    Returns Promise<void>

deleteImplantProfile

  • deleteImplantProfile(name: string, timeout?: number): Promise<void>
  • Parameters

    • name: string
    • timeout: number = ...

    Returns Promise<void>

disconnect

  • disconnect(): Promise<void>

generate

getOperators

  • getOperators(timeout?: number): Promise<undefined | Operator[]>

getVersion

  • getVersion(timeout?: number): Promise<undefined | Version>

implantBuilds

  • implantBuilds(timeout?: number): Promise<undefined | ImplantBuilds>

implantProfiles

  • implantProfiles(timeout?: number): Promise<undefined | ImplantProfile[]>

interact

interactWith

jobs

  • jobs(timeout?: number): Promise<undefined | Job[]>

killJob

  • killJob(jobId: number, timeout?: number): Promise<undefined | KillJob>

killSession

  • killSession(sessionId: number, timeout?: number): Promise<void>
  • Parameters

    • sessionId: number
    • timeout: number = ...

    Returns Promise<void>

lootAdd

  • lootAdd(loot: Loot, timeout?: number): Promise<undefined | Loot>

lootAll

  • lootAll(timeout?: number): Promise<undefined | Loot[]>

lootAllOf

  • lootAllOf(lootType: string, timeout?: number): Promise<undefined | Loot[]>
  • Parameters

    • lootType: string
    • timeout: number = ...

    Returns Promise<undefined | Loot[]>

lootContent

  • lootContent(lootID: string, timeout?: number): Promise<undefined | Loot>
  • Parameters

    • lootID: string
    • timeout: number = ...

    Returns Promise<undefined | Loot>

lootRemove

  • lootRemove(lootID: string, timeout?: number): Promise<void>
  • Parameters

    • lootID: string
    • timeout: number = ...

    Returns Promise<void>

lootUpdate

  • lootUpdate(lootID: string, name: string, timeout?: number): Promise<undefined | Loot>
  • Parameters

    • lootID: string
    • name: string
    • timeout: number = ...

    Returns Promise<undefined | Loot>

regenerate

  • regenerate(name: string, timeout?: number): Promise<undefined | File>
  • Parameters

    • name: string
    • timeout: number = ...

    Returns Promise<undefined | File>

rpcCredentials

  • rpcCredentials(): ChannelCredentials

rpcHost

  • rpcHost(): string

saveImplantProfile

sessions

  • sessions(timeout?: number): Promise<undefined | Session[]>

startDNSListener

  • startDNSListener(domains: string[], canaries: boolean, host: string, port: number, persistent?: boolean, timeout?: number): Promise<undefined | DNSListener>
  • Parameters

    • domains: string[]
    • canaries: boolean
    • host: string
    • port: number
    • persistent: boolean = false
    • timeout: number = ...

    Returns Promise<undefined | DNSListener>

startHTTPListener

  • startHTTPListener(domain: string, host: string, port: number, website?: string, persistent?: boolean, timeout?: number): Promise<undefined | HTTPListener>
  • Parameters

    • domain: string
    • host: string
    • port: number
    • website: string = ''
    • persistent: boolean = false
    • timeout: number = ...

    Returns Promise<undefined | HTTPListener>

startHTTPSListener

  • startHTTPSListener(domain: string, host: string, port: number, acme?: boolean, website?: string, cert?: Buffer, key?: Buffer, persistent?: boolean, timeout?: number): Promise<undefined | HTTPListener>
  • Parameters

    • domain: string
    • host: string
    • port: number
    • acme: boolean = false
    • website: string = ''
    • Optional cert: Buffer
    • Optional key: Buffer
    • persistent: boolean = false
    • timeout: number = ...

    Returns Promise<undefined | HTTPListener>

startHTTPSStagerListener

  • startHTTPSStagerListener(host: string, port: number, data: Buffer, timeout?: number): Promise<undefined | StagerListener>

startHTTPStagerListener

  • startHTTPStagerListener(host: string, port: number, data: Buffer, timeout?: number): Promise<undefined | StagerListener>

startMTLSListener

  • startMTLSListener(host: string, port: number, persistent?: boolean, timeout?: number): Promise<undefined | MTLSListener>
  • Parameters

    • host: string
    • port: number
    • persistent: boolean = false
    • timeout: number = ...

    Returns Promise<undefined | MTLSListener>

startTCPStagerListener

  • startTCPStagerListener(host: string, port: number, data: Buffer, persistent?: boolean, timeout?: number): Promise<undefined | StagerListener>
  • Parameters

    • host: string
    • port: number
    • data: Buffer
    • persistent: boolean = false
    • timeout: number = ...

    Returns Promise<undefined | StagerListener>

startWGListener

  • startWGListener(port: number, nPort: number, keyPort: number, persistent?: boolean, timeout?: number): Promise<undefined | WGListener>
  • Parameters

    • port: number
    • nPort: number
    • keyPort: number
    • persistent: boolean = false
    • timeout: number = ...

    Returns Promise<undefined | WGListener>

website

  • website(name: string, timeout?: number): Promise<undefined | Website>

websiteAddContent

  • websiteAddContent(name: string, contents: Map<string, WebContent>, timeout?: number): Promise<undefined | Website>

websiteRemove

  • websiteRemove(name: string, timeout?: number): Promise<void>
  • Parameters

    • name: string
    • timeout: number = ...

    Returns Promise<void>

websiteRemoveContent

  • websiteRemoveContent(name: string, paths: string[], timeout?: number): Promise<undefined | Website>
  • Parameters

    • name: string
    • paths: string[]
    • timeout: number = ...

    Returns Promise<undefined | Website>

websiteUpdateContent

  • websiteUpdateContent(name: string, contents: Map<string, WebContent>, timeout?: number): Promise<undefined | Website>

websites

  • websites(timeout?: number): Promise<undefined | Website[]>

Generated using TypeDoc