Skip to content

Latest commit

 

History

History
47 lines (34 loc) · 1.9 KB

File metadata and controls

47 lines (34 loc) · 1.9 KB

packet_sniffing

Breaking Down Ikusa Logger to Its Core

Context:

Ikusa Logger is a full stack application that logs combat messages from Black Desert Online and saves the data in a file. This file can then be manually uploaded to Ikusa to visualize players' performance.

When Ikusa Logger was first released by sch-28 on GitHub, I was immediately impressed. Since Black Desert Online encrypts all its packets, extracting meaningful data is a significant challenge.

After reviewing the original Svelte based application's source code, I uncovered a crucial Python script buried within, that makes all of this possible. I'd like to highlight the key functionality of data extraction by sharing a refactored version of that key feature, which improves efficiency reducing the worst case time complexity from O(n²) to O(n) for better performance.

Refactored vs. Original Code

Note: This part of the application doesn’t actually handle file saving; adding this feature to the Python script is trivial and beside the point.

Finally, I want to credit sch-28 for making this project open-source, allowing me to explore TCP packet decryption and refine my understanding of network analysis.

Requirements

  • Python 3.x
  • Scapy (pip install scapy)

Installation

  1. Clone the repository:
    git clone https://github.com/ottitsch/packet_sniffing.git
    cd packet_sniffing
  2. Install dependencies:
    pip install -r requirements.txt

Usage

Record your Network Traffic via Wireshark, while playing Black Desert Online and then save it as a PCAP file.

Analyzing the PCAP File

To analyze the PCAP file, run:

python refactor.py

Then, enter the path to the PCAP file when prompted.

Output

output

License

This project is licensed under the MIT License.