{ "info": { "author": "Aether", "author_email": null, "bugtrack_url": null, "classifiers": [ "Intended Audience :: Information Technology", "Programming Language :: Python :: 3" ], "description": "![](./.github/banner.png)\n\n

\n A python script to automatically list vulnerable Windows ACEs/ACLs.\n
\n \"PyPI\"\n \"GitHub\n \n
\n

\n\n## Installation\n\nYou can install it from pypi (latest version is \"PyPI\") with this command:\n\n```bash\nsudo python3 -m pip install abuseACL\n```\n\nOR from source :\n\n```bash\ngit clone https://github.com/AetherBlack/abuseACL\ncd abuseACL\nsudo python3 -m pip install -r requirements.txt\nsudo python3 setup.py install\n```\n\nOR with pipx :\n\n```bash\npython3 -m pipx install git+https://github.com/AetherBlack/abuseACL/\n```\n\n## Examples\n\n- You want to list vulnerable ACEs/ACLs for the current user :\n\n```bash\nabuseACL $DOMAIN/$USER:\"$PASSWORD\"@$TARGET\n```\n\n![](./docs/img/1.png)\n\n- You want to list vulnerable ACEs/ACLs for another user/computer/group :\n\n```bash\nabuseACL -principal Aether $DOMAIN/$USER:\"$PASSWORD\"@$TARGET\n```\n\n![](./docs/img/3.png)\n\n- You want to list vulnerable ACEs/ACLs for a list of users/computers/groups :\n\n```bash\nabuseACL -principalsfile accounts.txt $DOMAIN/$USER:\"$PASSWORD\"@$TARGET\n```\n\nHere is an example of `principalsfile` content:\n\n```\nAdministrateur\nGroup\naether\nMachine$\n```\n\n![](./docs/img/4.png)\n\n- You want to list vulnerable ACEs/ACLs on Schema or on adminSDHolder :\n\n```bash\nabuseACL -extends $DOMAIN/$USER:\"$PASSWORD\"@$TARGET\n```\n\n![](./docs/img/2.png)\n\nYou can look in the documentation of [DACL](https://www.thehacker.recipes/a-d/movement/dacl) to find out how to exploit the rights and use [dacledit](https://github.com/ThePorgs/impacket/blob/master/examples/dacledit.py) to exploit the ACEs.\n\n## How it works\n\nThe tool will connect to the DC's LDAP to list users/groups/computers/OU/certificate templates and their nTSecurityDescriptor, which will be parsed to check for vulnerable rights.\n\n---\n\n## Credits\n\n- [@_nwodtuhs](https://twitter.com/_nwodtuhs) for the helpful [DACL](https://www.thehacker.recipes/a-d/movement/dacl) documentation\n- [@fortra](https://github.com/fortra/) for developping [impacket](https://github.com/fortra/impacket)\n\n## License\n\n[GNU General Public License v3.0](./LICENSE)\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": null, "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "dynamic": null, "home_page": "https://github.com/AetherBlack/abuseACL", "keywords": "abuseACL ActiveDirectory AD", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "abuseACL", "package_url": "https://pypi.org/project/abuseACL/", "platform": null, "project_url": "https://pypi.org/project/abuseACL/", "project_urls": { "Bug Tracker": "https://github.com/AetherBlack/abuseACL/issues", "Homepage": "https://github.com/AetherBlack/abuseACL" }, "provides_extra": null, "release_url": "https://pypi.org/project/abuseACL/1.1.4/", "requires_dist": [ "impacket", "colorama", "pycryptodome" ], "requires_python": "<4,>=3.6", "summary": "List vulnerable ACL.", "version": "1.1.4", "yanked": false, "yanked_reason": null }, "last_serial": 23922634, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "blake2b_256": "638fd0805ee7080d1cd9f51d28d14a2a0e747591e42b3983c1b2da2f8717c0ad", "md5": "ce82af12d4d9d040ec9d747f5cbeded8", "sha256": "2043b6ed3f844a1888b6091c28e22a38e49eb6ad497c6a6081ccdb7d81f3fb6e" }, "downloads": -1, "filename": "abuseACL-1.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "ce82af12d4d9d040ec9d747f5cbeded8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 28681, "upload_time": "2023-10-30T21:22:56", "upload_time_iso_8601": "2023-10-30T21:22:56.110229Z", "url": "https://files.pythonhosted.org/packages/63/8f/d0805ee7080d1cd9f51d28d14a2a0e747591e42b3983c1b2da2f8717c0ad/abuseACL-1.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "blake2b_256": "2def4afe3273de9ada8e7d381d84de950ea054026ff52cf7a5a559eff7527e03", "md5": "ee548f2743825b6439fc776c43639ed9", "sha256": "55fc0f9ec9d39672ac8ab15c2a32f753714613762fc635d1c86a8cb7d706c2b8" }, "downloads": -1, "filename": "abuseACL-1.0.0.tar.gz", "has_sig": false, "md5_digest": "ee548f2743825b6439fc776c43639ed9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 24854, "upload_time": "2023-10-30T21:22:57", "upload_time_iso_8601": "2023-10-30T21:22:57.345781Z", "url": "https://files.pythonhosted.org/packages/2d/ef/4afe3273de9ada8e7d381d84de950ea054026ff52cf7a5a559eff7527e03/abuseACL-1.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0.1": [ { "comment_text": "", "digests": { "blake2b_256": "3b41b4800d8810c8a4b9eb311288b3f21f864d639d60aab585ee475daf8c3384", "md5": "eefb4cf0656434b0170ec36883c5daf9", "sha256": "059ff41d790fe643ee6ee9ec45e4e9817682ca9d60ab7adf5bee4c5d98df6f0a" }, "downloads": -1, "filename": "abuseACL-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "eefb4cf0656434b0170ec36883c5daf9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 29660, "upload_time": "2023-10-31T10:11:44", "upload_time_iso_8601": "2023-10-31T10:11:44.043898Z", "url": "https://files.pythonhosted.org/packages/3b/41/b4800d8810c8a4b9eb311288b3f21f864d639d60aab585ee475daf8c3384/abuseACL-1.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "blake2b_256": "58794b5168f098e143f836f17c3f4aa69133717a97dbf207a5b444c19d9b3143", "md5": "7e28f1d4091e101cd008e8da2e1b4733", "sha256": "2387e34797f125362ddb0052296e434a84025c90de1d4640b84e1c35363be570" }, "downloads": -1, "filename": "abuseACL-1.0.1.tar.gz", "has_sig": false, "md5_digest": "7e28f1d4091e101cd008e8da2e1b4733", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 25532, "upload_time": "2023-10-31T10:11:45", "upload_time_iso_8601": "2023-10-31T10:11:45.374702Z", "url": "https://files.pythonhosted.org/packages/58/79/4b5168f098e143f836f17c3f4aa69133717a97dbf207a5b444c19d9b3143/abuseACL-1.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.1": [ { "comment_text": "", "digests": { "blake2b_256": "e1581acbbc654ac90fe82215953b9d8be54661d2c65769c4e653e6745265e82c", "md5": "f6d3b8b90d7d2d348099bf76798e95e6", "sha256": "fe55f4b8c6de2c513eb32906a68bed3227e140998a2f7d80c764c577dc81d70a" }, "downloads": -1, "filename": "abuseACL-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "f6d3b8b90d7d2d348099bf76798e95e6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 31109, "upload_time": "2023-11-15T22:07:58", "upload_time_iso_8601": "2023-11-15T22:07:58.968516Z", "url": "https://files.pythonhosted.org/packages/e1/58/1acbbc654ac90fe82215953b9d8be54661d2c65769c4e653e6745265e82c/abuseACL-1.1.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "blake2b_256": "87409e12889b51f4c6d0a5161e62a6c97925b20c05a3f4b98d784e399afeac68", "md5": "e90ee4661d2399bd5b1af96247e658c9", "sha256": "6a746880641912294e7c689c26936e3d0aa8019f8b858275c089790e097e2979" }, "downloads": -1, "filename": "abuseACL-1.1.1.tar.gz", "has_sig": false, "md5_digest": "e90ee4661d2399bd5b1af96247e658c9", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 26278, "upload_time": "2023-11-15T22:08:00", "upload_time_iso_8601": "2023-11-15T22:08:00.677965Z", "url": "https://files.pythonhosted.org/packages/87/40/9e12889b51f4c6d0a5161e62a6c97925b20c05a3f4b98d784e399afeac68/abuseACL-1.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.2": [ { "comment_text": "", "digests": { "blake2b_256": "708878efc982f89a5e5f253867e5874faf51d2c22459e3e421ebc78f7c044709", "md5": "85100c40154ff3cd97e4643d9c196ab0", "sha256": "3bcc7592450e290a4973c7f2f2cdd00301fcb20309808903f71cb5da6bcc18ac" }, "downloads": -1, "filename": "abuseACL-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "85100c40154ff3cd97e4643d9c196ab0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 31839, "upload_time": "2023-12-20T09:38:22", "upload_time_iso_8601": "2023-12-20T09:38:22.335018Z", "url": "https://files.pythonhosted.org/packages/70/88/78efc982f89a5e5f253867e5874faf51d2c22459e3e421ebc78f7c044709/abuseACL-1.1.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "blake2b_256": "2121cdac30bf89a85b0e4a9718000da0f5802f64101ae73d056f7e2a8d34eeb2", "md5": "76c88b81a55dc272b1edb30627ac46b6", "sha256": "f45677be4b263bba695d84207a03c88913f7fbe1304f8d65d4e50a504790e663" }, "downloads": -1, "filename": "abuseACL-1.1.2.tar.gz", "has_sig": false, "md5_digest": "76c88b81a55dc272b1edb30627ac46b6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 26654, "upload_time": "2023-12-20T09:38:23", "upload_time_iso_8601": "2023-12-20T09:38:23.458664Z", "url": "https://files.pythonhosted.org/packages/21/21/cdac30bf89a85b0e4a9718000da0f5802f64101ae73d056f7e2a8d34eeb2/abuseACL-1.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.3": [ { "comment_text": "", "digests": { "blake2b_256": "e595579db4c6df545bb57c5b8ab53e59b37a4805215b6a5ca343b63f5c70c959", "md5": "d22e915e547cbc836d7c1c480d221dcb", "sha256": "2bdc3d0118fdfb6a3115ea70bb56cd3d06ac69980302fcf2de99f2de3f979d59" }, "downloads": -1, "filename": "abuseACL-1.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "d22e915e547cbc836d7c1c480d221dcb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6, <4", "size": 31865, "upload_time": "2024-01-04T21:00:41", "upload_time_iso_8601": "2024-01-04T21:00:41.584934Z", "url": "https://files.pythonhosted.org/packages/e5/95/579db4c6df545bb57c5b8ab53e59b37a4805215b6a5ca343b63f5c70c959/abuseACL-1.1.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "blake2b_256": "05a2ae0ab3ee7eb451f1c0cdca57fb75ae48932656ff8e4b546ff1e0ff6cfab1", "md5": "e5177bc9f4bec525700ec826a01d99d2", "sha256": "fbda4b1f21059b83df8a1c58ef0000f7bb0304741ed50b361d9b385389d413a9" }, "downloads": -1, "filename": "abuseACL-1.1.3.tar.gz", "has_sig": false, "md5_digest": "e5177bc9f4bec525700ec826a01d99d2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6, <4", "size": 26684, "upload_time": "2024-01-04T21:00:42", "upload_time_iso_8601": "2024-01-04T21:00:42.944926Z", "url": "https://files.pythonhosted.org/packages/05/a2/ae0ab3ee7eb451f1c0cdca57fb75ae48932656ff8e4b546ff1e0ff6cfab1/abuseACL-1.1.3.tar.gz", "yanked": false, "yanked_reason": null } ], "1.1.4": [ { "comment_text": "", "digests": { "blake2b_256": "624da8d99cb9f23e1c813b8971d51a0a1b2732f978ddb98d28a1429c1073a8e2", "md5": "92375a5efefdaf093925371ff591d4bc", "sha256": "8d1728238df52031fdbb44bb6dd6327b34cff2ae62bc8fe4073821a57679ba2f" }, "downloads": -1, "filename": "abuseACL-1.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "92375a5efefdaf093925371ff591d4bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "<4,>=3.6", "size": 31898, "upload_time": "2024-07-01T09:25:29", "upload_time_iso_8601": "2024-07-01T09:25:29.217473Z", "url": "https://files.pythonhosted.org/packages/62/4d/a8d99cb9f23e1c813b8971d51a0a1b2732f978ddb98d28a1429c1073a8e2/abuseACL-1.1.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "blake2b_256": "33d925d5ebc69da35d93f3ea44301e0adc9c6cf9568f749d4366ddc66884c8bf", "md5": "8b8e9174427fb815e077b4c5f10ad930", "sha256": "a41004800b3580730efbd64efd7cc48a8c623bdf2b837fcb34fb8fd376801b53" }, "downloads": -1, "filename": "abuseacl-1.1.4.tar.gz", "has_sig": false, "md5_digest": "8b8e9174427fb815e077b4c5f10ad930", "packagetype": "sdist", "python_version": "source", "requires_python": "<4,>=3.6", "size": 26729, "upload_time": "2024-07-01T09:25:30", "upload_time_iso_8601": "2024-07-01T09:25:30.470547Z", "url": "https://files.pythonhosted.org/packages/33/d9/25d5ebc69da35d93f3ea44301e0adc9c6cf9568f749d4366ddc66884c8bf/abuseacl-1.1.4.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "blake2b_256": "624da8d99cb9f23e1c813b8971d51a0a1b2732f978ddb98d28a1429c1073a8e2", "md5": "92375a5efefdaf093925371ff591d4bc", "sha256": "8d1728238df52031fdbb44bb6dd6327b34cff2ae62bc8fe4073821a57679ba2f" }, "downloads": -1, "filename": "abuseACL-1.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "92375a5efefdaf093925371ff591d4bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": "<4,>=3.6", "size": 31898, "upload_time": "2024-07-01T09:25:29", "upload_time_iso_8601": "2024-07-01T09:25:29.217473Z", "url": "https://files.pythonhosted.org/packages/62/4d/a8d99cb9f23e1c813b8971d51a0a1b2732f978ddb98d28a1429c1073a8e2/abuseACL-1.1.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "blake2b_256": "33d925d5ebc69da35d93f3ea44301e0adc9c6cf9568f749d4366ddc66884c8bf", "md5": "8b8e9174427fb815e077b4c5f10ad930", "sha256": "a41004800b3580730efbd64efd7cc48a8c623bdf2b837fcb34fb8fd376801b53" }, "downloads": -1, "filename": "abuseacl-1.1.4.tar.gz", "has_sig": false, "md5_digest": "8b8e9174427fb815e077b4c5f10ad930", "packagetype": "sdist", "python_version": "source", "requires_python": "<4,>=3.6", "size": 26729, "upload_time": "2024-07-01T09:25:30", "upload_time_iso_8601": "2024-07-01T09:25:30.470547Z", "url": "https://files.pythonhosted.org/packages/33/d9/25d5ebc69da35d93f3ea44301e0adc9c6cf9568f749d4366ddc66884c8bf/abuseacl-1.1.4.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }