ly4k / Certipy

Tool for Active Directory Certificate Services enumeration and abuse
MIT License
2.34k stars 318 forks source link

ldapshell TypeError: __init__() missing 1 required positional argument: 'client' #175

Closed Sybrid203 closed 11 months ago

Sybrid203 commented 11 months ago

When attempting to perform ldap authentication with Certipy's ldap-shell feature, I am getting the following stack trace error message:

kali@linux:~$ certipy auth -pfx cert.p12 -dc-ip 10.0.0.1 -no-hash -debug -username machine$ -domain lab.local -ldap-shell
Certipy v4.8.2 - by Oliver Lyak (ly4k)

[*] Connecting to 'ldaps://10.0.0.1:636'
[*] Authenticated to '10.0.0.1' as: u:lab\machine$
[-] Got error: __init__() missing 1 required positional argument: 'client'
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/site-packages/certipy/entry.py", line 60, in main
    actions[options.action](options)
  File "/usr/local/lib/python3.9/site-packages/certipy/commands/parsers/auth.py", line 12, in entry
    auth.entry(options)
  File "/usr/local/lib/python3.9/site-packages/certipy/commands/auth.py", line 658, in entry
    authenticate.authenticate()
  File "/usr/local/lib/python3.9/site-packages/certipy/commands/auth.py", line 159, in authenticate
    return self.ldap_authentication()
  File "/usr/local/lib/python3.9/site-packages/certipy/commands/auth.py", line 335, in ldap_authentication
    ldap_shell = LdapShell(sys, domain_dumper, ldap_conn)
  File "/usr/local/lib/python3.9/site-packages/certipy/commands/auth.py", line 63, in __init__
    super().__init__(tcp_shell, domain_dumper, client)
**TypeError: __init__() missing 1 required positional argument: 'client'**

This feature worked well in Certipy version 4.7.0.