sensepost / gowitness

🔍 gowitness - a golang, web screenshot utility using Chrome Headless
GNU General Public License v3.0
3.36k stars 355 forks source link
chrome chrome-headless fingerprint footprinting golang headless reporting screenshot security technologies web


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:

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/.