Огляд
Сканер каже розробнику, що не так. Чому так сталося, він майже ніколи не пояснює. RansomLeak додає цей крок просто в pull request, поки код ще свіжий.
Є два безкоштовні способи, і обидва працюють без облікового запису RansomLeak:
- Читає алерти code scanning або будь-який файл SARIF
- Зіставляє кожну знахідку з уроком на 5-10 хвилин
- Публікує один коментар у pull request
- Лише ідентифікатори, без вихідного коду
Як це працює
-
Ваш сканер запускається на pull request. Для App це GitHub code scanning, для Action — файл SARIF від CodeQL, Semgrep, Trivy, Gitleaks чи подібного інструмента.
-
Кожна знахідка зіставляється за її CWE. Секрети й advisory залежностей зіставляються за типом сканера. Для SQL-інʼєкцій, XSS, path traversal, SSRF, захардкоджених секретів і вразливих залежностей є уроки.
-
RansomLeak додає один коментар до pull request із щонайбільше пʼятьма уроками, по одному на тип проблеми. Наступні запуски редагують той самий коментар.
-
Якщо встановлено App, завершений урок позначається в коментарі. App також встановлює перевірку RansomLeak Secure Coding, яка ніколи не падає.
Pull request без уроків не повідомляє цю перевірку, тож не робіть її обовʼязковою. Виправлення коду не прибирає урок із коментаря.
GitHub App чи GitHub Action
| GitHub App | GitHub Action | |
|---|---|---|
| Читає | Алерти GitHub code scanning | Файл SARIF від сканера |
| Приватні репозиторії | Лише з GitHub Code Security | Так, без Code Security |
| Позначає завершені уроки | Так | Лише якщо встановлено й App |
GitHub App не потребує налаштування:
встановіть його
на потрібні репозиторії.
GitHub Action
(код на GitHub) додайте після кроку, що пише файл SARIF. Workflow потрібні дозволи pull-requests: write і id-token: write, секрет додавати не треба:
- uses: ransomleak/secure-coding-action@v1
with:
sarif: results.sarif Усі кроки — в інструкції з налаштування GitHub.
Дозволи та обробка даних
Action підтверджує, у якому репозиторії він працює, через OIDC-токен GitHub, тож реєструватися не треба. До RansomLeak доходять лише ідентифікатори.
| Дані | Як обробляються |
|---|---|
| Знахідки | Назва сканера, CWE, чи є правило advisory CVE або GHSA, і номер pull request. Без вихідного коду, шляхів до файлів і фрагментів. |
| Розробник | Записів про окремих розробників ми не зберігаємо. |
| Встановлення | Видалення App видаляє його запис. Для Action зберігається лише числовий id облікового запису GitHub, який видаляємо на запит. |
Як RansomLeak обробляє дані, дивіться в політиці конфіденційності і на сторінці безпеки та відповідності.
Поширені запитання
Чи інтегрується RansomLeak із GitHub?
Так. RansomLeak пропонує безкоштовний GitHub App «RansomLeak Secure Coding» і безкоштовний GitHub Action. Коли code scanning або ваш сканер позначає слабкість у pull request, коментар у ньому дає посилання на підібраний урок безпечного кодування на 5-10 хвилин. Обліковий запис RansomLeak не потрібен.
З якими сканерами він працює?
App читає алерти GitHub code scanning, наприклад від CodeQL. Action читає файл SARIF, тож працює з CodeQL, Semgrep, Trivy, Gitleaks та іншими інструментами, чиї правила мають CWE, CVE або GHSA, а також зі сканерами секретів.
Що обрати: App чи Action?
Обирайте App, якщо в репозиторії вже працює code scanning: публічні репозиторії або приватні з GitHub Code Security. Action підходить для приватних репозиторіїв без Code Security і для будь-якого сканера, що пише SARIF. Встановіть ще й App, якщо хочете бачити позначки завершених уроків у pull request.
Чи блокує він злиття або збірку?
Ні. App встановлює перевірку RansomLeak Secure Coding: нейтральну, поки уроки відкриті, і успішну, коли їх завершено. Вона ніколи не падає. Action теж ніколи не валить ваш workflow: у разі збою він пише попередження й продовжує роботу.
Які дані отримує RansomLeak?
Лише ідентифікатори: назву сканера, CWE правил, що дали результат, чи є правило advisory CVE або GHSA, і номер pull request. Вихідний код, шляхи до файлів і фрагменти не передаються, а записів про окремих розробників RansomLeak не зберігає.
Чи доводить позначка, хто пройшов навчання?
Ні. Посилання на урок належить pull request, а не людині, тож завершити його може будь-хто з доступом до pull request. Сприймайте позначку як нагадування під час рев’ю, а не як доказ навчання конкретної особи.
Потрібна допомога?
Напишіть нам на support@ransomleak.com — і ми допоможемо підключити GitHub до вашого тенанта.