غلط عرف بلاڪ سيٽنگن سان نينگڪس ترتيب جي خرابي

ڪجهه نينڪس سرورز Nginx الياس ٽرورسل ٽيڪنڪ لاءِ ڪمزور رهندا آهن، جيڪا 2018 ۾ بليڪ هٽ ڪانفرنس ۾ تجويز ڪئي وئي هئي ۽ "عرف" هدايت ۾ بيان ڪيل روٽ ڊاريڪٽري کان ٻاهر واقع فائلن ۽ ڊائريڪٽرن تائين رسائي جي اجازت ڏئي ٿي. مسئلو صرف ترتيبن ۾ ظاهر ٿئي ٿو "عرف" هدايت سان "مقام" بلاڪ جي اندر رکيل آهي جنهن جو پيٽرولر "/" ڪردار سان ختم نٿو ٿئي، جڏهن ته "عرف" هڪ "/" سان ختم ٿئي ٿو.

غلط عرف بلاڪ سيٽنگن سان نينگڪس ترتيب جي خرابي

مسئلي جو خلاصو اهو آهي ته عرف هدايت سان بلاڪ لاءِ فائلون پيش ڪيون وينديون آهن درخواست ڪيل رستي سان ڳنڍڻ کان پوءِ ، ان کي هنڌ جي هدايتن کان ماسڪ سان موازنہ ڪرڻ ۽ هن ماسڪ ۾ بيان ڪيل رستي جو حصو ڪٽڻ کان پوءِ. مٿي ڏيکاريل هڪ خطرناڪ ترتيب جي مثال لاءِ، هڪ حملو ڪندڙ فائل جي درخواست ڪري سگهي ٿو “/img../test.txt” ۽ اها درخواست جڳهه ۾ بيان ڪيل “/img” ماسڪ جي هيٺان ٿي ويندي، جنهن کان پوءِ باقي دم “.. /test.txt" عرف هدايت جي رستي سان ڳنڍيل هوندو "/var/images/" ۽ آخرڪار فائل جي درخواست ڪندو "/var/images/../test.txt". اهڙيء طرح، حملي ڪندڙ ڪنهن به فائلن تائين رسائي ڪري سگهن ٿا "/ var" ڊاريڪٽري ۾، ۽ نه صرف فائلون "/var/images/" ۾، مثال طور، nginx لاگ ڊائون لوڊ ڪرڻ لاء، توهان درخواست موڪلي سگهو ٿا "/img../log/ nginx/ access.log ".

ترتيبن ۾ جنهن ۾ عرف هدايت جي قيمت "/" ڪردار سان ختم نه ٿيندي آهي (مثال طور، "عرف /var/images؛")، حملو ڪندڙ والدين ڊاريڪٽري ۾ تبديل نٿو ڪري سگهي، پر /var ۾ ٻي ڊاريڪٽري جي درخواست ڪري سگهي ٿو. جنهن جو نالو ترتيب ۾ بيان ڪيل ساڳي سان شروع ٿئي ٿو. مثال طور، "/img.old/test.txt" جي درخواست ڪندي توهان ڊاريڪٽري تائين رسائي ڪري سگهو ٿا "var/images.old/test.txt".

GitHub تي مخزن جو تجزيو ڏيکاريو ويو آهي ته nginx ترتيبن ۾ غلطيون جيڪي مسئلا پيدا ڪن ٿيون اڃا تائين حقيقي منصوبن ۾ ٿينديون آهن. مثال طور، مسئلو Bitwarden پاس ورڊ مئنيجر جي پس منظر ۾ سڃاڻپ ڪيو ويو ۽ استعمال ڪري سگهجي ٿو سڀني فائلن تائين رسائي حاصل ڪرڻ لاءِ /etc/bitwarden ڊاريڪٽري (/منسلڪ درخواستون /etc/bitwarden/attachments/ کان جاري ڪيون ويون آهن)، بشمول “vault .db"، سرٽيفڪيٽ ۽ لاگز، حاصل ڪرڻ لاء جيڪي درخواستون موڪلڻ لاء ڪافي هئا "/attachments../vault.db"، "/attachments../identity.pfx"، "/attachments../logs/api.log "، وغيره .P.

غلط عرف بلاڪ سيٽنگن سان نينگڪس ترتيب جي خرابي
غلط عرف بلاڪ سيٽنگن سان نينگڪس ترتيب جي خرابي

اهو طريقو Google HPC Toolkit سان پڻ ڪم ڪيو، جنهن /static درخواستن کي "../hpc-toolkit/community/front-end/website/static/" ڊاريڪٽري ڏانهن منتقل ڪيو. هڪ خانگي چاٻي ۽ سندن سان گڏ ڊيٽابيس حاصل ڪرڻ لاءِ، هڪ حملو ڪندڙ “/static../.secret_key” ۽ “/static../db.sqlite3” درخواستون موڪلي سگهي ٿو.

غلط عرف بلاڪ سيٽنگن سان نينگڪس ترتيب جي خرابي


جو ذريعو: opennet.ru

تبصرو شامل ڪريو