Що таке Fortify SCA і як його встановити?

Fortify Static Code Analyzer (SCA) аналізує вихідний код і точно визначає першопричину вразливості безпеки.

Сканування Fortify визначає пріоритетність найсерйозніших проблем і вказує, як розробникам їх виправити.

Аналізатор статичного коду Fortify

У Fortify Static Code Analyzer є різні аналізатори вразливостей, такі як буфер, вміст, контрольний потік, потік даних, семантичний, конфігураційний і структурний. Кожен із цих аналізаторів приймає різний вид правила, розробленого для надання інформації, необхідної для типу виконаного аналізу.

Fortify Static Code Analyzer містить такі компоненти;

  • Майстер сканування Fortify. Це інструмент, який пропонує варіанти запуску сценаріїв після або до аналізу.
  • Верстак аудиту. Це програма на основі графічного інтерфейсу користувача, яка організовує та керує аналізованими результатами.
  • Редактор спеціальних правил. Це інструмент, який дозволяє розробникам створювати та редагувати спеціальні правила для аналізу.
  • Плагін для IntelliJ і Android Studio. Цей плагін надає результати аналізу в IDE.
  • Плагін для Eclipse. Цей інструмент інтегровано з Eclipse і відображає результати в IDE.
  • Плагін Bamboo. Це плагін, який збирає результати Bamboo Job, який виконує аналіз.
  • Плагін Jenkins. Цей плагін збирає результати аналізу з Jenkins Job.

Особливості Fortify SCA

#1. Підтримує кілька мов

Деякі з мов, які підтримуються Fortify SCA: ABAP/BSP, ActionScript, ASP (з VBScript), COBOL, ColdFusion, Apex, ASP.NET, C# (.NET), C/C++, Classic, VB.NET, VBScript, CFML, Go, HTML, Java (включаючи Android ), JavaScript/AJAX, JSP, Kotlin, Visual Basic, MXML (Flex), Objective C/C++, PHP, PL/SQL, Python, Ruby, Swift, T-SQL і XML.

#2. Гнучкі варіанти розгортання

  • Fortify On-Prem дозволяє організації повністю контролювати всі аспекти Fortify SCA.
  • Fortify On Demand дозволяє розробникам працювати в середовищі програмного забезпечення як послуги.
  • Fortify Hosted дозволяє розробникам користуватися обома світами (On Demand і On-Prem) через ізольоване віртуальне середовище з повним контролем даних.

#3. Легко інтегрується з інструментами CI/CD

  • Розробники можуть легко інтегрувати Fortify SCA з основними IDE, такими як Visual Studio та Eclipse.
  • Розробники можуть контролювати різні дії, оскільки інструмент інтегрується з інструментами з відкритим кодом, такими як Sonatype, WhiteSource, Snyk і BlackDuck.
  • Ви також можете інтегрувати Fortify SCA з віддаленими сховищами коду, такими як Bitbucket і GitHub. Таким чином, інструмент може перевіряти код, переданий на такі платформи, на наявність вразливостей і надсилати звіти.

#4. Сповіщення в реальному часі

Вам не потрібно чекати, поки ви закінчите кодування, щоб виконати тести, оскільки Fortify SCA надає оновлення в реальному часі під час кодування. Інструмент містить аналізатори конфігурації та структурні аналізатори, створені для швидкості та ефективності, і допомагає створювати безпечні програми.

#5. Audit Assistant на основі машинного навчання

Аудит системи виконується швидко за допомогою Audit Assistant, який використовує алгоритми машинного навчання. Помічник визначає всі вразливості та розставляє їх за пріоритетністю на основі рівня достовірності. Таким чином організації можуть заощадити на витратах на аудит, оскільки інструмент створює звіти.

#6. Гнучкість

Користувачі можуть вибрати тип сканування, який вони хочуть провести, виходячи зі своїх потреб. Наприклад, якщо вам потрібні точні та детальні сканування, ви можете вибрати параметр комплексного сканування. Розробники також можуть вибрати опцію швидкого сканування, якщо хочуть, щоб виявлялися лише основні загрози.

Що робить Fortify SCA?

Fortify SCA виконує кілька ролей у типовій екосистемі розробки. Нижче наведено деякі з ролей;

Статичне тестування допомагає створювати кращий код

Статичне тестування безпеки додатків (SAST) допомагає виявити вразливі місця на ранніх стадіях розробки. На щастя, усунення більшості з цих вразливостей безпеки коштує недорого.

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

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

Fortify SCA використовує обширну базу знань правил безпечного кодування та кількох алгоритмів для аналізу вихідного коду програмного додатку на наявність вразливостей у безпеці. Цей підхід аналізує будь-який можливий шлях, яким можуть йти дані та виконання, щоб виявити вразливі місця та запропонувати шляхи усунення.

Завчасно виявляє проблеми безпеки

Fortify SCA імітує компілятор. Після сканування Fortify цей інструмент зчитує файли вихідного коду та перетворює їх у проміжну структуру, вдосконалену для аналізу безпеки.

Усі вразливості безпеки легко знайти в проміжному форматі. Інструмент постачається з механізмом аналізу, що складається з кількох спеціалізованих аналізаторів, які потім використовуватимуть безпечні правила кодування, щоб аналізувати, чи порушує код будь-які правила безпечного кодування.

Fortify SCA також поставляється з конструктором правил, якщо ви хочете розширити можливості статичного аналізу та включити власні правила. Результати в такій обстановці можна переглядати в різних форматах залежно від завдання та аудиторії.

Центр безпеки програмного забезпечення Fortify (SSC) допомагає керувати результатами

Fortify Software Security Center (SSC) — це централізоване сховище для керування, яке забезпечує видимість усієї програми безпеки додатків організації. За допомогою SSC користувачі можуть перевіряти, переглядати, визначати пріоритети та керувати зусиллями щодо усунення загроз безпеці.

Fortify SSC пропонує точний обсяг і картину стану безпеки додатків в організації. SSC знаходиться на центральному сервері, але отримує результати різних дій із тестування безпеки додатків, від аналізу в реальному часі, динамічного до статичного.

Який тип аналізу коду може виконувати Fortify SCA?

Під час аналізу коду підсилювальне сканування запозичує архітектуру згубних королівств. Це типи аналізу, які виконує Fortify SCA;

  • Перевірка та представлення вхідних даних – проблеми, пов’язані з перевіркою та представленням вхідних даних, виникають через альтернативне кодування, числові представлення та метасимволи. Прикладами таких проблем є «переповнення буфера», атаки «міжсайтового сценарію» та «впровадження SQL», які виникають, коли користувачі довіряють введеним даних.
  • Зловживання API. Абонент, який не виконує умови закінчення контракту, є найпоширенішим видом зловживання API.
  • Функції безпеки. Цей тест розрізняє безпеку програмного забезпечення та програмне забезпечення безпеки. Аналіз буде зосереджений на питаннях автентифікації, керування привілеями, контролю доступу, конфіденційності та криптографії.
  • Час і держава. Комп’ютери можуть дуже швидко перемикатися між різними завданнями. Аналіз часу та стану шукає дефекти, що виникають через неочікувану взаємодію між потоками, інформацією, процесами та часом.
  • Помилки. Fortify SCA перевірить, чи помилки не надають занадто багато інформації потенційним зловмисникам.
  • Якість коду. Низька якість коду зазвичай призводить до непередбачуваної поведінки. Однак у зловмисників може бути шанс маніпулювати програмою на свою користь, якщо вони натраплять на погано написаний код.
  • Інкапсуляція. Це процес встановлення міцних кордонів. Такий аналіз може означати розрізнення підтверджених і неперевірених даних.

Завантажте та встановіть Fortify SCA

Перед початком процесу встановлення ви повинні;

  • Перевірте системні вимоги з офіційної документації
  • Отримайте файл ліцензії Fortify. Виберіть свій пакет на сторінці завантажень Microfocus. Знайдіть Fortify Static Code Analyzer, створіть обліковий запис і отримайте файл ліцензії Fortify.

  • Переконайтеся, що у вас встановлено Visual Studio Code або інший підтримуваний редактор коду

Як встановити на Windows

Fortify_SCA_and_Apps_<version>_windows_x64.exe

NB: – це версія випуску програмного забезпечення

  • Натисніть Далі після прийняття ліцензійної угоди.
  • Виберіть місце встановлення Fortify Static Code Analyzer і натисніть «Далі».
  • Виберіть компоненти, які потрібно встановити, і натисніть «Далі».
  • Укажіть користувачів, якщо ви встановлюєте розширення для Visual Studio 2015 або 2017.
  • Натисніть «Далі», вказавши шлях до файлу fortify.license.
  • Укажіть параметри, необхідні для оновлення вмісту безпеки. Ви можете використовувати сервер оновлення Fortify Rulepack, вказавши URL-адресу https://update.fortify.com. Натисніть Далі.
  • Укажіть, чи бажаєте ви встановити зразок вихідного коду. Натисніть Далі.
  • Натисніть «Далі», щоб інсталювати Fortify SCA та програми.
  • Натисніть «Оновити вміст безпеки після інсталяції», а потім «Готово» після завершення інсталяції.

Як встановити на Linux

Ви можете виконати ті самі дії, щоб інсталювати Fortify SCA на системі на базі Linux. Однак на першому кроці запустіть це як файл інсталятора;

Fortify_SCA_and_Apps__linux_x64.run

Ви також можете встановити Fortify SCA за допомогою командного рядка.

Відкрийте термінал і виконайте цю команду

./Fortify_SCA_and_Apps__linux_x64.run --mode text

Дотримуйтесь усіх підказок у командному рядку, доки не завершите процес встановлення.

Як запустити сканування Fortify

Після завершення встановлення настав час налаштувати інструмент для аналізу безпеки.

  • Перейдіть до каталогу встановлення та перейдіть до папки bin за допомогою командного рядка.
  • Введіть scapostinstall. Потім ви можете ввести s, щоб відобразити налаштування.
  • Налаштуйте локаль за допомогою цих команд;

Введіть 2, щоб вибрати Налаштування.

Введіть 1, щоб вибрати Загальне.

Введіть 1, щоб вибрати мову

Для мови введіть English: en, щоб вибрати мову як англійську.

  • Налаштувати оновлення вмісту безпеки. Введіть 2, щоб вибрати «Параметри», а потім знову введіть 2, щоб вибрати «Зміцнити оновлення». Тепер ви можете використовувати сервер оновлення Fortify Rulepack, вказавши URL-адресу https://update.fortify.com.
  • Введіть sourceanalyzer, щоб перевірити, чи інструмент повністю встановлено.

Fortify SCA тепер працюватиме у фоновому режимі та перевірятиме весь ваш код на наявність уразливостей.

Підведенню

В епоху Інтернету почастішали випадки злому систем і компрометації даних. На щастя, тепер у нас є такі інструменти, як Fortify Static Code Analyzer, який може виявляти загрози безпеці під час написання коду, надсилати сповіщення та давати рекомендації щодо обробки таких загроз. Fortify SCA може підвищити продуктивність і скоротити експлуатаційні витрати при використанні з іншими інструментами.

Ви також можете ознайомитися з аналізом складу програмного забезпечення (SCA), щоб покращити безпеку своєї програми.