Bump aardwolf to 0.2.0

main
mpgn 2022-10-20 14:53:36 -04:00
parent c1ff29a9ec
commit e2130c658c
4 changed files with 113 additions and 118 deletions

View File

@ -3,9 +3,9 @@
import ldap3
import ssl
from msldap.commons.url import MSLDAPURLDecoder, MSLDAPClientConnection
import asyncio
from msldap.connection import MSLDAPClientConnection
from msldap.commons.factory import LDAPConnectionFactory
class CMEModule:
'''
@ -70,7 +70,7 @@ class CMEModule:
async def run_ldaps_withEPA(inputUser, inputPassword, dcTarget):
try:
url = 'ldaps+ntlm-password://'+inputUser + ':' + inputPassword +'@' + dcTarget
conn_url = MSLDAPURLDecoder(url)
conn_url = LDAPConnectionFactory.from_url(url)
ldaps_client = conn_url.get_client()
ldapsClientConn = MSLDAPClientConnection(ldaps_client.target, ldaps_client.creds)
_, err = await ldapsClientConn.connect()

View File

@ -6,11 +6,12 @@ import asyncio
from cme.connection import *
from cme.helpers.logger import highlight
from cme.logger import CMEAdapter
from aardwolf import logger
from aardwolf.commons.url import RDPConnectionURL
from aardwolf.commons.factory import RDPConnectionFactory
from aardwolf.commons.queuedata.constants import VIDEO_FORMAT
from aardwolf.commons.iosettings import RDPIOSettings
from aardwolf.protocol.x224.constants import SUPP_PROTOCOLS
from aardwolf.commons.queuedata.constants import MOUSEBUTTON, VIDEO_FORMAT
logger.setLevel(logging.CRITICAL)
@ -34,9 +35,10 @@ class rdp(connection):
self.domain = None
self.server_os = None
self.iosettings = RDPIOSettings()
self.iosettings.supported_protocols = ""
self.protoflags = self.protoflags = [SUPP_PROTOCOLS.RDP, SUPP_PROTOCOLS.SSL, SUPP_PROTOCOLS.SSL|SUPP_PROTOCOLS.RDP, SUPP_PROTOCOLS.SSL|SUPP_PROTOCOLS.HYBRID, SUPP_PROTOCOLS.SSL|SUPP_PROTOCOLS.HYBRID_EX]
self.iosettings.channels = []
self.iosettings.video_out_format = VIDEO_FORMAT.RAW
self.iosettings.clipboard_use_pyperclip = False
self.protoflags = self.protoflags = [SUPP_PROTOCOLS.RDP, SUPP_PROTOCOLS.SSL, SUPP_PROTOCOLS.SSL|SUPP_PROTOCOLS.RDP, SUPP_PROTOCOLS.SSL|SUPP_PROTOCOLS.HYBRID, SUPP_PROTOCOLS.SSL|SUPP_PROTOCOLS.HYBRID_EX]
width, height = args.res.upper().split('X')
height = int(height)
width = int(width)
@ -45,7 +47,6 @@ class rdp(connection):
self.iosettings.video_bpp_min = 15 #servers dont support 8 any more :/
self.iosettings.video_bpp_max = 32
self.iosettings.video_out_format = VIDEO_FORMAT.PNG #PIL produces incorrect picture for some reason?! TODO: check bug
self.iosettings.clipboard_use_pyperclip = False
self.output_filename = None
self.domain = None
self.server_os = None
@ -100,7 +101,6 @@ class rdp(connection):
self.nla))
def create_conn_obj(self):
for proto in self.protoflags:
try:
self.iosettings.supported_protocols = proto
@ -133,8 +133,8 @@ class rdp(connection):
return True
async def connect_rdp(self, url):
rdpurl = RDPConnectionURL(url)
self.conn = rdpurl.get_connection(self.iosettings)
connectionfactory = RDPConnectionFactory.from_url(url, self.iosettings)
self.conn = connectionfactory.create_connection_newtarget(self.hostname, self.iosettings)
_, err = await self.conn.connect()
if err is not None:
raise err

204
poetry.lock generated
View File

@ -1,23 +1,23 @@
[[package]]
name = "aardwolf"
version = "0.0.8"
version = "0.2.0"
description = "Asynchronous RDP protocol implementation"
category = "main"
optional = false
python-versions = ">=3.7"
[package.dependencies]
arc4 = ">=0.0.4"
arc4 = ">=0.3.0"
asn1crypto = "*"
asn1tools = "*"
asysocks = ">=0.1.7"
asyauth = ">=0.0.5"
asysocks = ">=0.2.2"
colorama = "*"
minikerberos = ">=0.2.20"
minikerberos = ">=0.3.3"
Pillow = ">=9.0.0"
pyperclip = ">=1.8.2"
tqdm = "*"
unicrypto = ">=0.0.4"
winsspi = ">=0.0.9"
unicrypto = ">=0.0.9"
[[package]]
name = "aesedb"
@ -44,7 +44,7 @@ python-versions = ">=3.6"
[[package]]
name = "aiosmb"
version = "0.3.8"
version = "0.4.3"
description = "Asynchronous SMB protocol implementation"
category = "main"
optional = false
@ -52,16 +52,16 @@ python-versions = ">=3.7"
[package.dependencies]
asn1crypto = "*"
asysocks = ">=0.1.7"
asyauth = ">=0.0.4"
asysocks = ">=0.2.2"
colorama = "*"
minikerberos = ">=0.2.20"
minikerberos = ">=0.3.3"
prompt-toolkit = ">=3.0.2"
six = "*"
tqdm = "*"
unicrypto = ">=0.0.5"
unicrypto = ">=0.0.9"
wcwidth = "*"
winacl = ">=0.1.1"
winsspi = ">=0.0.9"
winacl = ">=0.1.5"
[[package]]
name = "aiowinreg"
@ -127,9 +127,23 @@ typed-ast = {version = ">=1.4.0,<2.0", markers = "implementation_name == \"cpyth
typing-extensions = {version = ">=3.10", markers = "python_version < \"3.10\""}
wrapt = ">=1.11,<2"
[[package]]
name = "asyauth"
version = "0.0.6"
description = "Unified authentication library"
category = "main"
optional = false
python-versions = ">=3.7"
[package.dependencies]
asn1crypto = ">=1.3.0"
asysocks = ">=0.2.2"
minikerberos = ">=0.3.3"
unicrypto = ">=0.0.9"
[[package]]
name = "asysocks"
version = "0.2.1"
version = "0.2.2"
description = ""
category = "main"
optional = false
@ -140,7 +154,7 @@ asn1crypto = "*"
[[package]]
name = "bcrypt"
version = "4.0.0"
version = "4.0.1"
description = "Modern password hashing for your software and your servers"
category = "main"
optional = false
@ -208,7 +222,7 @@ beautifulsoup4 = "*"
[[package]]
name = "certifi"
version = "2022.6.15"
version = "2022.9.24"
description = "Python package for providing Mozilla's CA Bundle."
category = "main"
optional = false
@ -269,7 +283,7 @@ test = ["flake8 (==3.7.8)", "hypothesis (==3.55.3)"]
[[package]]
name = "cryptography"
version = "38.0.1"
version = "38.0.2"
description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers."
category = "main"
optional = false
@ -372,7 +386,7 @@ python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*"
[[package]]
name = "idna"
version = "3.3"
version = "3.4"
description = "Internationalized Domain Names in Applications (IDNA)"
category = "main"
optional = false
@ -543,7 +557,7 @@ python-versions = ">=3.6"
[[package]]
name = "minikerberos"
version = "0.2.20"
version = "0.3.3"
description = "Kerberos manipulation library in pure Python"
category = "main"
optional = false
@ -551,9 +565,9 @@ python-versions = ">=3.6"
[package.dependencies]
asn1crypto = ">=1.3.0"
asysocks = ">=0.0.11"
asysocks = ">=0.2.2"
oscrypto = ">=1.2.1"
unicrypto = ">=0.0.4"
unicrypto = ">=0.0.9"
[[package]]
name = "msgpack"
@ -565,7 +579,7 @@ python-versions = "*"
[[package]]
name = "msldap"
version = "0.3.40"
version = "0.4.6"
description = "Python library to play with MS LDAP"
category = "main"
optional = false
@ -573,14 +587,14 @@ python-versions = ">=3.7"
[package.dependencies]
asn1crypto = ">=1.3.0"
asysocks = ">=0.1.7"
minikerberos = ">=0.2.20"
asyauth = ">=0.0.5"
asysocks = ">=0.2.1"
minikerberos = ">=0.3.1"
prompt-toolkit = ">=3.0.2"
tqdm = "*"
unicrypto = ">=0.0.5"
unicrypto = ">=0.0.9"
wcwidth = "*"
winacl = ">=0.1.2"
winsspi = {version = ">=0.0.9", markers = "platform_system == \"Windows\""}
winacl = ">=0.1.4"
[[package]]
name = "mypy-extensions"
@ -592,7 +606,7 @@ python-versions = "*"
[[package]]
name = "neo4j"
version = "4.4.7"
version = "4.4.8"
description = "Neo4j Bolt driver for Python"
category = "main"
optional = false
@ -780,17 +794,17 @@ tests = ["pytest (>=3.2.1,!=3.3.0)", "hypothesis (>=3.27.0)"]
[[package]]
name = "pyopenssl"
version = "22.0.0"
version = "22.1.0"
description = "Python wrapper module around the OpenSSL library"
category = "main"
optional = false
python-versions = ">=3.6"
[package.dependencies]
cryptography = ">=35.0"
cryptography = ">=38.0.0,<39"
[package.extras]
docs = ["sphinx", "sphinx-rtd-theme"]
docs = ["sphinx (!=5.2.0,!=5.2.0.post0)", "sphinx-rtd-theme"]
test = ["flaky", "pretend", "pytest (>=3.0.1)"]
[[package]]
@ -831,21 +845,22 @@ credssp = ["requests-credssp (>=1.0.0,<2.0.0)"]
[[package]]
name = "pypykatz"
version = "0.5.7"
version = "0.6.2"
description = "Python implementation of Mimikatz"
category = "main"
optional = false
python-versions = ">=3.6"
[package.dependencies]
aesedb = ">=0.0.5"
aiosmb = ">=0.3.8"
aesedb = ">=0.1.0"
aiosmb = ">=0.4.2"
aiowinreg = ">=0.0.7"
minidump = ">=0.0.21"
minikerberos = ">=0.2.20"
msldap = ">=0.3.38"
unicrypto = ">=0.0.5"
winacl = ">=0.1.2"
minikerberos = ">=0.3.2"
msldap = ">=0.4.1"
tqdm = "*"
unicrypto = ">=0.0.9"
winacl = ">=0.1.5"
[[package]]
name = "pyspnego"
@ -864,7 +879,7 @@ kerberos = ["krb5 (>=0.3.0)", "gssapi (>=1.6.0)"]
[[package]]
name = "pytz"
version = "2022.2.1"
version = "2022.5"
description = "World timezone definitions, modern and historical"
category = "main"
optional = false
@ -885,7 +900,7 @@ lxml = "*"
[[package]]
name = "regex"
version = "2022.8.17"
version = "2022.9.13"
description = "Alternative regular expression module, to replace re."
category = "dev"
optional = false
@ -911,7 +926,7 @@ use_chardet_on_py3 = ["chardet (>=3.0.2,<6)"]
[[package]]
name = "rich"
version = "12.5.1"
version = "12.6.0"
description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal"
category = "main"
optional = false
@ -925,9 +940,33 @@ typing-extensions = {version = ">=4.0.0,<5.0", markers = "python_version < \"3.9
[package.extras]
jupyter = ["ipywidgets (>=7.5.1,<8.0.0)"]
[[package]]
name = "semantic-version"
version = "2.10.0"
description = "A library implementing the 'SemVer' scheme."
category = "main"
optional = false
python-versions = ">=2.7"
[package.extras]
dev = ["Django (>=1.11)", "nose2", "tox", "check-manifest", "coverage", "flake8", "wheel", "zest.releaser", "readme-renderer (<25.0)", "colorama (<=0.4.1)"]
doc = ["sphinx", "sphinx-rtd-theme"]
[[package]]
name = "setuptools-rust"
version = "1.5.2"
description = "Setuptools Rust extension plugin"
category = "main"
optional = false
python-versions = ">=3.7"
[package.dependencies]
semantic-version = ">=2.8.2,<3"
typing-extensions = ">=3.7.4.3"
[[package]]
name = "shiv"
version = "1.0.1"
version = "1.0.2"
description = "A command line utility for building fully self contained Python zipapps."
category = "dev"
optional = false
@ -1011,7 +1050,7 @@ python-versions = ">=3.6"
[[package]]
name = "typing-extensions"
version = "4.3.0"
version = "4.4.0"
description = "Backported and Experimental Type Hints for Python 3.7+"
category = "main"
optional = false
@ -1065,22 +1104,14 @@ watchdog = ["watchdog"]
[[package]]
name = "winacl"
version = "0.1.3"
version = "0.1.5"
description = "ACL/ACE/Security Descriptor manipulation library in pure Python"
category = "main"
optional = false
python-versions = ">=3.6"
[[package]]
name = "winsspi"
version = "0.0.10"
description = "Windows SSPI library in pure Python"
category = "main"
optional = false
python-versions = ">=3.6"
[package.dependencies]
minikerberos = ">=0.2.0"
cryptography = ">=38.0.1"
[[package]]
name = "wrapt"
@ -1100,38 +1131,28 @@ python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*"
[[package]]
name = "zipp"
version = "3.8.1"
version = "3.9.0"
description = "Backport of pathlib-compatible object wrapper for zip files"
category = "main"
optional = false
python-versions = ">=3.7"
[package.extras]
docs = ["sphinx", "jaraco.packaging (>=9)", "rst.linker (>=1.9)", "jaraco.tidelift (>=1.4)"]
testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "pytest-cov", "pytest-enabler (>=1.3)", "jaraco.itertools", "func-timeout", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)"]
docs = ["sphinx (>=3.5)", "jaraco.packaging (>=9)", "rst.linker (>=1.9)", "furo", "jaraco.tidelift (>=1.4)"]
testing = ["pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-flake8", "flake8 (<5)", "pytest-cov", "pytest-enabler (>=1.3)", "jaraco.itertools", "func-timeout", "jaraco.functools", "more-itertools", "pytest-black (>=0.3.7)", "pytest-mypy (>=0.9.1)"]
[metadata]
lock-version = "1.1"
python-versions = "^3.7.0"
content-hash = "73f72310ec450d49ec8fc624138b693c85005133b4df75f8526502d57e028399"
content-hash = "27ebd694ab5a200afef205dde4f6684eadd85f61aeccf06ba29c03be3610375e"
[metadata.files]
aardwolf = [
{file = "aardwolf-0.0.8-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:56ea9f8b1664b0637f95f979c5ac101fce2396c9f83ec269303193c8cb539065"},
{file = "aardwolf-0.0.8-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a3d18f70a5c69c8393ffa13c1b0da8232038f77e874bb0cba1a6a75e54688d38"},
{file = "aardwolf-0.0.8-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab8c73fa55377a611f1dfeb17a9fbbff15649055dbebc7c95a07fd439a482a1e"},
{file = "aardwolf-0.0.8-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:04a91de0adba6e6661e3a048fded1f13b6725941287726314e3858789d88d1a2"},
{file = "aardwolf-0.0.8-cp39-cp39-win_amd64.whl", hash = "sha256:f28e1bd32f59aea8a89ec2d075b2d4f15510c652502018466dd7154ea09538d4"},
{file = "aardwolf-0.0.8.tar.gz", hash = "sha256:a65cf50fe2ebe6b57c889a3b2149ae5df8f12ef5715fd960cb1c985d494f1f49"},
]
aardwolf = []
aesedb = []
aioconsole = [
{file = "aioconsole-0.3.3.tar.gz", hash = "sha256:47df42d9f8cc3995bbe032dd5f01d32cc5b06639e9078bb9b4e3c55b237f5e32"},
]
aiosmb = [
{file = "aiosmb-0.3.8-py3-none-any.whl", hash = "sha256:0e98390ba00fdc4190e698f184dfcf72b02b592cdfe9274e03cc7316ac4ee368"},
{file = "aiosmb-0.3.8.tar.gz", hash = "sha256:0afa901093f0ad91d0b8421dec66c80bd2e9cb237a8da405984413a5d7475398"},
]
aiosmb = []
aiowinreg = [
{file = "aiowinreg-0.0.7-py3-none-any.whl", hash = "sha256:6cd7f64ef002a7c6d7c27310db578fbc8992eeaca0936ebc56283d70c54573f2"},
{file = "aiowinreg-0.0.7.tar.gz", hash = "sha256:a191c039f9c0c1681e8fc3a3ce26c56e8026930624932106d7a1526d96c008dd"},
@ -1147,6 +1168,7 @@ asn1crypto = [
]
asn1tools = []
astroid = []
asyauth = []
asysocks = []
bcrypt = []
beautifulsoup4 = [
@ -1162,10 +1184,7 @@ black = [
bs4 = [
{file = "bs4-0.0.1.tar.gz", hash = "sha256:36ecea1fd7cc5c0c6e4a1ff075df26d50da647b75376626cc186e2212886dd3a"},
]
certifi = [
{file = "certifi-2022.6.15-py3-none-any.whl", hash = "sha256:fe86415d55e84719d75f8b69414f6438ac3547d2078ab91b67e779ef69378412"},
{file = "certifi-2022.6.15.tar.gz", hash = "sha256:84c85a9078b11105f04f3036a9482ae10e4621616db313fe045dd24743a0820d"},
]
certifi = []
cffi = [
{file = "cffi-1.15.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:a66d3508133af6e8548451b25058d5812812ec3798c886bf38ed24a98216fab2"},
{file = "cffi-1.15.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:470c103ae716238bbe698d67ad020e1db9d9dba34fa5a899b5e21577e6d52ed2"},
@ -1266,10 +1285,7 @@ flask = []
future = [
{file = "future-0.18.2.tar.gz", hash = "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d"},
]
idna = [
{file = "idna-3.3-py3-none-any.whl", hash = "sha256:84d9dd047ffa80596e0f246e2eab0b391788b0503584e8945f2368256d2735ff"},
{file = "idna-3.3.tar.gz", hash = "sha256:9d643ff0a55b762d5cdb124b8eaa99c66322e2157b69160bc32796e824360e6d"},
]
idna = []
impacket = []
importlib-metadata = [
{file = "importlib_metadata-4.2.0-py3-none-any.whl", hash = "sha256:057e92c15bc8d9e8109738a48db0ccb31b4d9d5cfbee5a8670879a30be66304b"},
@ -1461,10 +1477,7 @@ minidump = [
{file = "minidump-0.0.21-py3-none-any.whl", hash = "sha256:6a9d2152f76ae633c609e09b48b42f55bd5a6b65f920dbbec756e5d9134a6201"},
{file = "minidump-0.0.21.tar.gz", hash = "sha256:83d612afb6c57727ebf38aca433b550f83f9f8c7c3b6562ad2ab97071fd85f3a"},
]
minikerberos = [
{file = "minikerberos-0.2.20-py3-none-any.whl", hash = "sha256:3c383f67ebcf6f28105ed54f623a6a5c677a24e3f0c9ad69ed453f77e569d714"},
{file = "minikerberos-0.2.20.tar.gz", hash = "sha256:789f802263fa1882f701b123f6eec048b45cd731bf1b528870005daf07402047"},
]
minikerberos = []
msgpack = [
{file = "msgpack-1.0.4-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:4ab251d229d10498e9a2f3b1e68ef64cb393394ec477e3370c457f9430ce9250"},
{file = "msgpack-1.0.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:112b0f93202d7c0fef0b7810d465fde23c746a2d482e1e2de2aafd2ce1492c88"},
@ -1677,10 +1690,7 @@ pynacl = [
{file = "PyNaCl-1.5.0-cp36-abi3-win_amd64.whl", hash = "sha256:20f42270d27e1b6a29f54032090b972d97f0a1b0948cc52392041ef7831fee93"},
{file = "PyNaCl-1.5.0.tar.gz", hash = "sha256:8ac7448f09ab85811607bdd21ec2464495ac8b7c66d146bf545b0f08fb9220ba"},
]
pyopenssl = [
{file = "pyOpenSSL-22.0.0-py2.py3-none-any.whl", hash = "sha256:ea252b38c87425b64116f808355e8da644ef9b07e429398bfece610f893ee2e0"},
{file = "pyOpenSSL-22.0.0.tar.gz", hash = "sha256:660b1b1425aac4a1bea1d94168a85d99f0b3144c869dd4390d27629d0087f1bf"},
]
pyopenssl = []
pyparsing = [
{file = "pyparsing-3.0.9-py3-none-any.whl", hash = "sha256:5026bae9a10eeaefb61dab2f09052b9f4307d44aee4eda64b309723d8d206bbc"},
{file = "pyparsing-3.0.9.tar.gz", hash = "sha256:2b020ecf7d21b687f219b71ecad3631f644a47f01403fa1d1036b0c6416d70fb"},
@ -1692,10 +1702,7 @@ pypsrp = [
{file = "pypsrp-0.7.0-py3-none-any.whl", hash = "sha256:c0912096858ff8c53a3cf22cc46c3ce20e6ec5e2deade342088e87a81dbadac8"},
{file = "pypsrp-0.7.0.tar.gz", hash = "sha256:d7144ad7c798a4dcded20a71c712d63eb4bfb32debe62f3a98f01481384a5558"},
]
pypykatz = [
{file = "pypykatz-0.5.7-py3-none-any.whl", hash = "sha256:8e89673d76d893500ad323803619cb8bd70ebb577e40c68cea6be9d7478bb95e"},
{file = "pypykatz-0.5.7.tar.gz", hash = "sha256:1be75b3fec6d447f1d214ef41db8a644957e7bfc98968d9db3938023351cc9d6"},
]
pypykatz = []
pyspnego = []
pytz = []
pywerview = [
@ -1708,10 +1715,9 @@ requests = [
{file = "requests-2.28.1.tar.gz", hash = "sha256:7c5599b102feddaa661c826c56ab4fee28bfd17f5abca1ebbe3e7f19d7c97983"},
]
rich = []
shiv = [
{file = "shiv-1.0.1-py2.py3-none-any.whl", hash = "sha256:f66133c85c4bfad8e52ea9a163778e9ef4e21f57da9e3319656bf520d4276920"},
{file = "shiv-1.0.1.tar.gz", hash = "sha256:ec16095a0565906536af7f5e57771e9ae7a061b646ed63ad66ebbc70c30f4d2a"},
]
semantic-version = []
setuptools-rust = []
shiv = []
six = [
{file = "six-1.16.0-py2.py3-none-any.whl", hash = "sha256:8abb2f1d86890a2dfb989f9a77cfcfd3e47c2a354b01111771326f8aa26e0254"},
{file = "six-1.16.0.tar.gz", hash = "sha256:1e61c37477a1626458e36f7b1d82aa5c9b094fa4802892072e49de9c60c4c926"},
@ -1762,10 +1768,7 @@ typed-ast = [
{file = "typed_ast-1.5.4-cp39-cp39-win_amd64.whl", hash = "sha256:0fdbcf2fef0ca421a3f5912555804296f0b0960f0418c440f5d6d3abb549f3e1"},
{file = "typed_ast-1.5.4.tar.gz", hash = "sha256:39e21ceb7388e4bb37f4c679d72707ed46c2fbf2a5609b8b8ebc4b067d977df2"},
]
typing-extensions = [
{file = "typing_extensions-4.3.0-py3-none-any.whl", hash = "sha256:25642c956049920a5aa49edcdd6ab1e06d7e5d467fc00e0506c44ac86fbfca02"},
{file = "typing_extensions-4.3.0.tar.gz", hash = "sha256:e6d2677a32f47fc7eb2795db1dd15c1f34eff616bcaf2cfb5e997f854fa1c4a6"},
]
typing-extensions = []
unicrypto = []
urllib3 = []
wcwidth = [
@ -1773,14 +1776,7 @@ wcwidth = [
{file = "wcwidth-0.2.5.tar.gz", hash = "sha256:c4d647b99872929fdb7bdcaa4fbe7f01413ed3d98077df798530e5b04f116c83"},
]
werkzeug = []
winacl = [
{file = "winacl-0.1.3-py3-none-any.whl", hash = "sha256:a0b76a327fd337d5ee707ccff95222e6b6ecaa6d887613a1c3d3437ce0be1d4d"},
{file = "winacl-0.1.3.tar.gz", hash = "sha256:1bac567a9d21300082aa2246bb0f94a591fca8e218e163bab18df0e32eefea06"},
]
winsspi = [
{file = "winsspi-0.0.10-py3-none-any.whl", hash = "sha256:59b7c7595f91414528cfd80c6cfc77ec6f5e4e28185ebd6418f8368ddc7aca82"},
{file = "winsspi-0.0.10.tar.gz", hash = "sha256:2f5a8d2c4b9f459144426909e26a74e550512e23b6cf9af52c2a00003c7c3fdb"},
]
winacl = []
wrapt = [
{file = "wrapt-1.14.1-cp27-cp27m-macosx_10_9_x86_64.whl", hash = "sha256:1b376b3f4896e7930f1f772ac4b064ac12598d1c38d04907e696cc4d794b43d3"},
{file = "wrapt-1.14.1-cp27-cp27m-manylinux1_i686.whl", hash = "sha256:903500616422a40a98a5a3c4ff4ed9d0066f3b4c951fa286018ecdf0750194ef"},

View File

@ -41,9 +41,8 @@ xmltodict = "^0.12.0"
terminaltables = "^3.1.0"
aioconsole = "^0.3.3"
pywerview = "^0.3.3"
minikerberos = "0.2.20"
aardwolf = "^0.0.8"
minikerberos = "0.3.3"
aardwolf = { git = "https://github.com/skelsec/aardwolf.git", branch = "main" }
[tool.poetry.dev-dependencies]
flake8 = "*"