ШІ-інструменти та скрипти
Перевірка безпеки обробників вебхуків
Перевіряє ендпоінти вебхуків для GitHub, Shopify, Twilio, Paddle, Clerk, Razorpay та ще 9 провайдерів: відсутні перевірки підпису, секрети в коді, перевірки, що пропускають запит у разі збою, порівняння через ==, HMAC за розібраним JSON, повтори та дубльовані події.
Що ви отримаєте: 1 файл · 50.11 KB · ZIP
Переглянути варіанти купівліОпис товару
Маршрут, який читає X-Shopify-Topic і відправляє замовлення, але ніколи не перевіряє X-Shopify-Hmac-Sha256, відправляє замовлення будь-кому, хто знайде URL. Те саме робить HMAC, обчислений за JSON.stringify(req.body), забутий після тестування twilio.webhook({ validate: false }) або перевірка, яка повертає true, коли заголовка підпису немає. Ця навичка знаходить такі помилки та ще сім інших помилок у вебхуках до того, як ендпоінт запрацює в продакшені, і пояснює, як виправити кожну.
Ваш агент запускає сканер для коду вебхуків на JavaScript і TypeScript (Express, Next.js, NestJS, Hono, Koa, Fastify), Python (Flask, FastAPI, Django, AWS Lambda), PHP (Laravel), Ruby (Rails, Sinatra) і Go. Він знаходить кожен маршрут і вважає POST-маршрут приймачем GitHub, GitLab, Shopify, Twilio, Paddle, Lemon Squeezy, Polar, Svix, Clerk, Resend, SendGrid, Mailgun, Square, Razorpay або Coinbase, якщо той читає заголовки чи корисне навантаження подій цього провайдера. Він перевіряє кожен маршрут окремо та знає функції перевірки кожного провайдера (octokit verify, authenticate.webhook, twilio.webhook(), paddle.webhooks.unmarshal, validateEvent, verifyWebhook, Svix Webhook.verify та інші), тому перевірені маршрути, а також маршрути, захищені перевірним middleware, декоратором чи допоміжною функцією в іншому просканованому файлі (Express app.use, обгортки обробників у Go, middleware у Next.js, Rails before_action і Rack::TwilioWebhookAuthentication), не потрапляють у звіт. Він пропускає коментарі й тестові файли та ніколи не запускає ваш код. Результат: BLOCK, REVIEW або NOT FLAGGED, із зазначенням файлу, рядка, причини та безпечнішого підходу. Секрети ніколи не виводяться.
Що перевіряється
BLOCK (виправити до випуску)
- W01: POST-маршрути, які читають заголовки чи корисне навантаження вебхуків провайдера без перевірки підпису
- W02: секрети підпису вебхуків, ключі провайдерів і токени GitLab, прописані в коді
- W03: перевірку вимкнено або вона пропускає запит у разі збою (validate: false, octokit receive(), пропуск запиту, коли підпису чи секрету немає, відхилення лише за наявності підпису або продовження роботи після невдалої перевірки)
REVIEW (перевірити перед релізом)
- W11: підписи порівнюються через ==, ===, strcmp або bytes.Equal замість порівняння за сталий час
- W12: HMAC обчислюється за повторно серіалізованим JSON замість сирого тіла запиту
- W13: власноруч написані перевірки підписів із часовою міткою без часового вікна (повторне відтворення)
- W14: події замовлень і платежів обробляються без перевірки ідентифікатора події чи дублікатів
- W15: застарілий заголовок X-Hub-Signature із SHA-1 від GitHub або застарілий заголовок підпису Square
- W16: секрети вебхуків читаються з оточення з жорстко заданим резервним значенням
- W17: перевірка, яку може вимкнути налаштування оточення або прапорець SKIP_ чи DISABLE_
Що входить до комплекту
- Сканер (Python 3.9+, лише стандартна бібліотека)
- Посібник із правил із причиною, безпечнішим підходом і посиланням на документацію провайдера для кожного правила
- Ризикований і безпечний приклади проєктів, а також реальний звіт сканера для ризикованого
Обмеження
Сканер читає код у тому вигляді, у якому його написано: перевірку, яку виконує API-шлюз, проксі чи код поза сканованою папкою, він не бачить, а значення, зібрані з кількох файлів, не відстежує. Маршрут, у шляху якого лише згадано провайдера, не вважається приймачем вебхуків. Вебхуки Stripe не охоплюються. NOT FLAGGED не є гарантією.
Вміст
Один ZIP-файл із 19 файлами: SKILL.md, сканер у scripts/ (6 файлів Python), references/rules.md (кожне правило з причиною та безпечнішим підходом) і examples/ (10 файлів прикладів плюс report.md, реальний результат роботи сканера на ризикованому прикладі).
Як користуватися: Це навичка для агента: папка з файлом SKILL.md і скриптами Python, які може запускати ШІ-агент для програмування, наприклад Claude Code, Cursor або Codex CLI. Розпакуйте архів у папку навичок вашого агента (для Claude Code: ~/.claude/skills/), а потім попросіть агента перевірити ваш проєкт. Скрипти також працюють самостійно з Python 3.9 або новішим, нічого встановлювати не потрібно. Вони лише читають ваші файли: без доступу до мережі, і нічого нікуди не надсилається.
Що ви отримаєте
1 файл · 50.11 KB
- webhook-handler-safety-check-1.0.0.zipZIP · 50.11 KB
ШІ-інструменти та скрипти
Перевірка безпеки обробників вебхуків
Перевіряє ендпоінти вебхуків для GitHub, Shopify, Twilio, Paddle, Clerk, Razorpay та ще 9 провайдерів: відсутні перевірки підпису, секрети в коді, перевірки, що пропускають запит у разі збою, порівняння через ==, HMAC за розібраним JSON, повтори та дубльовані події.
Getly відкрив завантажені файли й не знайшов нічого, що завадило б їх відкрити. Це не антивірусна перевірка і не оцінка якості.
Теги
Поширені запитання
Чи отримаю я доступ одразу?
Так. Це цифровий товар: ви можете завантажити його одразу після оплати, просто зі своєї бібліотеки.
Чи можна використовувати його в комерційних проєктах?
Так. Комерційне використання дозволено: користуйтеся в особистому бізнесі та в тому, що продаєте. Ви не можете перепродавати чи поширювати сам файл.
Яка у вас політика повернення коштів?
Ви можете запросити повернення коштів протягом 30 дн. Якщо щось не так, подайте запит зі свого замовлення, і команда Getly його розгляне.
Які формати та розміри файлів я отримаю?
Ви завантажите 1 файл - ZIP - загалом 50.11 KB.
Чи отримую я безкоштовні оновлення?
Так: коли продавець випускає нову версію, ви можете повторно завантажити свіжі файли зі своєї бібліотеки безкоштовно. Останні оновлення дивіться в журналі змін.
Ціна
$5.00



