talosplus
talosplus copied to clipboard
Talosplus is a fast and robust template based Intelligent automation framework primarily developed for Bug Bounty Automation
Screenshots • Blog • Features • Installation • Usage
Talosplus is tool to run bash scripts at faster rate by executing commands in parallel using goroutines and with some exceptional features like Auto Scheduling, Filesystem Abstraction ,Stop/Resume, Buffers,Thread Safe ,Fail Safe, Serial + Parallel Execution, Notification Support etc provided that script follows given Syntax and is integrated with MongoDB which provides lot of flexiblity similar to bbrf especially for Bug Hunters, Security Professionals etc.
Blog / How To Guides
Create Your Ultimate Bug Bounty Automation Without Nerdy Bash Skills
Why ??
Why use this when bash scripts can be run directly ?? You can think of this like a middleware to run bash scripts . I wanted to create a perfect automation much like @hakluke . This project resolves all challenges and issues I faced while writing bash scripts and creating the perfect automation and makes it possible to leverage all important features with comments Ex: #as:@nmapout, #from:@allsubs etc . and adds a lot of additional features.
Even If you are a little intriqued, Consider reading my blog . Which describes how I overcame challenges I faced , how and when to use these comments ? and effective use of this project and detailed description of all its features like scheduling algo etc.
If you don't want to use of these comments or features . Supplying your regular bash script
Will run every command it can find in parallel.
Screenshots
-
Sample Bash Script with Syntax at here
-
Talosplus output at here
-
Custom Discord Notification at here
Features
These are oversimplified features to name from my blog.
- Auto Scheduling Commands at Runtime
- Intelligent Automation
- Filesystem Abstraction
- Discord Notification Support
- Thread Safe
- All Features of BBRF+ Others (MongoDB Backend)
- Easy Syntax
- Fail Safe && Condition Checks
- Stop /Resume(BETA)
- No Compatiblity issues
The driving forces behind talosplus are variables and directives . These directives and variables abstract complex bash syntaxes and solve challanges with little syntax.
Directives
- Refer Below Table for available directives and their use
| Directive | Syntax | Description |
|---|---|---|
| #dir | #dir:/path/to/directory |
Run Given Command in this directory |
| #from | #from:@varname |
Get Data from variable(@varname) and pass as stdin to cmd |
| #as | #as:@varname |
Export Output(Stdout Only) of Command to variable (@varname) |
| #for | #for:@arr:@i |
For each line(@i) in variable(@arr) run new command (Similar to interlace) |
| #ignore | #ignore |
Ignore Output of this command While showing Output |
Variables
Variables are like buffers/env-variable etc starting with @ and are handled by golang and are thread-safe . All variables exported in script are saved to MongoDB thus it is possible to get output of a specific command in the middle of execution. Talosplus tries to ignore Everything is a file Linux Philosophy by abstracting file system and creating and deleting files at runtime based on the need. Below Table Contains Some operations that can be performed on variables.
A Particular operation can be done on variable by supplying operator within {}
| Operator | Use Case | Description |
|---|---|---|
| add | #as:@gvar{add} |
Append Output of command to @gvar variable |
| unique | #as:@gvar{unique} |
Append output of command to @gvar but all values are unique |
| file | @inscope{file} |
Create a Temp File with @inscope variable data and return path of that temp file |
| !file | @outscope{!file} |
Same as file but it can be empty |
- Special Cases
| Syntax | Example | Description |
|---|---|---|
@outfile |
subfinder ... -o @outfile |
Create a temp file(@outfile) and use content of file as output instead of stdout |
@tempfile |
- | Create a temp file and return its path |
@env |
@env:DISCORD_TOKEN |
Get value of enviournment variable (Can also be done using $) |
Installation Instructions
-
Configure MongoDB Atlas or Install MongoDB.
-
Install
libx11-dev(Provides Clipboard Access)-
On Debian Based distro
sudo apt install libx11-dev -
On ArchLinux Based distro
sudo pacman -S libx11
-
-
Build From Source .
go install github.com/tarunKoyalwar/talosplus/cmd/talosplus@latest
Do Star the repo to show your support. Follow me on github / twitter to get latest updates on Talosplus.
Refer to Blog Part 3 for step by step instructions on using talosplus command in detail with examples.
Limitations
-
Taloplus is just a parser tool and is not aware of bash syntax .
-
Each Command is sandboxed if you are using bash environment variables etc it won't work .It has to be variables
-
For Loops, IF etc Will Work But they can only be in a single line or newline should be escaped using
\.
Saving Outputs to File/Environment Variables Entirely Defeats Purpose of This tool . Read Blog or Refer to subenum.sh file before running any script file.
Usage
Check Below Sample Video which Shows How I use talosplus for Subdomain Enumeration Automation using subenum.sh
Talosplus has every feature that would make it easy to write and run bash scripts .
Writing Automation Scripts With Syntax
To leverage all features of Talosplus like Auto Scheduling etc . It is essential the written bash script follows the syntax . Example of such bash script can be found at subenum.sh .
In detail guide of how to write such scripts and using the syntax can be found at blog
Usage in Detail
In depth details on running any scripts ,configs , interacting with db , storing and retrieving any subdomain(or any variable from bash script) etc. and much more can be found at blog
Support
If you like talosplus and want to see it improve furthur or want me to create intresting projects , You can buy me a coffee
Acknowledgment
Some Features are inspired by @honoki/bbrf-client