Features • Installation • Usage • Running • Notes
hackbox is an lightweight and easy to use toolbox for hackers, it is designed to organize and uniformly call your favorite command line tools.
- Highly interactive command line framework powered by c-bata/go-prompt
- Easy to use and intelligent automatic completion
- Rich and self-explanatory default configuration files, so you can easily customize it
- Built-in several command line tools for hackers (in comming...)
- Clear arguments settings, no need to read annoying help documents, so you can call tools faster and more conveniently
- Save the execution result of the tool which can be used as input to another tool or easily exported
- Command line parameters support validate powered by go-playground/validator
hackbox requires go1.17 to install. Run the following command to get hackbox:
go install -v github.com/WAY29/hackbox/cmd/hackbox@latest
Download hackbox from Releases
Just run hackbox, and you will get an interactive hackbox shell. Here are hackbox help documents:
Usage of hackbox:
-nc
Print without color
-p string
Custom tool path, default will load from ./tools.toml -> $HOME/.config/hackbox/tools.yaml
-q Run hackbox without banner
You can run some intuitive commands, such as cd
, ls
, sh
, exit
cd <tool directory>
change tool directoryls
List tools and subdirectories in this directorysh <command>
Run local shell commandexit
Exit hackbox
When you find the tool you want, use
it immediately, then you can show
or set
or unset
arguments, then just run
it.
use <tool name>
use specified toolset <arg name> <arg value>
set tool argumentunset <arg name>
unset tool argumentshow [arg name]
Show tool argument(s)run [as <output name>] [bg]
Run tools [in background]
Then you can output
the result or export
it, before this, maybe you want to filter
it or merge
other result
output [output name]
show output(s)filter <output name> <filter> [as <new output name>]
filter output by filters link/email/date/time/phone/ip/md5/sha1/sha256merge <output1 name> <output2 name> as <output name>
merge two outputs as oneexport <output name> [export path, default <output name>.txt]
export output as file
By the way, you can setoutput
or unsetoutput
setoutput <output name> <output value / filepath>
set output from input or fileunsetoutput <output name>
unset output
- It only took me three days to write this project, so there may be some mistakes, welcome issues.
- If you have any commonly used hacking tools that are not included in hackbox, welcome pull-requests(tools.default.yaml) and issues.