برای دسترسی به ویدیو
لینوکس برای امنیت (تهاجمی)
این کورس از خیلی بیسیک آغاز شده است و جلسات اول اگر قبلا تجربه با لینوکس را داشته باشید برای شما پیشنهاد نمی شود.
قبل از شروع کورس باید بدانیم برای چی اصلا می خواییم کار با لینوکس را یاد بگیریم همان طور که میدانید در امنیت تهاجمی مدل بلوغ به نحو زیر می باشد
Vulnerability Scanning => Vulnerability Analysis => Penetration Testing => Red Teaming => Adversary Emulation =>Adversary Simulation
در صورتی که بخواهید امنیت یک شبکه را ارزیابی کنید از پایین تر سطح اسکن آسیب پذیری تا آنالیز آسیب پذیری ها ، تست نفوذ تا اخرین مرحله شبیه سازی حملات گروه های APT نیازمند یک سری ابزار هستید این ابزارها عموما توسط محققین امنیتی به صورت open source توسعه داده شدند و اکثر این ابزارها در توزیع شرکت offensive security یعنی kali linux گنجانده شده است. برای استفاده از کالی شما باید در حد معمول با لینوکس آشنایی داشته باشید کار با فایل کار پراسس نصب برنامه حذف برنامه نصب برنامه از سورس اسکریپت نویسی با Bash اسکریپت از جمله مواردی هست که در این کورس گنجانده شده است.
قبل از هر چیزی هر سیستم عامل میزبانی دارید ویندوز لینوکس مک شما باید vmware fusion ، vmware worksation یا Virtual box را نصب کنید و برای نصب یک ماشین مجازی نیازمند این هستید که از cpu ویژگی virtualization را فعال کنید معمولا پیش فرض فعال هست ولی اگر ارور VT گرفتید حتما از boot این عمل را انجام دهید با توجه به نوع مادربوردتان کمی صفحه بوت متفاوت است از گوگل کمک بگیرید.
نصب ماشین مجازی kali
اول از همه از سایت offensive security اخرین نسخه کالی لینوکس را دانلود می کنیم سپس اقدام به نصب می کنیم.
در سیستم عامل لینوکس یک سری مفاهیم ابتدایی داریم که باید این ها را بدانید
Binaries
در تمام سیستم عامل ها ما فایل های باینری یا اجرایی داریم در لینوکس این فایل ها زیر شاخه
/usr/bin
/usr/sbin
قرار می گیرند و برنامه های اجرایی لینوکس شما هستند.
Case sensitivity
برعکس ویندوز، لینوکس case sensitivity داره در کامند اسم فایل و … یعنی DIR dir در ویندوز یک جواب بر میگرداند ولی لینوکس DIR از شما قبول نمی کند!
Directory
همان فولدر در ویندوز هست.
Home
در ویندوز شما c:\user دارید هر یوزر یک سری فولدر دارد که home محسوب می شود در لینوکس هم به این صورت برای هر یوزر home داریم /home
Kali
کالی لینوکس یک توزیع لینوکس است که از 2018 با تعدادی از ابزار پیش فرض نصب شده معرفی شد که پشتیبانش شرکت offensive security می باشد. و همچنین مدرک PWK یا PEN200 یکی از مدارک شرکت offensive security هست که شامل آموزش کار با کالی و تست نفوذ با کالی می باشد.
Root
بالاترین سطح دسترسی در لینوکس root می باشد. این یوزر قادر به انجام هر کاری در لینوکس می باشد حتی می تواند کل لینوکس را پاک کند این دسترسی مثل nt Autority ویندوز می باشد یا حتی Administrator البته ادمین تو ویندوز به خاطر نوع معماری امنیتی ویندوز UAC قادر به انجام هر کاری نیست و باید قبلش تایید کند. ولی وقتی با دسترسی روت وارد لینوکس می شوید هر کامندی بزنید هیچ تایید از شما نمی خواد و مستقیم اجرا می کند.
Script
در تمامی سیستم عامل ها ویندوز لینوکس مک شما قادر به نوشتن کامندها در قالب یک فایل هستید که وقتی فایل اجرا می کنید مجموع کامند ها پشت هم اجرا می شود و در واقع شما یک اسکریپت را اجرا کردید در کورس های امنیت اسکریپت نویسی خیلی مهم است
Bash script, powershell script …
اسکریپت نویسی با برنامه نویسی فرق دارد! اسکریپت با مفسر دارد اجرا می شود ولی برنامه را شما قبلش با کامپایلر کامپایل کردید مثل c++ ولی پایتون بش و پاورشل با interpreter پیش فرض سیستم عامل اجرا می شوند یا شما باید قبلش روی سیستم عامل نصب کنید مثل پایتون.
Shell
محیطی که interpreter هست و هر دستوری را می زنید را تفسیر می کند و اجرا می کند شل نام دارد
Bash powershell cshell zshell …
اسم شل های مختلف هست در لینوکس می توانید برای داشتن خروجی گرافیکی بهتر در مفسرتان شل مورد علاقه تان را نصب کنید. این بستگی به خودتان دارد و چیزی خاصی نیست!
Terminal
شما بر عکس سیستم عامل ویندوز و مک در لینوکس با ترمینال سر و کار دارید و باید با این محیط آشنا شوید و اخت بگیرید و بتوانید اکثر کارهیتان را با ترمینال انجام دهید چرا که وقتی با کالی لینوکس روی VPS برای یک پروژه تست نفوذ کار می کنید دسترسی گرافیکی ندارید و انجام خیلی از کارها با ترمینال بسیار سریع تر از محیط GUI یا گرافیکی هست.
[root@ubuntu-2gb-nbg1-1 ~]# ls /
bin boot dev etc home lib lib64 lost+found media mnt opt proc root run sbin srv sys tmp usr var
/root The home directory of the all-powerful root user
/etc Generally contains the Linux configuration files—files that
control when and how programs start up
/home The user’s home directory
/mnt Where other filesystems are attached or mounted to the filesystem
/media Where CDs and USB devices are usually attached or mounted to the filesystem
/bin Where application binaries (the equivalent of executables in Microsoft Windows) reside
/lib Where you’ll find libraries (shared programs that are similar to Windows DLLs)
وقتی در ترمینال هستید برای اینکه ببینید دقیقا در کجا هستید می توانید از pwd استفاده کنید
سطح دسترسی whoami یا id
جابجایی cd /home/
دیدن فایل فولدرها ls جزییات ls -l
اگر می خواستید manual یک ابزار را بخوانید از help یا man استفاده کنید
مثلا man nmap یا nmap -h
برای سرچ کردن از کامندهای
locate, which, whereis, find
می توانید استفاده کنید
locate nmap
which nmap
whereis nmap
find / -iname “nmap”
find / -type f -name apache
find /etc -type f –name apache.*
همچنین برای نمایش لیست پراسس هایی که در حافظه حضور دارند ps aux
ساخت فایل
touch a, nano , vi
خواندن فایل cat a
کپی کردن فایل
cp a /a
تغییر نام یا جابجا کردن
mv a /a
پاک کردن فایل
rm a
پاک کردن فولدر
rmdir aa
head a
tail a
more a
less a
head -20 a
tail -20 a
nl a
cat /etc/passwd | grep 0:0