@@ -10,63 +10,121 @@ pinned: false
1010python_version : 3.11.11
1111---
1212
13- / * On-going work * /
13+ ## 🌐 Online Demo
1414
15- Hugging Face demo : https://huggingface.co/spaces/berangerthomas/shadowlog
15+ You can try ShadowLog online at our Hugging Face demo:
16+ [ https://huggingface.co/spaces/berangerthomas/shadowlog ] ( https://huggingface.co/spaces/berangerthomas/shadowlog )
1617
17- # 🔐 ShadowLog
18- ** Because attacks hide… but your logs don’t.**
19- * A Streamlit-Powered Cyber Threat Illuminator*
2018
21- ## 🕵️♂️ ** Unmask the Invisible **
22- ShadowLog transforms raw logs into a battlefield map against cyber threats. Designed for SOC teams, IT admins, and security hunters, it exposes hidden attack patterns before they escalate.
19+ ## 🔐 ShadowLog - Your Advanced Log Analysis Platform
20+ ** Because attacks hide… but your logs don't. **
2321
24- ---
22+ ShadowLog is a powerful Streamlit-based application designed to simplify and enhance log file analysis. Whether you're debugging an application, monitoring system performance, or investigating security incidents, ShadowLog provides the tools you need to efficiently process and extract insights from your log data.
2523
26- ## 🚀 ** Key Features**
27- - 🔍 ** Deep-Log Illumination** : Visualize log patterns across servers, firewalls, and endpoints.
28- - ⚡ ** Real-Time Threat Scoring** : AI-powered anomaly detection with severity alerts.
29- - 🎯 ** Attack Timeline Reconstruction** : Map multi-stage breaches like a digital detective.
30- - 📊 ** Custom Dashboards** : Build focused views for Zero-Day hunting, DDoS analysis, or insider threats.
31- - 🛡️ ** One-Click MITRE ATT&CK Tagging** : Automatically classify threats using the industry framework.
24+ ## 📊 Key Features
3225
33- ---
26+ - ** 📁 Log File Upload & Parsing** : Upload and process log files with automatic parsing and filtering
27+ - ** 📈 Statistical Analysis** : Get comprehensive statistics and insights about your log data
28+ - ** 🔍 Advanced Data Visualization** : Interactive charts and graphs to spot patterns and anomalies
29+ - ** 🔎 Powerful Filtering** : Filter logs by time, action type, port ranges, and more
30+ - ** 🤖 AI-Powered Analytics** : Machine learning clustering to identify patterns and anomalies
31+ - ** 🚨 Threat Detection** : Identify suspicious activities and security threats in your logs
32+ - ** 🔒 Network Security Analysis** : Special tools for analyzing network security logs
3433
35- ## 🛠️ ** Getting Started **
34+ ## 🖼️ Screenshots
3635
37- ### Prerequisites
38- - Python 3.11+
39- - Streamlit
36+ ![ Preview 1 ] ( assets/preview1.png )
37+ ![ Preview 5 ] ( assets/preview5.png )
38+ ![ Preview 6 ] ( assets/preview6.png )
4039
41- ### Installation
42- ``` bash
43- git clone https://github.com/berangerthomas/shadowlog.git
44- cd shadowlog
45- pip install -r requirements.txt
46- ```
40+ ## 🚀 Installation
4741
48- ### Launch the Hunter
49- ``` bash
50- streamlit run shadowlog.py
51- ```
42+ ### Prerequisites
5243
53- ---
44+ - Docker installed on your system
5445
55- ## 🖥️ ** Usage Scenarios **
46+ ### Quick Start with Docker
5647
57- ### 🗺️ Dashboard Overview
48+ 1 . Clone the repository:
49+ ``` bash
50+ git clone https://github.com/berangerthomas/ShadowLog.git
51+ cd ShadowLog
52+ ```
5853
59- ![ alt text] ( assets/preview1.png )
54+ 2 . Build the Docker image:
55+ ``` bash
56+ docker build -t shadowlog .
57+ ```
6058
61- ### 🗺️ Temporal analysis
59+ 3 . Run the container:
60+ ``` bash
61+ docker run -p 8501:8501 shadowlog
62+ ```
6263
63- ![ alt text] ( assets/preview5.png )
64+ 4 . Open your browser and navigate to:
65+ ```
66+ http://localhost:8501
67+ ```
6468
65- ### 🗺️ Agregate Value Over Time
69+ ### Manual Installation
6670
67- ![ alt text] ( assets/preview6.png )
68- ---
71+ If you prefer not to use Docker:
72+
73+ 1 . Clone the repository:
74+ ``` bash
75+ git clone https://github.com/yourusername/ShadowLog.git
76+ cd ShadowLog
77+ ```
78+
79+ 2 . Install the required packages:
80+ ``` bash
81+ pip install -r requirements.txt
82+ ```
83+
84+ 3 . Run the application:
85+ ``` bash
86+ streamlit run app.py
87+ ```
88+
89+ ## 📝 Usage Guide
90+
91+ 1 . ** Upload Log Files** : Navigate to the Upload section and upload your log files
92+ 2 . ** Analyze Data** : Use the Statistics section to get an overview of your log data
93+ 3 . ** Visualize Patterns** : Explore visualizations in the Analyze section
94+ 4 . ** Detect Anomalies** : Check the Alerts section for potential security issues
95+ 5 . ** Apply AI Analysis** : Use the Analytics section for advanced pattern detection
96+
97+ ShadowLog currently supports only one log format, describe on the "Upload" page :
98+
99+ | Column name | timestamp | ipsrc | ipdst | protocole | portsrc | portdst | rule | action | interface | unknown | fw |
100+ | ------------| -----------| -------| -------| -----------| ---------| ---------| ------| --------| -----------| ---------| -----|
101+ | Format | YYYY-MM-DD HH:MM: SS | str | str | str | int | int | int | str | str | str | int |
102+
103+ ## 🛠️ Technical Details
104+
105+ ShadowLog is built with:
106+ - ** Python 3.11+**
107+ - ** Streamlit** for the web interface
108+ - ** Polars** and ** Pandas** for high-performance data processing
109+ - ** Plotly** for interactive visualizations
110+ - ** scikit-learn** for machine learning capabilities
111+
112+
113+ ## 🤝 Contributing
114+
115+ Contributions are welcome! To contribute:
116+ 1 . Fork the repository
117+ 2 . Create your feature branch (` git checkout -b feature/new-feature ` )
118+ 3 . Commit your changes (` git commit -m 'Add new feature' ` )
119+ 4 . Push to the branch (` git push origin feature/new-feature ` )
120+ 5 . Open a Pull Request
121+
122+ ## 📄 License
123+
124+ This project is licensed under the MIT License - see the LICENSE file for details.
125+
126+ ## 👥 Authors
69127
70- ## 🤝 ** Support & Contribution **
71- ** Report a Ghost ** : send us an email
72- ** Contribute ** : Open a GitHub Issue for feature requests or log parsers.
128+ - Nancy Randriamiarijaona
129+ - Cyril Kocab
130+ - Béranger Thomas
0 commit comments