Acunetix Scanner

Аудит безпеки веб-додатків з Acunetix Vulnerability Web Scanner

Acunetix Vulnerability Web Scanner —  один зі світових лідерів серед додатків для веб-аудиту, які застосовують інтерактивну (IAST) та динамічну (SAST) модель сканування безпеки електронних ресурсів з можливістю Black-Box та Grey-Box тестування. Заснований американською компанією з кібербезпеки Invicti Security у 2005 році, цей флагманський продукт дозволяє швидко виявляти та запобігати різноманітним ризикам веб-додатків, а також практикувати Bug Bounty. У цій статті ми розглянемо ази роботи з Acunetix.

Acunetix Vulnerability Web Scanner: переваги та можливості

Acunetix Web Vulnerability Scanner

Функціональні можливості:

  • Кросплатформність: підтримка OS Linux, Windows, MacOS;
  • Підтримка роботи з веб-серверами (Apache/Nginx);
  • Уміння тестувати широкий спектр вразливостей: SQL/PHP/XXE/XSS/CRLF-ін’єкції та CSRF/SSRF, LFI/RFI/RCE та ін. В базі Acunetix більше 4500 маркерів вразливостей!;
  • Підтримка технологій та їх тестування безпеки: HTML5, JS, Java, AJAX, PHP, Ruby, React, Vue, Angular, Node.js, ASP.NET;
  • Розуміння структури популярних CMS WordPress/Drupal/Joomla, аналіз вразливостей в їх компонентах, темах, плагінах;
  • Наявність модуля “AcuSensor”  –  суттєво покращує результативність сканування, дає можливість виконувати інтерактивне IAST-тестування, аналізуючи і експлуатуючи вразливості в режимі сірого ящика (GreyBox), проводячи аналіз вихідного коду додатків PHP, .NET, Java або Node.js. Скачується окремо і ставиться на стороні сервера;
  • Наявність модуля “AcuMonitor” – виявлення поширених вразливостей через віртуальний браузер;
  • Підтримка технологій SmartScan (розумного пошуку) та DeepScan (глибокого пошуку);
  • Перевірка на відповідність стандартам OWASP Top 10/ISO27001/PCIDSS/HIPAA/NIST, класифікація вразливостей по базам CWE/CVE;
  • Інтеграція з популярними таск-трекерами та платформами: Jira, Trello, GitHub, GitLab, Azure DevOps, Microsoft Team, Bugzilla, Mantis, Jenkis;
  • Інтеграція з файєрволами Fortinet/Citrix/Imperva/AWS та іншими IPS/IDS системами (доступний експорт правил);
  • Вбудований мережевий сканер, інтеграція з OpenVAS (безпека локальної мережі);
  • Масовий імпорт цілей;
  • Підготовка інформативних звітів з рекомендаціями.

Як бачимо, Acunetix Vulnerability Scanner – це досить об’ємне, комплексне рішення. Перейдемо безпосередньо до роботи з інструментом.

Аудит безпеки з Acunetix

Встановлення

Завантажити останню актуальну версію Acunetix Vulnerability Scanner можна на офіційному сайті за посиланням.

Розгортати додаток рекомендується на віртуальній машині, Docker-контейнері або RDP/VNC-сервері.

Примітка: Усі продукти компанії Acunetix розповсюджуються лише за комерційною ліцензією, тут немає безкоштовних версій, подібно Burp Suite Community Edition. Є Trial, який видається на обмежений строк для корпоративних клієнтів для ознайомлення. Для цього власнику компанії необхідно написати в технічну підтримку support@acunetix.com й з вами зв’яжеться дилер, який проведе процедуру верифікації/реєстрації і видасть ключ активації.

Встановлення відбувається в автоматичному режимі, треба лише запустити Bash-скрипт (Linux) або exe-файл (Windows), котрі йдуть в інсталяційному пакеті.

Щоб вимкнути автоматичне завантаження служби Acunetix з системою необхідно виконати наступні команди:

  • sudo systemctl disable acunetix.service
  • sudo systemctl stop acunetix

Після чого здійснювати запуск вручну:

  • sudo systemctl start acunetix

Веб-інтерфейс

Після того як розгорнуться усі необхідні служби та компоненти, можна перейти в веб-інтерфейс за URL-адресою: https://localhost:3443. Для авторизації використовується стандартна форма “логін/пароль” (задаються користувачем при встановленні).

Головне вікно додатка складається з таки хчастин – хедер (1), сайдбар (2) і дашборд (3):

Acunetix Vulnerability Web Scanner
Веб-інтерфейс Acunetix Vulnerability Web Scanner

Хедер (шапка) містить кнопку швидкого запуску сканування, посилання на довідку, сповіщення проєктів та статус користувача.

На Дашборді (робоча область) відображається статистика по проєктам.

Сайдбар (бокове меню) містить основі розділи додатку:

  • Overview – сторінка, яка відображається на дашборді по замовчуванню, містить загальну статистику по проєктам, яка включає список цілей і кількість знайдених вразливостей.
  • Discovery – додатковий сервіс Acunetix, призначений для пошуку по своїм активам. Підключається окремо і не є обов’язковим. По замовчуванню, відключений.
  • Targets – лістиг цілей (проєктів). Тут можна вилучати або додавати нові сайти, групувати, експортувати список проєктів. Щоб перейти у налаштування проєкту, достатньо просто клікнути по ньому.
  • Scans – лістинг сканувань. Тут можна запускати, зупиняти, вилучати, порівнювати сканування. Генерувати звіти. Експортувати в правила для WAF.
  • Vulnerabilities – лістинг знайдених вразливостей. Дозволяє керувати ризиками, створювати звіти, позначати виконаними або важливими. Відправляти в трекер проблем.
  • Reports – лістинг звітів, операції зі звітами.
  • Users – керування обліковими записами користувачів. Можна додати нового користувача в систему з правами доступу до проєктів.
  • Scan Profiles – керування профілями сканування. Можна створити власний, включивши тільки ті чи інші перевірки. Наприклад, тільки XSSi або SQLi тестування.
  • Network Scanner – налаштування мережевого сканера Acunetix. Вказується IP-адреса, порт та протокол сервера.
  • WAFs – панель керування правилами для файєрвола на основі знайдених вразливостей. Дозволяє інтегрувати Acunetix з WAF для автоматичного створення мережевих правих блокування.
  • Engines – пошукові двигуни Acunetix.
  • Excluded hours – планувальник запуску сканувань. Дозволяє вказати необхідні години для роботи сканера.
  • Proxy Settings – глобальні налаштування проксі.
  • Issue Trackers – трекер поставлених задач і проблем.
  • Settings – глобальні налаштування Acunetix. Керування підпискою та налаштування відправки звітів по SMTP.
  • About – інформація по поточній версії додатка та наявності оновлень.
ЧИТАЙТЕ ТАКОЖ:  Вимикаємо телеметрію Google

Сканування

Щоб розпочати сканування, необхідно додати нову ціль – Target. Це можна зробити перейшовши в сайдбар-меню й обравши пункт Targets -> Add Targets:

Acunetix Add Target

При створенні нового проєкту Acunetix запропонує ввести URL або IP-адресу цілі. Тут можна вказати або кореневий домен (Acunetix просканує повністю всю його структуру), або підпапку (Acunetix обмежиться лише її скануванням, включаючи усі дочірні підпапки та файли).

Опція Network Scans Only – означає перевіряти тільки мережевий периметр, зовнішні веб-інтерфейси скануватися не будуть.

Кнопка Import CSV дозволяє імпортувати CSV-файл списку цілей. Підійде для масового сканування.

Щоб продовжити, натискаємо Save і потрапляємо в деталізоване налаштування проєкту – Target Settings. Перед нами розкривається цілий комплекс вкладок з опціями:

Target settings Acunetix

  • Вкладка “Target Information”:
    • Project Name – вказати назву проєкту.
    • Business Ctitically – відповідає за рівень критичності сканування, можна обрати такі режими як: Low, Normal, High, Critical. Це дозволяє зосередити сканування на більш критичних або менш критичних елементах.
    • Default Scan Profile  – тип сканування, можна обрати: Full Scan, Critical/High Risk, Critical/High/Medium Risk, XSS, SQLi, Weak Passwords, Crawl Only, OWASP top 10, PCI Checks, SANS Top 25, Malware Scan. Кожен з них передбачає відповідність тій чи іншій методології. Можна також додати власний профіль, попередньо створивши його в розділі “Scan Profiles”.
    • Scan Speed  – швидкість сканування, доступні опції: Slower, Slow, Moderate, Fast. Наприклад, режим Slow встановлює 50 мілісекундну затримку між запитами і дозволяє 2 одночасних з’єднань. Ця опція може знадобитися для сканування сайтів, які містять фаєрволи, які обмежують високоінтенсивне сканування.
    • Continious Scannings – це сканування по розкладу, яке буде проводитися регулярно щодня в автоматичному режимі.
    • Site Login – тут можна вказати дані авторизації, якщо доступ до ресурсу обмежений. Сканер також протестує форму входу на брутфорс-перебор, але цю опцію можна відключити обравши “Do not test login forms”.
    • Business Login Recorder  – створення або імпорт спеціального макроса (сценарію) для виконання різноманітних автоматизованих дій на сайті, наприклад заповнення форм.
    • AcuSensor  – інтерактивний IAST модуль сканування, який задіює глибинну перевірку програмних компонентів досліджуваної системи: JAVA, PHP, NET, Node.js. Вимагає окремого ручного встановлення і конфігурації на стороні сервера.
  • Вкладка “Crawling”:
    • User Agent – вибір юзер-агента браузера, у списку доступні: Default, Google Chrome, Internet Explorer, Mozilla Firefox, Opera.
    • Case Sensitive Paths – дозволяє включити перевірку шляхів з чутливим регістром (верхній/нижній).
    • Limit Crawling to address and sub-directories only – обмежити краулінг адресою та субдиректоріями сайту. Тобто, субдомени враховуватися не будуть.
    • Exclude Paths – виключає додані вручну директорії.
    • Import Files / API Definitions – дозволяє імпортувати додаткові файли і заготовки для сканування API-інтерфейсів. Можна додати файли різнишх розширень (json, yaml, xml, har, js та інші), додати txt-файл зі списком URL-адрес для сканування або скрипти BurpSuite/Selenium.
  • Вкладка “HTTP”:
    • HTTP Authentication – автентифікація по протоколу HTTP.
    • Client Certificate – автентифікаія через клієнтський сертифікат.
    • Proxy Server – автентифікація через проксі-сервер. Вказується в форматі: localhost/XXX.
  • Вкладка “Advanced”:
    • Custom Headers – додати вручну додаткові HTTP-заголовки, які будуть використовуватися при скануванні і тестуванні. Це може бути корисно, якщо наприклад треба обійти той чи інший захист (Bypass WAF).
    • Custom Cookies – можна додати власні кукі.
    • Issue Tracker – створення та відстеження задач для розробників.
    • Allowed Hosts – додати додаткові ресурси, які будуть скануватися разом з основою ціллю.
    • Knowledge Base – включити або вимкнути використання вбудованої бази знань Acunetix, яка використовується для опису вразливостей та рекомендацій.
    • Excluded Hours – вказати години сканування, якщо включене по розкладу (див. вище “Continious Scanning”).
    • Scanning Engine – обрати додатковий механізм сканування.
    • Block requests to Ad services (recommended) – блокувати запити до рекламних ресурсів.
    • Debug scans for this target – вмикає журнал налагодження, для Linux – /home/acunetix/.acunetix/data/scans/, для Windows – C:\ProgramData\Acunetix\shared\scans.

Запуск сканування відбувається після натиснення кнопки “Scan” (попередньо бажано натиснути “Save”, щоб зберегти налаштування проєкту). Після цього з’явиться діалогове вікно, у якому необхідно обрати три завершальні опції:

  • Scan Profile – профіль сканування, доступні такі режими: Full Sсan, Critical/High Risk, Critical/High/Medium Risk, XSS, SQLi. Як можна зрозуміти з назв, кожен з них орієнтується на виявлення різних типів вразливостей, але режим Full Scan – враховує все.
  • Report – дозволяє вказати тип звіту.
  • Schedule – дозволяє обрати час сканування: Instant (запустити негайно), Future Scan (за розкладом), Recurrent Scan (регулярні повторні сканування за розкладом).
ЧИТАЙТЕ ТАКОЖ:  APT і Ransomware групи в деталях

Acunetix Scanning Options

Після натискання кнопки Create Scan розпочнеться довгоочікуваний процес сканування. Ми потрапляємо на сторінку сканування з відображенням перебігу подій:

Acunetix Project Page

Окрім загальної інформації по проєкту тут буде також кілька вкладок:

  • Scan Information  – загальна інформація про сканування;
  • Vulnerabilities  – виявлені вразливості та їх докладний опис;
  • Site Structure  –  структура просканованого сайту у вигляді дерева файлів та папок й відображення по ним знайдених вразливостей;
  • Scan Statistics  – статистика про перебіг сканування, кількість відправлених запитів, URL-адреси цілей та інше;
  • Events  –  основні події, журнали сканування, дата і час запуску та інше.

Acunetix Vulnerabilities tab

Підготовка звіту

Після того як сканування завершено, звіт стане доступним у розділі Reports і його можна буде завантажити в форматі PDF/HTML:

Acunetix Reports

Також можна повторно генерувати звіти будь-якого типу безпосередньо на лістингу або на сторінці проєкту, натиснувши кнопку  Generate Report.

Доступні такі варіанти звітів:

  • Standard Reports – Affected Items (звіт тільки про уражені об’єкти);
  • Comprehensive (комплексний класичний звіт);
  • Developer (звіт для розробників у вигляді ТЗ);
  • Executive Summary (звіт з підсумковими даними, резюме для керівників та менеджерів);
  • Quick (експрес-звіт);
  • Compliance Reports – CWE Top 25, DISA STIG, HIPAA, ISO 27001, NIST SP 800-53, OWASP Top 10, PCI-DSS, Sarbanes Oxley, WASC.

Звіт проєкту Acunetix елегантно оформлений відповідно до сучасних вимог та стандартів й містить детальну технічну інформацію, доповнену інфографікою. Виявлені ризики та вразливості підсвічуються різними кольорами, відповідно до їх ступеня критичності:

  • Зелений – зауваги інформативного характеру;
  • Блакитний – вразливості низького, інформаційного рівня;
  • Жовтий – вразливості середнього рівня;
  • Рожевий – вразливості високого рівня;
  • Червоний – вразливості критичного рівня.

Acunetix Comprehensive Report

У звіті до кожної знайденої вразливості наводяться такі подробиці як:

  • URL-адреса і деталі вразливого об’єкту;
  • Короткий опис вразливості;
  • HTTP-заголовки;
  • Вплив і значення;
  • Рекомендація щодо усунення вразливості;
  • Класифікація;
  • Посилання на джерела та документації.

Примітка: Отримані результати можуть варіюватися, в залежності від типу обраного звіту.

За потреби, на базі виявлених вразливостей, Acunetix може сформувати правила безпеки для популярних фаєрволів (WAF). Необхідно перейти в проєкт й натиснути “Export to”:

Як використовувати Acunetix з ротацією IP-адрес?

При проведенні аудитів або пентестів, IP-адреса скануючого комп’ютера може бути забанена файєрволом на стороні досліджуваного ресурсу і тоді процес сканування аварійно завершиться. Обійти цей захист можна з допомогою динамічного оновлення IP-адрес  – ротації. У такому випадку, кожен запит буде відправлятися з нової IP-адреси.

ЧИТАЙТЕ ТАКОЖ:  Встановлення і налаштування OWASP Amass в Linux

Реалізувати ротацію в Acunetix можна на вкладці Proxy Server, яка доступна в налаштуваннях цілі перед запуском сканування:

В якості проксі-сервера можна використати сторонній додаток, наприклад Burp Suite, OWASP Zap або Mubeng.

Ось приклад встановлення Mubeng для тестування і роздачі проксі:

wget https://github.com/kitabisa/mubeng/releases/download/v0.22.0/mubeng_0.22.0_linux_amd64
mv mubeng_0.22.0_linux_amd64 mubeng
chmod +x mubeng
cp mubeng /usr/local/bin
rm mubeng

Тестуємо проксі на доступність і всі робочі зберігаємо в окремий файл:

mubeng -f proxies.txt --check --output liveproxies.txt -t 2s

Пояснення до ключів:

  • -f – файл зі списком проксі, в форматі: https/http/socks5://X.X.X.X
  • –check – команда на перевірку проксі-серверів;
  • –only-cc XX – фільтрувати за вказаним регіоном;
  • -t – максимальний час затримки в секундах;
  • –output – файл для збереження списку протестованих робочих проксі;
  • -a – адреса ротаційного проксі, наприклад localhost:XXXX;
  • -v – вивід логів.

Отже, запускаємо ротаційний проксі:

mubeng -a localhost:8089 -r 10 -m random -f liveproxies.txt -v -o proxilog.txt

Тепер проксі-сервер доступний на локальному інтерфейсі і його можна задати у налаштуваннях цілі Acuentix.

Висновки

Acunetix Vulnerability Web Scanner  – це  професійний інструмент з безпеки веб-додатків Premium-класу. Такою кількістю фіч в одній коробці мало хто може похизуватися. Працювати з ним  –  одне задоволення. Тут  все інтуїтивно зрозуміло й доведено до автоматизму, а тому не складно розібратися.

Точність ідентифікації вразливостей, кількість, деталізованість та стиль звітів розкривають необмежений потенціал для дослідників. Сподобались також багатопоточність, швидкодія і простота сканера.

Обширна База знань допоможе в опануванні інструменту новачкам. А власна CVE-база вразливостей стане в пригоді аудиторам й пентестерам в ідентифікації та експлуатації знайдених вразливостей.

Звичайно, один Acunetix собою ніколи не замінить комплексний підхід, який складається з безлічі етапів, методик, інструментів.

Але це інструмент, котрий потрібно завжди мати під рукою, на рівні з Burp Suite.

Автор: © Konrad Ravenstone, KR. Laboratories Research

Konrad Ravenstone// про автора

Кібермольфар, хакер, лінуксоїд, дослідник безпеки в KR. Labs Research

Сподобалася стаття? Поділитися в соцмережах:
KR. Labs Research
Рекомендоване:
На авансцені онлайн-месенджерів, здається, знову розгортається боротьба за пальму першості.…