aronl096 / Final_Project_Networks

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

WhatsApp Web Packet Analysis Repository

This is our WhatsApp Web Packet Analysis project, inside this repository you will discover an assortment of code and resources meticulously crafted for the investigation of packets originating from group messages on WhatsApp's web platform. This project entails packet sniffing, discerning message-associated packets, and crafting illuminating visualizations to expedite packet differentiation.
The analytical journey unfolds in two distinctive phases:
• The attacked user is always active in (at most) a single IM group.
• The attacked user may be active in several IM groups simultaneously.

Table of Contents

Introduction

The fundamental aim of the WhatsApp Web Packet Analysis project is to meticulously dissect and decode packets generated by group messages on WhatsApp's web platform. By deploying an array of analytical methodologies and innovative filtration strategies, the project endeavors to identify packets intimately associated with dispatched messages. Visual aids are harnessed to expedite the intricate process of packet differentiation.

Project directories and files

The project architecture is carefully organized into three key domains:

  • res: Within this section, you'll find an array of graphical representations, each an outcome of the analytical process. These visuals encompass depictions that unravel the complex interplay between time and packet size, graphical insights into the probability density function (PDF) of packet sizes, and visualizations that articulate the complementary cumulative distribution function (CCDF) of packet sizes.
  • resources: This repository houses eight pcap files and eight CSV files, meticulously categorized into four for filtered packets and another four for unfiltered packets.
  • src: In this domain are two Python scripts, one is for pcap files and the other for csv files, we use the code for csv files but these 2 scripts are there for the comfort of the user.
    Every file contains CCDF plots, PDF plots, and elucidating visualizations that unravel the interplay between time and packet size.

Packet Examination

Segment 1: Incorporating Filters

During this pivotal phase, packet examination unfolds with meticulous precision through the incorporation of a dedicated filter targeting tcp.port 443. This filter serves as a crucial instrument in eliminating extraneous noise, thus accentuating the focus on pertinent packets. The primary objective here is the isolation of packets intricately linked with dispatched messages, accompanied by the creation of visual depictions designed to expedite their recognition.

Segment 2: Devoid of Filters and Accompanied by Ambient Music

The second phase of packet examination eschews packet filters altogether, introducing an authentic layer of ambiance through the melodious backdrop of real-world noise. This auditory tapestry echoes the experience of YouTube melodies playing subtly in the background. The core objective in this phase is to assess the influence of real-world noise on the accuracy of packet analysis.

Plots

Housed within the res section are a diverse array of graphical representations, each providing profound insights into the intricate process of packet analysis:

  • Functions of Time vs. Packet Size: These graphical representations cast a spotlight on the complex interplay between time and packet size, revealing underlying patterns and tendencies.
  • Graphs of Probability Density Function (PDF): PDF graphs artistically capture the essence of the probability distribution of packet sizes. A total of eight graphical masterpieces are meticulously generated, addressing both filtered and unfiltered packets.
  • Complementary Cumulative Distribution Function (CCDF) Graphs: The CCDF graphs serve as visual orchestrations depicting the complementary cumulative distribution function of packet sizes. These graphs exclusively address the four packets that have undergone the meticulous filtration process.

Running instructions

Your contributions to this endeavor are both valued and cherished! To contribute, we humbly request your adherence to the following guidelines:

  1. Fork the repository.
  2. Create a new branch for your envisioned feature or bug fix: git checkout -b feature-name.
  3. Enact your modifications and elegantly commit them: git commit -m 'Articulate a visionary feature'.
  4. Elegantly push your alterations to the designated branch: git push origin feature-name.
  5. Initiate a pull request meticulously narrating your transformative changes.

Please ensure your contributions align seamlessly with the meticulously set coding standards and guidelines.

Authors

Aaron Luchan
Masanbat Mulo

About


Languages

Language:Python 100.0%