
AperiSolve v3.7.4
स्वचालित स्टेगनालिसिस प्लेटफ़ॉर्म जो 16 समानांतर विश्लेषकों, बिट-लेयर विज़ुअलाइज़ेशन और CTF और फोरेंसिक जांच के लिए इन-ऐप विकी का उपयोग करके छवियों में छिपे डेटा का पता लगाता है।
Aperi'Solve
इसे अभी आज़माएँ: https://www.aperisolve.com
Aperi'Solve को सहयोग करें:
Aperi'Solve एक ओपन-सोर्स स्टेगनालिसिस वेब प्लेटफ़ॉर्म है, जो सामान्य स्टेग्नोग्राफ़ी टूल्स और तकनीकों का उपयोग करके छिपे हुए डेटा का पता लगाने और उसे निकालने के लिए छवियों का स्वचालित विश्लेषण करता है।
मुख्य विशेषताएँ
- प्रत्येक छवि चैनल (R/G/B/Alpha) के लिए प्रत्येक बिट लेयर (LSB और अन्य लेयर्स) को विज़ुअलाइज़ करें।
- रंग पुनर्मैपिंग (8 जनरेटेड वेरिएंट्स के साथ रैंडम पैलेट रीमैप)
- 16 एनालाइज़र को समानांतर चलाता है और उनका आउटपुट प्रदर्शित करता है, जिसमें प्रति-टूल
सफलता/कोई-परिणाम-नहीं बैज और निकाले गए फ़ाइलों का वन-क्लिक डाउनलोड शामिल है:
- binwalk (एम्बेडेड आर्काइव)
- exiftool (मेटाडेटा और जियोलोकेशन)
- file (MIME प्रकार और प्रारूप पहचान)
- GraphicsMagick identify (छवि जानकारी और गुण)
- foremost (कटी हुई फ़ाइलें)
- jsteg (JPEG LSB निष्कर्षण)
- jpseek / jphide (JPEG स्टेग्नोग्राफ़ी निष्कर्षण, पासवर्ड के साथ)
- openstego (पासवर्ड के साथ निष्कर्षण)
- outguess (पासवर्ड के साथ निष्कर्षण, गहन विश्लेषण)
- pcrt (PNG जाँच और मरम्मत)
- pngcheck
- steghide (पासवर्ड के साथ निष्कर्षण)
- strings
- zsteg (LSB टेक्स्ट/डेटा निष्कर्षण)
- इन-ऐप विकी (
/wiki): एक HackTricks-शैली की स्टेग्नोग्राफ़ी हैंडबुक — एक ट्राएज पद्धति, एक निर्णय-वृक्ष चीटशीट, प्रति माध्यम (छवि, ऑडियो, टेक्स्ट, फ़ाइलें) तकनीक पेज, और प्रति एनालाइज़र मार्गदर्शिका, सभी Markdown में लिखे गए हैं। - अंतर्राष्ट्रीयकरण: यूआई अंग्रेज़ी, फ़्रेंच, स्पेनिश, जर्मन,
रूसी, चीनी और पुर्तगाली में भाषा-उपसर्ग वाले URL (
/fr/,/es/, …) पर उपलब्ध है। - भारी/धीमे एनालाइज़र को ऑफलोड करने के लिए वर्कर कतार आर्किटेक्चर (Redis + बैकग्राउंड वर्कर)।
- सामग्री-आधारित परिणाम कैश, HTTP कैश, और प्रति-एंडपॉइंट रेट लिमिटिंग।
- परिणाम अस्थायी रूप से बाद में ब्राउज़िंग और डाउनलोड के लिए संग्रहीत किए जाते हैं, फिर एक अनुसूचित कार्य द्वारा स्वचालित रूप से साफ़ कर दिए जाते हैं।
एनालाइज़र जोड़ना
एनालाइज़र जोड़ना एक एकल फ़ाइल है: SubprocessAnalyzer को सबक्लास करें, कुछ
क्लास विशेषताएँ (name, has_archive, needs_password, deep_only,
display_order) सेट करें, और टूल को Dockerfile में इंस्टॉल करें। वर्कर रन
सूची, डाउनलोड अनुमति-सूची, और फ्रंटएंड क्रम सभी स्वचालित रूप से प्राप्त होते हैं।
docs/adding-analyzer.md देखें।
त्वरित आरंभ (Docker)
यदि आप https://www.aperisolve.com/ का अपना स्वयं का संस्करण होस्ट करना चाहते हैं।
आवश्यक: Docker + Docker Compose।
git clone https://github.com/Zeecka/AperiSolve.git
cd AperiSolve
cp .env.example .env
docker compose up -d
फिर URL खोलें: http://localhost:5000/
विज्ञापन और एनालिटिक्स डिफ़ॉल्ट रूप से अक्षम हैं; हर एकीकरण
(CUSTOM_EXTERNAL_SCRIPT, GOOGLE_ADS_TXT, SITE_BASE_URL, Sentry)
पर्यावरण चरों के माध्यम से वैकल्पिक है, जिन्हें .env.example में दस्तावेज़ित किया गया है।
ऐप स्वयं कभी भी विज्ञापन मार्कअप इंजेक्ट नहीं करता है: CUSTOM_EXTERNAL_SCRIPT AdSense स्क्रिप्ट लोड करता है और प्लेसमेंट Auto ads पर छोड़ दिया जाता है।
आर्किटेक्चर
यह स्टैक Docker Compose सेवाओं के रूप में चलता है:
- web — Flask ऐप जो gunicorn द्वारा परोसा जाता है (Jinja टेम्पलेट + वैनिला JS फ्रंटएंड)।
- worker — एक RQ वर्कर जो प्रत्येक सबमिशन के लिए एनालाइज़र चलाता है, प्रति टूल एक थ्रेड में फैन आउट करते हुए।
- cron — एक RQ क्रोन शेड्यूलर जो अनुरोध पथ से अलग रिटेंशन क्लीनअप चलाता है।
- initdb — एक वन-शॉट सेवा जो टेबल बनाती है और IHDR CRC रिकवरी डेटाबेस को पहले से भरती है।
- postgres — छवि मेटाडेटा और सबमिशन स्थिति संग्रहीत करता है।
- redis — RQ ब्रोकर (DB 0) और रेट-लिमिटर स्टोरेज (DB 1)।
- rqdashboard — कतार मॉनिटरिंग, localhost:9181 पर बाउंड।
यह अलगाव भारी टूल्स (binwalk, foremost, zsteg, आदि) को अलग रखता है और वेब वर्कर को ब्लॉक होने से बचाता है। समान सबमिशन एक कंटेंट हैश द्वारा डिडुप्लिकेट किए जाते हैं, और व्युत्पन्न छवियों को लंबे समय तक चलने वाले इम्यूटेबल HTTP हैडर के साथ कैश किया जाता है, इसलिए बार-बार आने वाला ट्रैफ़िक सस्ता होता है।
दस्तावेज़ीकरण
- docs/adding-analyzer.md — एक नया एनालाइज़र जोड़ें।
- docs/deploy.md — टैग-संचालित प्रोडक्शन डिप्लॉय प्रवाह।
- CONTRIBUTING.md — डेव सेटअप, टेस्ट, विकी पेज और अनुवाद।
परीक्षण
uv sync --extra dev
uv run pytest -q # unit tests (no services needed)
# end-to-end analyzer tests through the running app:
docker compose -f compose.dev.yml up -d
uv run pytest tests/test_webapp_analyzers.py -v
रोडमैप
Issues देखें।
योगदान
CONTRIBUTING.md देखें।
सुरक्षा
[!WARNING] यदि आपको कोई सुरक्षा समस्या मिलती है, तो कृपया सार्वजनिक इश्यू खोलने के बजाय इसे रिपॉजिटरी स्वामी को निजी रूप से रिपोर्ट करें।
श्रेय
दानदाताओं का धन्यवाद:
योगदानकर्ताओं का धन्यवाद:
- Zeecka - (लेखक)
- aradhyacp
- Philip Zimmermann
- abneeeees
ओपन-सोर्स समुदाय का धन्यवाद: binwalk, exiftool, GraphicsMagick identify, foremost, jsteg, jphide/jpseek, openstego, outguess, pcrt, pngcheck, steghide, strings, zsteg, ...