** قسمت هایی از ویدیو جلسه اول **

با دیدن این ویدیو آموزشی، موارد زیر را یاد خواهید گرفت:

  • قابلیت های پایتون
  • تفاوت مفسر (Interpreter) و کامپایلر (Compiler)
  • کاربرد پایتون در هک و امنیت

مشخصات پایتون (Python Characteristics)

  • منبع باز (Open Source): کدهایی که پایتون با آن ساخته شده است، به صورت رایگان در اختیار همه قرار دارد که این امر باعث مشارکت زیادی از برنامه نویسان و صاحب نظران در گسترش این زبان برنامه نویسی شده است.
  • چند سکویی (Cross Platform): چند سکویی یعنی می توان کد برنامه نوشته شده را در هر یک از سیستم عامل های Linux، Windows، Mac، Android و … اجرا کرد و نیاز به نوشتن کد مجزا برای هر یک از این سیستم عامل ها نمی باشد.
  • سطح بالا (High Level): یعنی دستورات زبان پایتون به زبان انسان نزدیک بوده و برای انسان قابل فهم می باشد.
  • شی گرا (Object Oriented): قابلیت شی گرایی یکی از ویژگی های بسیار پرکاربرد و مهم در پایتون می باشد. با استفاده از شی گرایی، یک شئ می تواند خصوصیات یک شی دیگر را به ارث ببرد. مفهوم شی گرایی نیاز به تمرین داشته و برای فهم بیشتر، در جلسات آموزش مقدماتی پایتون به صورت یک جلسه مجزا آموزش داده شده است.
  • ماژول های زیاد: به دلیل وجود ماژول های زیادی که برای این زبان برنامه نویسی ساخته شده و در دسترس همگان است، می توان در حوزه های زیادی از این زبان برنامه نویسی استفاده کرد. فرض کنید یک جعبه شامل ابزارهایی برای تعمیر سخت افزار کامپیوتر در دسترس دارید. ماژول مانند این جعبه و هر یک از این ابزارها، مانند توابع (Functions) می باشند. دقت شود که ماژول ها برای عملی خاص استفاده می شوند. به عنوان مثال ماژول OS شامل توابعی برای تعامل و برقراری ارتباط با سیستم عامل می باشد.
  • زبان مفسری (Interpreter Language): پایتون یک زبان مفسری می باشد. برای درک مفسر، تفاوت آن با کامپایلر (Compiler) در زیر آورده شده است. طبق جدول زیر، در مفسر، هر یک از خطوط کد به زبان ماشین تبدیل شده و سپس اجرا می شوند. در کامپایلر، کل خطوط کد موجود در فایل، به زبان ماشین تبدیل شده و در یک فایل مجزا به صورت باینری ذخیره شده و سپس آن فایل اجرا می شود. به دلیل خط به خط اجرا شدن خطوط کد در Interpreter، سرعت آن نسبت به کامپایلر کمتر می باشد ولی رفع مشکلات (Debug) کد در مفسر راحت تر می باشد چون همان لحظه اجرا شده و در صورت خطا، به صورت لحظه ای گزارش خواهد داد.
Compiler Interpreter
Entire Source Code Line by Line Execution
Faster Slower Time
Harder Easier Debug

کاربرد پایتون در هک و امنیت (Python in Cyber Security)

  • اتوماسیون (Automation): به دلیل یکسان بودن مراحل انجام برخی کارها، با نوشتن کد میتوان از این کارهای تکراری و خسته کننده جلوگیری کرد. به عنوان مثال برای جمع آوری اطلاعات می توان از کدنویسی استفاده کرد.
  • ابزار شبکه (Network Tools): می توان ابزارهای شبکه مانند مانیتورینگ شبکه، اسکنر شبکه و غیره در صورت نیاز ساخته شود یا به ابزارهای شبکه منبع باز که به زبان پایتون نوشته شده اند، قابلیت هایی اضافه شود.
  • ابزارهای تست نفوذ (Pentest Tools): ابزارهایی که در فازهای مختلف تست نفوذ مانند ساخت بدافزار، اکسپلویت، اسکن آسیب پذیری ها و غیره مورد نیاز است را می توان ساخت.
  • جرم یابی دیجیتال (Digital Forensic): به عنوان مثال برای اثبات جرم در سیستم های دیجیتال، باید قسمت هایی از Log Files را استخراج کرده که استخراج بر اساس فیلتر های مختلف (مثل زمان یا تاریخ مشخص، نرم افزار مشخص و غیره) توسط کد پایتون می تواند صورت گیرد.
پیمایش به بالا