44 Commits

Author SHA1 Message Date
Andrew Rioux
4123175eda
doc: converting org mode to markdown 2023-05-10 21:54:19 -04:00
Andrew Rioux
d5e78b5746
fix: made it so that the TERM variable is shared
now commands like clear work
2023-05-09 21:26:53 -04:00
Andrew Rioux
57cd4aa2be
docs: updated docs to use cargo make 2023-05-09 21:26:29 -04:00
Andrew Rioux
f1e5b2d979
refactor: redid the bindshell example
Made it use a single UDP client as well as proper randomized ports to go
through network firewalls, requiring stdin, status, stderr, and stdout
all go over a single UDP socket

Updated the client to have a prompt
2023-05-09 21:02:46 -04:00
Andrew Rioux
8ad7127d4d
feat: added the beginnings of sparse-protocol
sparse protocol allows for composing of different "protocols" at
runtime, and will allow for DNS and TCP as well as different TCP
protocols like HTTP
2023-05-09 10:34:03 -04:00
Andrew Rioux
968df54f59
build: added auto deleting of configure~ for git 2023-05-07 18:12:28 -04:00
Andrew Rioux
8aab9be638
build: made it so dev containers can partly debug
symbol tables appear to be messed up and it doesn't work with async
Rust, so will try to refactor the code to be sync and see how it fares
2023-05-07 14:17:28 -04:00
Andrew Rioux
813dc104e8
build: added git tasks to Makefile 2023-05-07 00:39:22 -04:00
Andrew Rioux
52e458296c
build: made it easier to build bind-shell 2023-05-07 00:08:04 -04:00
Andrew Rioux
318e1b6d05 build: added GitHub docs and workflows 2023-05-06 23:35:38 -04:00
Andrew Rioux
3257dfced0 build: adding to Cargo make config
Adding default tasks and setup task to run when container is made
2023-05-06 23:35:38 -04:00
Andrew Rioux
c984b9eb56 docs: removed extra comments 2023-05-06 23:35:38 -04:00
Andrew Rioux
f72aa6e98d refactor: changed workflow to use Ubuntu
replaced dev container Dockerfile with one which uses
Ubuntu instead of Alpine. The Docker in Docker feature only
works on Ubuntu, not Debian or Alpine, and the LLDB extension
to enable debugging only supports Debian/Ubuntu
2023-05-06 23:35:38 -04:00
Andrew Rioux
f3453f4399 fix: removing unneeded code 2023-05-06 23:35:38 -04:00
Andrew Rioux
0fe2c033b3 build: adding debugging to dev container 2023-05-06 23:35:33 -04:00
Andrew Rioux
978d7cb089 chore: run cargo fmt 2023-05-06 22:50:34 -04:00
Andrew Rioux
798eda764f refactor: removed debug code 2023-05-06 22:50:31 -04:00
Andrew Rioux
c142af62f1 fix: added forgotten error handling
AggregateInterface was lacking some special error handling for certain cases
2023-05-06 22:49:28 -04:00
Andrew Rioux
24dff10b6b feat: added AggregateInterface
AggregateInterface can be used to gather multiple libpcap interfaces
together in order to listen to all simultaneously and also selectively
send on different interfaces
2023-05-06 22:48:04 -04:00
Andrew Rioux
cfdf8f7e86 refactor: simplified route query code
fighting the borrow checker
2023-05-06 22:47:40 -04:00
Andrew Rioux
c16bf366b7 fix: fixed weird issues with querying routes
this just involved a better understanding of the data
types provided by libnl and some refactoring to make querying
as a user of the libnl library easier
2023-05-06 22:46:42 -04:00
Andrew Rioux
be5772fa23 build: actually added firewalls to test container
One of the more interesting selling points about this project is that it
works through local system firewalls on Linux (iptables, nf_tables)

This commit makes the testing environments in the docker containers
actually have to go up against a firewall, one which has a default
incoming and outgoing policy of drop
2023-05-06 22:45:47 -04:00
Andrew Rioux
1165d687ff docs: added basic documentation to libnl 2023-05-06 22:45:30 -04:00
Andrew Rioux
113a43ac41 refactor: cleaned up some code
there was an attempt to use libnl to look up addresses directly with
FIB_LOOKUP, and some of that code was left over. This commit cleans up
such leftover code
2023-05-06 22:44:40 -04:00
Andrew Rioux
04a529e32f build: added clippy in dev environment 2023-05-06 22:44:36 -04:00
Andrew Rioux
95b5f3ee82 feat: added basic wrapper around libnl 2023-05-06 22:44:31 -04:00
Andrew Rioux
da9aa2178c feat: added basic rust wrapper around libnl 2023-05-06 22:44:23 -04:00
Andrew Rioux
2fc1916273 feat: added static linking against libnl
libnl will be used to help understand kernel routing tables
2023-05-06 22:44:20 -04:00
Andrew Rioux
9ebf4b931b docs: adding preliminary documentation 2023-05-06 22:44:17 -04:00
Andrew Rioux
de2c2cc862 feat: added crates to work on a reverse shell 2023-05-06 22:44:14 -04:00
Andrew Rioux
636d895b50 docs: updated docs to work more with examples 2023-05-06 22:43:23 -04:00
Andrew Rioux
17f3829400 docs: simplified setup of repository 2023-05-06 22:43:19 -04:00
Andrew Rioux
2f9684643a docs: updated README to provide the right command 2023-05-06 22:43:10 -04:00
Andrew Rioux
8d53fd7a3e fix: removed extra keys and fixed docker 2023-05-06 22:42:48 -04:00
Andrew Rioux
cd7747f48d docs: fix to bring docs in line with reality 2023-05-06 22:42:33 -04:00
Andrew Rioux
bd0aa9dd3b docs: fixed mistake in docs 2023-05-06 22:42:29 -04:00
Andrew Rioux
9f974a81d6 docs: added better documentation 2023-05-06 22:42:27 -04:00
Andrew Rioux
82dd4acd6b fix: finished example bind shell 2023-05-06 22:42:23 -04:00
Andrew Rioux
50bca92194 feat: added a client, but forgot to add signing 2023-05-06 22:42:21 -04:00
Andrew Rioux
40d105b043 feat: added command response 2023-05-06 22:42:17 -04:00
Andrew Rioux
9e893dbce9 feat: added command parsing and spawning 2023-05-06 22:42:14 -04:00
Andrew Rioux
e0c7e1c240 feat: added a pcap listener to parse commands 2023-05-06 22:42:10 -04:00
Andrew Rioux
bac3e56f3c docs: updated readme to better describe setup 2023-05-06 22:42:02 -04:00
Andrew Rioux
226eefbedd feat: initial commit with static pcap sys build 2023-05-06 22:41:50 -04:00