You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
about: Update code to fix a bug or add an enhancement/feature
4
-
title: ''
5
-
labels: ''
6
-
assignees: ''
7
-
8
-
---
9
1
## Description
10
2
11
3
Please include a summary of the change and which issue is fixed, or what the enhancement does.
12
-
Please also include relevant motivation and context.
13
4
List any dependencies that are required for this change.
14
5
15
6
## Type of change
16
-
Please delete options that are not relevant.
17
7
-[ ] Bug fix (non-breaking change which fixes an issue)
18
8
-[ ] New feature (non-breaking change which adds functionality)
19
9
-[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
20
10
-[ ] This change requires a documentation update
21
11
-[ ] This requires a third party update (such as Impacket, Dploot, lsassy, etc)
22
12
23
-
## How Has This Been Tested?
24
-
Please describe the tests that you ran to verify your changes (e2e, single commands, etc)
25
-
Please also list any relevant details for your test configuration, such as your locally running machine Python version & OS, as well as the target(s) you tested against, including software versions
26
-
27
-
If you are using poetry, you can easily run tests via:
28
-
`poetry run python tests/e2e_tests.py -t $TARGET -u $USER -p $PASSWORD`
29
-
There are additional options like `--errors` to display ALL errors (some may not be failures), `--poetry` (output will include the poetry run prepended), `--line-num $START-$END $SINGLE` for only running a subset
13
+
## Setup guide for the review
14
+
Please provide guidance on what setup is needed to test the introduced changes, such as your locally running machine Python version & OS, as well as the target(s) you tested against, including software versions.
15
+
In particular:
16
+
- Bug Fix: Please provide a short description on how to trigger the bug, to make the bug reproducable for the reviewer.
17
+
- Added Feature/Enhancement: Please specify what setup is needed in order to test the changes. E.g. is additional software needed? GPO changes required? Specific registry settings that need to be changed?
30
18
31
19
## Screenshots (if appropriate):
32
20
Screenshots are always nice to have and can give a visual representation of the change.
@@ -37,8 +25,7 @@ If appropriate include before and after screenshot(s) to show which results are
37
25
-[ ] I have ran Ruff against my changes (via poetry: `poetry run python -m ruff check . --preview`, use `--fix` to automatically fix what it can)
38
26
-[ ] I have added or updated the tests/e2e_commands.txt file if necessary
39
27
-[ ] New and existing e2e tests pass locally with my changes
40
-
-[ ] My code follows the style guidelines of this project (should be covered by Ruff above)
41
-
-[ ] If reliant on third party dependencies, such as Impacket, dploot, lsassy, etc, I have linked the relevant PRs in those projects
28
+
-[ ] If reliant on changes of third party dependencies, such as Impacket, dploot, lsassy, etc, I have linked the relevant PRs in those projects
42
29
-[ ] I have performed a self-review of my own code
43
30
-[ ] I have commented my code, particularly in hard-to-understand areas
44
31
-[ ] I have made corresponding changes to the documentation (PR here: https://github.com/Pennyw0rth/NetExec-Wiki)
Maintained as an open source project by @NeffIsBack, @MJHallenbeck, @_zblurx
@@ -98,12 +100,13 @@ def gen_cli_args():
98
100
kerberos_group.add_argument("--use-kcache", action="store_true", help="Use Kerberos authentication from ccache file (KRB5CCNAME)")
99
101
kerberos_group.add_argument("--aesKey", metavar="AESKEY", nargs="+", help="AES key to use for Kerberos Authentication (128 or 256 bits)")
100
102
kerberos_group.add_argument("--kdcHost", metavar="KDCHOST", help="FQDN of the domain controller. If omitted it will use the domain part (FQDN) specified in the target parameter")
101
-
102
-
server_group=std_parser.add_argument_group("Servers", "Options for nxc servers")
103
-
server_group.add_argument("--server", choices={"http", "https"}, default="https", help="use the selected server")
104
-
server_group.add_argument("--server-host", type=str, default="0.0.0.0", metavar="HOST", help="IP to bind the server to")
105
-
server_group.add_argument("--server-port", metavar="PORT", type=int, help="start the server on the specified port")
106
-
server_group.add_argument("--connectback-host", type=str, metavar="CHOST", help="IP for the remote system to connect back to")
103
+
104
+
certificate_group=std_parser.add_argument_group("Certificate", "Options for certificate authentication")
105
+
certificate_group.add_argument("--pfx-cert", metavar="PFXCERT", help="Use certificate authentication from pfx file .pfx")
106
+
certificate_group.add_argument("--pfx-base64", metavar="PFXB64", help="Use certificate authentication from pfx file encoded in base64")
107
+
certificate_group.add_argument("--pfx-pass", metavar="PFXPASS", help="Password of the pfx certificate")
108
+
certificate_group.add_argument("--pem-cert", metavar="PEMCERT", help="Use certificate authentication from PEM file")
109
+
certificate_group.add_argument("--pem-key", metavar="PEMKEY", help="Private key for the PEM format")
107
110
108
111
p_loader=ProtocolLoader()
109
112
protocols=p_loader.get_protocols()
@@ -115,15 +118,15 @@ def gen_cli_args():
115
118
exceptExceptionase:
116
119
nxc_logger.exception(f"Error loading proto_args from proto_args.py file in protocol folder: {protocol} - {e}")
0 commit comments