راهنمای استفاده از Nessus برای اسکن آسیب پذیریها در Ubuntu 22.04
۱۲ اسفند ۱۴۰۳
Nessus یک ابزار برای شناسایی آسیبپذیریها “خلأهای امنیتی” در سیستمها است که توسط شرکت Tenable توسعه یافته است. این ابزار به صورت اتوماتیک تمام پورتهای یک کامپیوتر یا سرور را بررسی میکند تا آسیبپذیریها و مشکلات امنیتی شناختهشده را شناسایی کند. با لیارا همراه باشید.
در ادامه با آنها آشنا خواهید شد:
- Nessus چیست؟
- پیشنیازها
- مرحله اول: نصب ابزار Nessus Essentials
- مرحله دوم: پیکربندی Nessus در مرورگر محلی
- مرحله سوم: پیکربندی تنظیمات اسکن Nessus برای اجرای اسکن آسیبپذیری
- مرحله چهارم: انجام اسکن آسیبپذیری با Nessus
- مرحله پنجم: بررسی نتایج اسکن
- سوالات متداول
- جمع بندی
Nessus چیست؟
Nessus از یک پایگاه داده بهروز شده برای تشخیص خطرات استفاده میکند و انواع مختلفی از گزارشها را در مورد نتایج اسکن به شما میدهد. این ابزار برای کسانی که تازه وارد حوزه امنیت شبکه هستند، مناسب است، چون نیازی به دانش پیچیده یا آشنایی با خط فرمان ندارد.
به همین دلیل، Nessus یکی از بهترین ابزارها برای مرحله شناسایی و تحلیل در تستهای نفوذی Penetration Testing به حساب میآید.

Nessus به عنوان یک ابزار اختصاصی، در نسخههای مختلفی عرضه میشود که به تعداد ابزارهای موجود بستگی دارد. این نسخهها عبارتند از:
- Nessus Essentials
- Nessus Professional
- Nessus Expert
- Nessus Essentials نسخه رایگان Nessus است که تمام ابزارهای لازم برای انجام اسکنهای آسیبپذیری معمولی را دارد.
- Nessus Professional نسخه پیشرفتهتر است که قابلیتهای بیشتری نسبت به نسخه رایگان دارد و برای تستکنندگان حرفهای نفوذ و متخصصین امنیت مناسب است.
- Nessus Expert نسخه کامل این ابزار است که برای بخشهای IT در شرکتهای کوچک و غیره مناسب است.
در این آموزش، از نسخه Nessus Essentials استفاده خواهیم کرد، اما فرآیند نصب برای تمام نسخهها مشابه است.
پیشنیازها
برای ادامه این آموزش، شما به موارد زیر نیاز خواهید داشت:
- یک سرور یا ماشین مجازی با سیستم عامل Ubuntu 22.04، چه نسخه دسکتاپ و چه نسخه سرور مجازی “پیشنهاد ما به شما سرور مجازی لیارا است”.
- در سرور مجازیتان باید حداقل 4 گیگ رم در دسترس باشد. اگرچه
Tenable
8 گیگابایت RAM را توصیه میکند. - سیستم باید حداقل 5 گیگابایت فضا برای نصب Nessus Essentials داشته باشد.
- حداقل چهار پردازنده دو هستهای در سیستم.
- حداقل سرعت پردازنده 1 گیگاهرتز یا بیشتر برای اجرای Nessus.
- داشتن یک حساب کاربری غیر روت برای سیستم، زیرا بهتر است از دسترسی روت استفاده نکنید.
- (اختیاری) برای انجام اسکن آسیبپذیری در این آموزش، وجود یک ماشین دیگر برای اسکن ضروری است.
- یک مرورگر پشتیبانیشده مانند Google Chrome یا Mozilla Firefox در سیستم Ubuntu. در این آموزش از Mozilla Firefox استفاده میکنیم.
مرحله اول: نصب ابزار Nessus Essentials
پس از اینکه پیشنیازها را فراهم کردید، میتوانید ابزار Nessus را روی سیستم Ubuntu نصب کنید.
ابتدا باید بسته نصب Nessus برای Ubuntu را با استفاده از curl
دانلود کنید.
curl -o nessus.deb https://www.tenable.com/downloads/api/v1/public/pages/nessus/downloads/13101/download?i_agree_to_tenable_license_agreement=true
این بسته را پس از دانلود، نصب کنید و سپس برای ادامه نصب، دستورات مشابه را دنبال کنید.
sudo curl --request GET --url 'https://www.tenable.com/downloads/api/v2/pages/nessus/files/Nessus-10.4.2-ubuntu1404_amd64.deb' --output /tmp/'Nessus-10.4.2-ubuntu1404_amd64.deb'
این فایلهای نصب Nessus در پوشه /tmp
دانلود شدهاند. حالا برای نصب Nessus روی سیستم Ubuntu خود، باید از دستور dpkg
استفاده کنید.
sudo dpkg -i /tmp/Nessus-10.4.2-ubuntu1404_amd64.deb
پس از نصب، باید سرویس Nessusd
را ریستارت کنید. برای این کار دستور زیر را وارد کنید.
sudo /bin/systemctl start nessusd.service
حالا میتوانید با مراجعه به آدرس زیر در مرورگر محلی خود، به Nessus
دسترسی پیدا کنید.
http://localhost:8834/
توجه: پورت 8834 پورت پیشفرض Nessus است.
در بیشتر مرورگرها، یک پیغام امنیتی ظاهر خواهد شد که از شما میخواهد که به صفحه قبل برگردید. اما این پیغام کاملاً بیخطر است و میتوانید بر روی Advanced
کلیک کرده و سپس به سایت ادامه دهید.
👈🏻بیشتر بخوانید: افزایش سرعت پردازش سشنهای Python/MySQL با Redis در اوبونتو 22.04
مرحله دوم: پیکربندی Nessus در مرورگر محلی
حال که نصب Nessus با موفقیت انجام شد، باید آن را در مرورگر محلی خود پیکربندی کنید و پلاگینهای مورد نیاز را نصب کنید.
پس از وارد شدن به صفحه خوشآمدگویی، روی Nessus Essentials
کلیک کنید تا از نسخه رایگان Nessus استفاده کنید. اگر اشتراک برای نسخههای Professional
یا Expert
دارید، میتوانید از آن گزینهها استفاده کنید. روند نصب مشابه همین خواهد بود.

پس از آن از شما خواسته میشود که نام و آدرس ایمیل خود را وارد کنید تا یک کد فعالسازی برای Nessus Essentials
دریافت کنید.

اگر قبلاً کد فعالسازی دارید، میتوانید این مرحله را رد کنید. در غیر این صورت، اطلاعات خود را وارد کنید تا کد به ایمیل شما ارسال شود. پس از دریافت کد، ادامه دهید و آن را در بخش کد فعالسازی وارد کنید. سپس از شما خواسته میشود که یک حساب کاربری مدیریت ایجاد کنید؛ هر نام کاربری که بخواهید انتخاب کنید و یک رمز عبور قوی بسازید.

برای مثال، در این آموزش، نام کاربری Sammy
است. پس از انجام این مراحل، Nessus شروع به نصب پلاگینهای مورد نیاز میکند. بسته به سرعت اینترنت و قابلیتهای پردازنده شما، این فرآیند ممکن است کمی زمان ببرد. وقتی پیامی دریافت کردید که پلاگینها با موفقیت نصب و تنظیم شدهاند، میتوانید به مرحله بعدی بروید.

مرحله سوم: پیکربندی تنظیمات اسکن Nessus برای اجرای اسکن آسیب پذیری
حالا که Nessus با موفقیت نصب شد، میتوانید اسکنهایی برای شناسایی آسیبپذیریها روی سیستمهای هدف انجام دهید. برای این کار، به پوشه My Scans
در صفحه اصلی Nessus بروید. اگر برای اولین بار Nessus را نصب کردهاید، اسکنها نمایش داده نخواهند شد. بنابراین، روی دکمه New Scan
در گوشه سمت راست بالای داشبورد خود کلیک کنید.

با کلیک روی دکمه مذکور، به صفحه الگوهای اسکن هدایت خواهید شد، جایی که سه دسته اصلی از اسکنها وجود دارد:
- Discovery
- Vulnerability
- Compliance
دستههای اول و دوم در نسخه رایگان Nessus موجود هستند. در این آموزش، ما به دسته Vulnerability یا آسیبپذیری خواهیم پرداخت.
در این بخش، ما یک اسکن شبکه پایه را پیکربندی کرده و گزینههای آن را بررسی خواهیم کرد. سپس در بخش بعدی، سیستم دوم اوبونتو را اسکن خواهیم کرد.
تنظیمات پیکربندی اسکن
روی گزینه Basic Network Scan
کلیک کنید و به صفحه تنظیمات اسکن هدایت میشوید. در آنجا، زیر بخش Settings
، گزینههای مختلفی خواهید دید.

بخش Basic
این بخش شامل بخشهای زیر میباشد:
- General: در این قسمت باید نام و آدرس IP سیستم هدف را وارد کنید.
- دو فیلد اختیاری دیگر نیز وجود دارند: Description و Folder. به طور پیشفرض، پوشه
My Scan
است، اما میتوانید آن را به هر پوشهای که میخواهید تغییر دهید. فیلد توضیحات اختیاری است، اما در این آموزش، ما متنی را برای توضیح وارد کردهایم که این اسکن برای اهداف نمایشی استفاده میشود. برای پیکربندی یک اسکن شبکه پایه (همانطور که در بخشهای بعدی توضیح داده میشود)، باید آدرس IP ماشین هدف (دومین ماشین اوبونتو در این آموزش) را در بخشtargets
وارد کنید، همانطور که در شکل زیر نشان داده شده است.

شما باید آدرس IP 192.xxx.xxx.xxx
را با آدرس IP ماشین هدف اوبونتو خود جایگزین کنید.

Schedule
این گزینه بهصورت پیشفرض غیرفعال است. این گزینه زمانی استفاده میشود که بخواهید اسکن را در زمان دیگری برنامهریزی کنید. اگر این گزینه فعال باشد، باید فرکانس اسکن، زمان شروع و منطقه زمانی را وارد کنید. در این آموزش، اسکن را برنامهریزی نخواهید کرد، بنابراین این گزینه را غیرفعال نگه دارید.
Notifications
این گزینه برای ارسال اعلانهای اسکن به آدرسهای ایمیل تنظیم شده است و کاملاً اختیاری است. فقط آدرسهای ایمیلی را که میخواهید تمامی اعلانها به آنها ارسال شود، وارد کنید. سپس Nessus آنها را ارسال خواهد کرد.

Discovery
در این قسمت باید دامنه اسکن خود را مشخص کنید. از آنجا که در هر شبکه 65535
پورت وجود دارد، اسکن همه آنها همیشه ممکن نیست، زیرا بیشتر آنها باید عملیاتی باشند. با این حال، این یک تنظیم ضروری است که از اسکن به اسکن متفاوت است.

🔷مطالعه کنید: آموزش نحوه راهاندازی کلاستر K3s Kubernetes در اوبونتو 22.04
برای انجام یک اسکن شبکه پایه، نیازی به انتخاب همه پورتها نیست، زیرا این کار زمانبر خواهد بود؛ بنابراین، دامنه اسکن را به پورتهای استاندارد محدود کنید. Nessus سه گزینه برای انتخاب ارائه میدهد:
- Common Ports: اسکن پورتهای رایج مانند 80 و غیره.
- All Ports: اسکن تمام 65535 پورت.
- Custom Ports: اسکن فقط پورتهای تعیینشده.
بسته به نیاز خود، میتوانید هرکدام را که میخواهید انتخاب کنید.
Assessment
در این بخش باید آسیبپذیریهایی را که میخواهید ارزیابی کنید انتخاب کنید. این تنظیمات ضروری است و به احتمال زیاد مهمترین بخش از تنظیمات اسکن است، زیرا نوع آسیبپذیریهایی را که برای سیستم هدف اسکن خواهند شد، تعریف میکند. Nessus گزینههای مختلفی در این بخش ارائه میدهد.

در این بخش، شما باید روش ارزیابی آسیبپذیریها را انتخاب کنید. این گزینهها شامل موارد زیر هستند:
- Default: این روش ارزیابی پایه است و هیچ هشداری در وبسرور یا برنامههای تحت اسکن ایجاد نمیکند، اما معمولاً اطلاعات زیادی ارائه نمیدهد.
- Scan for known web vulnerabilities: این گزینه برای اسکن آسیبپذیریهای معروف وب استفاده میشود.
- Scan for all web vulnerabilities (quick): این گزینه به صورت سریعتر و جامعتر از گزینه قبلی اسکن میکند و تا 1000 صفحه از دامنه اصلی را اسکن میکند.
- Scan for all web vulnerabilities (complex): این گزینه کاملترین روش است و برای اسکن تمامی آسیبپذیریهای شناخته شده استفاده میشود. این اسکن با استفاده از روشهای مختلف
HTTP
انجام میشود تا کاوشهایی برای کشف آسیبپذیریها صورت گیرد. - Custom: در این حالت، شما میتوانید روش اسکن دلخواه خود را انتخاب کنید، که نیاز به دانش بیشتر از شبکه و برنامههای وب دارد.
در اینجا، تنظیمات Default
را انتخاب کنید تا اسکن شبکه پایه را با حداقل تغییرات انجام دهیم. با انتخاب گزینه پیشفرض، Nessus بهترین روشهای مخفیکاری و شناسایی موجود را انتخاب میکند.
Report
این بخش برای سفارشیسازی گزارش است. به عنوان مثال، شما میتوانید انتخاب کنید که کدام بخشها در نتایج اسکن شما گنجانده شوند و یا وضوح گزارشها را بر اساس نیازهای فضای دیسک و سایر الزامات تنظیم کنید.

برای گزارش اسکن پایه که در بخش بعدی نشان داده شده است، باید تنظیمات زیر را انتخاب کنید:
- در بخش
Processing
، دو گزینه زیر را فعال کنید:- Show missing patches that have been superseded: این گزینه لیست تمامی پچهای آپدیتنشده را نمایش میدهد.
- Hide results from plugins initiated as a dependency: این گزینه باعث میشود که نتایج پلاگینهایی که به عنوان وابستگی اجرا شدهاند در گزارش ظاهر نشوند (که این میتواند خوانایی گزارش را بهبود بخشد).
- در بخش
Output Section
، گزینهallow users to edit scan results
را فعال کنید تا بتوانید انتخاب کنید که نتایج اسکن به صورت فایل HTML یا XML ذخیره شوند (که در بخش بعدی استفاده خواهد شد).
Advanced
این بخش گزینههای پیشرفتهتری را فراهم میکند، مانند کاهش سرعت درخواستهای اسکن در صورتی که شلوغی شبکه تشخیص داده شود. این گزینه زمانی مفید است که شما روی شبکهای فعال اسکن انجام میدهید که ممکن است در صورت شلوغی بیش از حد خراب شود.

- گزینه
Default
به طور پیشفرض 30 هاست را اسکن کرده و زمان انتظار برای هر هاست را 5 ثانیه تنظیم میکند. - گزینههای
Scan low bandwidth limits
تعداد هاستهای اسکن شده را کاهش میدهند، اما زمان انتظار برای هر هاست را به 15 ثانیه افزایش میدهند، که زمان بیشتری برای دریافت پاسخ از ماشین هدف فراهم میکند.
این تنظیمات برای اسکنهای حرفهای و فعالتر مناسب هستند، اما برای اسکن شبکه پایه ما، این تنظیمات را به حالت Default
باقی میگذاریم.
مرحله چهارم: انجام اسکن آسیبپذیری با Nessus
حال که تنظیمات اسکن را بررسی کردهایم، این بخش یک اسکن نمونه را روی یک ماشین مشابه Ubuntu
که در بخشهای قبلی آموزش استفاده شده است، نشان خواهد داد.
ابتدا روی دستگاه دوم، دستور زیر را برای دریافت آدرس IP وارد کنید.
ip a | grep ‘inet 192’
در این خروجی، دو آدرس IPv4
مشاهده خواهید کرد. آدرس IP
دستگاه شما همان آدرسی است که با 192.###.###.###/24
تمام میشود. مقادیر قبل از /
همان آدرس IP
شما هستند، آن را یادداشت کنید.
سپس به دستگاهی که Nessus روی آن نصب شده است بروید، یک اسکن شبکه پایه جدید شروع کنید (طبق دستورالعملهای بخش قبل) و یک نام برای اسکن وارد کنید. اگر تمایل داشتید، توضیحی برای آن اضافه کنید. فولدر را روی My Scans
قرار دهید، و در بخش Targets
، آدرس IP دستگاه هدف را وارد کنید.

در بخش Discovery
، گزینه Port scan (standard ports)
را از منوی کشویی انتخاب کنید.

سپس به بخش Assessment
بروید و گزینه Default
را از منوی کشویی انتخاب کنید.

در بخش Report
، همه چکباکسها را به حالت پیشفرض رها کنید، زیرا این اسکن، سادهترین نوع اسکن است و نیاز به سفارشیسازی گزارشها ندارید.

در بخش Advanced
، نوع اسکن را روی Default
قرار دهید زیرا این یک اسکن پایه است و نیازی به تنظیمات پیشرفته ندارد.

اسکن را با کلیک روی Save
ذخیره کنید. شما به فولدر My Scans
هدایت میشوید. در آنجا، روی دکمه Play/Launch
در کنار اسکن کلیک کنید.

مرحله پنجم: بررسی نتایج اسکن
پس از اتمام اسکن، روی آن کلیک کنید تا به بخش نتایج اسکن منتقل شوید. شما میتوانید گزارش HTML
نتایج اسکن را با کلیک بر روی دکمه Report
در گوشه بالا سمت راست تولید کنید. یک کادر گفتوگو باز خواهد شد، در آنجا گزینه HTML
را انتخاب کرده و ادامه دهید. سپس گزارش در پوشه دانلود شما ذخیره خواهد شد. با باز کردن آن در مرورگر، صفحهای مشابه زیر را مشاهده خواهید کرد.

Nessus نتایج و اطلاعات جمعآوریشده از اسکن را در اینجا نمایش میدهد. نتایج به پنج دسته تقسیم میشوند:
- Critical: آسیبپذیریهایی که بحرانی بوده یا به راحتی قابل سوءاستفاده هستند.
- High: آسیبپذیریهایی که هکرهای با تجربه میتوانند از آنها سوءاستفاده کنند.
- Medium: این آسیبپذیریها معمولاً به راحتی قابل سوءاستفاده نیستند و میتوان با تلاش آنها را رفع کرد.
- Low: این آسیبپذیریها شامل پچهای استانداردی هستند که بهروزرسانی نشدهاند و نیاز به مهارت بالا برای سوءاستفاده دارند.
- Info: این بخش اطلاعات پایهای در مورد دستگاه را ارائه میدهد، مانند جزئیات سختافزار و سیستمعامل آن.
سوالات متداول:
در ادامه به برخی از سوالات متداول در این زمینه پاسخ دادهایم تا ابهامات شما برطرف شود.
آیا Nessus رایگان است؟
بله، نسخه رایگان Nessus تحت عنوان Nessus Essentials برای اسکن آسیبپذیریها قابل استفاده است. نسخههای حرفهای Nessus Professional و Expert نیز ویژگیهای پیشرفتهتری دارند که نیاز به اشتراک دارند.
چگونه باید Nessus را روی اوبونتو 22.04 نصب کنم؟
برای نصب Nessus، ابتدا بسته نصب را دانلود کنید و سپس با استفاده از دستور sudo dpkg -i
آن را نصب کنید. بعد از نصب، سرویس Nessus را با دستور sudo /bin/systemctl start nessusd.service
راهاندازی کنید.
چگونه یک اسکن آسیبپذیری با Nessus انجام دهم؟
پس از نصب، یک اسکن جدید ایجاد کنید، آدرس IP
دستگاه هدف را وارد کنید و نوع اسکن (مانند اسکن شبکه پایه) را انتخاب کنید. سپس اسکن را اجرا کنید و نتایج را مشاهده کنید.
چگونه گزارشهای اسکن را مشاهده کنم؟
پس از اتمام اسکن، به صفحه نتایج بروید و از گزینه Report برای دریافت گزارشها در فرمت HTML
یا XML
استفاده کنید.
آیا نیاز به دانش پیشرفته برای استفاده از Nessus دارم؟
Nessus برای مبتدیان طراحی شده است و نیازی به دانش پیشرفته در زمینه سیستمعامل یا ابزارهای خط فرمان ندارد. اما برای استفاده از ویژگیهای پیشرفتهتر، آگاهی از مفاهیم شبکه مفید خواهد بود.
جمع بندی
در این مقاله، نحوه نصب Nessus را بر روی اوبونتو 22.04 را به صورت گام به گام توضیح دادیم و با استفاده از آن، یک دستگاه دیگر را اسکن کردیم. سپس نتایج اسکن را بررسی کرده و نحوه خروجی گرفتن از آن بهصورت گزارش HTML را نشان دادیم. اگر میخواهید دانش بیشتری درباره Nessus کسب کنید، میتوانید به مستندات لیارا مراجعه کنید.