
Implementação em Go do NoPac, explorando CVE-2021-42278 e CVE-2021-42287
Exploração NoPac, explorando algumas vulnerabilidades antigas CVE-2021-42278 e CVE-2021-42287 para se passar por um administrador de domínio a partir de um usuário padrão.
Chega de dependências irritantes, apenas um único binário, caramba, eu amo Go, Python nunca conseguiria.
A flag -shell apenas inicia o impacket-smbexec. Você também pode simplesmente usar o arquivo ccache para a conta personificada, de qualquer forma.
Fiz isso principalmente para testar a nova implementação em Go do Impacket (gopacket) e é bem legal, sinceramente, e um passo para nunca mais precisar tocar em Python, o que é sempre bom.
Além disso, não há limpeza; talvez eu adicione isso mais tarde, sei lá.
Usage: ./nopac [options] target
Target:
[[domain/]username[:password]@]<targetName or address>
Authentication:
-aesKey string
AES key to use for Kerberos Authentication (128 or 256 bits)
-hashes string
NTLM hashes, format is LMHASH:NTHASH
-k Use Kerberos authentication
-keytab string
Read keys for SPN from keytab file
-no-pass
don't ask for password (useful for -k)
Connection:
-6 Connect via IPv6
-dc-host string
Hostname of the domain controller
-dc-ip string
IP Address of the domain controller
-port int
Destination port to connect to SMB Server
-proxy string
SOCKS5 proxy URL (e.g. socks5h://127.0.0.1:1080). Routes TCP through the proxy. UDP features are disabled. If unset, ALL_PROXY env is consulted.
-target-ip string
IP Address of the target machine
Tool Specific:
-impersonate string
User to impersonate
-new-name string
New username
-new-pass string
New password
-shell
Launch shell at the end
-use-ldap
Use LDAP instead of LDAPS
Miscellaneous:
-debug
Turn DEBUG output ON
-inputfile string
input file with list of entries
-outputfile string
base output filename
-ts
Adds timestamp to every logging output