1
0
mirror of https://github.com/calebstewart/pwncat.git synced 2024-11-30 20:34:15 +01:00
Commit Graph

724 Commits

Author SHA1 Message Date
Caleb Stewart
0f28cc67e1 Added lookup table for prompts based on shell
The zsh shell uses a different syntax for colored prompts. As such, I've
divided the prompt setup into three different options based on the
basename of the active shell: `sh` (uncolored), `zsh` and `default`.
Other shells can be added to `Linux.PROMPTS` as needed in the future.
2021-06-14 10:42:51 -04:00
Caleb Stewart
58ba8eec88 Added updated entrypoint syntax to connect command 2021-06-14 10:23:15 -04:00
Caleb Stewart
cb203349d7 Fixed Dockerfile
- Added rust requirements for cryptography.
- Removed installing requirements.txt as it's no longer needed.
- Added a call to `--download-plugins` to ensure plugins are bundled automatically.
2021-06-14 09:01:19 -04:00
Caleb Stewart
4654ad6a9b Added certificate options for entrypoint
TODO: transfer entrypoint logic to `connect`
2021-06-14 08:35:07 -04:00
Caleb Stewart
b861ab1ed3
Merge pull request #121 from calebstewart/issue-116-failed-to-establish-linux
Checked for SHELL pointing to nologin
2021-06-14 08:18:15 -04:00
Caleb Stewart
5d13d8f120 Added ssl-connect protocol 2021-06-13 22:28:27 -04:00
Caleb Stewart
f4b988d7ba Initial implementation of ssl-wrapped socket 2021-06-13 22:09:41 -04:00
Caleb Stewart
12d2b234a6 Added pull request templates 2021-06-13 20:23:24 -04:00
Caleb Stewart
34bea8eccc
Merge pull request #124 from calebstewart/issue-123-fix-flake8-errors
Fixed all outstanding flake8 errors
2021-06-13 19:19:48 -04:00
Caleb Stewart
e7231d1068 Fixed all outstanding flake8 errors 2021-06-13 18:48:33 -04:00
Caleb Stewart
3861310d71 Even better file close handling
For linux, we used to send one or two EOFs via C-d to the process to
signal exit, however this was inconsistent. Depending on the previous
input from the attacker, sometimes one was needed, sometimes two.
Sometimes, we even observed more than two being needed. Instead, we now
simply loop sending one at a time and checking for the end delimeter.
This will be slightly slower, but avoids hangups or accidentally closing
the shell.
2021-06-13 17:15:22 -04:00
Caleb Stewart
6cc30a6ab5 Formatting and isort fixes 2021-06-13 16:49:38 -04:00
Caleb Stewart
97c489beb0 Added length_sort to isort config 2021-06-13 16:38:05 -04:00
Caleb Stewart
6609591cef More information output on upload commands 2021-06-13 16:30:57 -04:00
Caleb Stewart
473bda6835
Merge pull request #120 from calebstewart/issue-117-linpeas-upload
Modified File Close Routine
2021-06-13 15:57:43 -04:00
Caleb Stewart
e7bf7383f4 Fixed channel send typo 2021-06-13 15:43:22 -04:00
Caleb Stewart
b9f20ecd74 Checked for SHELL pointing to nologin
I'm not sure why this would happen, but it should fix #116
2021-06-12 19:29:47 -04:00
Caleb Stewart
f7f5bb4325 Modified File Close Routine
The old logic for exiting the process when writing to a file was flawed.
I also increased the block size for `dd` to ensure it reads data as
quickly as possible while we upload.
2021-06-12 19:09:41 -04:00
Caleb Stewart
f74510afb6
Merge pull request #119 from calebstewart/feature-reflective-dotnet
- Updated documentation for Plugin API
- Updated README with notes on Windows support
- Added plugin API to Windows C2
- Added GitHub Action to package Windows plugins and attach to releases automatically.
- Added early support for BadPotato supported by [pwncat-badpotato](https://github.com/calebstewart/pwncat-badpotato) plugin (step toward #106)
2021-06-12 17:45:39 -04:00
Caleb Stewart
44aff46d93 Added documentation and workflow for plugin packaging 2021-06-12 17:38:30 -04:00
Caleb Stewart
7ec0d22194 Added ability to prestage plugin downloads
Added entrypoint option `--download-plugins` to pull down all windows
plugins automatically and stage on the attacking machine
2021-06-12 16:04:33 -04:00
Caleb Stewart
39cd6aca94 Protected Windows C2 from KeyboardInterrupts 2021-06-12 15:12:04 -04:00
Caleb Stewart
ac74c3d013 Cleaned up plugin system
- Added builtin plugin resolver
- Rolled base c2 dlls into plugin resolver
- Changed plugin location configuration from `windows_c2_dir` to `plugin_path`
2021-06-12 03:10:14 -04:00
Caleb Stewart
274c4b6cab
Merge pull request #115 from calebstewart/issue-114-windows-comms
Windows C2 Protocol Update
2021-06-09 23:04:23 -04:00
Caleb Stewart
58668d35d7 fixed processing output from run_method 2021-06-09 23:03:49 -04:00
Caleb Stewart
04587bffb1 Updated windows platform for new C2 comms 2021-06-09 20:57:25 -04:00
Caleb Stewart
00c6e13c39 Merge branch 'issue-100-arrow-keys' 2021-06-09 14:33:01 -04:00
Caleb Stewart
6d41178753 Removed ssh:// protocol requirement from --identity argument 2021-06-09 14:24:45 -04:00
Caleb Stewart
0c47c9deca
Merge pull request #112 from calebstewart/issue-110-windows-upload
Updated C2 version and Windows.abspath
2021-06-09 01:10:23 -04:00
Caleb Stewart
3fddb23d58 Updated C2 version and Windows.abspath
Windows.abspath used to cause a FileNotFoundError when the file did not
exist. It now correctly resolves relative paths for files which don't
yet exist.
2021-06-08 14:33:14 -04:00
Caleb Stewart
c1ab54567d Ensured that a shell was used even if SHELL not set 2021-06-08 04:04:13 -04:00
Caleb Stewart
420626868c Added small sleep to account for latency 2021-06-08 03:45:15 -04:00
Caleb Stewart
36435fabb8 Removed the sync command 2021-06-08 02:58:06 -04:00
Caleb Stewart
0a6904d2cd Ensured domain enums check domain status 2021-06-08 00:27:38 -04:00
Caleb Stewart
72563b97cf Merge branch 'master' of github.com:calebstewart/pwncat 2021-06-08 00:20:16 -04:00
Caleb Stewart
ee416660ed Fixed caching issue when gathering facts
Hard to describe, but basically, enumerate.gather wouldn't return facts
enumerated via module recursion. It now does this properly.
2021-06-08 00:18:52 -04:00
Caleb Stewart
e2175fa3d5
Merge pull request #108 from calebstewart/issue-107-port-ssh-not-working
Fix protocol parsing
2021-06-07 22:41:13 -04:00
Caleb Stewart
6182cbbd14 Added updated connect logic to the connect command
Also added expanduser to ssh connection so `~` works in identity paths.
2021-06-07 16:27:52 -04:00
Caleb Stewart
f0ab2a024a Fixed case when protocol was None 2021-06-07 16:22:06 -04:00
Caleb Stewart
91aba56195 Fix protocol parsing
The :// suffix wasn't being removed from the protocol and the host was
being parsed as an empty string instead of None when it wasn't
specified. This should fix #107.
2021-06-07 16:17:58 -04:00
Caleb Stewart
2e0969ce8c Added better documentation for implants 2021-06-06 23:57:54 -04:00
Caleb Stewart
9c7ccdad81
Merge pull request #105 from calebstewart/powershell-utilities
Windows Enumeration Modules
2021-06-06 23:07:05 -04:00
Caleb Stewart
7ca5d93c96 Added Schedule.NOSAVE enumeration schedule 2021-06-06 23:04:23 -04:00
Caleb Stewart
c03d6aaba5 Added wait and kill methods for enumerated processes 2021-06-06 22:18:12 -04:00
Caleb Stewart
95ba763202 Replaced tasklist with Get-WmiObject
This should speed up process enumeration from absolutely horrid to
mildly annoying.
2021-06-06 22:05:25 -04:00
Caleb Stewart
6c09643e74
Merge pull request #104 from calebstewart/issue-103-linux-enumerate-services
Replaced systemd service enumeration. Older systemd versions didn't support the arguments being used.
2021-06-05 16:39:52 -04:00
Caleb Stewart
377f948a93 Replaced systemd service enumeration
This version is compatible with update-to-date and older systemd as seen
in CentOS 7.9. Fixes #103.
2021-06-05 16:10:07 -04:00
Caleb Stewart
1dcd58208b Added user resoltion to group output 2021-06-05 14:57:02 -04:00
Caleb Stewart
2de02baee9 Added version tracking to c2 download 2021-06-05 14:10:20 -04:00
Caleb Stewart
111a3d2717 Merge branch 'master' into powershell-utilities 2021-06-05 04:38:01 -04:00