https://github.com/JPCERTCC/LogonTracer
Investigate malicious Windows logon by visualizing and analyzing Windows event log
https://github.com/JPCERTCC/LogonTracer
active-directory blueteam dfir event-log javascript python-3 security visualization
Last synced: 6 days ago
JSON representation
Investigate malicious Windows logon by visualizing and analyzing Windows event log
- Host: GitHub
- URL: https://github.com/JPCERTCC/LogonTracer
- Owner: JPCERTCC
- License: other
- Created: 2017-11-24T06:07:49.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-06-21T06:06:32.000Z (10 months ago)
- Last Synced: 2025-04-03T07:08:29.704Z (12 days ago)
- Topics: active-directory, blueteam, dfir, event-log, javascript, python-3, security, visualization
- Language: Python
- Homepage:
- Size: 12.8 MB
- Stars: 2,867
- Watchers: 133
- Forks: 457
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
- awesome-starz - JPCERTCC/LogonTracer - Investigate malicious Windows logon by visualizing and analyzing Windows event log (Python)
- ForensicsTools - LogonTracer - Investigate malicious Windows logon by visualizing and analyzing Windows event log (Challenges / Windows Artifacts)
- awesome-forensics - LogonTracer - Investigate malicious Windows logon by visualizing and analyzing Windows event log (Tools / Windows Artifacts)
- Awesome-Forensics - LogonTracer - Investigate malicious Windows logon by visualizing and analyzing Windows event log (Tools / Windows Artifacts)
- awesome-hacking-lists - JPCERTCC/LogonTracer - Investigate malicious Windows logon by visualizing and analyzing Windows event log (Python)
- awesome-lists - Logon Tracer
README
[](https://www.toolswatch.org/2018/05/black-hat-arsenal-usa-2018-the-w0w-lineup/) [](https://github.com/JPCERTCC/LogonTracer/releases) [](https://hub.docker.com/r/jpcertcc/docker-logontracer/) [](https://github.com/JPCERTCC/LogonTracer/actions/workflows/logontracer-test.yml)
## Concept
**LogonTracer** is a tool to investigate malicious logon by visualizing and analyzing Windows Active Directory event logs. This tool associates a host name (or an IP address) and account name found in logon-related events and displays it as a graph. This way, it is possible to see in which account login attempt occurs and which host is used.
This tool can visualize the following event id related to Windows logon based on [this research](https://www.first.org/resources/papers/conf2016/FIRST-2016-105.pdf).
* **4624**: Successful logon
* **4625**: Logon failure
* **4768**: Kerberos Authentication (TGT Request)
* **4769**: Kerberos Service Ticket (ST Request)
* **4776**: NTLM Authentication
* **4672**: Assign special privilegesMore details are described in the following documents:
* [Visualise Event Logs to Identify Compromised Accounts - LogonTracer -](https://blogs.jpcert.or.jp/en/2017/11/visualise-event-logs-to-identify-compromised-accounts---logontracer-.html)
* [イベントログを可視化して不正使用されたアカウントを調査](https://blogs.jpcert.or.jp/ja/2017/11/logontracer.html) (Japanese)
## Additional Analysis
LogonTracer uses [PageRank](https://en.wikipedia.org/wiki/PageRank), [Hidden Markov model](https://en.wikipedia.org/wiki/Hidden_Markov_model) and [ChangeFinder](https://pdfs.semanticscholar.org/c5bc/7ca31914d3cdfe1b2932cbc779875e645bbb.pdf) to detect malicious hosts and accounts from event log.

With LogonTracer, it is also possible to display event logs in a chronological order.

## Use LogonTracer
To use LogonTracer, you can:
* [Install](https://github.com/JPCERTCC/LogonTracer/wiki/how-to-install)
* [Use docker](https://github.com/JPCERTCC/LogonTracer/wiki/jump-start-with-docker)## Documentation
If you want to know more details, please check [the LogonTracer wiki](https://github.com/JPCERTCC/LogonTracer/wiki).## Demonstration
Following [YouTube's video](https://www.youtube.com/watch?v=aX-vTd7-moY) shows how to use LogonTracer.[](https://www.youtube.com/watch?v=aX-vTd7-moY)
## Architecture
LogonTracer is written in Python and uses Neo4j for database. The following tools are used.* Python 3
* [Neo4j](https://neo4j.com) for a graph database.
* [Neo4j JavaScript driver](https://github.com/neo4j/neo4j-javascript-driver) for connects to Neo4j using the binary protocol.
* [Cytoscape](http://www.cytoscape.org/) for visualizing a graph network.
* [Flask](http://flask.pocoo.org/) is a microframework for Python.