HomeWork 4 v1.pdf

‫به نام خدا‬
‫دانشگاه صنعتی شریف‬
‫نیمسال دوم ‪49-49‬‬
‫نام درس‬
‫استاد درس‬
‫امنیت داده و شبکه‬
‫دکتر امینی‬
‫تاریخ تعریف تمرین‬
‫مهلت تحویل‬
‫‪4331/3/7‬‬
‫‪4331/3/14‬‬
‫‪ .4‬مرور درس‬
‫‪ .4.4‬تفاوت اصلی بین مدهای ‪ tunnel‬و ‪ transport‬در ‪ IPSec‬چیست؟‬
‫‪ .4.1‬چه تفاوتی بین ‪ IPSec‬و ‪ SSL‬وجود دارد؟‬
‫‪ .4.3‬در هر یک از موراد زیر‪ ،‬توضیح دهید ‪ IPSec‬چگونه با حمله مقابله میکند‪:‬‬
‫‪-‬‬
‫حملهی تکرار‬
‫‬‫‪-‬‬
‫‪TCP Connection Hijacking‬‬
‫جعل آدرس ‪IP‬‬
‫‪ .1‬مطالعه و تحقیق بیشتر‬
‫‪ .1.4‬حمالت زیر را تعریف کرده و با مثالی توضیح دهید‪:‬‬
‫‪‬‬
‫حمالت تزریق کد‬
‫‪‬‬
‫حملة ‪SYN Flood‬‬
‫‪ .1.1‬حمله ‪ XSS4‬چیست؟ تفاوت حمله ‪ Reflected XSS‬و ‪ Stored XSS‬چیست؟ برای هر مورد یک مثال ارائه داده و آن را تشریح‬
‫کنید‪.‬‬
‫‪ .1.3‬چه تفاوتی بین خط مشی کنترل دسترسی‪ ،‬مدل کنترل دسترسی و مکانیزم کنترل دسترسی وجود دارد؟‬
‫‪ .1.1‬ضرورت وجود قاعده ”‪ “no read up‬در یک سیستم امنیتی چند سطحی واضح است‪ .‬با این حال به نظر شما ضرورت وجود قاعده‬
‫”‪ “no write down‬چه می تواند باشد؟‬
‫‪ .1.2‬کدام یک از دو حالت زیر از نظر امنیتی مناسب تر است؟ فایروال با سیاست ”‪ “default deny‬یا با سیاست ”‪“default allow‬؟‬
‫چرا؟‬
‫‪Cross Site Scripting‬‬
‫‪1‬‬
‫‪ .1.2‬در مورد صحت یا عدم صحت گزاره ذیل بحث کنید و دلیل(های) خود را توجیه کنید‪ :‬ماتریس کنترل دسترسی میتواند تمام حاالتی‬
‫که لیستهای کنترل دسترسی (‪ )ACL‬بیان میکنند را پوشش دهد‪.‬‬
‫‪ .1.7‬در مورد صحت یا عدم صحت گزاره ذیل بحث کنید‪ :‬پروتکل ‪ SSL‬میتواند عالوه بر احراز هویت سرورهای وب‪ ،‬محرمانگی‬
‫تراکنشهای کالینت با آنها را نیز فراهم کند‪.‬‬
‫‪ .1.2‬با فرض ردههای امنیتی خیلی سری‪ ،‬سری‪ ،‬محرمانه و بدون طبقهبندی (به ترتیب از باالترین به پایینترین) و رستههای ‪ A‬و ‪ B‬و‬
‫‪ C‬و استفاده از مدل ‪ BLP‬بیان کنید که کدام یک از دسترسیهای زیر (از نظر خواندن و نوشتن) قبول و کدامیک رد میشوند‪.‬‬
‫‪ .1.2.4‬باب دسترسی (سری‪ ){A,C} ،‬را دارد و میخواهد به سندی با سطح (سری‪ ){C} ،‬دسترسی پیدا کند‪.‬‬
‫‪ .1.2.1‬آلیس دسترسی (محرمانه‪ ){C} ،‬را دارد و میخواهد به سندی با سطح (خیلی سری‪ ){B} ،‬دسترسی پیدا کند‪.‬‬
‫‪" .1.2.3‬ایو" دسترسی (سری‪ ){C} ،‬را دارد و میخواهد به سندی با سطح (محرمانه‪ ){C} ،‬دسترسی پیدا کند‪.‬‬
‫‪" .1.2.1‬هری" هیچ دسترسی ندارد (در رده بدون طبقهبندی قرار دارد) میخواهد به سندی با سطح (سری‪ ){B} ،‬دسترسی پیدا‬
‫کند‪.‬‬
‫‪ .1.3‬معایب و مزایای فایروالهای ‪ application level‬را توضیح دهید‪.‬‬
‫‪ .1.42‬دو معماری اصلی قرار دادن فایروال نسبت به شبکه ‪ DMZ‬را با یکدیگر مقایسه کنید‪.‬‬
‫‪ .1.44‬بررسی کنید پروتکل ‪ IPsec‬چگونه جلوی هریک از حمالت زیر را میگیرد ‪ ( :‬برای جواب این سوال ابتدا هریک از حمالت را توضیح‬
‫داده و نحوه عملکرد آن را شرح دهید‪ .‬سپس با ذکر دلیل‪ ،‬چگونگی جلوگیری پروتکل ‪ IPSec‬از هر یک از حمالت زیر را با ذکر مد‬
‫کارکردی و همچنین خصوصیت تاثیرگزار بررسی کنید‪).‬‬
‫‪.1.44.4‬‬
‫‪.1.44.1‬‬
‫‪.1.44.3‬‬
‫‪.1.44.1‬‬
‫‪.1.44.2‬‬
‫‪.1.44.2‬‬
‫‪.1.44.7‬‬
‫‪Brute force cryptanalytic attack‬‬
‫‪Known plaintext dictionary‬‬
‫‪Replay attacks‬‬
‫‪Password sniffing‬‬
‫‪IP spoofing‬‬
‫‪IP hijacking‬‬
‫‪SYN flooding‬‬
‫‪ .3‬سواالت عملی‬
‫‪ .3.4‬سناریوی زیر را در نظر بگیرید‪:‬‬
‫سازمانی دارای ‪ 3‬گروه اصلی کاربر میباشد‪ ،‬گروه حسابداری‪ ،‬گروه فنی و گروه مدیریت‪ .‬عالوه بر این‪ T‬یک گروه فناوری اطالعات نیز‬
‫وجود دارد که وظیفه پشتیبانی از این ‪ 3‬گروه را بر عهده دارد‪ .‬این سازمان دارای ‪ 1‬عدد ‪ 1، File Server‬عدد ‪ Webserver‬و‬
‫همچنین ‪ 1‬عدد ‪ Domain Controller‬و یک ‪ Mail server‬میباشد‪ .‬عالوه بر این‪ ،‬سازمان دارای ‪ 4‬عدد ‪ Printer Server‬نیز‬
‫میباشد‪.‬‬
‫‪ .3.4.4‬با استفاده از خط مشیهای زیر‪ ،‬هم ‪ Topology‬این سازمان و هم قوانین دیوار آتش ضامن اجرا شدن این خط مشیها را‬
‫بنویسید‪.‬‬
‫در نظر داشته باشید که ‪ Topology‬شما باید ناظر بر خط مشیها و جداسازیهای فیزیکی باشد و همچنین قوانین دیوار‬
‫آتش نوشته شده باید از فرمت ‪ IPTables‬پیروی کند‪.‬‬
‫خطمشیهای امنیتی‪:‬‬
‫• فایل سرور هر بخش تنها توسط کاربران همان بخش قابل دسترسی است‪.‬‬
‫• میل سرور توسط تمامی کاربران داخلی و بیرونی قابل دسترسی است ولی قبل از آن حتما یک الیه دیوار آتش قرار دارد‪.‬‬
‫• یکی از ‪ Domain Controller‬ها را تمامی کاربران داخلی به آن دسترسی دارند و دیگری را تنها سرورهای داخلی‪.‬‬
‫• یکی از وبسایتها برای مصرف کاربران بیرونی است و دیگری برای کاربران داخلی‪.‬‬
‫• کاربران داخلی وبسایت بیرونی را و کاربران خارجی وبسایت داخلی را نمیبینند و به آن دسترسی ندارند‪.‬‬
‫• کاربران گروههای مختلف با یکدیگر مکاتبه ندارند‪.‬‬
‫• گروه فناوری اطالعات به تمامی این موجودیتها دسترسی دارد‪.‬‬
‫• هر ارتباط خارج از این موارد باید بسته باشد‪.‬‬
‫• درصورتی که قوانین دیگری در نظر شما به امنیت این سناریو کمک میکند آن را اضافه کنید‪.‬‬
‫• ‪ Printer Server‬تنها توسط بخش گروه حسابداری قابل دسترسی است ولی گروه مدیریت نیز میتوانند از آن استفاده‬
‫کنند‪.‬‬
‫بهتر است در طراحی خود از مفاهیم ‪ DMZ, Single-Homed Bastion, Dual-Homed Bastion‬و ‪Screened‬‬
‫‪Subnet‬استفاده کنید ‪.‬‬
‫‪ .3.4.1‬با فرض داشتن ‪ IDS 4‬در شبکه‪ ،‬آن را در کجای شبکه قرار میدهید؟ دلیل خود را به همراه قوانین دیوار آتش الزم‬
‫بیاورید‪.‬‬
‫‪( .3.1‬اختیاری) در این تمرین سعی میشود با استفاده از ابزارهای تحلیل ترافیک‪ ،‬رفتار ابزارهای ‪ Port Scanner‬را بررسی کرد‪ .‬از نتایج‬
‫این بررسیها میتوان در سیستمهای تشخیص نفوذ رفتار‪-‬محور ‪ 1‬استفاده کرد‪.‬‬
‫‪ .3.1.4‬با استفاده از ابزار ‪ Hping‬و یا ‪ Nmap‬بر روی یک گره خاص‪ ،‬پنج کار زیر را انجام دهید و با استفاده از ‪ TCPDump‬و‬
‫یا ‪ ،WireShark‬ترافیک ورودی و خروجی آن را ضبط کنید‪:‬‬
‫ ‪TCP Scanning‬‬‫ ‪SYN Scanning‬‬‫ ‪UDP Scanning‬‬‫ ‪ACK Scanning‬‬‫ ‪FIN Scanning‬‬‫سپس این ترافیک ضبط شده را با ‪ WireShark‬باز کرده و با استفاده از امکان ‪ Flow Graph‬آن‪ ،‬جزییات هر کدام از این‬
‫‪ Scan‬ها را نشان دهید و بررسی کنید‪ .‬همچنین با استفاده از امکان ‪ Statistics‬در همین نرم افزار‪ ،‬رفتار آماری مربوط با‬
‫هر ‪ Scan‬را استخراج کنید‪( .‬نکته‪ :‬گره هدف‪ ،‬بهتر است از سیستمی داخل دانشکده باشد که ترافیک زیادی روی‬
‫آن نیست ‪.‬از ‪ Scan‬کردن سرورهای داخل دانشگاه یا خارج شبکه دانشگاه خودداری کنید‪ .‬دانشجویان میتوانند‬
‫سیستم های همدیگر را برای این منظور اسکن کنند)‬
‫‪Behavior-Based Network Intrusion Detection‬‬
‫‪2‬‬
‫‪ .3.1.1‬در بخش دوم‪ ،‬با استفاده از نرمافزار ‪ IPTables‬باید تنظیماتی روی آن انجام دهید که در صورت تشخیص هر یک از ‪ 2‬نوع‬
‫‪ Port Scannig‬باال‪ ،‬آدرس حمله کننده را تا زمان مشخصی بلوک کرده و از این فرایند ‪ log‬گرفته و با درجه اهمیت باال (‬
‫‪ ) High Priority‬ذخیره کند‪ .‬همچنین با استفاده از امکاناتی که ‪ IPTables‬در اختیار شما قرار میدهد‪ ،‬سازوکاری تعریف‬
‫کنید که حمالت منع سرویس از نوع ‪ SYN Flooding‬را تشخیص داده‪ ،‬گره حمله کننده را بلوک کرده و ‪ log‬این عمل‬
‫را ذخیره کند‪.‬‬
‫در نهایت فایل ‪ Config‬خود را به همراه مستندی که نشان دهندة کارکرد درست این تنظیمات است را به ضمیمة تمرین ارسال کنید‪.‬‬
‫(نکته‪ :‬این تنظیمات باید بگونهی باشند که در کارکردهای عادی سیستم اختاللی ایجاد نکنند‪).‬‬
‫نکات مهم در مورد تحویل تکلیف‪:‬‬
‫●‬
‫مستند تکلیف باید در دو نسخه ی ‪ Word‬و ‪ PDF‬تحویل داده شود‪ .‬کلیة محتویات تکلیف (مستند‪ ،‬کد منبع‪،‬‬
‫خروجی نرم افزارها و غیره) بایستی در قالب یک فایل فشرده با نام ‪ DNS-932-HW4-StudentNumber‬به‬
‫آدرس ‪ [email protected]‬ارسال گردد‪ .‬عنوان نامه بایستی همانند نام فایل باشد‪.‬‬
‫●‬
‫در صورت بروز ابهام در مورد سواالت‪ ،‬میتوانید سواالت خود را به آدرس ‪ [email protected]‬بفرستید‪.‬‬
‫●‬
‫سواالت خود را به زبان فارسی یا انگلیسی پرسیده و از به کار بردن فینگلیش خودداری فرمائید‪.‬‬
‫●‬
‫به منظور پاسخگویی بهتر از سوی تدریسیاران‪ ،‬لطفا ابهام در مورد هر سوال را به صورت جداگانه بپرسید‪ .‬به منظور‬
‫پرسش در مورد سوال شماره ‪ ،i‬عنوان نامه باید به صورت ‪ HW4-i-Question‬باشد‪.‬‬
‫●‬
‫هرگونه سوال و ابهام در مورد تمرینات بایستی حداکثر تا ‪ 49‬ساعت قبل از مهلت تکلیف پرسیده شود‪.‬‬
‫●‬
‫تاخیر در ارسال پاسخ‪ ،‬مشمول کسر نمره خواهد بود‪ .‬هر روز تاخیر مشمول ‪ 42‬درصد کسر نمره خواهد گردید‪.‬‬
‫●‬
‫تکلیف بایستی فقط یکبار فرستاده شود‪ .‬در صورت ارسال چندین نسخه در زمانهای مختلف‪ ،‬فقط نسخة اولیه‬
‫بررسی می شود‪.‬‬
‫●‬
‫پاسخ هر سوال باید دقیق و متناسب با سوال باشد‪ .‬از ذکر مطالب مبهم‪ ،‬نامرتبط و زائد خودداری شود‪.‬‬
‫●‬
‫در صورت استفاده از منبع خاصی برای پاسخ به سوال‪ ،‬اسم آن منبع ذکر گردد‪.‬‬
‫●‬
‫پاسخ ها باید با کلمات خودتان بیان شوند‪ .‬مطالب منابع دیگر را عینا کپی نکنید‪.‬‬
‫●‬
‫در صورت کشف تقلب‪ ،‬بر اساس مقررات آموزشی با آن برخورد خواهد شد‪.‬‬
‫●‬
‫پاسخها فقط میتوانند به زبان فارسی باشند‪.‬‬
‫●‬
‫حداکثر تعداد صفحات بایستی ‪ 01‬صفحه ( با اندازه قلم ‪ )00‬باشد‪.‬‬
‫●‬
‫در صورت نقض هر کدام از نکات گفته شده‪ ،‬نمره کسر میگردد‪.‬‬
‫موفق باشید‪.‬‬