Rename Module Classname to match python convention
parent
c9a0604489
commit
50c4bb7e97
|
@ -60,8 +60,8 @@ class ModuleLoader:
|
||||||
Load a module, initializing it and checking that it has the proper attributes
|
Load a module, initializing it and checking that it has the proper attributes
|
||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
spec = importlib.util.spec_from_file_location("nxcModule", module_path)
|
spec = importlib.util.spec_from_file_location("NXCModule", module_path)
|
||||||
module = spec.loader.load_module().nxcModule()
|
module = spec.loader.load_module().NXCModule()
|
||||||
|
|
||||||
if self.module_is_sane(module, module_path):
|
if self.module_is_sane(module, module_path):
|
||||||
return module
|
return module
|
||||||
|
@ -103,8 +103,8 @@ class ModuleLoader:
|
||||||
Get the path, description, and options from a module
|
Get the path, description, and options from a module
|
||||||
"""
|
"""
|
||||||
try:
|
try:
|
||||||
spec = importlib.util.spec_from_file_location("nxcModule", module_path)
|
spec = importlib.util.spec_from_file_location("NXCModule", module_path)
|
||||||
module_spec = spec.loader.load_module().nxcModule
|
module_spec = spec.loader.load_module().NXCModule
|
||||||
|
|
||||||
module = {
|
module = {
|
||||||
f"{module_spec.name.lower()}": {
|
f"{module_spec.name.lower()}": {
|
||||||
|
|
|
@ -11,7 +11,7 @@ from impacket.dcerpc.v5.rpcrt import RPC_C_AUTHN_LEVEL_NONE
|
||||||
from impacket.dcerpc.v5.dcomrt import IObjectExporter
|
from impacket.dcerpc.v5.dcomrt import IObjectExporter
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "ioxidresolver"
|
name = "ioxidresolver"
|
||||||
description = "This module helps you to identify hosts that have additional active interfaces"
|
description = "This module helps you to identify hosts that have additional active interfaces"
|
||||||
supported_protocols = ["smb", "wmi"]
|
supported_protocols = ["smb", "wmi"]
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Module by Shutdown and Podalirius
|
Module by Shutdown and Podalirius
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ from impacket.ldap import ldap, ldapasn1
|
||||||
from impacket.ldap.ldap import LDAPSearchError
|
from impacket.ldap.ldap import LDAPSearchError
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Find PKI Enrollment Services in Active Directory and Certificate Templates Names.
|
Find PKI Enrollment Services in Active Directory and Certificate Templates Names.
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
import ldap3
|
import ldap3
|
||||||
from impacket.dcerpc.v5 import samr, epm, transport
|
from impacket.dcerpc.v5 import samr, epm, transport
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
'''
|
'''
|
||||||
Module by CyberCelt: @Cyb3rC3lt
|
Module by CyberCelt: @Cyb3rC3lt
|
||||||
Initial module:
|
Initial module:
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
|
|
||||||
"""
|
"""
|
||||||
Checks for credentials in IIS Application Pool configuration files using appcmd.exe.
|
Checks for credentials in IIS Application Pool configuration files using appcmd.exe.
|
||||||
|
|
|
@ -11,7 +11,7 @@ from neo4j import GraphDatabase
|
||||||
from neo4j.exceptions import AuthError, ServiceUnavailable
|
from neo4j.exceptions import AuthError, ServiceUnavailable
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "bh_owned"
|
name = "bh_owned"
|
||||||
description = "Set pwned computer as owned in Bloodhound"
|
description = "Set pwned computer as owned in Bloodhound"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -187,7 +187,7 @@ class ALLOWED_OBJECT_ACE_MASK_FLAGS(Enum):
|
||||||
Self = ldaptypes.ACCESS_ALLOWED_OBJECT_ACE.ADS_RIGHT_DS_SELF
|
Self = ldaptypes.ACCESS_ALLOWED_OBJECT_ACE.ADS_RIGHT_DS_SELF
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Module to read and backup the Discretionary Access Control List of one or multiple objects.
|
Module to read and backup the Discretionary Access Control List of one or multiple objects.
|
||||||
This module is essentially inspired from the dacledit.py script of Impacket that we have coauthored, @_nwodtuhs and me.
|
This module is essentially inspired from the dacledit.py script of Impacket that we have coauthored, @_nwodtuhs and me.
|
||||||
|
|
|
@ -10,7 +10,7 @@ from impacket.uuid import uuidtup_to_bin
|
||||||
from nxc.logger import nxc_logger
|
from nxc.logger import nxc_logger
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "dfscoerce"
|
name = "dfscoerce"
|
||||||
description = "Module to check if the DC is vulnerable to DFSCocerc, credit to @filip_dragovic/@Wh04m1001 and @topotam"
|
description = "Module to check if the DC is vulnerable to DFSCocerc, credit to @filip_dragovic/@Wh04m1001 and @topotam"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
import ntpath
|
import ntpath
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Technique discovered by @DTMSecurity and @domchell to remotely coerce an host to start WebClient service.
|
Technique discovered by @DTMSecurity and @domchell to remotely coerce an host to start WebClient service.
|
||||||
https://dtm.uk/exploring-search-connectors-and-library-files-on-windows/
|
https://dtm.uk/exploring-search-connectors-and-library-files-on-windows/
|
||||||
|
|
|
@ -11,7 +11,7 @@ from requests.packages.urllib3.exceptions import InsecureRequestWarning
|
||||||
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
|
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Uses Empire's RESTful API to generate a launcher for the specified listener and executes it
|
Uses Empire's RESTful API to generate a launcher for the specified listener and executes it
|
||||||
Module by @byt3bl33d3r
|
Module by @byt3bl33d3r
|
||||||
|
|
|
@ -10,7 +10,7 @@ from impacket.dcerpc.v5 import transport
|
||||||
import pathlib
|
import pathlib
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Uses LsarLookupNames and NamedPipes to gather information on all endpoint protection solutions installed on the the remote host(s)
|
Uses LsarLookupNames and NamedPipes to gather information on all endpoint protection solutions installed on the the remote host(s)
|
||||||
Module by @mpgn_x64
|
Module by @mpgn_x64
|
||||||
|
|
|
@ -5,7 +5,7 @@ from datetime import datetime
|
||||||
from nxc.helpers.logger import write_log
|
from nxc.helpers.logger import write_log
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Uses WMI to dump DNS from an AD DNS Server.
|
Uses WMI to dump DNS from an AD DNS Server.
|
||||||
Module by @fang0654
|
Module by @fang0654
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Example
|
Example
|
||||||
Module by @yomama
|
Module by @yomama
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
import socket
|
import socket
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
'''
|
'''
|
||||||
Module by CyberCelt: @Cyb3rC3lt
|
Module by CyberCelt: @Cyb3rC3lt
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ from dploot.lib.target import Target
|
||||||
from nxc.protocols.smb.firefox import FirefoxTriage
|
from nxc.protocols.smb.firefox import FirefoxTriage
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Firefox by @zblurx
|
Firefox by @zblurx
|
||||||
Inspired by firefox looting from DonPAPI
|
Inspired by firefox looting from DonPAPI
|
||||||
|
|
|
@ -7,7 +7,7 @@ import re
|
||||||
from nxc.logger import nxc_logger
|
from nxc.logger import nxc_logger
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Get description of users
|
Get description of users
|
||||||
Module by @nodauf
|
Module by @nodauf
|
||||||
|
|
|
@ -6,7 +6,7 @@ from nxc.helpers.logger import write_log
|
||||||
import json
|
import json
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Uses WMI to extract network connections, used to find multi-homed hosts.
|
Uses WMI to extract network connections, used to find multi-homed hosts.
|
||||||
Module by @fang0654
|
Module by @fang0654
|
||||||
|
|
|
@ -5,7 +5,7 @@ import xml.etree.ElementTree as ET
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Reference: https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Get-GPPAutologon.ps1
|
Reference: https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Get-GPPAutologon.ps1
|
||||||
Module by @byt3bl33d3r
|
Module by @byt3bl33d3r
|
||||||
|
|
|
@ -8,7 +8,7 @@ from binascii import unhexlify
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Reference: https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Get-GPPPassword.ps1
|
Reference: https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Get-GPPPassword.ps1
|
||||||
Module by @byt3bl33d3r
|
Module by @byt3bl33d3r
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
|
|
||||||
from impacket.ldap import ldapasn1 as ldapasn1_impacket
|
from impacket.ldap import ldapasn1 as ldapasn1_impacket
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
'''
|
'''
|
||||||
Module by CyberCelt: @Cyb3rC3lt
|
Module by CyberCelt: @Cyb3rC3lt
|
||||||
|
|
||||||
|
|
|
@ -5,7 +5,7 @@ from impacket.ldap import ldapasn1 as ldapasn1_impacket
|
||||||
from impacket.ldap import ldap as ldap_impacket
|
from impacket.ldap import ldap as ldap_impacket
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Created as a contributtion from HackTheBox Academy team for CrackMapExec
|
Created as a contributtion from HackTheBox Academy team for CrackMapExec
|
||||||
Reference: https://academy.hackthebox.com/module/details/84
|
Reference: https://academy.hackthebox.com/module/details/84
|
||||||
|
|
|
@ -12,7 +12,7 @@ import sys
|
||||||
from nxc.helpers.bloodhound import add_user_bh
|
from nxc.helpers.bloodhound import add_user_bh
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "handlekatz"
|
name = "handlekatz"
|
||||||
description = "Get lsass dump using handlekatz64 and parse the result with pypykatz"
|
description = "Get lsass dump using handlekatz64 and parse the result with pypykatz"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -134,7 +134,7 @@ def initial_run(connection, cursor):
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "hash_spider"
|
name = "hash_spider"
|
||||||
description = "Dump lsass recursively from a given hash using BH to find local admins"
|
description = "Dump lsass recursively from a given hash using BH to find local admins"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -7,7 +7,7 @@ from base64 import b64decode
|
||||||
from sys import exit
|
from sys import exit
|
||||||
from os import path
|
from os import path
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
|
|
||||||
name = "impersonate"
|
name = "impersonate"
|
||||||
description = "List and impersonate tokens to run command as locally logged on users"
|
description = "List and impersonate tokens to run command as locally logged on users"
|
||||||
|
|
|
@ -6,7 +6,7 @@ from impacket.dcerpc.v5 import scmr
|
||||||
from impacket.examples.secretsdump import RemoteOperations
|
from impacket.examples.secretsdump import RemoteOperations
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "install_elevated"
|
name = "install_elevated"
|
||||||
description = "Checks for AlwaysInstallElevated"
|
description = "Checks for AlwaysInstallElevated"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from csv import reader
|
from csv import reader
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Search for KeePass-related files and process
|
Search for KeePass-related files and process
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ from xml.etree import ElementTree
|
||||||
from nxc.helpers.powershell import get_ps_script
|
from nxc.helpers.powershell import get_ps_script
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Make use of KeePass' trigger system to export the database in cleartext
|
Make use of KeePass' trigger system to export the database in cleartext
|
||||||
References: https://keepass.info/help/v2/triggers.html
|
References: https://keepass.info/help/v2/triggers.html
|
||||||
|
|
|
@ -5,7 +5,7 @@ import json
|
||||||
from impacket.ldap import ldapasn1 as ldapasn1_impacket
|
from impacket.ldap import ldapasn1 as ldapasn1_impacket
|
||||||
from nxc.protocols.ldap.laps import LDAPConnect, LAPSv2Extract
|
from nxc.protocols.ldap.laps import LDAPConnect, LAPSv2Extract
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Module by technobro refactored by @mpgn (now compatible with LDAP protocol + filter by computer)
|
Module by technobro refactored by @mpgn (now compatible with LDAP protocol + filter by computer)
|
||||||
|
|
||||||
|
|
|
@ -13,7 +13,7 @@ from asyauth.common.credentials.kerberos import KerberosCredential
|
||||||
|
|
||||||
from asysocks.unicomm.common.target import UniTarget, UniProto
|
from asysocks.unicomm.common.target import UniTarget, UniProto
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Checks whether LDAP signing and channelbinding are required.
|
Checks whether LDAP signing and channelbinding are required.
|
||||||
|
|
||||||
|
|
|
@ -14,7 +14,7 @@ from lsassy.session import Session
|
||||||
from nxc.helpers.bloodhound import add_user_bh
|
from nxc.helpers.bloodhound import add_user_bh
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "lsassy"
|
name = "lsassy"
|
||||||
description = "Dump lsass and parse the result remotely with lsassy"
|
description = "Dump lsass and parse the result remotely with lsassy"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -5,7 +5,7 @@ from masky import Masky
|
||||||
from nxc.helpers.bloodhound import add_user_bh
|
from nxc.helpers.bloodhound import add_user_bh
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "masky"
|
name = "masky"
|
||||||
description = "Remotely dump domain user credentials via an ADCS and a KDC"
|
description = "Remotely dump domain user credentials via an ADCS and a KDC"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
from sys import exit
|
from sys import exit
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Downloads the Meterpreter stager and injects it into memory using PowerSploit's Invoke-Shellcode.ps1 script
|
Downloads the Meterpreter stager and injects it into memory using PowerSploit's Invoke-Shellcode.ps1 script
|
||||||
Module by @byt3bl33d3r
|
Module by @byt3bl33d3r
|
||||||
|
|
|
@ -9,7 +9,7 @@ import socket
|
||||||
import struct
|
import struct
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "ms17-010"
|
name = "ms17-010"
|
||||||
description = "MS17-010, /!\ not tested oustide home lab"
|
description = "MS17-010, /!\ not tested oustide home lab"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -6,7 +6,7 @@ from os import path
|
||||||
from nxc.helpers.powershell import get_ps_script
|
from nxc.helpers.powershell import get_ps_script
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "msol"
|
name = "msol"
|
||||||
description = "Dump MSOL cleartext password from the localDB on the Azure AD-Connect Server"
|
description = "Dump MSOL cleartext password from the localDB on the Azure AD-Connect Server"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -21,7 +21,7 @@ class User:
|
||||||
return f"User({self.username})"
|
return f"User({self.username})"
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Enumerate MSSQL privileges and exploit them
|
Enumerate MSSQL privileges and exploit them
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -13,7 +13,7 @@ from nxc.helpers.bloodhound import add_user_bh
|
||||||
from nxc.protocols.mssql.mssqlexec import MSSQLEXEC
|
from nxc.protocols.mssql.mssqlexec import MSSQLEXEC
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "nanodump"
|
name = "nanodump"
|
||||||
description = "Get lsass dump using nanodump and parse the result with pypykatz"
|
description = "Get lsass dump using nanodump and parse the result with pypykatz"
|
||||||
supported_protocols = ["smb", "mssql"]
|
supported_protocols = ["smb", "mssql"]
|
||||||
|
|
|
@ -10,7 +10,7 @@ from impacket.krb5 import constants
|
||||||
from impacket.krb5.types import Principal
|
from impacket.krb5.types import Principal
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "nopac"
|
name = "nopac"
|
||||||
description = "Check if the DC is vulnerable to CVE-2021-42278 and CVE-2021-42287 to impersonate DA from standard domain user"
|
description = "Check if the DC is vulnerable to CVE-2021-42278 and CVE-2021-42287 to impersonate DA from standard domain user"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -9,7 +9,7 @@ from nxc.helpers.logger import highlight
|
||||||
from nxc.helpers.misc import validate_ntlm
|
from nxc.helpers.misc import validate_ntlm
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Dump NTDS with ntdsutil
|
Dump NTDS with ntdsutil
|
||||||
Module by @zblurx
|
Module by @zblurx
|
||||||
|
|
|
@ -6,7 +6,7 @@ from impacket.examples.secretsdump import RemoteOperations
|
||||||
from impacket.dcerpc.v5.rrp import DCERPCSessionError
|
from impacket.dcerpc.v5.rrp import DCERPCSessionError
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Detect if the target's LmCompatibilityLevel will allow NTLMv1 authentication
|
Detect if the target's LmCompatibilityLevel will allow NTLMv1 authentication
|
||||||
Module by @Tw1sm
|
Module by @Tw1sm
|
||||||
|
|
|
@ -19,7 +19,7 @@ from impacket.dcerpc.v5.rpcrt import (
|
||||||
from impacket.uuid import uuidtup_to_bin
|
from impacket.uuid import uuidtup_to_bin
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "petitpotam"
|
name = "petitpotam"
|
||||||
description = "Module to check if the DC is vulnerable to PetitPotam, credit to @topotam"
|
description = "Module to check if the DC is vulnerable to PetitPotam, credit to @topotam"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -2,7 +2,7 @@ from base64 import b64decode
|
||||||
from sys import exit
|
from sys import exit
|
||||||
from os import path
|
from os import path
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
|
|
||||||
name = "pi"
|
name = "pi"
|
||||||
description = "Run command as logged on users via Process Injection"
|
description = "Run command as logged on users via Process Injection"
|
||||||
|
|
|
@ -16,7 +16,7 @@ KNOWN_PROTOCOLS = {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Check if vulnerable to printnightmare
|
Check if vulnerable to printnightmare
|
||||||
Module by @mpgn_x64 based on https://github.com/ly4k/PrintNightmare
|
Module by @mpgn_x64 based on https://github.com/ly4k/PrintNightmare
|
||||||
|
|
|
@ -14,7 +14,7 @@ from pypykatz.pypykatz import pypykatz
|
||||||
from nxc.helpers.bloodhound import add_user_bh
|
from nxc.helpers.bloodhound import add_user_bh
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "procdump"
|
name = "procdump"
|
||||||
description = "Get lsass dump using procdump64 and parse the result with pypykatz"
|
description = "Get lsass dump using procdump64 and parse the result with pypykatz"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -7,7 +7,7 @@ from math import fabs
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
'''
|
'''
|
||||||
Created by fplazar and wanetty
|
Created by fplazar and wanetty
|
||||||
Module by @gm_eduard and @ferranplaza
|
Module by @gm_eduard and @ferranplaza
|
||||||
|
|
|
@ -10,7 +10,7 @@ from dploot.lib.smb import DPLootSMBConnection
|
||||||
from nxc.helpers.logger import highlight
|
from nxc.helpers.logger import highlight
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "rdcman"
|
name = "rdcman"
|
||||||
description = "Remotely dump Remote Desktop Connection Manager (sysinternals) credentials"
|
description = "Remotely dump Remote Desktop Connection Manager (sysinternals) credentials"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -13,7 +13,7 @@ from impacket.dcerpc.v5.dtypes import NULL
|
||||||
from impacket.dcerpc.v5.rpcrt import RPC_C_AUTHN_LEVEL_PKT_PRIVACY
|
from impacket.dcerpc.v5.rpcrt import RPC_C_AUTHN_LEVEL_PKT_PRIVACY
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "rdp"
|
name = "rdp"
|
||||||
description = "Enables/Disables RDP"
|
description = "Enables/Disables RDP"
|
||||||
supported_protocols = ["smb" ,"wmi"]
|
supported_protocols = ["smb" ,"wmi"]
|
||||||
|
|
|
@ -6,7 +6,7 @@ from impacket.dcerpc.v5 import rrp
|
||||||
from impacket.examples.secretsdump import RemoteOperations
|
from impacket.examples.secretsdump import RemoteOperations
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "reg-query"
|
name = "reg-query"
|
||||||
description = "Performs a registry query on the machine"
|
description = "Performs a registry query on the machine"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "runasppl"
|
name = "runasppl"
|
||||||
description = "Check if the registry value RunAsPPL is set or not"
|
description = "Check if the registry value RunAsPPL is set or not"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -80,7 +80,7 @@ def searchResEntry_to_dict(results):
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "get-network"
|
name = "get-network"
|
||||||
description = ""
|
description = ""
|
||||||
supported_protocols = ["ldap"]
|
supported_protocols = ["ldap"]
|
||||||
|
|
|
@ -5,7 +5,7 @@ import ntpath
|
||||||
from sys import exit
|
from sys import exit
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Original idea and PoC by Mubix "Rob" Fuller
|
Original idea and PoC by Mubix "Rob" Fuller
|
||||||
URL: https://room362.com/post/2016/smb-http-auth-capture-via-scf/
|
URL: https://room362.com/post/2016/smb-http-auth-capture-via-scf/
|
||||||
|
|
|
@ -17,7 +17,7 @@ from impacket.smbconnection import SessionError
|
||||||
from nxc.logger import nxc_logger
|
from nxc.logger import nxc_logger
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "shadowcoerce"
|
name = "shadowcoerce"
|
||||||
description = "Module to check if the target is vulnerable to ShadowCoerce, credit to @Shutdown and @topotam"
|
description = "Module to check if the target is vulnerable to ShadowCoerce, credit to @Shutdown and @topotam"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -6,7 +6,7 @@ import ntpath
|
||||||
from sys import exit
|
from sys import exit
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Original idea and PoC by Justin Angel (@4rch4ngel86)
|
Original idea and PoC by Justin Angel (@4rch4ngel86)
|
||||||
Module by @byt3bl33d3r
|
Module by @byt3bl33d3r
|
||||||
|
|
|
@ -497,7 +497,7 @@ class SMBSpiderPlus:
|
||||||
self.logger.success("All files processed successfully.")
|
self.logger.success("All files processed successfully.")
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Spider plus module
|
Spider plus module
|
||||||
Module by @vincd
|
Module by @vincd
|
||||||
|
|
|
@ -17,7 +17,7 @@ KNOWN_PROTOCOLS = {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
For printnightmare: detect if print spooler is enabled or not. Then use @cube0x0's project https://github.com/cube0x0/CVE-2021-1675 or Mimikatz from Benjamin Delpy
|
For printnightmare: detect if print spooler is enabled or not. Then use @cube0x0's project https://github.com/cube0x0/CVE-2021-1675 or Mimikatz from Benjamin Delpy
|
||||||
Module by @mpgn_x64
|
Module by @mpgn_x64
|
||||||
|
|
|
@ -13,7 +13,7 @@ def searchResEntry_to_dict(results):
|
||||||
return data
|
return data
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Retrieves the different Sites and Subnets of an Active Directory
|
Retrieves the different Sites and Subnets of an Active Directory
|
||||||
|
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
import sqlite3
|
import sqlite3
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "teams_localdb"
|
name = "teams_localdb"
|
||||||
description = "Retrieves the cleartext ssoauthcookie from the local Microsoft Teams database, if teams is open we kill all Teams process"
|
description = "Retrieves the cleartext ssoauthcookie from the local Microsoft Teams database, if teams is open we kill all Teams process"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
from sys import exit
|
from sys import exit
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Executes the Test-Connection PowerShell cmdlet
|
Executes the Test-Connection PowerShell cmdlet
|
||||||
Module by @byt3bl33d3r
|
Module by @byt3bl33d3r
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
'''
|
'''
|
||||||
Extract all Trust Relationships, Trusting Direction, and Trust Transitivity
|
Extract all Trust Relationships, Trusting Direction, and Trust Transitivity
|
||||||
Module by Brandon Fisher @shad0wcntr0ller
|
Module by Brandon Fisher @shad0wcntr0ller
|
||||||
|
|
|
@ -6,7 +6,7 @@ from impacket.dcerpc.v5 import rrp
|
||||||
from impacket.examples.secretsdump import RemoteOperations
|
from impacket.examples.secretsdump import RemoteOperations
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "uac"
|
name = "uac"
|
||||||
description = "Checks UAC status"
|
description = "Checks UAC status"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -7,7 +7,7 @@ from impacket.ldap import ldap, ldapasn1
|
||||||
from impacket.ldap.ldap import LDAPSearchError
|
from impacket.ldap.ldap import LDAPSearchError
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Get user descriptions stored in Active Directory.
|
Get user descriptions stored in Active Directory.
|
||||||
|
|
||||||
|
|
|
@ -11,7 +11,7 @@ from base64 import b64encode
|
||||||
from nxc.helpers.powershell import get_ps_script
|
from nxc.helpers.powershell import get_ps_script
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Module by @NeffIsBack, @Marshall-Hallenbeck
|
Module by @NeffIsBack, @Marshall-Hallenbeck
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -84,7 +84,7 @@ class ConfigCheck:
|
||||||
context.log.highlight(msg)
|
context.log.highlight(msg)
|
||||||
context.log.info(info_msg)
|
context.log.info(info_msg)
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
'''
|
'''
|
||||||
Windows Configuration Checker
|
Windows Configuration Checker
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ from impacket.dcerpc.v5 import rrp
|
||||||
from impacket.examples.secretsdump import RemoteOperations
|
from impacket.examples.secretsdump import RemoteOperations
|
||||||
from sys import exit
|
from sys import exit
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
|
|
||||||
name = "wdigest"
|
name = "wdigest"
|
||||||
description = "Creates/Deletes the 'UseLogonCredential' registry key enabling WDigest cred dumping on Windows >= 8.1"
|
description = "Creates/Deletes the 'UseLogonCredential' registry key enabling WDigest cred dumping on Windows >= 8.1"
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
from sys import exit
|
from sys import exit
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Kicks off a Metasploit Payload using the exploit/multi/script/web_delivery module
|
Kicks off a Metasploit Payload using the exploit/multi/script/web_delivery module
|
||||||
Reference: https://github.com/EmpireProject/Empire/blob/2.0_beta/data/module_source/code_execution/Invoke-MetasploitPayload.ps1
|
Reference: https://github.com/EmpireProject/Empire/blob/2.0_beta/data/module_source/code_execution/Invoke-MetasploitPayload.ps1
|
||||||
|
|
|
@ -7,7 +7,7 @@ from impacket.smb3structs import FILE_READ_DATA
|
||||||
from impacket.smbconnection import SessionError
|
from impacket.smbconnection import SessionError
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Enumerate whether the WebClient service is running on the target by looking for the
|
Enumerate whether the WebClient service is running on the target by looking for the
|
||||||
DAV RPC Service pipe. This technique was first suggested by Lee Christensen (@tifkin_)
|
DAV RPC Service pipe. This technique was first suggested by Lee Christensen (@tifkin_)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Basic enumeration of provided user information and privileges
|
Basic enumeration of provided user information and privileges
|
||||||
Module by spyr0 (@spyr0-sec)
|
Module by spyr0 (@spyr0-sec)
|
||||||
|
|
|
@ -17,7 +17,7 @@ import re
|
||||||
import configparser
|
import configparser
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
"""
|
"""
|
||||||
Module by @NeffIsBack
|
Module by @NeffIsBack
|
||||||
"""
|
"""
|
||||||
|
|
|
@ -9,7 +9,7 @@ from dploot.triage.wifi import WifiTriage
|
||||||
from nxc.helpers.logger import highlight
|
from nxc.helpers.logger import highlight
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "wifi"
|
name = "wifi"
|
||||||
description = "Get key of all wireless interfaces"
|
description = "Get key of all wireless interfaces"
|
||||||
supported_protocols = ["smb"]
|
supported_protocols = ["smb"]
|
||||||
|
|
|
@ -12,7 +12,7 @@ from nxc.logger import nxc_logger
|
||||||
MAX_ATTEMPTS = 2000 # False negative chance: 0.04%
|
MAX_ATTEMPTS = 2000 # False negative chance: 0.04%
|
||||||
|
|
||||||
|
|
||||||
class nxcModule:
|
class NXCModule:
|
||||||
name = "zerologon"
|
name = "zerologon"
|
||||||
description = "Module to check if the DC is vulnerable to Zerologon aka CVE-2020-1472"
|
description = "Module to check if the DC is vulnerable to Zerologon aka CVE-2020-1472"
|
||||||
supported_protocols = ["smb", "wmi"]
|
supported_protocols = ["smb", "wmi"]
|
||||||
|
|
Loading…
Reference in New Issue