Skip to content
Merged
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
2 changes: 1 addition & 1 deletion capabilities/network-ops/capability.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
schema: 1
name: network-ops
version: "2.1.3"
version: "2.1.4"
Comment thread
mkultraWasHere marked this conversation as resolved.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed — updated PR title to match actual changes. MD4 fix was reverted after discovering impacket uses pycryptodomex (not OpenSSL) and the issue resolves with PR #93's auto-install.

description: >
Network operations and Active Directory exploitation. Multi-agent
pipeline for autonomous red teaming with Nmap scanning, Netexec
Expand Down
16 changes: 6 additions & 10 deletions capabilities/network-ops/tools/impacket.py
Original file line number Diff line number Diff line change
Expand Up @@ -4018,7 +4018,6 @@ async def impacket_atexec(
kerberos: bool = False,
aes_key: str | None = None,
dc_ip: str | None = None,
target_ip: str | None = None,
session_id: int | None = None,
codec: str | None = None,
timeout: int | None = None,
Expand Down Expand Up @@ -4066,11 +4065,11 @@ async def impacket_atexec(

connection:
-dc-ip ip address IP Address of the domain controller.
-target-ip ip address IP Address of the target machine.
</documentation>

Args:
target: Target hostname or IP address (required).
target: Target hostname or IP address (required). Use the IP
directly if DNS resolution is unavailable.
command: Command to execute on the remote host (required).
domain: Domain name.
username: Username for authentication.
Expand All @@ -4079,7 +4078,6 @@ async def impacket_atexec(
kerberos: Use Kerberos authentication.
aes_key: AES key for Kerberos authentication.
dc_ip: Domain controller IP address override.
target_ip: Target machine IP address override.
session_id: Existing logon session ID to use (no output mode).
codec: Output encoding codec.
timeout: Command timeout in seconds.
Expand All @@ -4102,7 +4100,7 @@ async def impacket_atexec(
hashes=hashes, kerberos=kerberos, aes_key=aes_key, password=password
)
)
args.extend(self._build_connection_flags(dc_ip=dc_ip, target_ip=target_ip))
args.extend(self._build_connection_flags(dc_ip=dc_ip))

return await execute(
self._build_script_command("atexec.py", args),
Expand All @@ -4124,7 +4122,6 @@ async def impacket_dcomexec(
kerberos: bool = False,
aes_key: str | None = None,
dc_ip: str | None = None,
target_ip: str | None = None,
share: str | None = None,
dcom_object: str | None = None,
shell_type: str | None = None,
Expand Down Expand Up @@ -4190,11 +4187,11 @@ async def impacket_dcomexec(

connection:
-dc-ip ip address IP Address of the domain controller.
-target-ip ip address IP Address of the target machine.
</documentation>

Args:
target: Target hostname or IP address (required).
target: Target hostname or IP address (required). Use the IP
directly if DNS resolution is unavailable.
command: Command to execute. If empty, returns shell banner.
domain: Domain name.
username: Username for authentication.
Expand All @@ -4203,7 +4200,6 @@ async def impacket_dcomexec(
kerberos: Use Kerberos authentication.
aes_key: AES key for Kerberos authentication.
dc_ip: Domain controller IP address override.
target_ip: Target machine IP address override.
share: Share where output is grabbed from (default ADMIN$).
dcom_object: DCOM object — 'MMC20', 'ShellWindows', or 'ShellBrowserWindow'.
shell_type: Command processor — 'cmd' or 'powershell'.
Expand Down Expand Up @@ -4237,7 +4233,7 @@ async def impacket_dcomexec(
hashes=hashes, kerberos=kerberos, aes_key=aes_key, password=password
)
)
args.extend(self._build_connection_flags(dc_ip=dc_ip, target_ip=target_ip))
args.extend(self._build_connection_flags(dc_ip=dc_ip))

# If no command given, send exit to prevent interactive shell hang
effective_input = input if command else (input or "exit\n")
Expand Down
Loading