1
0
mirror of https://github.com/calebstewart/pwncat.git synced 2024-11-24 09:35:39 +01:00
Commit Graph

588 Commits

Author SHA1 Message Date
Caleb Stewart
3e92f0c964 Fixed linux.enumerate.system.network when using old ip
Older versions of `ip` do not support the `-c=never` argument (or colors
at all for that matter). Also, verified isort results, which made some
other modifications.
2021-06-15 15:59:33 -04:00
Caleb Stewart
c3a6654219 Added CONTRIBUTING.md instructions 2021-06-15 13:37:49 -04:00
Mitul Varshney
ac859cb802 Merge branch 'calebstewart:master' into master 2021-06-15 22:37:48 +05:30
Caleb Stewart
2e6b7c75fb
Merge pull request #131 from calebstewart/issue-126-identify-shell
Identified critical error in RawIOBase implementation
2021-06-15 12:00:28 -04:00
Caleb Stewart
42dc681a82 Fixed typo in users variable 2021-06-15 11:38:23 -04:00
Mitul Varshney
a941464ca6 Merge branch 'calebstewart:master' into master 2021-06-15 15:37:43 +05:30
Mitul16
21095ab964 Missing 'f' in some f-strings
There are some f-strings with '{values}' but missing 'f' in 'f"..."'
2021-06-15 09:02:32 +05:30
Caleb Stewart
31b68a2518 During debugging, accidentally removed an exception
Re-added commented exception handler that was removed for testing
2021-06-14 22:36:14 -04:00
Caleb Stewart
64dcae2f0b Identified critical error in RawIOBase implementation
The `ChannelFile` implementation raised a BlockingIOError in certain
circumstances which is against the documented implementation for a
subclass of `RawIOBase`. This was causing odd behaviour like occasional
missing command output (e.g. empty environment variables)
2021-06-14 22:22:42 -04:00
Caleb Stewart
95a6ac98cb
Merge pull request #130 from Mitul16/master
- Added return statement to `sessions`  in case of out-of-bounds session ID
- Replaced the `$fg[color]` syntax with the basic color interface as defined in `man 1 zshmisc`
2021-06-14 19:18:01 -04:00
Mitul16
9365d93856 Modified the 'zsh' shell prompt variable (PS1) value
The older variable value isn't working, I have modified it accordingly matching the original color scheme. However, I have used a different value to show current working directory so that the home directory appears as '~', you may want to use '$PWD' instead
2021-06-15 03:40:59 +05:30
Mitul16
03f7ad8466 Added missing 'return' statement
When we have a session, the missing 'return' statement was allowing to index invalid sessions values
2021-06-15 03:35:07 +05:30
Caleb Stewart
6564204c0f Added ssl-bind and ssl-connect usage documentation 2021-06-14 17:35:47 -04:00
Caleb Stewart
2bd4e625fd Add option for ip to never output colors 2021-06-14 11:09:15 -04:00
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