SpamBlocker vs стандартный определитель номера: стоит ли переходить на open-source блокировщик

159
SpamBlocker vs стандартный определитель номера: стоит ли переходить на open-source блокировщик

SpamBlocker – приложение с исходным кодом для фильтрации нежелательных звонков и SMS на устройствах с Android 10 и новее. Программа не заменяет стандартные приложения «Телефон» и «Сообщения». Для звонков она работает как системная служба определения номера и проверяет вызовы, а для SMS анализирует входящие сообщения и показывает собственные уведомления.

Репозиторий проекта набрал около 1,7 тыс. звёзд и 84 форка, история содержит более 1100 коммитов. Показатели отражают интерес сообщества, но не заменяют аудит безопасности.

SpamBlocker распространяется по лицензии MIT. Она разрешает использовать, изменять и распространять код, включая применение в коммерческих продуктах. При распространении нужно сохранить уведомление об авторских правах и текст лицензии. Авторы не предоставляют гарантий.

Что представляет собой SpamBlocker

SpamBlocker построен не вокруг единого облачного списка номеров, а вокруг конструктора правил. Пользователь задаёт условия, по которым звонок или сообщение разрешается, заглушается либо блокируется. Фильтры учитывают контакты, историю общения, текст SMS, время, календарь, оператора, регион и внешние базы.

Подход даёт больше контроля, чем простой переключатель «блокировать спам», но требует аккуратной настройки. Ошибка в регулярном выражении или приоритетах способна отсечь полезный вызов. Полный перечень доступных условий приведён в описании проекта.

Функции инструмента

  • Контакты. Работа с адресной книгой, группами и диапазонами с общим префиксом.
  • Регулярные выражения. Проверка телефонного номера и текста SMS по собственным шаблонам.
  • STIR/SHAKEN. Учёт переданного оператором результата проверки подлинности номера.
  • История. Разрешение ранее набранных, принятых или повторно звонящих номеров.
  • Исключения. Временный пропуск звонка после уведомления, SMS или вызова экстренной службы.
  • SMS Bomb. Подавление потока однотипных сообщений с одноразовыми кодами.
  • Расписание. Смена правил по времени, календарю и во время видеоконференций.
  • Базы и API. Импорт списков, сетевые проверки и отправка жалоб.
  • Регион. Фильтрация по стране, местности и оператору.

Как работает фильтрация

Как работает фильтрация спам-звонков

При входящем вызове Android обращается к службе CallScreeningService. SpamBlocker получает доступные сведения о звонке, проверяет активные правила и возвращает системе решение. Официальная документация описывает тот же механизм Android для определения и отклонения подозрительных вызовов.

Каждое правило получает числовой приоритет. Чем больше значение, тем выше правило в цепочке. Например, разрешение контактов с приоритетом 10 перекрывает обычную блокировку с приоритетом 0. Режиму встречи можно назначить 20, чтобы во время конференции отклонялись даже некоторые разрешённые номера.

Одинаковый приоритет у противоположных правил может дать непредсказуемый результат. Настройки лучше проверять встроенным тестом и контрольными звонками. Для звонков интерфейс не обязан оставаться открытым. Расписания и SMS-уведомления зависят от фоновой работы, поэтому некоторые оболочки потребуют разрешить автозапуск и снять ограничения батареи.

Как обрабатываются SMS

В основном режиме SpamBlocker не становится полноценным SMS-клиентом. Стандартное приложение продолжает отправлять и хранить сообщения, а SpamBlocker проверяет входящие SMS и показывает уведомления. Чтобы избежать дублей, уведомления штатного клиента нужно отключить вручную. В журнале блокировщика остаются только полученные сообщения.

Экспериментальный режим SMS Screening Provider возвращает совместимому клиенту ответ «разрешить» или «заблокировать». Режим работает только с программами, которые поддерживают соответствующий протокол.

Конфиденциальность и разрешения

Согласно политике конфиденциальности, локальные функции не собирают аналитику и не передают данные. В приложении нет рекламных библиотек и трекеров. Правила, журналы и загруженные базы хранятся на устройстве.

Интернет нужен, чтобы загружать базы, мгновенно проверять номер и отправлять жалобы. Внешний сервер при запросе может увидеть IP-адрес, номер с кодом страны, время обращения, HTTP-заголовки и сведения об операционной системе. Фактический набор сохранённых данных зависит от выбранного сервиса.

Разрешения привязаны к функциям. Контакты нужны для адресной книги, журнал вызовов и SMS для истории, доступ к уведомлениям для Push Alert, календарь для расписаний, статистика приложений для Recent Apps. Полный перечень опубликован в списке разрешений.

Обычная и офлайн-сборка

Сеть можно запретить в Android. Разработчик также публикует APK без разрешения INTERNET среди релизов GitHub. Такая сборка не загружает базы, не выполняет мгновенные запросы и не отправляет жалобы.

Воспроизводимая сборка позволяет повторно скомпилировать опубликованный код и получить такой же APK. Совпадение помогает подтвердить, что после компиляции в файл не добавили скрытые компоненты.

F-Droid публикует историю проверок основной версии. Для APK без сетевого разрешения такая проверка не указана. Отсутствие проверки не говорит о вредоносном коде, но не подтверждает побайтовое совпадение с самостоятельно собранной копией.

Как установить и запустить

  1. Проверьте версию системы. Требуется Android 10 или новее.
  2. Установите приложение через F-Droid, Obtainium либо официальный GitHub.
  3. При первом запуске назначьте SpamBlocker службой определения номера и фильтрации звонков.
  4. Выдайте разрешения только для нужных функций.
  5. Сначала создайте исключения для контактов, ранее набранных номеров и экстренных случаев.
  6. Добавьте блокирующие правила, базы и регулярные выражения.
  7. Проверьте приоритеты встроенным тестом и сделайте несколько контрольных звонков.
  8. Для SMS отключите уведомления стандартного клиента, но оставьте его программой для отправки и хранения сообщений.

Ограничения

  • Android 9 и более старые версии не поддерживаются.
  • Поддержка RCS не планируется.
  • Локальную модель искусственного интеллекта пока не реализовали.
  • Автоматически очищать SMS разработчик не планирует.
  • Точность онлайн-проверки зависит от сторонней базы.
  • Ошибочное правило может заблокировать полезный звонок.
  • Некоторые оболочки останавливают фоновые функции после закрытия приложения.

В FAQ разработчик отдельно предупреждает, что Android 16+ может показывать системное уведомление о пропущенном вызове даже для заглушённых звонков. Уточнение относится к актуальным системам: Google выпустила Android 17 16 июня 2026 года.

Плюсы и минусы

Плюсы Минусы
Открытый исходный код Настраивать сложнее, чем обычные определители номера
Локальная работа без обязательного аккаунта Ошибка в правилах может заблокировать полезный звонок
Не заменяет стандартные приложения Для SMS нужно отключать дублирующие уведомления
Гибкие приоритеты, расписания и исключения Часть функций требует широких разрешений
Поддержка собственных баз и API Онлайн-проверка передаёт данные стороннему сервису
Доступен APK без сетевого разрешения Для офлайн-APK не опубликована отдельная проверка воспроизводимости

Заключение

SpamBlocker представляет собой конструктор правил для звонков и сообщений, а не готовый облачный антиспам-сервис. Программа сочетает локальную обработку, расписания, регулярные выражения, историю общения и подключаемые базы. Гибкость остаётся главным преимуществом и источником риска. Сначала лучше создать разрешающие исключения, затем постепенно включать блокировку и проверять результат. Пользователям, которым нужен один переключатель, проще начать со встроенных средств телефона.

SpamBlocker пригодится тем, кто получает много рекламных звонков, настраивает сложные расписания, работает с курьерами и хочет подключать собственные базы. Программа рассчитана на пользователей, знакомых с регулярными выражениями, API и приоритетами. Для блокировки нескольких номеров набор возможностей избыточен.

Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.
8H stress_test.exe 8H без
единого сбоя
ideco ngfw novum Ваш файрвол выдержит рабочий день без перерыва на обед? Ideco NGFW Novum — выдержал восьмичасовой стресс-тест под предельной нагрузкой. Без единого сбоя. Смотреть результаты теста → Реклама. Рекламодатель ООО «Айдеко» ИНН 6670208848 ККТУ 9.2.1

Комнатный Блогер

Объясняю новую цифровую реальность