Kubebot: A Slackbot Security Testing Tool Under the Google Cloud Platform
Introduction
We are excited to introduce Kubebot, a powerful Slackbot security testing tool built on the Google Cloud Platform. This innovative tool provides a Kubernetes backend, allowing for seamless integration and scalability. In this article, we will delve into the project architecture, tool demo video, data flow, and list of integrated tools.
Project Architecture
Kubebot’s architecture is designed to be efficient and flexible. The tool’s workflow is as follows:
- API Request Initiation: The Slackbot initiates an API request, which is transmitted to the API server. The API server then runs a Kubernetes (K8s) cluster, with the ability to adjust Docker container size according to demand.
- API Server Forwarding: The API server forwards the request to the PubSub Tool in the form of messages.
- Tool Subscription: The Tool Subscription receives the message and processes it.
- Subscription Worker: The Subscription Worker runs on K8s clusters Docker containers, processing the message and generating analysis results. The number of Worker instances can be adjusted as desired.
- Temporary Storage: The tool initializes a specific Tool Worker on the same K8s cluster, which stores the analysis results temporarily in a local directory container.
- Result Comparison and Push: The tool detects whether the generated results file exists. If not, it pushes the file to GitHub. If the file exists, it compares the files and pushes a new file to GitHub.
- Tool Worker Modification and Deletion: The Tool Worker modifies the information back to Slack and deletes itself, as it has completed its task.
Important Note: Before deploying the K8s cluster, download the API server Docker mirror, Subscription Worker, and Tool Worker from the Google Container Registry.
Integrated Tools
Kubebot currently integrates the following tools:
- Custom Enumall
- Git-all-secrets
- Gitrob
- Gitrob-server
- Git-secrets
- Gobuster
- Nmap
- Subbrute
- Sublist3r
- TruffleHog
Integrated Automated Workflow
Kubebot’s integrated automated workflow includes the following tools:
- WFuzz
- Basic authentication brute forcing
Slack Commands
Kubebot provides sample Slash commands for users to run tools, including:
- /runtool
- /runtoolnmap
- /runtoolsublist3r
- /runtoolgobuster
- /runtoolenumall
- /runtoolgitrob
- /runtooltrufflehog
- /runtoolgitsecrets
- /runtoolgitallsecrets
Optional Dictionary File
Kubebot provides an optional dictionary file for users to customize their tool usage, including:
- Bitquark_20160227_subdomains_popular_1000000.txt
- Deepmagic.com_top500prefixes.txt
- Fierce_hostlist.txt
- Namelist.txt
- Names.txt
- Sorted_knock_dnsrecon_fierce_recon-ng.txt
- Subdomains-top1mil-110000.txt
Project Address
Kubebot’s project address is [Portal] GitHub*