/gowitness

🔍 gowitness - a golang, web screenshot utility using Chrome Headless

Primary LanguageGoGNU General Public License v3.0GPL-3.0


gowitness

A golang, web screenshot utility using Chrome Headless.

@leonjza Go Report Card Docker build & Push


introduction

gowitness is a website screenshot utility written in Golang, that uses Chrome Headless to generate screenshots of web interfaces using the command line, with a handy report viewer to process results. Both Linux and macOS is supported, with Windows support mostly working.

features

The main goal of gowitness is to take website screenshots (and do that well!), while optionally saving any information it gathered along the way. That said, a short list of features include:

  • Take website screenshots, obviously..., but fast and accurate!
  • Scan a list of URLs, CIDRs, Nmap Results, Nessus Results and more.
  • Ability to grab and save data (i.e., a request log, console logs, headers, cookies, etc.)
  • Write data to many formats (sqlite database, jsonlines, csv, etc.)
  • An epic web-based results viewer (if you saved data to SQLite) including a fully featured API!
  • And many, many more!

quick start

There are a few ways to get gowitness, the simplest (assuming your $GOBIN path is in your shell $PATH) will be to use go install:

go install github.com/sensepost/gowitness@latest

Otherwise, grab a platform specific release binary or compile from source. Then, scan your first target writing the results to a SQLite database and the screenshot to ./screenshots with:

gowitness scan single --url "https://sensepost.com" --write-db

There are many, many flags and scan types in gowitness. Just add -h anywhere and read all about it!

documentation

For advanced installation information and other documentation, please refer to the wiki here.

screenshots

gallery

detail

terminal

credits

gowitness would not have been possible without some of these amazing projects: chi, chromedp, go-rod, cobra, gorm, glamour, go-nmap, wappalyzergo, goimagehash.

license

gowitness is licensed under a GNU General Public v3 License. Permissions beyond the scope of this license may be available at http://sensepost.com/contact/.