#!/usr/bin/env ruby # -*- mode: ruby -*- # vi: set ft=ruby : require 'threat_agent' require 'threat_agent/tasks' require 'thor' class ThreatAgentCLI < Thor desc 'breachbot [SUBCOMMAND]', 'Monitor website changes' subcommand :breachbot, ThreatAgent::Tasks::Breachbot desc 'drone [SUBCOMMAND]', 'Launch or review Drone security assessments' subcommand :drone, ThreatAgent::Tasks::Drone desc 'exfiltrate [SUBCOMMAND]', 'Determine if security devices detect sensitive data' subcommand :exfiltrate, ThreatAgent::Tasks::Exfiltrate desc 'passision [SUBCOMMAND]', 'Create a locale/organization aware wordlists' subcommand :passision, ThreatAgent::Tasks::Passision desc 'phishable [SUBCOMMAND]', 'Launch phishing campaigns' subcommand :phishable, ThreatAgent::Tasks::Phishable desc 'pwnxy [SUBCOMMAND]', 'Create a Pwnxy instance' subcommand :pwnxy, ThreatAgent::Tasks::Pwnxy end # TODO: Is there a better way to globally define an API client? # TODO: Support a threat_agent.yml configuration file $threat_agent_client = ThreatAgent::APIClient.new( ENV['THREAT_AGENT_KEY'], ENV['THREAT_AGENT_SUP'] ) ThreatAgentCLI.start(ARGV)