9.1 KiB
title, date, tags, status
| title | date | tags | status | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| MMFB/LionART — 1С-кластер-порты торчали в интернет → распределённый brute → lockout Администратора → падал Effector Saver | 2026-06-28 |
|
mitigated |
MMFB / LionART 1C — экспозиция 1С-портов + brute-force (инцидент 2026-06-28)
Контекст
../projects/mmfb/lionart-1c (WIN-70M2VEJIKEF, 10.253.1.240, Win Server 2022), роутер ../projects/mmfb/mikrotik (10.253.1.1, AI/OL260380eg), WAN 195.26.30.163. Начиналось как «восстановить Effector Saver» — оказалось рецидивом из-за внешней атаки.
Корень (подтверждён)
На MikroTik netmap пробрасывал порты кластера 1С с WAN на .240:
195.26.30.163:1540→.240:1540(ragent):1541→.240:1541(rmngr, менеджер кластера):1560-1591→.240:1560-1591(рабочие процессы)
Боты из интернета долбили эти порты → 1С запускал ОС-аутентификацию (NTLM, LogonType 3) словарными именами (1C, ADM1C, ADMIN, KLUCH, 88888888, SUPERUSER...) → политика lockout 10/10/10 → .\Администратор локался каждые ~10 мин → падали и RDP Олега, и efsaveragent (работает под .\Администратор). Бэкапы стояли ~3 дня (25.06→28.06).
Правило srcnat #0 masquerade out-interface=!ether1-gw-telekom подменяло источник проброшенного трафика на 10.253.1.1 — поэтому на коробке в 4625/4740 светился «роутер», а реальные IP были видны только в conntrack роутера.
Не взломаны
0 успешных входов (4624 type 3/10) с пути атаки за 24ч — lockout честно отбивал перебор. Рога-аккаунтов в локальных юзерах/админах нет, подозрительных слушающих портов/бэкдоров нет (1433 SQL, 154x 1C, 47001 WinRM — штатно).
Атакующие (из conntrack/deny-лога роутера)
154.57.197.99 (основной, ARIN-аноним, 15+ портов-шторм), 94.26.88.0/24+94.26.68.0/24 (Razinet BG), 217.74.38.154 (DataFort RU), 38.253.156.213 (Cogent), 212.23.222.71, 185.56.162.72 (Hosting-VDS RU — изначально ошибочно принял за сайт, оказался переборщиком), 185.46.47.157 (Pronet), 95.68.225.46 (Rostelecom). Распределённый — блок по одному /24 не помогал.
Сайт ≠ переборщики
Синхронизация — frame.ru = 92.53.96.188 (JSC Timeweb, подтверждённый Bitrix: x-powered-cms: Bitrix Site Manager). В наблюдении frame.ru ни разу не подключался к 1С-портам (accept-счётчик 0, в deny-логе нет 92.53.x). box→frame.ru:443 достижим. → Обмен Bitrix↔1С, вероятно, исходящий (1С шлёт на сайт по HTTP), а входящие 1С-кластер-порты сайту не нужны — это чистая поверхность атаки. (Окончательно подтвердить, понаблюдав полный цикл обмена / спросив Олега про схему.)
Что сделано (MikroTik, всё помечено incident-20260628, reversible)
Forward chain (по порядку, до общего accept dst-address=10.253.1.0/24):
accept tcp src-address=92.53.96.188 dst-address=10.253.1.240 dst-port=1540,1541,1560-1591(allow frame.ru) — пока 0 пакетовdrop src-address-list=1c-bruteforce(address-list = 94.26.88.0/24, 94.26.68.0/24)drop tcp dst-address=10.253.1.240 dst-port=1540,1541,1560-1591(deny всех прочих на 1С-порты)
Результат: 4625 146/5мин → 0; 4740 lockout каждые 10 мин → 0; .\Администратор разлочен и держится; efsaveragent Running.
Осталось
- Подтвердить, что обмен frame.ru исходящий → если да, снять проброс 1540/1541/1560-1591 целиком (NAT-правила #3/#4/#5) — полностью закрыть дыру; whitelist-фильтр тогда не нужен.
- Развязать
efsaveragentот.\Администратор→ LocalSystem/сервисная учётка (см. 2026-05-28-mmfb-effector-saver-locked-admin) — чтобы любой lockout не ронял бэкап. Нужен ответ: Effector пишет копии локально или на UNC. WatchdogСДЕЛАНО 2026-06-28:/root/antoshka-watch-effector.shна Антошке (LXC 137), cron*/10. SSH-проверкаefsaveragent+ lockout.\Администратор+ признаки атаки (4740/30м, 4625/5м) → self-heal (тот же playbook) → алерт в TG (бот8020760639→ chat1292155421) и email (support@dttb.ruчерез10.0.0.107:587curl STARTTLS), дедуп по сигнатуре + «отбой». Ключ Антошкиssh-ed25519 ...root@openclawвadministrators_authorized_keysкоробки. Боевой тест (stop службы → авто-подъём → отбой) пройден, оба канала живые. State:/root/.antoshka-watch-effector.state. Box-side проверка —powershell -EncodedCommand(Cyrillic-safe). ⚠️ Пока мониторит службу/lockout, НЕ факт успешности бэкапа — для этого нужен адрес хранилища Effector (esdata.db/fmanager).- Периметр: наружу торчат ещё
8006→Proxmox (.200), SSH22→.49 /2222→.205,8007→.245,80/443→NPM(.25) — отдельный аудит.
Email-уведомления Effector — РЕШЕНО (через mailcow dual-cert)
Цель: штатный email-отчёт Effector → support@dttb.ru (свежесть бэкапов из CLI не снять — копии Effector удаляет после выгрузки, esdata.db=Absolute DB).
Проблема: Effector Saver 4.8 — древний TLS-стек (OpenSSL/Indy 2018, TLS 1.0, только RSA-шифры). mailcow на 587 отдавал только ECDSA-серт + TLS≥1.2 → SSL negotiation failed.
Фикс на mailcow (VM 107, /opt/mailcow-dockerized), всё в data/conf/postfix/extra.cf (тег incident-20260628, бэкап рядом .bak-rsa-*):
- Dual-cert: сгенерён self-signed RSA
data/assets/ssl/rsa-cert.pem+rsa-key.pem(CN=mail.dttb.ru, 10 лет). В extra.cf:smtpd_tls_cert_file=RSA,smtpd_tls_key_file=RSA,smtpd_tls_eccert_file=cert.pem(ECDSA),smtpd_tls_eckey_file=key.pem. Теперь postfix отдаёт И RSA, И ECDSA-шифры. - TLS 1.0 на портах отправки:
submission_smtpd_tls_mandatory_protocols = >=TLSv1,smtps_smtpd_tls_mandatory_protocols = >=TLSv1(только 587/465; порт 25 и общий не трогали). docker compose restart postfix-mailcow.
Итог: тест из Effector «e-mail успешно отправлен». Современные клиенты по-прежнему ECDSA/TLS1.3 (не сломано). ⚠️ Компромисс: TLS 1.0 на 587/465 — слабее; снять, когда Effector обновят/заменят. RSA-серт self-signed (Effector серт не валидирует); при желании заменить на валидный LE RSA. Revert: убрать строки из extra.cf + рестарт.
Настройки в Effector (вводил Олег в GUI): mail.dttb.ru:587 STARTTLS, support@dttb.ru/пароль, From support@dttb.ru. Задача «Отправка отчёта» → «Задачи в отчёте» все 6, расписание ~07:00.
Уроки
- 1С-кластер (ragent/rmngr/worker-порты) никогда не выставлять в интернет — это и DoS через lockout, и риск RCE. Доступ только через NetBird/OVPN, обмен с сайтом — исходящим HTTP.
- При «служба под доменным/локальным админом падает + учётка лочится» — проверь внешний brute (4625/4740 + conntrack роутера), а не только SCM-пароль. 2026-05-28-mmfb-effector-saver-locked-admin лечил симптом, корень был в экспозиции.
- MikroTik
masquerade out-interface=!WANпрячет реальные source-IP в логах коробки — смотри conntrack/деней-лог на роутере.