KamoCRM

Відкриваємо внутрішню API СМС-template VOIPService, і ніколи не пересилайте власний X-Internal-Auth

FixAPIService
Shipped
23 вересня 2026 р. о 10:24 UTC
Author
Kamo
Commit
8950a17

Два пов'язані проміжки в тому ж довірі крайові. /api/voip/sms/templates/** було передано оптом /api/voip/** дикихкарт. VOIPServices ВнутрішнійAuthFilter охоронці, які префіксують (і /api/bulktext/send) з загальним секретом X-Internal-Auth, і SmsTemplateService довіряє орг id, що здійснюється в органі замовлення один раз Перевірка переходів - немає подальшої перевірки. Що зробив внутрішня поверхнева інтернет-реклама, з єдиним загальним секретом, як Єдине, що стоїть між дивинкою та кожним повідомленням шаблони. Додано картографування карвера, той же механізм вже використовується для /api/voip/calls/* та /api/voip/recordings/** над ним: більш специфічний ніж дикакарта, тому вона виграє незалежно від замовлення декларації, і повертає 404 замість переадресації. kamo-internal дзвінки нічого під цим шлях сьогодні (підтверджений проти походження/голова), тому нічого законного використання це шлях до його виходу. Окремо: InboundHeaders ніколи не смугастий X-Internal-Auth, тому клієнт що здогадували або витікали спільний секрет може їздити його через вперед (), переадресуватиВебок() або переадресуCallback() прямо в минулому якийсь час служби ВнутрішнійAuthFilter був на іншому кінці. До IDENTITY HEADERS - твердження привілеїв ("Я довіржена внутрішня інфраструктура") таким чином, що існуючі записи свідчать про ідентичність, і скидання його безпечно по конструкції: кожен контролер в цій службі, що законно діє як внутрішній дзвоник (ПублічнийChatController, PublicApiController, Статус на сервери VoipCallEventController, PublicChatKeyResolver) будує свій вихід головки з нуля і встановлює цей сервіс OWN налаштований секрет -- Ніяких з них називають InboundHeaders.copyInto, тому ніхто не впливає. Про нас в'їзд ширше, ніж стрім-ідентифікатором Traefik, який ще не смужка її на краю теж; незважаючи на те, що як слідкувати за klusterservices замість того, щоб здогадатися про зміну крос-репо. VoipSmsTemplatesCarveOutTest охоплює картографію та її 404 поведінку. Ідентифікатор Випробувано також існуюча муфта надсилає вгаданий X-Internal-Auth на кожному випадку він вже приводить (біллінг, Назви, насипнийтекстовий сайт, OAuth Callback, тому це покривається на кожен наступний шлях, який тип вправи, не тільки новий. Відновити будь-які зміни не вдається відповідного тесту.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing