
छवियों में मजेदार चीजें छिपाएं :)
ब्लॉगपोस्ट: https://redteamer.tips/introducing-gg-aesy-a-stegocryptor/
चेतावनी: आपको संकलन से पहले NuGet पैकेज पुनर्स्थापित करने और visual studio को पुनरारंभ करने की आवश्यकता हो सकती है। यदि किसी को पता है कि इस समस्या से कैसे छुटकारा पाया जाए, तो मुझे DM करें।
शुरू करने के लिए, मैं अत्यधिक अनुशंसा करता हूं कि हमेशा GG-AESY का उपयोग क्रियाशील मोड या बहुत क्रियाशील मोड में करें, यदि आप इसका उपयोग अप्रबंधित लोडर में नहीं कर रहे हैं, तो मैं हमेशा एक आउटफ़ाइल निर्दिष्ट करने की भी अनुशंसा करता हूं।
हालांकि, बहुत क्रियाशील मोड पर ध्यान दें, खासकर यदि आप बड़े पेलोड छिपा रहे हैं। क्योंकि बहुत क्रियाशील मोड बाइट सरणी को कंसोल पर प्रिंट करेगा।
ऐसा कहने के बाद, आइए इस छोटे से मैनुअल में गोता लगाएं।
_______ _______ ___ _______ _______.____ ____
/ _____| / _____| / \ | ____| / |\ \ / /
| | __ | | __ ______ / ^ \ | |__ | (----` \ \/ /
| | |_ | | | |_ | |______| / /_\ \ | __| \ \ \_ _/
| |__| | | |__| | / _____ \ | |____.----) | | |
\______| \______| /__/ \__\ |_______|_______/ |__|
V1.0.0 by twitter.com/Jean_Maes_1994
Encryptor and (optional) stegano
Usage:
-h, -?, --help Show Help
-e, --encrypt-only Only encrypts given payload
-d, --decrypt decryption mode
--ps, --payload-size=VALUE
only needed if extracting payload from image for
decryption
--ef, --encrypted-file=VALUE
ENCRYPTION: The outfile for encrypted data
DECRYPTION:The inputfile needed to decrypt the
payload.
-p, --payload=VALUE The path to the payload you want to encrypt
-o, --outfile=VALUE The path to the outfile where all important data
will be written to (key,iv and encrypted
payload)
-i, --image=VALUE The image file to hide the key and/or IV in,
currently only supports JPEG (JPG) format!
--ok, --offset-key=VALUE
The offset to search for the key in image (in
decimal)
--okh, --offset-key-hex=VALUE
The offset to search for the key in image (in
hex)
--oIV, --offset-IV=VALUE
The offset to search for the IV in image (in
decimal)
--oIVh, --offset-IV-hex=VALUE
The offset to search for the IV in image (in
hex)
--op, --offset-payload=VALUE
The offset to search for the payload in image
(in decimal)
--oph, --offset-payload-hex=VALUE
The offset to search for the payload in image
(in hex)
-v, --verbose write all the good stuff to console,recommended
you actually always use this.
--vv, --very-verbose prints encrypted payload array to console
-k, --key=VALUE in case you want to use your own key value!
--IV, --initialization-vector=VALUE
in case you want to use your own IV
--rk, --random-key-mode
will hide your key in a random insertion point
in the provided image, without breaking said
image. will print the offset to console
--ra, --random-all-mode
will hide both Key and IV in a random insertion
point of the image.
--ak, --append-key-mode
will hide the key at the end of the image file
--aa, --append-all-mode
will hide the key and the IV at the end of the
image file.
--ap, --append-payload-mode
will hide the payload at the end of the image
file
--rp, --random-payload-mode
will hide the payload at a random insertion
point.
--apu, --append-payload-unencrypted
appends your payload without crypto, useful for
very quick and dirty data exfil.-e या --encrypt-only: केवल दिए गए पेलोड (-p) को एन्क्रिप्ट करेगा, क्रियाशील मोड का उपयोग करने पर कुंजी/IV को कंसोल पर लिखेगा, यदि आउटफ़ाइल (-o) फ्लैग का उपयोग करते हैं तो कुंजी/IV/पेलोड को एक आउटफ़ाइल में लिखेगा, और अंत में एन्क्रिप्टेड फ़ाइल (-ef) फ्लैग का उपयोग करने पर बाइटस्ट्रीम को दूसरी फ़ाइल में लिखेगा।
-d या --decrypt: डिक्रिप्शन मोड, आप ऑफसेट का उपयोग करके डिक्रिप्शन पैरामीटर निर्दिष्ट कर सकते हैं (यदि आपने कुंजी या कुंजी और IV को JPEG में छिपाया है)। ऑफसेट को प्रोग्राम में या तो offset-key (-ok) या offset-key-hex (-okh) फ्लैग का उपयोग करके पास किया जाता है, आप "-" का उपयोग विभाजक के रूप में कर सकते हैं या बिना किसी विभाजक के केवल हेक्स पेस्ट कर सकते हैं, दोनों ठीक काम करेंगे। IV का उपयोग -oIV और -oIVh फ्लैग का उपयोग करके उसी तरह काम करता है।
वैकल्पिक रूप से, आप IV और कुंजी सीधे दे सकते हैं (यदि वे JPEG में छिपे नहीं हैं), key (-k) और initialization-vectors (-IV) फ्लैग का उपयोग करके। ऑफसेट फ्लैग की तरह, "-" को विभाजक के रूप में उपयोग किया जा सकता है, GG-AESY ASCII और बाइट दोनों मानों को स्वीकार करता है।
डिक्रिप्ट करने के लिए, आपको एक एन्क्रिप्टेड फ़ाइल (-ef) भी निर्दिष्ट करनी होगी।
यदि आपने JPEG में एक पेलोड छिपाया है और उसे डिक्रिप्ट करना चाहते हैं, तो आपको पेलोड आकार (-ps) निर्दिष्ट करना होगा ताकि GG-AESY गलत सकारात्मक/गलत नकारात्मक के बिना सभी डेटा सही ढंग से निकाल सके।
-u या --unpack: JPEG से अनएन्क्रिप्टेड संलग्न पेलोड (=apu मोड) को अनपैक करेगा।
यदि कोई कुंजी/IV प्रदान नहीं किया गया है, तो आपके डेटा को एन्क्रिप्ट करने के लिए यादृच्छिक कुंजी/IV का उपयोग किया जाएगा। सभी स्टेगो मोड के लिए आपको GG-AESY को एक JPEG छवि (-i) पास करनी होगी। यदि आपने क्रिप्टो के बारे में अपनी महत्वपूर्ण जानकारी (जैसे कुंजी, IV, पेलोड) को सहेजने के लिए एक आउटफ़ाइल (-o) निर्दिष्ट किया है, तो सभी स्टेगो मोड इस फ़ाइल में इंजेक्शन स्थान भी जोड़ देंगे।
-rk या --random-key-mode: यह स्टेगो मोड आपकी AES-256 कुंजी को एक यादृच्छिक इंजेक्शन बिंदु पर छिपाएगा।
-ra या --random-all-mode: यह स्टेगो मोड आपकी AES-256 कुंजी और IV दोनों को एक यादृच्छिक इंजेक्शन बिंदु पर छिपाएगा, दोनों इंजेक्शन बिंदु समान हो सकते हैं (यह एक यादृच्छिक चयन प्रक्रिया है), इस स्थिति में, कुंजी और IV एक के बाद एक इंजेक्ट किए जाएंगे।
-ak या --append-key-mode: यह स्टेगो मोड AES-256 कुंजी को JPEG के अंत में जोड़ देगा।
-aa या --append-all-mode: यह स्टेगो मोड AES-256 कुंजी और IV दोनों को JPEG के अंत में जोड़ देगा।
-ap या --append-payload-mode: यह स्टेगो मोड एन्क्रिप्टेड पेलोड बाइटस्ट्रीम को JPEG के अंत में जोड़ देगा।
-rp या --random-payload-mode: यह स्टेगो मोड एन्क्रिप्टेड पेलोड बाइटस्ट्रीम को एक यादृच्छिक इंजेक्शन बिंदु पर इंजेक्ट करेगा। सावधानी: यह केवल तभी काम करता है जब आपका पेलोड 65,535 बाइट्स (लगभग 65kb) से अधिक न हो, यदि आप बड़ा पेलोड आज़माते हैं, तो एक त्रुटि आपके चेहरे पर फेंकी जाएगी। कहने की आवश्यकता नहीं है, यह मोड व्यावहारिक रूप से बेकार है :)
-apu या --append-payload-unencrypted: यह स्टेगो मोड पेलोड बाइटस्ट्रीम को ज्यों का त्यों JPEG के अंत में जोड़ देगा।
अस्वीकरण: यह उपकरण प्रारंभिक बीटा में है। इसका अभी तक युद्ध परीक्षण नहीं किया गया है, इसलिए कृपया PR के माध्यम से सुधार प्रस्तुत करें या बग के मामले में मुद्दे उठाएं। हालांकि, मेरे वर्तमान कार्यभार के कारण, इस समय मेरी ओर से इस उपकरण पर सक्रिय विकास संभव नहीं होगा।
इसका मतलब यह नहीं है कि मैं इस परियोजना को छोड़ रहा हूं :)