ابزار نویسی شبکه با پایتون
هدف اصلی ما در این دوره فهم کارکرد و الگوریتم برخی از ابزار های مرسوم اسکن و نفوذ شبکه است . در این دوره تکنیک های رایج در بحث تست نفوذ شبکه را مورد بررسی قرار داده ایم و هر کدام از آن ها به صورت عملی با استفاده از زبان پایتون پیاده سازی کرده ایم . پراستفاده ترین کتابخانه ای که در این دوره استفاده شده ، Scapy بوده است که یک کتابخانه بسیار قدرتمند در زمینه شنود ، دستکاری و تولید بسته های شبکه است .
توضیحات
سلام خدمت دنبال کنندگان گرامی . هدف اصلی ما در این دوره فهم کارکرد و الگوریتم برخی از ابزار های مرسوم اسکن و نفوذ شبکه است . در این دوره تکنیک های رایج در بحث تست نفوذ شبکه را مورد بررسی قرار داده ایم و هر کدام از آن ها به صورت عملی با استفاده از زبان پایتون پیاده سازی کرده ایم . پراستفاده ترین کتابخانه ای که در این دوره استفاده شده ، Scapy بوده است که یک کتابخانه بسیار قدرتمند در زمینه شنود ، دستکاری و تولید بسته های شبکه است .
پیش نیاز های این دوره :
- آشنایی با سیستم عامل لینوکس
- دوره آموزش جامع پایتون (ارائه شده به صورت رایگان)
در این قسمت از مجموعه مفاهیم شبکه ، به بررسی مدل OSI و TCP/IP میپردازیم
بررسی مفهوم پروتکل و تشریح کارکرد پروتکل ARP
بررسی پروتکل اینترنت (IP) به عنوان یک پروتکل شبکه و نه فقط یک آدرس !
بررسی پروتکل عیب یابی ICMP و بسته های آن
بررسی عملی پروتکل های لایه شبکه ذکر شده در قسمت های قبلی
بررسی کارکرد لایه انتقال (Transport) و توضیح پروتکل UDP
بررسی کارکرد پروتکل TCP و مفاهیم مربوط به آن مثل Sequence Number , Acknowledgement Number , TCP Flags ,...
بررسی عملی پروتکل های TCP ,UDP توسط ابزار netcat و Wireshark
بررسی و شرح کارکرد پروتکل HTTP و اشاره به مدل امن شده آن یعنی HTTPS
بررسی عملی و ارسال دستی بسته های HTTP و HTTPS توسط ابزار های nc و ncat و بررسی جواب آن ها
بررسی و شرح کارکرد پروتکل DNS
ارسال کوئری های مختلف DNSدر کار با ابزار های nslookup در ویندوز و dig در لینوکس
بررسی پروتکل های Telnet و SSH
اجرای سرور های Telnet و SSH و بررسی عملی کارکرد این دو پروتکل
بررسی کارکرد پروتکل FTP و معرفی پروتکل های SCP , SFTP , FTPS , FTPES
بررسی عملی پروتکل های FTP , SCP , SFTP
در این قسمت به معرفی اولیه سوکت ها و انواع مهم آن ها میپردازیم
در قسمت دوم از بخش سوکت نویسی ، به پیاده سازی عملی سوکت های Stream میپردازیم .
در این قسمت به پیاده سازی عملی سوکت های نوع Datagram میپردازیم .
در این قسمت به بررسی مفاهیم اولیه این بخش مثل برنامه نویسی همروندی ، موازی ، Thread ها و Multithreading , پروسه ها و Multiprocessing خواهیم پرداخت
در این قسمت از کارگاه Multithreading به بررسی نحوه ساخت و مدیریت thread ها با استفاده از کتابخونه ی threading در پایتون خواهیم پرداخت
در ادامه ی کارگاه multithreading به مفهوم Race Condition و نحوه استفاده از Lock ها جهت همگام سازی thread ها در پایتون میپردازیم .
میرسیم به کارگاه Multiprocessing . همانطور که گفته شد بحث چندپردازشی یا همان multiprocessing مناسب کار های CPU Bound هستش که به ما اجازه میده محدودیت GIL در پایتون رو دور بزنیم و از سخت افزار خودمون استفاده بهتری ببریم .
آموزش نصب Scapy
لایه های Scapy و ساخت و ویرایش بسته های پروتکل های مختلف شبکه
معرفی توابع ارسال و شنود بسته های شبکه در Scapy
ساخت ابزار های Ping و Traceroute با استفاده از پایتون و Scapy
ساخت ابزار Ping Sweep برای اسکن دستگاه های Live در شبکه
ساخت ابزار ARP Scan برای اسکن دستگاه های Live در شبکه
ساخت ابزار Connect Scan برای اسکن پورت های فعال در سیستم هدف
ساخت ابزار SYN Scan برای اسکن پورت های فعال در سیستم مقصد
ساخت ابزار UDP Scan برای اسکن پورت های UDP فعال روی سیستم مقصد
پیاده سازی حمله SYN Flood جهت مختل کردن کارکرد دستگاه های شبکه
بررسی تئوری تکنیک مسمومیت ARP
پیاده سازی عملی تکنیک مسمومیت ARP
پیاده سازی تکنیک DNS Hijacking
شنود اعتبارنامه ها و اطلاعات مهم در حین حملات Man In The Middle
کرک پروتکل FTP
کرک پروتکل Telnet
کرک صفحات HTTP / HTTPS
معرفی مبحث Protocol Tunneling و پیاده سازی ICMP Tunneling جهت مخفی سازی ترافیک شبکه در بسته های ICMP