Документация

К списку статей
09. Защита от накрутки активности (anti-gaming) и Shadow IT

Аудитория: ИТ-менеджер, ИБ-служба, ИТ-администратор. Закрывает вопросы: №6 («можно ли накрутить, чтобы лицензию не отняли?»), теневое ПО. Сценарий: подозрение на накрутку; «откуда в рисках чужое ПО?».


Короткий ответ

Две независимые защиты честности метрики:

  1. Anti-gaming — день, когда программа «висела открытой» час, но в ней почти ничего не

делали (мало транзакций), не засчитывается активным в adjusted-расчёте. Так нельзя накрутить использование, просто не закрывая окно.

  1. Shadow IT — несанкционированное ПО (облака, мессенджеры), замеченное в телеметрии,

попадает в отдельный инвентарь рисков на /risks. Это не «оценка системы», а сигнал ИБ.

Обе работают на тех же логах активности, что и эффективность, но видны отдельно — чтобы администратор различал «реально используют» и «накрутка/риск».


Anti-gaming: ложная активность

Правило ложной активности (один-в-один на сервере и во фронте):

FALSE_ACTIVITY_TX_FLOOR = 2

def is_false_activity_day(session_minutes, tx_count):
    # активная по минутам сессия (≥60), но почти без транзакций (tx<2) — кандидат на накрутку
    return session_minutes >= ACTIVE_DAY_MINUTES and tx_count < FALSE_ACTIVITY_TX_FLOOR

Идея «на пальцах»: открыть Word на весь день и уйти пить чай — это присутствие без продуктивности. Минуты сессии большие, но реальных действий (сохранений/операций) нет. Наивная метрика засчитала бы такой день; adjusted-расчёт его отбрасывает.

В payload /ops-efficiency рядом с «сырыми» значениями приходят adjusted:

  • iEffOpsAdjusted — эффективность после очистки,
  • uActAdjusted — активные пользователи после очистки,
  • filteredUserDays — сколько «дней-пустышек» отфильтровано,
  • в breakdown: averageIEffOpsAdjusted, filteredUserDaysTotal.

На экране /efficiency это дельта-блок raw → adjusted: видно, насколько просела эффективность после отсева накрутки. Чем больше дельта — тем больше «воздуха» в исходной цифре.

Это прокси честного сигнала: в бою роль «реальных действий» играют Windows Event 4688/4689 (старт/стоп процессов) и DLP Active Window (фокус окна). Порог tx<2 — консервативная замена на стенде; на боевых логах сигнал точнее.
Где это демонстрируется

На арендаторе РГГУ заведены «геймеры» на MS Office (≈24 отфильтрованных юзеро-дня) → adjusted < raw. Арендатор Артек оставлен «чистым» (raw == adjusted == 0.6585), чтобы базовый инвариант не сдвигался демонстрацией. Так на одном стенде видно и «честный», и «накрученный» профиль.


Shadow IT: теневое ИТ

Находки Shadow IT хранятся в отдельной таблице sam.shadow_it_findings (под RLS FORCE). Источник находок — распознаватель recognition.classify_shadow_it (см. статью 10).

Что считается находкой: ПО вне реестра санкционированного и числящееся в списке несанкционированного — облачные хранилища (Google Drive, Dropbox, Яндекс.Диск), мессенджеры (Telegram, WhatsApp), коллаборация (Trello, Notion). Категории: cloud_storage, messaging, collaboration.

Важное правило: Shadow IT — отдельный инвентарь, он не переписывает явный K_security_risk санкционированных систем. То есть «нашли Telegram на машине» не меняет автоматически оценку, скажем, КонсультантПлюс — это разные сущности: риск-находка и оценка системы. Где смотреть: секция Shadow IT на экране `/risks`, API — GET /api/{tenant}/shadow-it.


Как это связано с эффективностью (и где НЕ связано)
МеханизмВлияет на I_eff_ops?Где виден
Anti-gaming (ложная активность)да — через adjusted-ветку/efficiency, дельта-блок
Shadow IT (теневое ПО)нет — отдельный инвентарь/risks
K_security_risk системы (явный вход)да — =1 обнуляет I_eff_ops/efficiency

Не путайте: K_security_risk — это явная оценка санкционированной системы (вход сида), а Shadow IT — находки чужого ПО. Демонстрационно у РГГУ ADOBE_CC помечен K_sec=1 и его I_eff_ops=0 — это пример «риск обнуляет эффективность», а не следствие Shadow IT.

Грабли
  • Это демонстрационный срез (Фаза 2, срез D). Пороги и списки несанкционированного ПО —

настраиваемые заготовки, не финальная политика ИБ. Не выносите их в продакшен-вердикты без согласования с безопасником.

  • `adjusted` ≤ `raw` всегда. Если они равны — накрутки в данных не нашлось (это норма, как

у Артека), а не «фильтр не работает».

  • Shadow IT не отнимает лицензии сам. Это сигнал к расследованию, а не автоматическое

действие.


Связанные: 06 — Чтение эффективности · 10 — Распознавание ПО · 02 — ПДн и Vault.