اگر به دنیای هک و امنیت سایبری علاقه دارید، احتمالاً یکی از اولین سؤالهایتان این است:
چطور هکر شویم و از کجا یادگیری هک را شروع کنیم؟
پاسخ کوتاه این است که بهترین مسیر، حمله کردن به سایتها و سیستمهای واقعی نیست؛ بلکه باید مهارتهای امنیت سایبری را داخل محیطهایی یاد بگیرید که مخصوص تمرین ساخته شدهاند.
یکی از بهترین روشها برای این کار، شرکت در چالشهای CTF یا Capture The Flag است.
در CTF با سیستمها، وبسایتها و فایلهایی روبهرو میشوید که عمداً آسیبپذیر طراحی شدهاند و میتوانید بدون آسیب زدن به دیگران، تکنیکهای واقعی امنیت سایبری را تمرین کنید.
در این مقاله از معین گیفت بررسی میکنیم CTF چیست، از کجا باید شروع کنید و دو پلتفرم بسیار مناسب یعنی picoCTF / CyLab Security Academy و Root-Me چه کمکی به یادگیری هک اخلاقی میکنند.
اول از همه؛ منظور از هکر شدن چیست؟
کلمه Hacker همیشه به معنی مجرم سایبری نیست.
در دنیای امنیت، متخصصانی وجود دارند که تلاش میکنند مثل یک مهاجم فکر کنند تا ضعف سیستمها را قبل از افراد مخرب پیدا کنند.
این حوزه معمولاً با عنوانهایی مثل:
- Ethical Hacking
- Penetration Testing
- Red Teaming
- Security Research
- Application Security
شناخته میشود.
هدف یک هکر اخلاقی این است که آسیبپذیریها را در محیط مجاز پیدا کند و به امنتر شدن سیستم کمک کند.
چرا نباید روی سایتهای واقعی تمرین کنیم؟
یکی از بزرگترین اشتباهات افراد مبتدی این است که تصور میکنند برای یاد گرفتن هک باید سراغ سایتها، Wi-Fiها یا حسابهای واقعی بروند.
این کار هم میتواند غیرقانونی باشد و هم ممکن است به دیگران آسیب بزند.
برای یادگیری امنیت سایبری، محیطهای قانونی زیادی وجود دارند که دقیقاً برای همین کار ساخته شدهاند.
فقط روی سیستمهایی تست امنیت انجام دهید که متعلق به خودتان هستند یا برای آزمایش آنها اجازه صریح دارید.
CTF چیست؟
CTF مخفف:
Capture The Flag
است.
در این مسابقات یا آزمایشگاههای آموزشی، تعدادی Challenge در اختیار شما قرار میگیرد.
با حل هر Challenge معمولاً باید یک رشته مخفی به نام Flag پیدا کنید.
این Flag نشان میدهد مسئله را با موفقیت حل کردهاید.
در CTF چه چیزهایی یاد میگیریم؟
بسته به پلتفرم و سطح Challenge، موضوعات مختلفی وجود دارند:
- Web Security
- Networking
- Cryptography
- Reverse Engineering
- Forensics
- Linux
- Binary Exploitation
- Scripting
- OSINT
مزیت CTF این است که بعد از یادگیری یک مفهوم، بلافاصله میتوانید آن را در محیط واقعی اما کنترلشده تمرین کنید.
برای شروع هک چه چیزهایی باید بلد باشیم؟
لازم نیست قبل از شروع متخصص باشید.
اما یادگیری چند مهارت پایه مسیر را بسیار سادهتر میکند.
۱. Linux
بخش بزرگی از ابزارهای امنیتی روی Linux استفاده میشوند.
حداقل باید با مفاهیمی مانند:
- Terminal
- File System
- Permission
- Process
- Command Line
آشنا شوید.
۲. شبکه
باید درک اولیهای از نحوه ارتباط سیستمها داشته باشید.
مفاهیمی مانند:
- IP
- Port
- TCP
- DNS
- HTTP و HTTPS
برای ورود به امنیت بسیار مهم هستند.
۳. برنامهنویسی
برای شروع لازم نیست برنامهنویس حرفهای باشید، اما آشنایی با یک زبان مثل Python کمک زیادی میکند.
بعداً بسته به حوزهای که انتخاب میکنید، زبانهایی مثل:
- JavaScript
- C
- Bash
- SQL
هم کاربردی خواهند بود.
۴. وب
اگر به Web Hacking علاقه دارید، باید بدانید یک وبسایت چگونه کار میکند.
موضوعاتی مثل:
- HTML
- JavaScript
- Cookies
- Sessions
- Request و Response
- API
پایه کار هستند.
شروع برای مبتدیها؛ picoCTF
یکی از شناختهشدهترین منابع برای شروع امنیت سایبری picoCTF است.
این پروژه توسط تیم دانشگاه Carnegie Mellon University ایجاد شده و هدف اصلی آن آموزش امنیت سایبری از طریق Challengeهای عملی است.
چالشها از سطح ساده شروع میشوند و بهتدریج شما را با موضوعات پیشرفتهتر آشنا میکنند.
picoCTF مخصوصاً برای کسی مناسب است که هنوز تجربه زیادی در Cybersecurity ندارد.
یک تغییر مهم درباره picoCTF در سال ۲۰۲۶
در حال حاضر وبسایت رسمی picoCTF اعلام کرده که مسیر آموزشی این پروژه در پلتفرم جدید:
CyLab Security Academy
ادامه پیدا میکند.
CyLab Security Academy پلتفرم رایگان آموزش امنیت سایبری Carnegie Mellon University است و موضوعات پایه تا حوزههای جدیدتری مثل AI Security را پوشش میدهد.
کاربرانی که پیشتر حساب picoCTF داشتهاند نیز میتوانند با حساب قبلی خود وارد شوند و سابقه و پیشرفتشان حفظ میشود.
ورود به CyLab Security Academy →
picoGym چیست؟
یکی از بخشهای معروف picoCTF، محیطی به نام picoGym است.
picoGym یک محیط Practice است که میتوانید Challengeهای مسابقات قبلی و تمرینهای مختلف را با سرعت خودتان حل کنید.
برخلاف مسابقات CTF، لازم نیست در زمان مشخصی Challengeها را حل کنید.
میتوانید:
- یک مسئله را انتخاب کنید.
- درباره موضوع آن مطالعه کنید.
- تمرین را حل کنید.
- بعد سراغ مرحله سختتر بروید.
چرا picoCTF برای شروع مناسب است؟
یکی از مشکلات منابع امنیت سایبری این است که بعضی از آنها از همان ابتدا شما را با موضوعات بسیار پیچیده روبهرو میکنند.
picoCTF برای آموزش طراحی شده و Challengeهای آن طیف گستردهای از سطح دشواری دارند.
خود پروژه نیز picoGym را محیطی امن برای تمرین مهارتهای امنیت سایبری معرفی میکند.
وقتی کمی حرفهایتر شدی؛ Root-Me
بعد از اینکه با مفاهیم پایه آشنا شدید، Root-Me یکی از بهترین منابع برای تمرین بیشتر است.
Root-Me یک پلتفرم آموزشی امنیت سایبری است که صدها Challenge و محیط آزمایشی در حوزههای مختلف دارد.
در زمان نگارش این مقاله، وبسایت رسمی Root-Me بیش از:
- ۵۹۹ Challenge
- ۱۷۸ محیط مجازی آموزشی
را معرفی میکند.
Root-Me چه موضوعاتی دارد؟
تنوع Challengeهای Root-Me یکی از نقاط قوت اصلی آن است.
موضوعاتی مثل:
- Web Client
- Web Server
- Network
- Cryptanalysis
- Reverse Engineering
- Forensics
- Programming
- System
در این پلتفرم دیده میشوند.
Root-Me بیشتر از یک مجموعه Challenge است
Root-Me علاوه بر Challenge، Documentation و محیطهای آسیبپذیر مخصوص تمرین نیز ارائه میدهد.
حتی راهنمای رسمی این سایت برای افراد مبتدی تأکید میکند که یادگیری Security فقط با اجرای ابزارها انجام نمیشود و مطالعه Documentation بخش مهمی از مسیر است.
مسیر پیشنهادی برای شروع
اگر کاملاً مبتدی هستید، میتوانید این ترتیب را دنبال کنید:
- آشنایی مقدماتی با Linux و Terminal
- یادگیری مبانی Network و HTTP
- یادگیری مقدماتی Python
- شروع Challengeهای ساده picoCTF
- مطالعه درباره موضوع هر Challenge
- تمرین بیشتر در picoGym یا CyLab Security Academy
- رفتن سراغ Challengeهای Root-Me
- انتخاب یک حوزه تخصصی
از کدام حوزه امنیت شروع کنیم؟
بعد از مدتی متوجه میشوید امنیت سایبری یک حوزه بسیار بزرگ است.
لازم نیست در همه شاخهها متخصص شوید.
مثلاً ممکن است بیشتر به یکی از این زمینهها علاقه داشته باشید:
- Web Security
- Network Security
- Reverse Engineering
- Malware Analysis
- Digital Forensics
- Cloud Security
- Application Security
- AI Security
CTF کمک میکند قبل از انتخاب تخصص، چند حوزه مختلف را تجربه کنید.
وقتی در یک Challenge گیر کردیم چه کنیم؟
گیر کردن در CTF کاملاً طبیعی است.
هدف این نیست که همه Challengeها را بدون کمک حل کنید.
وقتی گیر کردید:
- اول درباره مفهوم Challenge تحقیق کنید.
- Documentation مربوط به آن را بخوانید.
- سعی کنید مسئله را به چند بخش کوچک تقسیم کنید.
- بعد از تلاش کافی، Hintها را بررسی کنید.
- پس از حل Challenge، روش حل را برای خودتان یادداشت کنید.
هدف اصلی فهمیدن روش حل است، نه فقط بهدست آوردن Flag.
فقط ابزار حفظ نکنید
یکی از اشتباهات رایج در شروع Cybersecurity این است که افراد دهها Tool یاد میگیرند، اما نمیدانند پشت آن ابزار چه اتفاقی میافتد.
برای مثال بهجای اینکه فقط یک Command را حفظ کنید، بهتر است بفهمید:
- این ابزار چه اطلاعاتی دریافت میکند؟
- چه کاری انجام میدهد؟
- نتیجه آن چه معنایی دارد؟
- پروتکل یا آسیبپذیری پشت آن چگونه کار میکند؟
این نوع یادگیری باعث میشود بعداً بتوانید مسائل جدید را هم حل کنید.
Writeup بنویسید
یکی از بهترین روشهای پیشرفت در CTF، نوشتن Writeup است.
بعد از حل هر Challenge برای خودتان بنویسید:
- مسئله چه بود؟
- چه اطلاعاتی داشتید؟
- چه چیز جدیدی یاد گرفتید؟
- چه اشتباههایی کردید؟
- راهحل نهایی چه بود؟
بعد از چند ماه، مجموعه این یادداشتها تبدیل به یک منبع شخصی فوقالعاده خواهد شد.
انگلیسی در امنیت سایبری مهم است
بخش بزرگی از:
- Documentation
- مقالات
- CTFها
- Research Paperها
- گزارشهای امنیتی
به زبان انگلیسی منتشر میشوند.
لازم نیست از روز اول انگلیسی عالی داشته باشید، اما همزمان با امنیت، مهارت خواندن متون فنی انگلیسی را هم تقویت کنید.
چقدر طول میکشد هک یاد بگیریم؟
برای این سؤال جواب ثابتی وجود ندارد.
Cybersecurity مجموعه بزرگی از مهارتهاست و حتی متخصصان باتجربه هم دائماً در حال یادگیری هستند.
بهتر است بهجای اینکه بپرسید:
«چند ماه طول میکشد هکر شوم؟»
این سؤال را بپرسید:
این ماه چه مهارت امنیتی جدیدی میتوانم یاد بگیرم و تمرین کنم؟
picoCTF یا Root-Me؛ از کدام شروع کنیم؟
| ویژگی | picoCTF / CyLab | Root-Me |
|---|---|---|
| مناسب برای شروع | بسیار مناسب | مناسب بعد از یادگیری پایهها |
| سطح Challenge | مبتدی تا پیشرفته | مبتدی تا بسیار پیشرفته |
| محیط تمرینی | دارد | دارد |
| Web Security | دارد | بسیار متنوع |
| Cryptography | دارد | دارد |
| Reverse Engineering | دارد | دارد |
| هزینه شروع | رایگان | تمرینهای رایگان دارد |
یک برنامه ساده برای شروع
اگر نمیدانید دقیقاً از کجا شروع کنید، میتوانید برای ماه اول این مسیر را امتحان کنید:
هفته اول
- Linux و Terminal
- File System
- Commandهای پایه
هفته دوم
- IP و Port
- HTTP و HTTPS
- DNS
- مبانی Web
هفته سوم
- Python مقدماتی
- حل Challengeهای ساده picoCTF
هفته چهارم
- ادامه CTF
- انتخاب حوزه موردعلاقه
- شروع Challengeهای ساده Root-Me
- نوشتن Writeup برای تمرینهای حلشده
قانون طلایی یادگیری هک
تا زمانی که مجوز ندارید، هدف واقعی را آزمایش نکنید.
محیطهای CTF، آزمایشگاههای شخصی و ماشینهای عمداً آسیبپذیر تقریباً تمام چیزهایی را که برای یادگیری نیاز دارید در اختیار شما قرار میدهند.
تمرین روی این محیطها هم امنتر است، هم قانونیتر و هم معمولاً برای یادگیری ساختار بسیار بهتری دارد.
لینکهای شروع
برای شروع از محیط Carnegie Mellon:
ورود به CyLab Security Academy →
برای Challengeهای بیشتر:
جمعبندی
اگر میخواهید وارد دنیای هک و امنیت سایبری شوید، بهترین راه این نیست که از همان ابتدا دنبال ابزارهای عجیب یا حمله به سیستمهای واقعی باشید.
ابتدا مفاهیم پایه Linux، شبکه، وب و برنامهنویسی را یاد بگیرید و بعد آنها را در محیطهای CTF تمرین کنید.
برای یک فرد کاملاً مبتدی، picoCTF و پلتفرم جدید CyLab Security Academy نقطه شروع بسیار خوبی هستند و بعد از افزایش مهارت میتوانید Challengeهای متنوعتر Root-Me را امتحان کنید.
مهمترین نکته این است که هک را مثل یک مهارت حل مسئله یاد بگیرید؛ نه مجموعهای از Commandهایی که فقط حفظ میشوند.
هکر خوب کسی نیست که فقط ابزارهای زیادی بلد باشد؛ کسی است که میفهمد سیستم چگونه کار میکند، ضعف آن کجاست و چطور میتوان آن را امنتر کرد.
آموزش امنیت و هوش مصنوعی در معین گیفت
در معین گیفت ابزارها و منابع کاربردی امنیت سایبری، برنامهنویسی و هوش مصنوعی را معرفی میکنیم و مسیرهای آموزشی مناسب برای شروع و توسعه مهارتهای فنی را بررسی میکنیم.