
قم بإخفاء أشياء رائعة في الصور :)
Blogpost: https://redteamer.tips/introducing-gg-aesy-a-stegocryptor/
تحذير: قد تحتاج إلى استعادة حزم NuGet وإعادة تشغيل Visual Studio قبل التجميع. إذا كان أي شخص يعرف كيف يمكنني التخلص من هذه المشكلة، راسلني مباشرة.
لتبدأ، أوصي بشدة باستخدام 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 في وحدة التحكم إذا تم استخدام الوضع الموسع، وسيكتب المفتاح/IV/الحمولة في ملف إخراج إذا تم استخدام علامة ملف الإخراج (-o)، وأخيرًا سيكتب تيار البايت في ملف آخر إذا تم استخدام علامة الملف المشفر (-ef).
-d أو --decrypt: وضع فك التشفير، يمكنك تحديد معلمات فك التشفير باستخدام الإزاحات (في حالة إخفاء المفتاح أو المفتاح وIV في JPEG). تُمرر الإزاحات إلى البرنامج باستخدام علامات إزاحة المفتاح (-ok) أو إزاحة المفتاح بالنظام الست عشري (-okh)، يمكنك استخدام "-" كفواصل أو فقط لصق الست عشري دون أي فواصل، كلاهما سيعمل بشكل جيد. IV يعمل بنفس الطريقة باستخدام علامات -oIV و -oIVh.
بدلاً من ذلك، يمكنك إعطاء IV والمفتاح مباشرة (في حال لم يكونا مخفيين في JPEG)، باستخدام علامات المفتاح (-k) ومتجهات التهيئة (-IV). كما هو الحال مع علامات الإزاحة، يمكن استخدام "-" كفاصل، يقبل GG-AESY القيم ASCII والبايت.
لفك التشفير، ستحتاج أيضًا إلى تحديد ملف مشفر (-ef).
إذا كنت قد أخفيت حمولة في JPEG وترغب في فك تشفيرها، ستحتاج إلى تحديد حجم الحمولة (-ps) حتى يستخرج GG-AESY جميع البيانات بشكل صحيح دون نتائج إيجابية/سلبية كاذبة :) .
-u أو --unpack: سيفك الحمولات الملحقة غير المشفرة (وضع =apu) من JPEG.
إذا لم يتم توفير مفتاح/IV، سيتم استخدام مفاتيح/IV عشوائية لتشفير بياناتك. جميع أنماط الإخفاء ستتطلب تمرير صورة JPEG إلى GG-AESY (-i). إذا حددت ملف إخراج (-o) لحفظ معلوماتك المهمة حول التشفير (مثل المفتاح، IV، الحمولة)، فإن جميع أنماط الإخفاء ستضيف أيضًا أماكن الحقن في هذا الملف.
-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 بايت، أي حوالي 65 كيلوبايت، إذا حاولت استخدام حمولة أكبر، سيتم عرض خطأ في وجهك. وغني عن القول، أن هذا النمط عديم الفائدة عمليًا :)
-apu أو --append-payload-unencrypted: سيُلحق هذا النمط تيار بايت الحمولة كما هو بنهاية ملف JPEG.
إخلاء مسؤولية: هذه الأداة في مرحلة تجريبية مبكرة. لم يتم اختبارها في معارك بعد، لذا يرجى تقديم التحسينات من خلال طلبات السحب أو الإبلاغ عن المشكلات في حالة وجود أخطاء. ومع ذلك، نظرًا لعبء العمل الحالي، لن يكون التطوير النشط لهذه الأداة من جانبي ممكنًا في هذا الوقت.
هذا لا يعني أنني سأتخلى عن هذا المشروع :)