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
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
Metadata Files
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
- Clone repository
git clone https://github.com/Abbilaash/VLC-Media-Player-Fuzzing-Framework.git - Navigate to project directory
cd VLC-Media-Player-Fuzzing-Framework - 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
- Repositories: 1
- Profile: https://github.com/Abbilaash
GitHub Events
Total
- Push event: 3
- Create event: 2
Last Year
- Push event: 3
- Create event: 2