1
0
mirror of https://github.com/calebstewart/pwncat.git synced 2024-12-02 21:34:15 +01:00
Commit Graph

665 Commits

Author SHA1 Message Date
Caleb Stewart
89ad889977 Changed ChannelError to ChannelClosed in Socket
Socket-based channels now raise ChannelClosed if no connection is active
and a recv/send method is called. Also, the close method no longer
raises an exception if the channel is not active. It is silently ignored
as a NOOP.
2021-06-17 18:08:50 -04:00
Caleb Stewart
a59857a2fc Added bare except around entire interactive loop 2021-06-17 17:58:30 -04:00
Caleb Stewart
a1499f1a38 Added permission checks when opening files
Also fixed a tangential problem which arose regarding the group
enumerations which caused a recursive call the enumerate groups
from within the group enumeration.
2021-06-17 17:47:07 -04:00
Caleb Stewart
3c33d015e8 Added way for output thread to communicate channel error 2021-06-17 17:00:24 -04:00
Caleb Stewart
65c3dd4864 Brought interactive enabling into exception handler 2021-06-17 16:31:52 -04:00
Caleb Stewart
af84d1a5a8 Added correct channel closing logic to Socket
The recv method did not used to handle an empty result properly. It now
raises a ChannelClosed exception properly. Also, odly, the
`Manager.find_session_by_channel` method had never been implemented.
2021-06-17 15:57:16 -04:00
Caleb Stewart
8e40b1759d Removed C-d loop in favor of static C-d count
It appears that you need to send every C-d twice, but I can't figure out
why. All manual testing only requires a single C-d, but double each
seems to correctly behave with file IO.
2021-06-17 13:29:14 -04:00
Caleb Stewart
882f41626a Added issue link to changelog 2021-06-16 18:51:45 -04:00
Caleb Stewart
5b2b11389e Updated changelog for exception handling 2021-06-16 18:49:56 -04:00
Caleb Stewart
07be104ddd Added exception handling for state transition 2021-06-16 18:48:10 -04:00
Caleb Stewart
2691f77c76
Merge pull request #136 from calebstewart/update-issue-templates
Added headings and version in feature/bug reports
2021-06-16 18:16:59 -04:00
Caleb Stewart
4116f94814 Added headings and version in feature/bug reports 2021-06-16 18:15:44 -04:00
Caleb Stewart
5f18ed48c6
Merge pull request #135 from calebstewart/issue-134-dockerhub-builds-failing
- Pinned Alpine to 3.13.5 in Dockerfile
- Installed pwncat within a virtual environment at /opt/pwncat inside the container
2021-06-16 18:03:16 -04:00
Caleb Stewart
6500ba72ec
Merge branch 'master' into issue-134-dockerhub-builds-failing 2021-06-16 17:31:54 -04:00
Caleb Stewart
67b9f52ff1 Update changelog to reflect dockerfile changes 2021-06-16 17:24:40 -04:00
Caleb Stewart
4afa208201 Pinned alpine to 3.13.5 2021-06-16 17:08:01 -04:00
Caleb Stewart
723d8dfdb8
Merge pull request #132 from Mitul16/master
### Changed
- Changed session tracking so session IDs aren't reused
- Changed zsh prompt to match CWD of other shell prompts
### Fixed
- Fixed syntax for f-strings in escalation command
2021-06-16 16:25:00 -04:00
Caleb Stewart
72c31e305e Removed release data and version from CHANGELOG
I will release a patch version once a couple other bugs
are fixed. Namely, the dockerhub building problems and
exception issues. In the meantime, the changes are listed
under "Unreleased".
2021-06-16 16:12:39 -04:00
Caleb Stewart
f4c01af113 Modified dockerfile to install in virtualenv 2021-06-16 16:10:48 -04:00
Mitul16
226724f8d4 Merge the changes made through the Web Editor, fixed some comments 2021-06-17 01:29:22 +05:30
Mitul16
97ecf1eab1 Updated CHANGELOG.md
I am not sure about the changes I have made, please have a look yourself. I did follow `Keep a changelog`.
2021-06-17 01:27:47 +05:30
Mitul16
eb18bf4e8d Applied changes from python-black, pre-merge checks
These changes do not affect the working of `pwncat`. You had an older version of `python-black`, and allowed me to apply the changes. As per the provided template, I have also ran `isort` and `flake8`, they reported no errors and/or modifications.
2021-06-17 01:24:25 +05:30
Mitul Varshney
4ac8ddee38
Replaced redundant comments with informative ones 2021-06-16 20:54:50 +05:30
Mitul16
1ffbc0e8e7 Merge branch 'master' of https://github.com/calebstewart/pwncat 2021-06-16 16:58:58 +05:30
Mitul16
3bccda6de4 Modified manager->sessions to work as a Dictionary
NOTE: This is for linux! This change will add ID management for the sessions, so that each session gets a unique ID (for a single `pwncat` process) and killing a session will not affect other session IDs. This is useful when we are pivoting using `pwncat`, and removes the confusion with ID management since the current implementation uses a List and works with list indices instead of session IDs
2021-06-16 16:57:57 +05:30
Mitul16
26247e2621 Updated zsh shell prompt to match with rest of the PROMPTS 2021-06-16 16:43:03 +05:30
Caleb Stewart
81e3f2071d Bump to v0.4.2 2021-06-15 21:24:13 -04:00
Caleb Stewart
7102430fcd Added version option; updated documention for install 2021-06-15 21:17:08 -04:00
Caleb Stewart
8363732334 Tweaked format of release changelog 2021-06-15 19:16:23 -04:00
Caleb Stewart
c1bdb62822 Better release changelog output 2021-06-15 17:07:06 -04:00
Caleb Stewart
ea62c3d45e Removed zip file that was accidentally pushed 2021-06-15 17:02:27 -04:00
Caleb Stewart
d06daf89c0 Added release version bodies from changelog 2021-06-15 16:59:33 -04:00
Caleb Stewart
b1e2603855 Added Pull Request template and contributing instructions 2021-06-15 16:37:44 -04:00
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
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
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
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
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
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