دوره SEC542 – بخش اول

دوره آموزشی SEC542

به دوره SEC542 خوش آمدید. در بخش اول از مجموعه SEC542 به معرفی وب می پردازیم.

Why the Web؟

چرا برنامه های وب به عنوان یک هدف محبوب برای مهاجمان می باشند؟ یکی از دلایل محبوبیت وب در بین نفوذگران، استفاده گسترده از آن است. در سال های گذشته، استفاده از اینترنت تا حد زیادی محدود به محیط های علمی و تحقیقاتی بود، ولی امروزه اینترنت به یکی از نیازهای روزمره مردم تبدیل شده است و بسیاری از کارها، تنها با اینترنت قابل انجام می باشد. در همین راستا برنامه های کاربردی تحت وب به وجود آمدند و استفاده از این وب را آسان تر نمود. یکی از مزایای مهم برنامه های کاربردی وب این است که به صورت Portable می باشند و در سیستم عامل های مختلف اجرا می شوند.
از برنامه های کاربردی وب در ساختارهای مختلفی استفاده می شود. به عنوان مثال از این برنامه ها می توان برای ذخیره، مدیریت و دسترسی به اطلاعات مالی و شخصی استفاده نمود. افراد می توانند از آن ها برای دسترسی به حساب های بانکی و مدیریت کارت های اعتباری استفاده نمایند و یا شرکت ها می توانند از برنامه های تحت وب برای اشتراک گذاری اطلاعات خود استفاده نموده و بیمارستان ها می توانند از آن ها برای ایجاد و نگهداری پرونده های پزشکی از آن ها استفاده نمایند.
موارد مذکور به داده های موجود در برنامه های تحت وب ارزش بالایی می دهد و موجب این می شود که برنامه های تحت وب به عنوان یک هدف ارزشمند برای نفوذگران باشند.
در ابتدا وب شامل صفحات استاتیک و غیرتعاملی بود ولی امروزه برنامه های تحت وب به صورت تعاملی کار می کنند و مجموعه ای از اهداف گسترده را دنبال می کنند. تعاملی بودن و ساختار جدید در وب، درب ها را برای سوء استفاده نفوذگران، به منظور استفاده از باگ هایی مانند SQL Injection، Cross Site Scripting و غیره باز کرده است.

Current Web App Security Testing Is Often Limited
متاسفانه، عجله برای اضافه نمودن ویژگی ها و بهبود قابلیت های وب، سازمان ها را مجبور به تمرکز بر روی قابلیت های کسب و کار خود نموده و توجه آن ها به تست های امنیتی را کاهش می دهد. حتی زمانی که امنیت مورد تست قرار می گیرد، اغلب این کار به صورت چاره اندیشی موقت صورت می گیرد و به صورت پایدار انجام نمی گردد.
اگر به پایگاه اطلاعات آسیب پذیری وب (OSVDB) مراجعه کنید، مشاهده خواهید کرد که بیشترین تعداد آسیب پذیری های گزارش شده، مربوط به برنامه های تحت وب می باشد. همچنین یکی از سایت های بسیار مفید برای جستجوی آسیب پذیری و مشاهده نقص امنیتی وب سایت ها، xssed.com است. اگرچه این وب سایت دیگر به صورت فعال نگهداری نمی شود اما هنوز هم می توان از آن به عنوان گنجینه تاریخی استفاده نمود. وب سایت دیگری که برای جستجوی اکسپلویت ها از آن استفاده می شود، وب سایت Exploit-db.com است که توسط شرکت Offensive Security بروزرسانی می گردد.


Web2
در “وب 1” سایتهایی توسط گروه کوچکی از تولید کنندگان محتوا برای خوانندگان بسیار راه اندازی شد. خوانندگان اگر درباره ویندور اطلاعات می خواستند به سایت مایکروسافت مراجعه می کردند، اگر خبر می خواستند به CNN سر می زدند و مواردی از این قبیل. به مرور زمان خوانندگان علاوه بر خواندن شروع به نوشتن کردند. مسیر وب به گونه ای شد که اشخاص تمایل بیشتری برای انتشار محتوا در وب پیدا کردند. آنها نظرات شخصی خود را منتشر کردند، از تجربیاتشان نوشتند، تحلیل کردند و همینطور آموزش دادند. در نتیجه ناگهان اطلاعات بسیاری در وب منتشر شد. بدین ترتیب پیگیری همه اطلاعات و مراجعه به همه سایتها و حتی سایتهای مورد علاقه برای خوانندگان غیر ممکن شد. آیا می توان پذیرفت که اطلاعات مهم به دلیل کثرت سایتها و کمبود زمان از دسترسی کاربران دور بماند؟ روشن است که پاسخ “خیر” می باشد. با طرح سوالات بسیار دیگری از این دست، کم کم نیاز به تغییر در “وب 1” احساس شد.


به “وب 2” خوش آمدید!
رویکرد جدید وب اینگونه است: اطلاعات به واحدهای کوچکتری از “محتوا” خرد می شود و بوسیله سایتهای بسیاری توزیع می گردد. وب جدبد “دنیای اسناد” نیست بلکه “دنیای داده” است. ما دیگر به دنبال منابع قدیمی اطلاعات نیستیم بلکه به دنبال ابزاری هستیم که واحدهای کوچک اطلاعات را به روشهای تازه و موثر جمع آوری و تلفیق کند و در اختیارمان قرار دهد.
یک راه بسیار عالی برای درک بهتر “وب 2” بررسی ابزارهایی نظیر Google Earth, Google Maps, Microsoft Virtual Earth می باشد. به کمک این ابزار می توان کارتوگرافی، عکسبرداری ماهواره ای و جستجو در اینترنت را همزمان برای پاسخ دادن به پرسش “کجا؟” به خدمت گرفت.Google Earth اطلاعات هر مکان را از منابع مختلف جمع آوری می کند و با توجه به شرایطی که کاربر مشخص می کند، نمایش می دهد. در ادامه Flicker را که سایتی معتبر برای مدیریت و به اشتراک گذاشتن عکس می باشد بررسی می کنیم. در این وب سایت، کاربران عکسهای خود را به کمک آن منتشر می کنند، سایز آن را تغییر می دهند، دسترسی به آن را مشخص می کنند، برای عکسهای خود و دیگران Tag تعریف می کنند. بدین ترتیب همه عکسها توسط خود کاربران دسته بندی و قابل جسجو می شوند.
برای آنکه خیالتان را راحت کنم می توانم به سادگی بگویم “وب 2” یعنی gMail، AJAX، Shared Bookmarks، Tagging و …

Cloud-Based Applications
مورد دیگری که در سال های اخیر بسیار مورد توجه قرار گرفته است محاسبات ابری می باشد که تبدیل به یک حرکت عمده در فناوری شده است. امروزه اغلب سازمان ها از برنامه های کاربردی مبتنی بر Cloud استفاده می کنند. برنامه های مبتنی بر cloud هم دارای مخاطرات مشابهی همانند برنامه های کاربردی دیگر هستند. همچنین این یک واقعیت است که سازمان هایی که دارای فرآیندهای امنیتی مناسب می باشند، تست های امنیتی را بر روی برنامه های مبتنی بر cloud انجام نمی دهند. دلیل این امر نگرانی در مورد محدودیت های این نوع سامانه ها می باشد. بسیاری از مردم حتی معتقد هستند که فروشندگان خدمات Cloud اجازه تست و ارزیابی زیرساخت های خود را نمی دهند که در اکثر موارد این باور نادرستی می باشد و فروشندگان این خدمت معمولا اجازه می دهند تا بسیاری از موارد تست های امنیتی سطح برنامه کاربردی بر روی این ساختار انجام شود.


Understanding the Web
در قسمت اول از دوره آموزشی تست نفوذ وب (SEC542) هدف ما بیشتر آشنایی با برخی از مفاهیم اولیه در وب بود. شما به منظور دسترسی و Exploit نمودن برنامه های کاربردی وب ، باید درک عمیق تری از نحوه عملکرد وب و کارکرد آن داشته باشیم. این درک باید عمیق تر از سطح متوسط دانش کاربران و حتی توسعه دهندگان و مدیران وب باشد. پس شما باید نگاه متفاوت تری نسبت به وب داشته باشید و ما قصد داریم تا در ادامه به مبانی فنی مربوط به وب بپردازیم و در مورد نقاط قوت و ضعف های امنیت آن صحبت کنیم.
توجه داشته باشید که تست نفوذگران، باید نگاه متفاوتی به وب داشته باشند و باید موارد زیر را مد نظر قرار دهند:
• باید بدبینانه فکر کنید ولی حرفه ای عمل کنید.
• باید به اینکه چگونه می توان از محدودیت ها عبور نمود هم فکر کنید. (bypass restrictions)
• توسعه دهندگان، مدیران و اپراتورهای سیستم هدف، در چه مواردی مرتکب اشتباه می شوند؟
• باید مشکلات مربوط به منطق کسب و کار را پیدا کنید.


The Tangled Web
کتاب The Tangled web که توسط Michal Zalewski نوشته شده است، یکی از کتاب های بسیار مفید در زمینه وب و پروتکل HTTP می باشد. وی همچنین نویسنده کتاب Silence on the Wire بوده و ابزارهایی مانند P0f و American Fuzzy Lop را نیز ایجاد نموده است. کتاب The Tangled web شامل یک مرور کلی از مشکلات طراحی و امنیت مربوط به وب می باشد. Zalewski تاریخچه وب را توصیف می کند و مطرح می کند که تصمیمات قدیمی همچنان بر روی وب فعلی تاثیرگذار می باشد پیشنهاد می کنیم که جهت آشنایی هر چه بهتر با ساختار وب حتما این کتاب را مطالعه نمایید.

با ما در بخش های بعدی این دوره آموزشی همراه باشد.

منابع این بخش:

http://developer1.ir/Articles/Web_Design/Web_2.aspx

درباره نویسنده: احسان نیک آور

ممکن است دوست داشته باشید