Убираем каналы рунами – это задача, с которой сталкиваются администраторы
сообществ в Discord, Telegram, Slack и других платформах. Рунические символы часто
используются в спаме, фишинговых атаках или просто для того, чтобы скрыть истинное
назначение канала. В этой статье мы разберём, почему такие каналы нежелательны,
как их обнаружить и какие способы существуют для их безопасного удаления;
Что такое «руны» в названиях каналов?
Под «рунами» обычно понимаются символы древних алфавитов (скандинавские, готские,
англосаксонские) или их стилизованные копии, которые выглядят как набор
необычных знаков. Примеры:
- ᚠᚢᚦᚨ – старший Футарк
- 𝔉𝔬𝔬𝔟𝔞𝔯 – готический шрифт
- 🜂🜄🜁 – алхимические руны в эмодзи
История и современное использование
Изначально руны использовались в Скандинавии и Германских племенах как
письменность. В интернете они стали популярны в качестве «тайного» или «мистического»
оформления. На платформах общения такие символы часто применяются для:
- Обхода автоматических фильтров.
- Создания «кликбейтов» и привлечения внимания.
- Сокрытия названия канала от обычных поисков.
Почему каналы с рунами могут быть проблемой?
Наличие рунических названий в каналах несёт несколько рисков:
- Спам и фишинг. Такие каналы часто создаются ботами‑спамерами.
- Трудности модерации. Рунические символы могут не распознаваться
обычными фильтрами. - Снижение доверия. Пользователи могут воспринимать их как
подозрительные. - Проблемы с SEO и индексацией. Поисковые системы могут игнорировать
такие названия, что ухудшает навигацию по серверу. - Нарушение правил платформы. Некоторые сервисы запрещают
использование нелатинских символов в названиях.
Как обнаружить каналы с рунами?
3.1 Ручной поиск
Если у вас небольшое сообщество, достаточно пройтись по списку каналов и
обратить внимание на названия, содержащие «необычные» символы. В Discord это
делается в Server Settings → Channels, в Telegram – через управление
чатом.
3.2 Автоматическое сканирование
Для больших серверов рекомендуется использовать скрипты или ботов, которые
производят поиск по регулярным выражениям.
import re
import discord
from discord.ext import commands
intents = discord.Intents.default
intents.guilds = True
bot = commands.Bot(command_prefix='!', intents=intents)
RUNE_REGEX = re.compile(r'[^ -]')
@bot.event
async def on_ready:
print(f'Logged in as {bot.user}')
for guild in bot.guilds:
for channel in guild.channels:
if isinstance(channel, discord.TextChannel) and RUNE_REGEX.search(channel.name):
print(f'Found rune channel: {channel.name} (ID: {channel.id})')
# Можно сразу удалить, если есть права
# await channel.delete(reason='Удалён рунический канал')
await bot.close
bot.run('YOUR_BOT_TOKEN')
Аналогичный подход работает и в Telegram с помощью библиотеки Telethon:
import re
from telethon import TelegramClient
api_id = 123456
api_hash = 'your_api_hash'
client = TelegramClient('session_name', api_id, api_hash)
RUNE_REGEX = re.compile(r'[^ -]')
async def main:
async for dialog in client.iter_dialogs:
if RUNE_REGEX.search(dialog.name):
print(f'Rune channel: {dialog.name} (ID: {dialog.id})')
# await client.delete_dialog(dialog.id)
await client.start
await main
await client.disconnect
Способы удаления каналов
4.1 Вручную
- Discord: нажмите правой кнопкой мыши на канал → Delete Channel.
Убедитесь, что у вас есть права Manage Channels. - Telegram: откройте информацию о чате → Delete and Leave.
В случае супергруппы необходимо быть администратором. - Slack: перейдите в Settings & administration → Manage channels,
выберите нужный и нажмите Archive.
4.2 С помощью ботов
Создайте простого бота, который будет автоматически удалять каналы, найденные
по регулярному выражению. Пример кода уже был приведён выше. Главное – убедиться,
что у бота есть соответствующие права (Manage Channels в Discord,
Delete Channels в Telegram).
4.3 Через админ‑панель платформы
Некоторые сервисы (например, Microsoft Teams) позволяют массово удалять
каналы через веб‑интерфейс. В этом случае достаточно отфильтровать список
по Symbol и выполнить массовое действие.
Лучшие практики профилактики
- Установить правила именования. Запретите использование символов
за пределами латинского алфавита и цифр. - Включить автоматические фильтры. В Discord можно добавить
AutoMod с правилом «Block non‑ASCII characters». В Telegram
– использовать BotFather и писать собственного фильтра. - Регулярные аудиты. Запускайте сканирование хотя бы раз в месяц.
- Обучайте модераторов. Покажите, как распознавать рунические
названия и как правильно реагировать. - Логируйте события. Храните журнал удаления каналов – это поможет
отследить возможные атаки.
Примеры готовых скриптов
6.1 Discord Bot «RuneCleaner» (Node.js)
// runeCleaner.js
const { Client, Intents } = require('discord.js');
const client = new Client({ intents: [Intents.FLAGS.GUILDS] });
const RUNE_REGEX = /[^ -]/g;
client.once('ready', => {
console.log(`Logged in as ${client.user.tag}`);
client.guilds.cache.forEach(guild => {
guild.channels.cache.forEach(channel => {
if (RUNE_REGEX.test(channel.name)) {
console.log(`Deleting ${channel.name} in ${guild.name}`);
channel.delete('Рунический канал')
.catch(console.error);
}
});
});});
client.login('YOUR_BOT_TOKEN');
6.2 Telegram Bot «RuneWatcher» (Python + pyTelegramBotAPI)
import telebot, re
API_TOKEN = 'YOUR_TELEGRAM_BOT_TOKEN'
bot = telebot.TeleBot(API_TOKEN)
RUNE_REGEX = re.compile(r'[^ -]')
@bot.message_handler(commands=['scan'])
def scan(message):
# Получаем список чатов, где бот админ
# (Для простоты пример подразумевает, что бот уже в нужных чатах)
# Здесь нужно реализовать API‑запрос к getChatAdministrators и т.д.
bot.reply_to(message, "Сканирование пока не реализовано.")
bot.polling
Часто задаваемые вопросы
- Можно ли полностью запретить рунические символы?
Да. В Discord это делается через AutoMod → Keyword Filter → Block
non‑ASCII characters. В Telegram можно настроить Bot API с
фильтрацией сообщений. - Удаление канала приводит к потере данных?
В большинстве платформ удаление канала безвозвратно удаляет всё содержимое.
Если нужны архивы, сначала экспортируйте их (Discord – Server Settings →
Export Data). - Как восстановить случайно удалённый канал?
В Discord и Telegram восстановление невозможно. Нужно создать новый канал
и перенести нужные сообщения вручную или с помощью ботов‑медиа‑мейджеров. - Работают ли регулярные выражения для всех рунических алфавитов?
Да, потому что они ищут любые символы за пределами диапазона ASCII
(