1 Снифете трафик и записывает историю
2 мониторите соединения процесса браузера
3 записывает экран (а потом загружает запись в супер мега крутую нейронную сеть)
4 заставляете пользователя использовать ваш браузер
5 ставите прокси/vpn/маршрутизатор/коммутатор с записью истории
Как только придумаю ещё способов, сразу напишу сюда.
Griboks, невозможно снифать трафик без открытия raw socket, а JVM такой возможности не даёт. Есть пара плохо поддерживаемых библиотек, которые обходят это ограничение jni-костылями. Но это получается уже не решение на Java, а решение на C с интеграцией в Java.
Сергей Горностаев, Ну в BURP можно смело перехватывать пакеты, править и отправлять дальше уже модифицированные. По крайней мере для HTTP/HTTPS трафика я такое делал несколько лет назад.
Что умеет современная версия не знаю.
Очень просто: пишете код который записывает, какие сайты посетил пользователь и сколько времени провел на них, а потом кидаете на форму кнопку и запускаете свой код по нажатию на кнопку.