loading
loading
Machine Learning
Find interesting targets in a huge set of web-based hosts by labeling screenshots with machine learning.
overview
eyeballer runs a trained neural network over a folder of website screenshots and predicts which pages a human should look at first. It sorts a huge capture set into the categories that matter on a large-scope test: old-looking pages that suggest dated, likely-vulnerable software, login portals, custom 404s, and plain homepages.
It works on screenshots you already captured, so the workflow is screenshot first with a tool like gowitness or aquatone, then hand that folder to eyeballer. A trained weights file drives the predictions and a confidence threshold controls how aggressively it labels; for best results the captures should use a native 1.6x aspect ratio such as 1440x900.
On Trickest, eyeballer is a Machine Learning node that takes a screenshot folder and writes a folder of predictions. It turns a flat gallery into a ranked, labeled set, and can render a heatmap that shows where the model focused for each call.
use cases
Run the model over thousands of captured pages so the interesting hosts rise to the top instead of being lost among default and parked pages.
Use the labels to decide which web hosts deserve manual review first, focusing limited engagement time on the highest-signal pages.
Filter for the old-looking label to pull dated technology and legacy portals out of the pile, since those pages tend to carry the software most worth testing.
Raise or lower the confidence threshold to trade off how many screenshots get labeled, balancing coverage against false positives.
Generate a heatmap for a prediction to see which regions of a screenshot drove the model's label, which helps sanity-check the output.
reference
| Name | Type | Flag | Description |
|---|---|---|---|
| predict-folder | FOLDER | predict | Folder with screenshots to classify. Best results use a native 1.6x aspect ratio (e.g. 1440x900). |
| weights | FILE | --weights | Weights file for the model. Trained releases are published on the eyeballer GitHub. |
| threshold | STRING | --threshold | Confidence threshold for applying a label. |
| heatmap | BOOLEAN | --heatmap | Create a heatmap graph for the prediction. |
Showing key inputs. eyeballer exposes 4 inputs in total.
example
# rank a folder of captured screenshots, label only high-confidence hitseyeballer predict ./screenshots/ --weights bishopfox.h5 --threshold 0.7 --heatmapLoading weights from bishopfox.h5Found 1240 screenshots to predict198.51.100.17.png login 0.94 oldlooking 0.88 homepage 0.02 custom404 0.00203.0.113.42.png oldlooking 0.91 login 0.07 homepage 0.11 custom404 0.01app.example.com.png homepage 0.96 login 0.03 oldlooking 0.05 custom404 0.00198.51.100.9.png custom404 0.98 login 0.00 homepage 0.01 oldlooking 0.02Wrote heatmaps to output/heatmaps/Summary: 143 oldlooking, 88 login, 512 homepage, 217 custom404guidance
Use eyeballer when you already have a large folder of website screenshots and need to rank them by interest. It classifies, it does not capture, so screenshot first with gowitness or aquatone and feed eyeballer that folder.
Captures the screenshots eyeballer needs. Run it before eyeballer, not instead of it.
Screenshots hosts and builds an HTML gallery. eyeballer adds ML labeling on top of a capture set.
Another screenshot-and-report tool. Pairs with eyeballer as the capture stage.
faq
Hosts are screenshotted by gowitness, then eyeballer labels each capture and writes a ranked folder of interesting targets to triage.
Facts on this page come from the live Trickest tool library.