Documentation
¶
Index ¶
- type Config
- func New(extype ExploitType, supportedC2 []c2.Impl, product string, cve string, ...) *Configdeprecated
- func NewLocal(extype ExploitType, supportedC2 []c2.Impl, product string, cve string) *Configdeprecated
- func NewLocalExploit(implemented ImplementedFeatures, extype ExploitType, supportedC2 []c2.Impl, ...) *Config
- func NewRemoteExploit(implemented ImplementedFeatures, extype ExploitType, supportedC2 []c2.Impl, ...) *Config
- type ExploitType
- type ImplementedFeatures
- type RhostTriplet
- type SSLSupport
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶
type Config struct {
// implemented features describes which three stages the exploit implements
Impl ImplementedFeatures
// the vendor of the targeted product
Vendor string
// the targeted products
Products []string
// A combination of the Vendor and Products strings
Product string
// the CPE for the targeted product
CPE []string
// the CVE being tested
CVE string
// the protocol being targeted
Protocol string
// the type of exploit being executed
ExType ExploitType
// the c2 supported by the exploit
SupportedC2 []c2.Impl
// target host, the target address/name the exploit will work on
Rhost string
// target port, the target port the exploit will work on
Rport int
// a list of specific targets
RhostsNTuple []RhostTriplet
// local host for remote exploits
Lhost string
// local port
Lport int
// bind port
Bport int
// indicates if the framework should autodetect ssl/plain
DetermineSSL bool
// indicates if ssl is used in comms
SSL bool
// indicates if we run the target verify
DoVerify bool
// indicates if we run the version check
DoVersionCheck bool
// indicates if we run the exploit
DoExploit bool
// the user requested c2 to use
C2Type c2.Impl
// C2 server timeout
C2Timeout int
// Indicates if the c2 server will be handled elsewhere
ThirdPartyC2Server bool
// The database we are working with
DBName string
// File format template
FileTemplateData string
// File format exploit output
FileFormatFilePath string
}
The config struct contains a mix of module specified configurations and user specified configurations. The Config struct is first generated by the exploit implementation and then modified by option parsing.
func NewLocalExploit ¶ added in v1.24.0
func NewLocalExploit(implemented ImplementedFeatures, extype ExploitType, supportedC2 []c2.Impl, vendor string, product []string, cpe []string, cve string, ) *Config
Defines a new remote exploit and associates with CVE/Product/Protocol metadata. Usage example:.
func NewRemoteExploit ¶ added in v1.24.0
func NewRemoteExploit(implemented ImplementedFeatures, extype ExploitType, supportedC2 []c2.Impl, vendor string, product []string, cpe []string, cve string, protocol string, defaultPort int, ) *Config
Defines a new remote exploit and associates with CVE/Product/Protocol metadata. Usage example:
conf := config.NewRemoteExploit(
config.ImplementedFeatures{AssetDetection: true, VersionScanning: true, Exploitation: true},
config.CodeExecution, []c2.Impl{c2.SimpleShellServer},
"Atlassian", []string{"Confluence"}, []string{"cpe:2.3:a:atlassian:confluence"},
"CVE-2023-22527", "HTTP", 8090)
type ExploitType ¶
type ExploitType int
const ( CodeExecution ExploitType = 0 InformationDisclosure ExploitType = 1 Webshell ExploitType = 2 FileFormat ExploitType = 3 Local ExploitType = 4 )
func (ExploitType) String ¶ added in v1.25.0
func (eType ExploitType) String() string
Convert ExploitType to String.
type ImplementedFeatures ¶ added in v1.24.0
type RhostTriplet ¶ added in v1.0.14
type RhostTriplet struct {
Rhost string
Rport int
SSL SSLSupport
}
type SSLSupport ¶ added in v1.0.14
type SSLSupport int
const ( SSLDisabled SSLSupport = 0 SSLEnabled SSLSupport = 1 SSLAutodiscover SSLSupport = 2 )
Click to show internal directories.
Click to hide internal directories.