ASP Security by Soroush Dalili - Intelligent Exploit
ASP Security by Soroush Dalili - Intelligent Exploit
ASP Security by Soroush Dalili - Intelligent Exploit
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
www.victim.com/ebanking?file=../../web.xmlالبته نوع آسيب پذيري موجود در اين مثال را مي توان با آسيب پذيري اي كه در قسمت بعد مي آيدمشترك فرض كرد..4.3.2 آسيب پذيري :Insecure Direct Object Reference1اين آسيب پذيري زماني اتفاق مي افتد كه برنامه نويس نقطه ارجاعبه يك شي پياده سازي شده2داخلي نظير يك فايل، پوشه، ركورد پايگاه داده و يا يك كليد را در پارامترهاي يك URL يا يك فرم،فاش مي كند.حال اگر كنترل دسترسي وجود نداشته باشد، مهاجم با دستكاري اين نقطه ارجاع بهاشياء ديگر بدون اجازه دسترسي پيدا مي كند.به عنوان مثال در يك برنامه كاربردي بانكي معمولاست كه از شماره حساب به عنوان كليد اصلي استفاده كنند. بنابراين، براي برنامه نويس برنامه كاربرديراحتتر است كه از اين شماره مستقيما در برنامه خود استفاده كند. حال اگر اين اتفاق افتاده باشد و بافرض اينكه برنامه نويس جلوي تمامي حملات ديگر نظيرSQL Injectionرا نيز گرفته باشد، بازهمبرنامه كاربردي تحت وب در مقابل اينكه مهاجم به جاي شماره حساب خود، شماره شخص ديگري راوارد كند، نفوذپذير خواهد بود و با اين عمل مهاجم مي تواند اطلاعات اشخاص ديگر را ببيند و تغييردهد. بسياري از برنامه هاي كاربردي به زبان هاي <strong>ASP</strong>و JSPاز اين آسيب پذيري رنج مي برند. علتاصلي آنست كه اين آسيب پذيري در واقع يك آسيب پذيري منطقي است و برنامه نويس بايد در نقطهنقطه برنامه دسترسي افراد را براي كاري كه مي خواهند انجام بدهند كنترل كند. در واقع با كوچكترينسهل انگاري از طرف برنامه نويس براي كنترل مجوز هاي دسترسي، وقتي كه مرجع دسترسي به شي ازكاربر به عنوان ورودي پذيرفته مي شود، اين آسيب پذيري به وجود مي آيد.جالب آنكه در اين نوعآسيب پذيري همه چيز كاملا روال عادي خود را دارد، رشته هاي ارسالي از طرف كاربر محتويات مخرب1 Reference2 Key47