Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
poetry.lock
8 changes: 7 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ auto_exploit_blank_password = 1

Not implemented in this release

## Setup Instructions
## Instructions (Windows)

1. Create a new Windows VM
2. Install Python (From https://www.python.org/ or through the store, both should work fine)
Expand All @@ -62,6 +62,11 @@ Not implemented in this release
5. Bridge the VM to the network running a ConfigMgr Distribution Point set up for PXE/OSD
6. If using `pxethief.py 1` or `pxethief.py 2` to identify and generate a media variables file, make sure the interface used by the tool is set to the correct one, if it is not correct, manually set it in 'settings.ini' by identifying the right index ID to use from `pxethief.py 10`

## Instructions (Linux)
1. Install `pipx`
2. Run `pipx install git+https://raw.githubusercontent.com/MWR-CyberSec/PXEThief`
3. Use the `pxethief` command.

## Limitations

* Proxy support for HTTP requests - Currently only configurable in code. Proxy support can be enabled on line 35 of `pxethief.py` and the address of the proxy can be set on line 693. I am planning to move this feature to be configurable in 'settings.ini' in the next update to the code base
Expand All @@ -81,3 +86,4 @@ Expect to run into issues with error handling with this tool; there are subtle n
## Author Credit

Copyright (C) 2022 Christopher Panayi, MWR CyberSec

950 changes: 0 additions & 950 deletions pxethief.py

This file was deleted.

31 changes: 31 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
[project]
name = "pxethief"
version = "1.0.0"
description = "PXEThief is a set of tooling that can extract passwords from the Operating System Deployment functionality in Microsoft Endpoint Configuration Manager "
authors = [
{name = "MWR CyberSec"}
]
readme = "README.md"
requires-python = ">=3.7,<4"
dependencies = [
"scapy (>=2.4.5)",
"requests (>=2.27.1)",
"requests-toolbelt (>=0.9.1)",
"pycryptodome (>=3.14.1)",
"lxml (>=4.9.1)"
]

[tool.poetry.dependencies.pywin32]
version = ">=303"
markers = "sys_platform == 'win32'"

[tool.poetry]
packages = [{include = "pxethief", from = "src"}]

[tool.poetry.scripts]
pxethief = 'pxethief.pxethief:main'


[build-system]
requires = ["poetry-core>=2.0.0,<3.0.0"]
build-backend = "poetry.core.masonry.api"
Empty file added src/pxethief/__init__.py
Empty file.
Loading