حملات XML External Entity چیست؟

امروزه در بسیاری از سایت های ثبت اکسپلویت ، اسم آسیب پذیری XXE قابل مشاهده هست. سایت هایی مثل Facebook و PayPal نیز نتوانستند از گیر این آسیب پذیری در بروند ! توی این مطلب میخواهیم با هم دیگه این آسیب پذیری رو بررسی کنیم.

XML External Entity چیست؟

 

برای کسی که با XML آشنا نیست ، میتوان گفت XML External Entity چیزیبرای تشریح داده ها میباشد. در نتیجه ۲ سیستمی که از ۲ نوع تکنولوژی متفاوت از هم استفاده میکنند میتونند با یک دیگر ارتباط برقرار کرده و اطلاعات را تبادل کنند !

در زیر ، اطلاعات مربوط به یک کارمند وجود دارد که در قالب یک XML Document آورده شده است :

XXE_Attacks_1

در حال حاضر ، این صفحات XML قادر هستند که در برگیرنده چیزی باشند که به آن ‘entity’ میگویند. این entity ها میتوانند به محتویات local یا remote دسترسی داشته باشند. برای مثال در زیر یک XML Document مشاهده میکنید که در آن از entity ها استفاده شده است :

XXE_Attacks_2

در کد بالا ، entity خارجی به نام entityex با مقدار file:///etc/passwd اعلان شده است. هنگام تجزیه کد های XML ، این entity با مقدار مربوطه جایگزین خواهد شد.

عبارت SYSTEM به تجزیه کننده نشان میدهد که مقدار آن entity باید از طریق دنبال کردن URI ، خوانده شود.

حملات XML External Entity یا XXE چیست؟

به وسیله XML Entities ، عبارت SYSTEM موجب میشود که تجزیه کننده مقادیر را از طریق URI بگیرد و اجازه میدهد که آن را در Document جایگزین کند. بنابراین ، نفوذگر میتواند مقادیر دلخواه خود را با استفاده از entity ارسال کند و برنامه را مجبور کند که آن ها نمایش دهد !

برای مثال در کد زیر برنامه اگر فایل مورد نظر وجود داشته باشد به کاربر نشان داده میشود:

XXE_Attacks_3

هم اکنون ، می توانید ویدیوی آموزشی زبان انگلیسی این آسیب پذیری را از این لینک مشاهده کنید:

https://www.pentesterschool.ir/tutorials/english/vulnerabilities-tutorials/xml-external-entity-injection-tutorial

منبع : infosecinstitute.com

۳ نظر

  • با سلام و تشکر

    اگه لطف کنید بصورت فیلم اموزشی این باگ تشریح کنید و چند نمونه تو سایتهایی که این باگ دارن پیاده کنید برای یادگیری بیشتر ممنون میشم

    با تشکر

    • سلام و ضمن تشکر از نظرتون، اگر وقت کردم ویدئویی در مورد این آسیب پذیری ضبط خواهم کرد.

  • سلام!
    لطفا یک ویدیو اموزش از این باگ تهیه کنید.
    با تشکر

ارسال نظر

ایمیل شما منتشر نخواهد شد. پر کردن ورودی ها الزامی است. *

*

دوازده + 6 =