Arsenal is just a quick inventory, reminder and launcher for pentest commands.
Project description
Arsenal
Arsenal is just a quick inventory, reminder and launcher for pentest commands.
This project written by pentesters for pentesters simplify the use of all the hard-to-remember commands
In arsenal you can search for a command, select one and it's prefilled directly in your terminal. This functionality is independent of the shell used. Indeed arsenal emulates real user input (with TTY arguments and IOCTL) so arsenal works with all shells and your commands will be in the history.
You have to enter arguments if needed, but arsenal supports global variables.
For example, during a pentest we can set the variable ip
to prefill all commands using an ip with the right one.
To do that you just have to enter the following command in arsenal:
>set ip=10.10.10.10
Authors:
- Guillaume Muh
- mayfly
This project is inspired by navi (https://github.com/denisidoro/navi) because the original version was in bash and too hard to understand to add features
Arsenal new features
- New colors
- Add tmux new pane support (with -t)
- Add default values in cheatsheets commands with
<argument|default_value>
- Support description inside cheatsheets
- New categories and Tags
- New cheatsheets
- Add yml support (thx @0xswitch )
- Add fzf support with ctrl+t (thx @mgp25)
- Add prefix to commands generated (with -f)
Install & Launch
- with pip :
python3 -m pip install arsenal-cli
- run (we also advice you to add this alias :
alias a='arsenal'
)
arsenal
- manually:
git clone https://github.com/Orange-Cyberdefense/arsenal.git
cd arsenal
python3 -m pip install -r requirements.txt
./run
Inside your .bashrc or .zshrc add the path to run
to help you do that you could launch the addalias.sh script
./addalias.sh
- Also if you are an Arch user you can install from the AUR:
git clone https://aur.archlinux.org/arsenal.git
cd arsenal
makepkg -si
- Or with an AUR helper like yay:
yay -S arsenal
Launch in tmux mode
./run -t # if you launch arsenal in a tmux window with one pane, it will split the window and send the command to the otherpane without quitting arsenal
# if the window is already split the command will be send to the other pane without quitting arsenal
./run -t -e # just like the -t mode but with direct execution in the other pane without quitting arsenal
Add external cheatsheets
You could add your own cheatsheets inside the my_cheats folder or in the ~/.cheats folder.
You could also add additional paths to the file <arsenal_home>/arsenal/modules/config.py
,
arsenal reads .md
(MarkDown) and .rst
(RestructuredText).
CHEATS_PATHS = [
join(BASEPATH, "cheats"), # DEFAULT
join(HOMEPATH, "docs/my_cheats")
]
Cheatsheets examples are in <arsenal_home>/cheats
: README.md
and README.rst
Add a prefix commands generated
In order to prefix commands generated by arsenal you need to set the arsenal_prefix_cmd
global variable.
For example if you need your commands to be prefixed with proxychains -q
:
>set arsenal_prefix_cmd=proxychains -q
then you can start run arsenal with the prefix option:
arsenal -f
Troubleshooting
If you got on error on color init try :
export TERM='xterm-256color'
--
If you have the following exception when running Arsenal:
ImportError: cannot import name 'FullLoader'
First, check that requirements are installed:
pip install -r requirements.txt
If the exception is still there:
pip install -U PyYAML
--
If you encounter an exception similar to the following (contains TIOCSTI in strace) when running Arsenal:
[...]
fcntl.ioctl(stdin, termios.TIOCSTI, c)
OSError: [Errno 5] Input/output error
Then you may need to re-enable TIOCSTI. Please run the following commands as root to fix this issue on the current session :
sysctl -w dev.tty.legacy_tiocsti=1
If you want this workaround to survive a reboot, add the following configuration to sysctl.conf file and reboot :
echo "dev.tty.legacy_tiocsti=1" >> /etc/sysctl.conf
More information is available in the issue https://github.com/Orange-Cyberdefense/arsenal/issues/77
Mindmap
- Active directory mindmap
- Due to csp on github when you open the svg, we moved the AD mindmap and the source to this repository : https://github.com/Orange-Cyberdefense/ocd-mindmaps
https://orange-cyberdefense.github.io/ocd-mindmaps/img/pentest_ad_dark_2022_11.svg
-
AD mindmap black version
-
Exchange Mindmap (thx to @snovvcrash)
-
Active directory ACE mindmap
TODO cheatsheets
reverse shell
- msfvenom
- php
- python
- perl
- powershell
- java
- ruby
whitebox analysis grep regex
- php
- nodejs
- hash
Tools
smb
- enum4linux
- smbmap
- smbget
- rpcclient
- rpcinfo
- nbtscan
- impacket
kerberos & AD
- impacket
- bloodhound
- rubeus
- powerview
- shadow credentials attack
- samaccountname attack
MITM
- mitm6
- responder
Unserialize
- ysoserial
- ysoserial.net
bruteforce & pass cracking
- hydra
- hashcat
- john
scan
- nmap
- eyewitness
- gowitness
fuzz
- gobuster
- ffuf
- wfuzz
DNS
- dig
- dnsrecon
- dnsenum
- sublist3r
rpc
- rpcbind
netbios-ssn
- snmpwalk
- snmp-check
- onesixtyone
sql
- sqlmap
oracle
- oscanner
- sqlplus
- tnscmd10g
mysql
- mysql
nfs
- showmount
rdp
- xfreerdp
- rdesktop
- ncrack
mssql
- sqsh
winrm
- evilwinrm
redis
- redis-cli
postgres
- psql
- pgdump
vnc
- vncviewer
x11
- xspy
- xwd
- xwininfo
ldap
- ldapsearch
https
- sslscan
web
- burp
- nikto
- tplmap
app web
- drupwn
- wpscan
- nuclei
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file arsenal-cli-1.2.6.tar.gz
.
File metadata
- Download URL: arsenal-cli-1.2.6.tar.gz
- Upload date:
- Size: 4.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/30.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.25.7 tqdm/4.48.2 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 38f0d4ebe0c0df8841699c21d64fd90750374c75b7624addba2b66ad6789b0ff |
|
MD5 | a5c670e4f3d766441409398b4f3ab986 |
|
BLAKE2b-256 | f2e9b23de204a6f6215b6fff53d423b06a0582484fb712ad8c5d5c26db46e61c |
File details
Details for the file arsenal_cli-1.2.6-py2.py3-none-any.whl
.
File metadata
- Download URL: arsenal_cli-1.2.6-py2.py3-none-any.whl
- Upload date:
- Size: 114.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/30.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.25.7 tqdm/4.48.2 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16be14c303af09ca2ce0deadb0863399c11d0fbf631a44811a7d448d140d994f |
|
MD5 | e4161c944c8613dd76c8f7f28f3954b1 |
|
BLAKE2b-256 | 3ab2852afa74f52b4f9efc205c5348d8d40e863f34c57f7efc9e6457b3aa900b |