https://github.com/abbilaash/vlc-media-player-fuzzing-framework

A Python-based fuzzing harness for VLC Media Player (version 3.0.16 or later) to identify vulnerabilities in its media parsing and playback functions. The project generates malformed media files and monitors VLC for crashes or unexpected behavior. Includes reverse engineering insights, fuzzing methodologies, and technical reporting.

https://github.com/abbilaash/vlc-media-player-fuzzing-framework

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.8%) to scientific vocabulary
Last synced: 6 months ago · JSON representation

Repository

A Python-based fuzzing harness for VLC Media Player (version 3.0.16 or later) to identify vulnerabilities in its media parsing and playback functions. The project generates malformed media files and monitors VLC for crashes or unexpected behavior. Includes reverse engineering insights, fuzzing methodologies, and technical reporting.

Basic Info
  • Host: GitHub
  • Owner: Abbilaash
  • Language: Python
  • Default Branch: main
  • Size: 27.4 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created about 1 year ago · Last pushed about 1 year ago
Metadata Files
Readme

README.md

VLC Media Player Fuzzing Framework

Overview

This project is a fuzzing framework designed to identify vulnerabilities in VLC Media Player's media parsing and playback functionalities. The framework utilizes Python to generate and test malformed media files against VLC Media Player (version 3.0.16 or later) on Windows, logging crashes and errors encountered during playback.

Featuring

  • Automated Testing: Automatically tests a set of malformed media files against VLC Media Player.
  • Crash Detection: Identifies and logs crashes or unexpected behavior.
  • Detailed Logs: Identifies and logs crashes or unexpected behavior.

Project Structure

VLC-Media-Player-Fuzzing-Framework ├── modules | ├── samples | | ├── sample_3gp.3gp | | ├── sample_mkv.mkv | | ├── sample_mov.mov | | ├── sample_mp3.mp3 | | ├── sample_wmv.wmv | | ├── sample_flv.flv | | ├── test_play.mp4 │ ├── malformed_samples | | ├── sample_3gp_malformed.3gp | | ├── sample_mkv_malformed.mkv | | ├── sample_mov_malformed.mov | | ├── sample_mp3_malformed.mp3 | | ├── sample_wmv_malformed.wmv | | ├── sample_flv_malformed.flv | | ├── test_play_malformed.mp4 │ ├── malformed_gen.py # Generates malformed media files │ └── crash_log.txt # Log of crashes and errors encountered ├── README.md # Project documentation ├── .gitignore # Ignoring files └── requirements.txt # Python dependencies

Installation

  1. Clone repository git clone https://github.com/Abbilaash/VLC-Media-Player-Fuzzing-Framework.git
  2. Navigate to project directory cd VLC-Media-Player-Fuzzing-Framework
  3. Run the main file python main.py

Sample Crash Log

```

Crash Log for Malformed Files

Testing file: A:\PROJECTS\VLC-Media-Player-Fuzzing-Framework\modules\malformedsamples\sample3gp_malformed.3gp

-- logger module started -- dummy: using the dummy interface module... avcodec error: Could not open ... main: end of playlist, exiting -- logger module stopped --

Testing file: A:\PROJECTS\VLC-Media-Player-Fuzzing-Framework\modules\malformedsamples\samplemkv_malformed.mkv

-- logger module started -- dummy: using the dummy interface module... mkv error: unknown codec id=V_MPEG4/�SO/ASP' ... mkv error: Dummy element too large or misplaced at 1904270... skipping to next upper element main error: VLC could not identify the audio or video codec ... -- logger module stopped -- ``

Contributing

Contributions are welcome! If you have suggestions for improvement or have identified issues, please open an issue or submit a pull request.

Disclaimer

This project is for educational and research purposes only. Use it responsibly and ensure compliance with applicable laws and regulations.

Owner

  • Login: Abbilaash
  • Kind: user

GitHub Events

Total
  • Push event: 3
  • Create event: 2
Last Year
  • Push event: 3
  • Create event: 2