Skip to content

Releases: Pennyw0rth/NetExec

v1.1.0

12 Nov 22:41
c499d92
Compare
Choose a tag to compare

What's Changed

  • Fix #48 tries to falsly add creds to bloodhound using --laps by @NeffIsBack in #49
  • Bump urllib3 from 2.0.4 to 2.0.6 by @dependabot in #53
  • Update enum_av.py by @bongobongoland in #58
  • Create schtask.py by @Dfte in #54
    • Add the schtask module that can be used to impersonate loggedon users and run commands on their behalf.
  • Add ascii art to cli by @NeffIsBack in #57
  • [nanodump] fix error with temporary path by @XiaoliChan in #67
  • Update dependencies (including impacket fork) for v1.1.0 by @Marshall-Hallenbeck in #30
  • Bump urllib3 from 2.0.6 to 2.0.7 by @dependabot in #77
  • mpgn is back ๐ŸŽ‰ by @NeffIsBack in #80
  • Update README.md by @mishrasamiksha in #83
  • Enhancing the FTP protocol by @RomanRII in #40
    • Modified the --ls flag to allow for listing the current directory and sub-directories. Default now lists .. If an argument is provided, it will list the provided sub-directory
    • Added the --get flag to download a file on the server. If the file exists and is successfully downloaded, it will be written to the users cwd with the remote file's filename.
    • Added the --put flag to upload files onto the server.
    • Modified nxc/protocols/ftp/proto_args.py to reflect the added features
    • Modified the --ls flag to allow for a default directory listing (.) or use a provided directory
    • Added the --get and --put flags
    • Modified nxc/protocols/ftp.py#L83 to comply with RFC 1635
  • Add module sorting by @NeffIsBack in #74
  • [ssh] improvement by @XiaoliChan in #25
    • [ssh.py]: less create ssh connect, keep doing set credential via paramiko transport
    • [ssh.py]: rewrite enum_host_info function
    • [ssh.py]: fix hanging, old one will never exit
    • [ssh.py]: fix private key with passphrase
    • [ssh.py]: add sudo check for linux user
    • [ssh.py]: windows privileges check
    • [ssh.py]: improve command execute and format command execute result
    • [ssh.py]: paramiko always discovery private keys in ~/.ssh/, that will make paramiko exception, disable it.
  • fix(dependencies): add bloodhound to netexec.spec, fixes #79 by @Marshall-Hallenbeck in #87
  • Downgrade termcolor to prevent atty check which disables colors by @NeffIsBack in #86
  • Cleanup & Lint Code by @Marshall-Hallenbeck in #35
    • Add Ruff configuration (version pinned due to discrepancies on GitHub runner versioning)
    • Create linter workflow to run Ruff on push & pull request
    • Remove encoding specification from files (unnecessary in Py3)
    • Update strings to be more descriptive, remove typos, and be properly capitalized
    • Change additionally remaining .format() and % old string interpolation to f-string usage (partially FLY)
    • Fix blank Except statements and unnecessary parenthesis in Excepts (partially RSE)
    • Update exception handling for some circumstances where another except was thrown, causing unnecessary output
    • Remove unused imports
    • Fix poorly and non-pythonic variable/function/class names
    • Fix additional single/double quote usage (Q)
    • Add docstrings to some functions and fix docstrings for others
    • Fix usages of mutable function defaults (see B006, mutable-argument-default in Ruff)
    • Properly inform user if file they specified doesn't exist for several modules
    • Fix usages of comprehension and list/dict initialization via Ruff (C4)
    • Remove unnecessary str-concat (ISC)
    • Fix unnecessary pass statements and unnecessary creation of additional variables before return (PIE)
    • Fix some pytest style (PT)
    • Fix return statements returning None (unnecessary) (RET)
    • Add --poetry option for e2e tests, so all commands are prepended with poetry run
    • Fix ftp class name (got changed to "Ftp" by accident)
    • Simplify lots of code (SIM)
    • Fix tests using a password file to properly reference said file (was missing data/)
    • Remove commented out code (ERA)
    • Import and call sys.exit() instead of just exit() (PL)
    • Fix some try except outside loops (PERF203); additional ones are ignored for now
    • Implement list and dict comprehension where possible and preferred (PERF401)
    • Fix some spaces before inline comments (E261)
    • Modernize some code via Refurb (FURB)
    • Fix bug in add-computer module where improper access was being requested, causing an exception
    • Fix bug in add-computer module where module was not exiting if the computer already exists
    • Add in e2e tests for several missing modules
  • Add python version and OS info to debug output by @NeffIsBack in #89
  • Update README.md - one grammatical error. by @ayushrakesh in #94
  • Fix import error on windows by @NeffIsBack in #98
  • fix typos in python files of directory nxc/modules by @shresthasurav in #97
  • Implement s4u abuse by @zblurx in #50
    • This option will do a full S4U abuse (S4U2Self + S4U2Proxy) in an automated way, allowing to use all postex functionalities of NXC ๐Ÿ”ฅ
  • [connection.py] Improvement by @XiaoliChan in #63
    • connection.py: Add missing self.port in connection.py, in order to use connection.port when writing module.
    • connection.py and protocol: Redirect self.args.port to self.port
    • connection.py: improve ipv6 support, now add is_ipv6 is_link_local_ipv6 variables
    • connection.py: rewrite gethost_addinfo function, don't need try to detect ipv6 anymore, just use AF_UNSPEC instead AF_INET6, AF_INET
    • connection.py: IPv4 preferred when target is dual stack
  • Improve bloodhound connector with Netbios domain name by @NeffIsBack in #88
  • Set computer accounts as owned in bloodhound if local admin privs by @NeffIsBack in #90
  • [winrm] Improvement by @XiaoliChan in #72
  • Fix: update MS17-010 for Python3 properly; add debug logging by @Marshall-Hallenbeck in #108
  • [winrm] disable logger & add miss port args by @XiaoliChan in #107
  • Fix Kerberoasting for #104 by @Marshall-Hallenbeck in #111
  • Improve module texts by @NeffIsBack in #109
  • [ssh] fix #112 by @XiaoliChan in #113
  • disable use of ssh_agent by @nikaiw in #106
  • Adding error handling for unexpected powershell output, see issue #93 by @NeffIsBack in #115
  • Netexec v1.1.0 by @NeffIsBack in #116

New Contributors

Full Changelog: v1.0.0...v1.1.0

v1.0.0

01 Oct 23:41
72e42e9
Compare
Choose a tag to compare

v1.0.0 Release

This release is mainly aimed at stability, to provide a solid baseline from which to work. Some minor and major bugs have been fixed, see below for details.
Version 1.1.0 is already in the works, with great new modules in the works as well as new features such as zblurx's delegation technique coming soon to NetExec.
Stay tuned!

Note: as always, the best way to install NetExec is by cloning the repo and running pipx install ., but we have provided binaries for Windows (!!!) and Ubuntu below!

What's Changed

New Contributors

Full Changelog: https://github.com/Pennyw0rth/NetExec/commits/v1.0.0