Steggy is a lightweight, multi-feature steganography and digital forensics web application built for researchers, students, and cybersecurity enthusiasts. It integrates popular tools under one intuitive web interface to detect, extract, and analyze hidden data in various file formats.
As Cyber Security students, we recognize the growing digital trust crisis in Indonesia—marked by frequent account breaches, data leaks, and the uncontrolled spread of personal information. This alarming reality motivated us to develop Steggy, a web-based platform that empowers users to securely conceal sensitive messages within digital media such as images, audio, and video.
By combining steganography and cryptography, Steggy ensures that hidden messages are not only invisible but also protected from unauthorized access. With no installation required, no storage limits, and a user-friendly interface, Steggy aims to be a practical, accessible tool that raises cybersecurity awareness and serves as an educational resource for digital forensics enthusiasts and CTF communities.
This project requires the following dependencies:
- Front End: HTML, CSS, JavaScript
- Back End: Python(Flask)
- Tools Integrated: steghide, stegoveritas, pdf-parser, exiftool, foremost, ffmpeg, matplotlib, PIL
- Container Runtime: Docker
Build Steggy from the source and install dependencies:
-
Clone the repository:
❯ git clone https://github.com/SteggyDev/Steggy
-
Navigate and Install the dependencies:
❯ cd Steggy ❯ pip install -r requirement.txt
Run the project with:
Using docker:
❯ chmod +x run.shFor Mac User:
❯ xattr -d com.apple.quarantine run.shRun the bash:
❯ ./run.sh- 💬 Join the Discussions: Share your insights, provide feedback, or ask questions.
- 🐛 Report Issues: Submit bugs found or log feature requests for the
Steggyproject. - 💡 Submit Pull Requests: Review open PRs, and submit your own PRs.
Contributing Guidelines
- Fork the Repository: Start by forking the project repository to your github account.
- Clone Locally: Clone the forked repository to your local machine using a git client.
git clone https://github.com/SteggyDev/Steggy
- Create a New Branch: Always work on a new branch, giving it a descriptive name.
git checkout -b new-feature-x
- Make Your Changes: Develop and test your changes locally.
- Commit Your Changes: Commit with a clear message describing your updates.
git commit -m 'Implemented new feature x.' - Push to github: Push the changes to your forked repository.
git push origin new-feature-x
- Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
- Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
Thank you very much to these awesome people: