1Zabezpečení je návyk, ne nastavení
Neexistuje žádné zaškrtávací políčko, které bota trvale zabezpečí. Ochraňte token, udělte nejnižší oprávnění, které práci zvládne, sledujte, co bot dělá, a udržujte okruh lidí s přístupem malý. Nic z toho není efektní a všechno z toho je rozdílem mezi klidným rokem a velmi špatným odpolednem.
Zabudujte to do své rutiny — přezkoumávejte přístup, kontrolujte uniklá tajemství, mrkněte na logy — a zabezpečení přestane být poplachem a stane se prostě tím, jak věci vedete.
2Váš bot je větší útočnou plochou, než si myslíte
Telegram bot, který chrání skupinu, zpracovává platby nebo drží administrátorská práva, je cenný cíl. Když je kompromitován, útočník vaše členy nejen spamuje — může jednat jako vy: banovat lidi, zveřejňovat podvody z důvěryhodného účtu nebo tiše odčerpávat data. Zabezpečení není funkce, kterou přidáte později; je to základ, na kterém stojí všechno ostatní.
Dobrá zpráva je, že většina průniků do botů se scvrkne na hrstku chyb, kterým se dá vyhnout. Tento kontrolní seznam pokrývá postupy, které by měl mít zavedené každý admin — od tokenu samotného přes oprávnění a monitorování až po lidi s přístupem.
3Zacházejte s tokenem bota jako s heslem — protože jím je
Token vašeho bota je jediné tajemství, které bota ovládá. Kdokoli, kdo ho má, ho může kompletně napodobit. Nejčastějším průnikem není sofistikovaný hack — je to token náhodně nahraný do veřejného repozitáře, vložený do chatu nebo ponechaný na snímku obrazovky.
Vaší záchrannou sítí je rotace. Když token unikne, jeho opětovné vygenerování přes BotFather okamžitě zneplatní ten starý. Vědomí, že umíte token čistě zrotovat — a že jste to jednou nanečisto vyzkoušeli — promění potenciální katastrofu v pětiminutovou opravu.
- Nikdy token nezapisujte natvrdo do kódu; načtěte ho z proměnných prostředí nebo správce tajemství.
- Držte ho mimo verzovací systém — zkontrolujte historii gitu, ne jen aktuální soubor.
- Okamžitě ho zrotujte přes BotFather, pokud kdy unikne, a předpokládejte, že únik je trvalý.
- Omezte, kdo může vidět produkční tajemství; méně lidí, méně úniků.
4Nejnižší oprávnění: dejte botovi jen to, co potřebuje
Bot by měl držet minimum oprávnění potřebných ke své práci a nic víc. Je lákavé udělat z každého bota plného administrátora „pro jistotu“, ale to je naopak — široká práva znamenají, že jediná kompromitace se stane úplnou kontrolou nad vaší skupinou.
Stejný princip platí pro lidi za botem. Omezte, kdo může nasazovat kód, měnit nastavení nebo číst logy. Většina incidentů typu „bota hackli“ je ve skutečnosti „někoho s přístupem dostali na phishing“ — nejnižší oprávnění tak jako tak omezí škody.
- Udělte jen ta konkrétní administrátorská práva, která bot skutečně používá (mazání zpráv, banování uživatelů atd.).
- Nepoužívejte jednoho všemocného bota napříč mnoha skupinami; na dosahu zásahu záleží.
- Pravidelně přezkoumávejte a ořezávejte oprávnění, jak se role bota mění.
5Sledujte ho: logování, upozornění a anomálie
Nemůžete reagovat na to, co nevidíte. Bot běžící tiše na pozadí může být zneužíván celé hodiny, než si někdo všimne příznaků. Základní pozorovatelnost — logy toho, co bot dělá, a upozornění, když něco vypadá špatně — promění pomalu doutnající incident v včasné varování.
Rozhodněte se předem, jak vypadá „nenormální“: náhlý nárůst banů, zprávy odeslané ve čtyři ráno nebo akce z nečekaného zdroje. Nástroje, které zobrazují aktivitu bota a skupiny v reálném čase, to činí praktickým bez budování vlastní pipeline — Telm například ukazuje, co se detekuje a na co se zasahuje, jak se to děje, takže neobvyklé chování je viditelné okamžitě, a ne zpětně.
- Logujte akce bota a uchovávejte logy tam, kam se skutečně podíváte.
- Upozorňujte na anomálie — nárůsty, podivné hodiny, nečekané zdroje.
- Mějte plán pro incident: jak rychle bota vypnout a zrotovat token.