dsinternals
Directory Services Internals Library
What it is and what it does
dsinternals is a Python library for interacting with Windows Active Directory at the internals level. It provides native classes and functions to read and manipulate directory service data, drawing inspiration from the DS Internals PowerShell module. The library depends on pyopenssl and pycryptodomex for cryptographic operations needed to work with AD authentication and data structures.
The package is aimed at developers and administrators who need programmatic access to AD internals—such as reading credential material, parsing NTDS databases, or performing directory service operations that go beyond standard LDAP queries. It runs on Python 3.4 and later across OS-independent platforms, though its primary use case is Windows domain environments.
Use it for:
- Extract and analyze password hashes from Active Directory NTDS databases for security auditing
- Automate credential extraction and validation in penetration testing workflows
- Parse and inspect AD replication data and directory service structures programmatically
- Build custom AD management tools that require low-level access to directory internals
- Forensic analysis of compromised AD environments and credential theft investigation
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Interact with Windows Active Directory by reading and manipulating directory service internals through Python, providing native classes and functions for AD operations.
Yes, if you need programmatic access to Windows Active Directory internals for security research, penetration testing, or AD administration. The low install friction, permissive MIT license, and recent maintenance activity support adoption. However, the aging maintenance status (194 days since last release) and narrow use case (Windows AD-specific) mean it's not a general-purpose tool—install only if your workflow specifically requires AD internals access.
Install
dsinternals on PyPI
pip
pip install dsinternalsuv
uv add dsinternalspoetry
poetry add dsinternalsInstalling dsinternals
Before you install
Low friction install with two well-established cryptographic dependencies (pyopenssl, pycryptodomex). Last release was recent (2026-02-01), though the project shows aging maintenance signals with 194 days since last update.
License in practice
MIT license permits free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.
Quickstart
pip install dsinternals
from dsinternals import *
# Use AD internals classes and functions to interact with directory services
Requires Windows Active Directory environment or access to AD data sources; designed for Windows domain contexts.
Verify before relying
- Specific AD operations supported (credential extraction, NTDS parsing, replication, etc.) not detailed in excerpt
- Whether package works with modern AD versions or has known compatibility constraints
- Scope of 'internals' access—what privilege levels or data sources are required
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.4) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — pyopenssl, pycryptodomex |
| Maintenance | aging — 194 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 76,231/month — #14,643 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: dsinternals-1.2.5-py3-none-any.whl
Tags
More Security packages
Provides Python bindings to the FreeDesktop.org…
permissive · top 1,000 on PyPI
msalMSAL for Python handles OAuth2 and OpenID…
permissive · top 1,000 on PyPI
joserfcjoserfc implements JOSE standards (JWS, JWE,…
permissive · top 1,000 on PyPI
AuthlibAuthlib provides a complete implementation of…
permissive · top 1,000 on PyPI
argon2-cffi-bindingsProvides low-level CFFI bindings to the…
permissive · top 1,000 on PyPI
adalADAL for Python authenticates applications with…
permissive · top 1,000 on PyPI
msldapmsldap is a Python library for querying and…
permissive · top 15,000 on PyPI
ldapdomaindumpCollects and exports Active Directory…
permissive · top 15,000 on PyPI
azure-storage-file-datalakeProvides Python client library for Azure Data…
permissive · top 1,000 on PyPI
ipaddrProvides utilities for parsing, validating, and…
permissive · top 15,000 on PyPI
googleadsClient library for interacting with Google Ad…
permissive · top 5,000 on PyPI
azure-storage-file-shareInteract with Azure File Share storage—create,…
permissive · top 5,000 on PyPI
spidevProvides Python bindings to interact with SPI…
permissive · top 15,000 on PyPI
dictknifedictknife provides utility functions for…
permissive · top 15,000 on PyPI
identityProvides a high-level authentication and…
permissive · top 15,000 on PyPI