TWA(1)

πŸ“¦ version 1.11.0, in fedora 43, fedora 44, nixos 26.05, nixpkgs unstable

πŸ’– TWA(1) β€” user commands, bestie edition πŸ’–

okay so you found the manual for twa, and it lives in section 1 (User Commands) of the manual pages. she's a tiny web auditor with strong opinions and honestly? same. let's get into it πŸŽ€


✨ NAME ✨

twa β€” tiny web auditor with strong opinions πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

twa [-wvcsdV] DOMAIN

like. that's it. that's the whole vibe. one domain, a fistful of flags, go off πŸ‘‘


🌸 DESCRIPTION 🌸

so here's the deal, bestie: twa takes a DOMAIN that's hosting a website and runs a short security audit on it. she's not doing a whole dissertation, she's doing a vibe check with receipts ✨

what she can sniff out:

  • HTTP(S) issues πŸ‘€
  • missing security headers 😭
  • information-leaking headers (the gossipy ones πŸ’€)
  • and other potential security hazards, no cap

one domain at a time, though. twa takes only one DOMAIN per run. if you need to audit multiple sites, you just... run the program again. yes really. she's a one-website-at-a-time kind of girl and that's iconic of her 🫢


✨ OPTIONS ✨

  • -v β€” Verbose mode. she tells you everything πŸ’¬
  • -w β€” Perform the audit on the main DOMAIN and the www. subdomain. two for one, we love to see it πŸŽ€
  • -c β€” Emit output in CSV. spreadsheet girlies rise πŸ“
  • -s β€” Run testssl-based checks (skipped by default, so if you want them you gotta ask nicely) πŸ”₯
  • -d β€” Disable scanning common development ports. bye dev ports πŸ™ˆ
  • -V β€” Print the version and exit. short and sweet ⭐
  • -h β€” Print a help message and exit. your little safety net 🧚

🌈 ENVIRONMENT 🌈

these are the environment variables she reads, and yes they're all lowkey important:

  • NO_COLOR β€” Don't colorize output, even when you're on a TTY. (sad beige output, but make it your choice πŸ’œ)
  • TWA_TIMEOUT β€” The maximum length, in seconds, for internal curl calls. ⏱️
  • TWA_USER_AGENT β€” The User-Agent to use for all curl calls. dress her up however you want πŸ’…
  • TWA_CURLOPTS β€” Any additional options to pass to curl calls. extra toppings, go wild πŸ¦‹

πŸ‘‘ TEST RESULTS πŸ‘‘

every single line of output describes the result of one test, and it follows this format:

RESULT(DOMAIN): explanation

where RESULT is one of the following, and I need you to know all of them:

  • PASS β€” The test passed with flying colors. ate and left no crumbs πŸ‘‘
  • MEH β€” The test passed, but with one or more things that could be improved. not a fail, just... meh 😬
  • FAIL β€” The test failed, and should be fixed. fix it bestie 🚨
  • UNK β€” The server gave us something we didn't understand. twa is confused, and so are we πŸ’€
  • SKIP β€” The server gave us something we understood, but that we don't handle yet. not today, but acknowledged πŸ™ˆ
  • FATAL β€” A really important test failed, and should be fixed immediately. like, drop everything. this one is not a drill 🚨πŸ”₯

πŸ’€ BUGS πŸ’€

None known. 😌✨

but if you do find one, file issues at: https://github.com/trailofbits/twa 🫢


🌸 AUTHOR 🌸

twa is maintained by William Woodruff (<william @ trailofbits.com>). say thank you πŸ’–


okay that's the whole page bestie, ily, go audit something πŸŒˆπŸ’…

this was version 1.11.0, dated 2019-02-17 β€” mwah, signing off πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from