README
¶
[!NOTE] Test the exposed API keys you got while hunting.
- supports 76+ services (AWS, GitHub, Stripe, Slack, OpenAI, and many more)
- validates keys instantly with proper authentication methods
- extracts user/account details from valid keys
- rotates random User-Agent for each request
- clean and pipe friendly output with JSON support
Installation
go install github.com/1hehaq/roq@latest
setup autocompletion for service names
echo -e "complete -W '\$(roq -list | grep -oP \"(?<=• )[a-z]+\")' roq" >> ~/.bashrc && source ~/.bashrc
- then try this
roq -s <TAB>roq -s git<TAB>
Flags
-s : service type (required) -k : api key to verify (required) -secret : secret key (required for aws, twilio, razorpay, trello) -json : output in json format -list : list all supported services -v : verbose output -h : show help message
Example Commands
# verify a github token
roq -s github -k ghp_xxxxxxxxxxxx
# verify aws credentials
roq -s aws -k AKIA... -secret YOUR_SECRET_KEY
# verify stripe key and get json output
roq -s stripe -k sk_live_xxxxxxxxxxxx -json
# verify slack token and extract user details
roq -s slack -k xoxb-xxxxxxxxxxxx
# list all supported services
roq -list
# pipe multiple keys for batch verification
cat keys.txt | while read key; do roq -s github -k $key -json; done | jq -r 'select(.valid==true)'
Adding Custom Services
roq supports custom service configurations via the services.yaml file. You can add your own API services by defining them in the configuration file.
Configuration Location:
- Default:
services.yamlin the current directory - Or specify with environment variable or custom path
Basic Service Structure:
View YAML Code
services:
github:
name: GitHub
method: GET # HTTP method (GET, POST, etc.)
url: https://api.github.com/user # API endpoint
headers:
Authorization: "token {{.Key}}" # {{.Key}} is replaced with the API key
User-Agent: "{{.UserAgent}}" # user agent string
success_status: 200 # expected HTTP status for success
response_type: json # response format (json, xml, etc.)
response_fields: # fields to extract from response
- login
- name
details_format: "user: {{.login}}" # format for displaying details
error_field: message # field containing error message
requires_secret: false # whether additional secret is needed
More Options:
- Basic Auth: Use
auth_type: basic,auth_user, andauth_pass - Multiple Secrets: Set
requires_secret: trueandsecret_name - Dynamic URLs: Use placeholders like
{{.Domain}}or{{.Instance}} - Custom Success Field: Define
success_fieldfor boolean validation
See the services.yaml file for more examples of different authentication methods and configurations.
- If you see errors or invalid results
- verify your API key format
- check your internet connection
- some services require additional parameters (domain, instance, etc.)
- use
-vfor verbose output
[!CAUTION] never use
roqfor any illegal activities. I'm not responsible for your deeds with it. Use responsibly and only on authorized targets.
kindly for hackers
Documentation
¶
There is no documentation for this package.
Click to show internal directories.
Click to hide internal directories.