# WAFtester Quick Probe Workflow
# Fast target enumeration and WAF detection with minimal footprint
#
# Usage:
#   waf-tester workflow run templates/workflows/quick-probe.yaml --input target=https://example.com

name: quick-probe
description: "Quick WAF detection, fingerprinting, and critical-only vulnerability probe"
version: "2.0.0"
tags:
  - probe
  - quick
  - assessment
  - recon

inputs:
  - name: target
    description: Target URL to probe
    required: true
  - name: output_dir
    description: Output directory
    default: "./results"
  - name: rate_limit
    description: Requests per second limit (low for stealth)
    default: "5"

steps:
  - id: detect
    name: Detect WAF presence
    command: vendor
    args:
      - "-u"
      - "{{.target}}"
      - "-json"

  - id: fingerprint
    name: Fingerprint WAF technology
    command: vendor
    args:
      - "-u"
      - "{{.target}}"
      - "-verbose"

  - id: quick_scan
    name: Run quick scan (critical + high only)
    command: scan
    args:
      - "-u"
      - "{{.target}}"
      - "-types"
      - "sqli,xss,rce,ssrf"
      - "-c"
      - "10"
      - "-rate-limit"
      - "{{.rate_limit}}"
      - "-match-severity"
      - "critical,high"
      - "-format"
      - "json"
      - "-output"
      - "{{.output_dir}}/quick-results.json"
    condition: "steps.detect.success"

  - id: report
    name: Generate quick summary
    command: report
    args:
      - "-i"
      - "{{.output_dir}}/quick-results.json"
      - "-o"
      - "{{.output_dir}}/quick-report.html"
      - "-f"
      - "html"
    condition: "steps.quick_scan.success"