Fluhrer, Mantin and Shamir attack
کرپٹوگرافی میں، فلوہرر، مینٹن اور شمیر حملہ وسیع پیمانے پر استعمال ہونے والے آر سی 4 اسٹریم سائفر پر ایک اسٹریم سائفر حملہ ہے۔ یہ حملہ حملہ آور کو اس سلسلے میں پیغامات کی ایک بڑی تعداد سے آر سی 4 خفیہ کردہ سلسلے میں کلید کو بازیافت کرنے کی اجازت دیتا ہے۔ فلہرر، مینٹن اور شمیر حملہ مخصوص کلیدی مشتق طریقوں پر لاگو ہوتا ہے، لیکن عام طور پر آر سی 4 پر مبنی ایس ایس ایل (ٹی ایل ایس) پر لاگو نہیں ہوتا ہے، کیونکہ ایس ایس ایل ہیشنگ کے ذریعے آر سی 4 کے لیے استعمال ہونے والی خفیہ کاری کیز تیار کرتا ہے، جس کا مطلب ہے کہ مختلف ایس ایس ایل سیشنز میں غیر متعلقہ کیز ہوتی ہیں۔ تاہم، اسی تحقیق پر مبنی اور 2015 میں ظاہر ہونے والا قریب سے متعلق بار مٹزوا حملہ، ان معاملات کا استحصال کرتا ہے جہاں ایس ایس ایل کیئنگ کے عمل سے کمزور چابیاں پیدا ہوتی ہیں۔ پس منظر فلہرر، مینٹن اور شمیر (ایف ایم ایس) حملہ، جو ان کے 2001 کے مقالے "آر سی 4 کے کلیدی شیڈولنگ الگورتھم میں کمزوریوں" میں شائع ہوا، خفیہ کردہ پیغامات سے کلید کی تشکیل نو کے لیے آر سی 4 کلیدی شیڈولنگ الگورتھم میں کمزوری کا فائدہ اٹھاتا ہے۔ ایف ایم ایس حملے نے نیٹ ورک اٹیک ٹولز بشمول ایئرسنورٹ، ویپ لیب، اور ایر کریک میں مقبولیت حاصل کی، جو اسے ڈبلیو ای پی سے محفوظ وائرلیس نیٹ ورکس کے ذریعے استعمال کی جانے والی کلید کو بازیافت کرنے کے لیے استعمال کرتے ہیں۔ یہ بحث درج ذیل آر سی 4 کلیدی شیڈولنگ الگورتھم (کے ایس اے) کا استعمال کرے گی۔ شروع کریں ksa (int کلیدی لمبائی کے ساتھ، بائٹ کلیدی [کلیدی لمبائی] کے ساتھ) i کے لیے 0 سے 255 تک S [i]: = i کے لیے j: = 0 کے لیے i کے لیے 0 سے 255 تک j: = (j + S [i] + کلیدی [i موڈ کلیدی لمبائی]) موڈ 256 سویپ (S [i]، S [j]) اینڈ فار اینڈ مندرجہ ذیل فرضی بے ترتیب نسل الگورتھم (PRGA) بھی استعمال کیا جائے گا۔ شروع کریں پرگا (بائٹ ایس [256] کے ساتھ) i: = 0 جے: = 0 جبکہ آؤٹ پٹ تیار کرنا: i: = (i + 1) موڈ 256 جے: = (j + S [i]) موڈ 256 سویپ (S [i]، S [j]) آؤٹ پٹ S [(S [i] + S [j] موڈ 256] آخر میں حملہ ایف ایم ایس حملے کی بنیاد آر سی 4 کے ساتھ استعمال ہونے والے کمزور ابتدائی ویکٹر (IVs) کے استعمال میں مضمر ہے۔ آر سی 4 ایک وقت میں ایک بائٹ کو پرگا () سے کی اسٹریم آؤٹ پٹ کے ساتھ خفیہ کرتا ہے۔ آر سی 4 کے ایس اے () کے ذریعے اسٹیٹ مشین کو شروع کرنے کے لیے کلید کا استعمال کرتا ہے، اور پھر مسلسل اسٹیٹ میں ترمیم کرتا ہے اور نئی اسٹیٹ سے کی اسٹریم کا ایک نیا بائٹ تیار کرتا ہے۔ نظریاتی طور پر، کلیدی سلسلہ بے ترتیب ون ٹائم پیڈ کے طور پر کام کرتا ہے، کیونکہ ایک فرضی بے ترتیب نمبر جنریٹر ہر مرحلے پر آؤٹ پٹ کو کنٹرول کرتا ہے۔ بعض IVs کے ساتھ، ایک حملہ آور کی اسٹریم کے پہلے بائٹ اور کلید کے پہلے m بائٹس کو جان کر کے ایس اے میں کمزوری کی وجہ سے کلید کا (m + 1) واں بائٹ حاصل کر سکتا ہے۔ چونکہ سادہ متن کا پہلا بائٹ WEP SNAP ہیڈر سے آتا ہے، ایک حملہ آور یہ فرض کر سکتا ہے کہ وہ کلیدی سلسلے کا پہلا بائٹ B ≈ 0xAA سے حاصل کر سکتا ہے (SNAP ہیڈر تقریبا ہمیشہ 0xAA ہوتا ہے)۔ وہاں سے، اسے صرف کلیدی اشاریہ کے لیے (a + 3, n − 1, x) کی شکل میں ایک IV کی ضرورت ہے جو کہ 0 کے برابر ہے، عنصر کی قیمت کی جگہ n جو کہ 256 کے برابر ہے (چونکہ 8 بٹس ایک بائٹ بناتے ہیں)، اور کوئی بھی x۔ شروع کرنے کے لیے، حملہ آور کو (3، 255، x) کے IVs کی ضرورت ہوتی ہے۔ ڈبلیو ای پی 24 بٹ آئی وی کا استعمال کرتا ہے، جس سے ہر ویلیو ایک بائٹ لمبی ہو جاتی ہے۔ شروع کرنے کے لیے، حملہ آور IV کو K [] میں پہلے 3 عناصر کے طور پر استعمال کرتا ہے۔ وہ ایس باکس ایس [] کو 0 سے این تک کی ترتیب وار اقدار سے بھرتا ہے جیسا کہ آر سی 4 کسی معروف کے [] سے ایس باکس کو شروع کرتے وقت کرتا ہے۔ اس کے بعد وہ ایس-باکس کو شروع کرنے کے لیے کے ایس اے () کے پہلے 3 تکرار انجام دیتا ہے۔ تیسرے مرحلے کے بعد، حملہ آور ممکنہ طور پر، لیکن یقینی طور پر نہیں، کلیدی اسٹریم آؤٹ پٹ O کا استعمال کرتے ہوئے کلیدی کا چوتھا بائٹ حاصل کر سکتا ہے (O−j−S [i]) موڈ n = K [i]، اس مرحلے پر قیمت i = 3 کے ساتھ۔ اس وقت، حملہ آور کے پاس ابھی تک کلید کا چوتھا بائٹ نہیں ہے۔ یہ الگورتھم کلید کے اگلے بائٹ کو دوبارہ پیدا نہیں کرتا ہے ؛ یہ کلید کی ممکنہ قدر پیدا کرتا ہے۔ متعدد پیغامات جمع کرکے-مثال کے طور پر WEP پیکٹ-اور ان مراحل کو دہرانے سے، حملہ آور متعدد مختلف ممکنہ اقدار پیدا کرے گا۔ صحیح قدر کسی بھی دوسرے کے مقابلے میں نمایاں طور پر زیادہ کثرت سے ظاہر ہوتی ہے۔ حملہ آور اس قدر کو پہچان کر اور اسے اگلے بائٹ کے طور پر منتخب کر کے کلید کی قدر کا تعین کر سکتا ہے۔ اس مقام پر، وہ کلید کے پانچویں بائٹ پر دوبارہ حملہ شروع کر سکتا ہے۔ اگرچہ حملہ آور ترتیب سے باہر کلیدی کے الفاظ پر حملہ نہیں کر سکتا، لیکن ایک بار جب وہ پہلے کے الفاظ کو جان لے تو وہ بعد کے الفاظ پر بعد کے ترتیب وار حملے کے لیے پیغامات کو محفوظ کر سکتا ہے۔ پھر، اسے صرف کمزور IVs والے پیغامات کی ضرورت ہے، اور وہ دوسروں کو خارج کر سکتا ہے۔ اس عمل کے ذریعے، وہ پوری کلید پر حملہ کرنے کے لیے بڑی تعداد میں پیغامات جمع کر سکتا ہے ؛ درحقیقت، وہ ان پیغامات کے آغاز کا صرف ایک مختصر حصہ ذخیرہ کر سکتا ہے، جو حملے کو انجام دینے کے لیے کافی ہے جہاں تک کلید کا لفظ IV اسے حملہ کرنے کی اجازت دے گا۔ حوالہ جات مزید دیکھیں بار مٹزوا حملہ کرپٹوگرافک حملے