Giter Club home page Giter Club logo

impacket_static_binaries's Introduction

Impacket Static Binaries

CircleCI Get Latest Binaries Here

Description

This repository is a fork of the amazing Impacket project available here: https://github.com/SecureAuthCorp/impacket

This fork has a CircleCI pipeline to create stand-alone executables for both Windows and Linux x64 of all the Impacket example scripts and upload the binaries to this project's github releases.

It's using PyInstaller to create both the Windows and Linux executables. The Windows binaries are built with Wine using cdrx's docker image: https://github.com/cdrx/docker-pyinstaller

For maximum compatibility, the Linux binaries are built with the oldest version of glibc I could find - CentOS 5 running Glibc 2.5: https://github.com/ropnop/centos5_python27_docker. These binaries should work with any version of glibc newer than 2.5.

I've also compiled all the Linux binaries against musl instead of glibc in case you land in a lightweight container (e.g. Alpine) that doesn't use glibc. These are all bundled up in a file on the releases page called impacket_musl_binaries.tar.gz.

Usage

If you are operating in a restricted environment that either doesn't have Python (or you don't want to disturb any existing python packages), you should be able to download and execute the Impacket examples from the releases page.

For example, it's possible to run wmiexec.py inside a barebones Ubuntu container that doesn't even have Python installed:

$ python
bash: python: command not found
$ curl -s -o wmiexec -L https://github.com/ropnop/impacket_static_binaries/releases/download/0.9.19-dev-binaries/wmiexec_linux_x86_64
$ chmod +x wmiexec
$ ./wmiexec LAB/[email protected]
Impacket v0.9.19-dev - Copyright 2018 SecureAuth Corporation

Password:
[*] SMBv2.1 dialect used
[!] Launching semi-interactive shell - Careful what you execute
[!] Press help for extra shell commands
C:\>whoami
lab\agreen

Building

If you'd like to build the binaries locally, I've included a Makefile and build scripts that essentially do the exact same thing CircleCI does. You need to run the build scripts inside the correct Dockerimage (the make targets take care of that for you).

$ make help
help:	 Show this help
all: linux musl windows  (Build everything)
linux:  Build linux_x64 Binaries in Docker
musl:  Build linux_x64 binaries against musl in Alpine Linux Docker
windows:  Build Windows_x64 binaries
clean: cleanspec  Remove all build artifacts
cleanspec:  Remove spec files

To build all the Linux binaries for example: make linux. This will output all the binaries in the ./dist directory for you.

Known issues

ntlmrelayx and smbrelayx aren't working properly yet. They do some custom loading that PyInstaller doesn't like. Still working on that...

Currently, wmiexec.py, psexec.py and dcomexec.py are hardcoded to use UTF-8 in the built binaries. There's some issues with Pyinstaller and calling sys.stdout.encoding. If you need something other than UTF-8, you'll have to rebuild on your own for now. Still working on this....

Currently glibc >= 2.5 is required. Eventually I'd like to look at building against musl (so they could work in Alpine linux for example)

I also haven't fully tested every example, so no guarantees. If you discover something that's not working as intended, please file an issue and let me know.

Enjoy! -ropnop

PS shout out to maaaaz for the inspiration! https://github.com/maaaaz/impacket-examples-windows

impacket_static_binaries's People

Contributors

asolino avatar ropnop avatar dirkjanm avatar mohemiv avatar kacpern avatar cnotin avatar mrande7son avatar 0xdeaddood avatar rdubourguais avatar martinuy avatar cclauss avatar franferrax avatar contactr2m avatar cube0x0 avatar real-datagram avatar rmaksimov avatar 0xsauby avatar machosec avatar exploide avatar martingalloar avatar c0d3z3r0 avatar mgeeky avatar g0ldengunsec avatar mlefebvre avatar rcarnus avatar mrtchuss avatar mubix avatar skelsec avatar fuzzkitty avatar derunbekannt avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.