msldap:一款用于审计MS AD的LDAP库

2024-10-28 28 0

关于msldap

msldap是一款用于审计MS AD的LDAP库,广大研究人员可以利用该工具轻松执行针对MS AD的安全审计任务。

功能介绍

1、配有内置控制台 LDAP 客户端;

2、所有参数都可以通过方便的 URL 进行控制;

3、支持与 NTLM 和 KERBEROS 集成的 Windows 身份验证 (SSPI);

4、支持通道绑定(适用于 ntlm 和 kerberos,不适用于 SSPI);

5、支持加密(针对 NTLM/KERBEROS/SSPI);

6、支持 LDAPS(TODO:实际验证证书);

7、支持SOCKS5代理,无需额外的代理程序;

8、最小占用空间;

9、大量预建查询,方便信息轮询;

10、轻松集成到您的项目中;

工具要求

asn1crypto

asysocks

aiocmd

asciitree

工具安装

由于该工具基于Python 3.6开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3.6+环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/skelsec/msldap.git

然后切换到项目目录中,使用工具安装脚本完成安装:

cd msldap

python3 setup.py install

pip安装

pip install msldap

工具使用

<protocol>+<auth>://<username>:<password>@<ip_or_host>:<port>/<tree>/?<param>=<value>

 

 

<protocol> sets the ldap protocol following values supported:

- ldap

- ldaps

- gc

- gc_ssl

 

<auth> can be omitted if plaintext authentication is to be performed (in that case it default to ntlm-password), otherwise:

- ntlm-password

- ntlm-nt

- kerberos-password (dc option param must be used)

- kerberos-rc4 / kerberos-nt (dc option param must be used)

- kerberos-aes (dc option param must be used)

- kerberos-keytab (dc option param must be used)

- kerberos-ccache (dc option param must be used)

- kerberos-pfx (dc option param must be used)

- kerberos-pem (dc option param must be used)

- kerberos-certstore (dc option param must be used, windows only)

- sspi-ntlm (windows only!)

- sspi-kerberos (windows only!)

- anonymous

- plain

- simple

- sicily (same format as ntlm-nt but using the SICILY authentication)

 

<tree>:

OPTIONAL. Specifies the root tree of all queries

 

<param> can be:

- timeout : connction timeout in seconds

- proxytype: currently only socks5 proxy is supported

- proxyhost: Ip or hostname of the proxy server

- proxyport: port of the proxy server

- proxytimeout: timeout ins ecodns for the proxy connection

- dc: the IP address of the domain controller, MUST be used for kerberos authentication

 

Examples:

ldap://10.10.10.2 (anonymous bind)

ldaps://test.corp (anonymous bind)

ldap+sspi-ntlm://test.corp

ldap+sspi-kerberos://test.corp

ldap://TEST\\victim:<password>@10.10.10.2 (defaults to SASL GSSAPI NTLM)

ldap+simple://TEST\\victim:<password>@10.10.10.2 (SASL SIMPLE auth)

ldap+plain://TEST\\victim:<password>@10.10.10.2 (SASL SIMPLE auth)

ldap+ntlm-password://TEST\\victim:<password>@10.10.10.2

ldap+ntlm-nt://TEST\\victim:<nthash>@10.10.10.2

ldap+kerberos-password://TEST\\victim:<password>@<hostname>/?dc=10.10.10.2

ldap+kerberos-rc4://TEST\\victim:<rc4key>@<hostname>/?dc=10.10.10.2

ldap+kerberos-aes://TEST\\victim:<aes>@<hostname>/?dc=10.10.10.2

ldap://TEST\\victim:[email protected]/DC=test,DC=corp/

ldap://TEST\\victim:[email protected]/DC=test,DC=corp/?timeout=99&proxytype=socks5&proxyhost=127.0.0.1&proxyport=1080&proxytimeout=44

模块使用

import asyncio

from msldap.commons.factory import LDAPConnectionFactory

 

url = 'ldap+simple://TEST\\victim:[email protected]'

 

async def client(url):

conn_url = LDAPConnectionFactory.from_url(url)

ldap_client = conn_url.get_client()

_, err = await ldap_client.connect()

if err is not None:

raise err

 

user = await ldap_client.get_user('Administrator')

print(str(user))

 

if __name__ == '__main__':

asyncio.run(client(url))

工具运行演示

许可证协议

本项目的开发与发布遵循MIT开源许可协议。

项目地址

msldap:【GitHub传送门

参考资料

https://msldap.readthedocs.io/en/latest/

https://live.octopwn.com/


4A评测 - 免责申明

本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。

不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。

本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。

如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!

程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。

侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)

相关文章

办事处网络安全监控与事件响应;国外员工终端安全性怎么保障 | FB甲方群话题讨论
拿不下总统之位,那就用热加载拿下验证码识别与爆破好了!
Sooty:一款SoC分析一体化与自动化CLI工具
shiro CVE-2016-6802 路径绕过(越权)
Apache Solr 身份验证绕过漏洞(CVE-2024-45216)详解
llama_index的CVE-2024-4181漏洞根因分析

发布评论