Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add basic Windows support + Tools to build executables from examples #1871

Open
wants to merge 30 commits into
base: master
Choose a base branch
from

Conversation

p0rtL6
Copy link

@p0rtL6 p0rtL6 commented Jan 10, 2025

An installer powershell script (impacket-exe-installer.ps1) has been created to install examples as windows standalone executables. (Line 271 would need to be changed to link to the correct repository/branch if merged)

A few changes to make the examples work on Windows:

I understand these changes are a bit different from the idea behind this project, so I am not sure how relevant these are to be merged. If anything should be changed or updated, or anything else, I will keep an eye on this and respond to messages.

p0rtL6 and others added 28 commits October 23, 2024 00:41
…ter done + Print notification about redirecting ports
Update Npcap Module

Update Npcap Module

Update

Update

Update Sniff.py to prompt user to install npcap

Update

Update Setup & Installer

Update

Update

Update sniff requirements

Update installer for modules

Update split.py

Move imports in split.py
Patch Readline

Patch Readline

Patch Readline

Patch Readline
@anadrianmanrique anadrianmanrique self-assigned this Jan 16, 2025
@anadrianmanrique anadrianmanrique added the in review This issue or pull request is being analyzed label Jan 16, 2025
@anadrianmanrique
Copy link
Contributor

@p0rtL6 Thanks for this amazing new functionality you submitted!
I think we should consider which parts are aligned with the impacket project goals and which not. In this case the infrastructure necessary to build impacket executable it's a bit off from the project's focus, although it looks really useful, this is something that we can't commit to maintain at the moment. Having said that, we can analyze which changes of this PR would help to keep that infrastructure working as an external project. Changes that you mentioned like handling issues with pyreadline3 or fixes in split.py are relevant and eventually could be merged.
Let me know your thoughts
Thanks!

@p0rtL6
Copy link
Author

p0rtL6 commented Jan 24, 2025

Hi @anadrianmanrique

My main goal here was to have it possible to build these scripts without python available/installed to run on Windows, mostly for portability during engagements. I understand how the build scripts do not align with your goals here, as it seems you are more focused on the maintenance of the library itself. I am happy to maintain the build scripts and support for Windows on my fork, it may be useful to at least include some information on what might need to be done for Windows support as it seems running the included examples on Windows could be a common use-case.

The other changes currently present in this request include minor fixes, some of which provide better support for Windows (e.g. packet redirection for SMB to get examples like ntlmrelayx working), these may be more relevant as they broaden the functionality without adding other "parts" to the project (like a build script). If it's preferred, I can submit each of those changes as separate requests.

I'm also working on a branch to expand upon the Kerberos options functionality so that individual flags and encryption type settings can be set in Kerberos requests. In order to generate hex strings for even finer control I've also implemented a new example script to generate those as well. This is all functionality inspired by Orpheus. I'm be interested in any feedback you have about that, but was planning on opening a PR separately for those changes so we can discuss there if needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in review This issue or pull request is being analyzed
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants