Монокультура (информатика)
Монокультура в информатике — это сообщество компьютеров, на которых установлено идентичное программное обеспечение. Все вычислительные системы в такой группе обладают одними и теми же уязвимостями, и, подобно сельскохозяйственным монокультурам, подвержены катастрофическим сбоям в случае успешной атаки[1].
Общие сведения
С развитием тенденции к увеличению использования и зависимости от компьютерных систем, некоторые поставщики предлагают решения, которые применяются во всей отрасли (например, Microsoft Windows) — это образует алгоритмические монокультуры. Монокультуры формируются естественно благодаря экономии на масштабе, когда производство и распространение единого решения обходится дешевле — обычно эти сбережения переходят конечным пользователям. Кроме того, наличие большой пользовательской базы способствует более быстрому обнаружению и исправлению ошибок.
Как и в случае с сельскохозяйственными монокультурами, алгоритмические монокультуры не являются разнообразными, и поэтому подвержены связанным сбоям — когда отказывает множество компонентов, участвующих в монокультуре. В случае полной неоднородности (не-моно) — когда результаты работы всех компонентов взаимно независимы — вероятность катастрофического события (сбой всех компонентов) равна произведению вероятностей отказа каждой части (то есть экспоненциально уменьшается).
В противоположность этому, совершенные монокультуры полностью коррелированы, и потому обладают единой точкой отказа. Это означает, что вероятность катастрофического события обычно выше, поскольку сбой одного компонента может вызвать массовые последствия.
Примеры
Поскольку операционные системы используются практически на каждом рабочем месте, они образуют монокультуры. Например, Дэн Гир утверждал, что Microsoft — это монокультура, поскольку большинство рабочих станций, подключённых к Интернету, работают под управлением операционных систем семейства Microsoft Windows, многие из которых уязвимы одним и тем же атакам.
Крупные монокультуры могут возникать и за счёт программных библиотек, например, эксплойт Log4Shell в популярной библиотеке Log4j по оценкам затронул сотни миллионов устройств[2].
Проблемы на индивидуальном уровне
Концепция монокультуры имеет особое значение при обсуждении компьютерной безопасности и вирусов. Главная угроза — это уязвимость к атакам. Поскольку монокультуры не обладают разнообразием, любая выявленная уязвимость существует у всех её участников, что повышает риск эксплуатации[3]. Примером здесь служит явление exploit Wednesday, когда после выпуска обновлений безопасности для Windows наблюдается рост числа атак на системы, которые не были своевременно обновлены.
Клиффорд Стоул писал в 1989 году после расследования проникновения червя Морриса:[4]
Компьютерный вирус — весьма специализирован: вирус, который работает на IBM PC, не сможет ничего сделать с Macintosh или с компьютером под управлением Unix. Аналогично, вирус Arpanet мог поражать только системы на базе Berkeley Unix. Компьютеры с другими операционными системами — к примеру AT&T Unix, VMS или DOS — были полностью невосприимчивы.
Разнообразие, таким образом, противодействует вирусам. Если бы все системы в Arpanet работали под управлением Berkeley Unix, вирус бы мог вывести из строя все пятьдесят тысяч из них. Вместо этого он поразил только пару тысяч. Биологические вирусы столь же специализированы: например, мы не можем заразиться гриппом от собак.
Чиновники и менеджеры всегда будут подталкивать к стандартизации на одном типе системы: «Давайте использовать только рабочие станции Sun» или «Покупать только IBM». Но почему-то наши компьютерные сообщества всё равно остаются разнообразными — с машинами Data General рядом с Digital Vaxes; IBM соединёнными с Sony. Как и наши кварталы, электронные сообщества процветают благодаря разнообразию.
Другой важной проблемой является усиление распространения алгоритмической предвзятости. В условиях растущего применения машинного обучения увеличивается озабоченность смещениями, вносимыми алгоритмами. Природа монокультур усугубляет этот эффект, делая предвзятость системной и способствуя распространению несправедливых решений.
Социальные проблемы
Монокультуры могут приводить к парадоксам типа парадокса Бресса, когда введение «лучшей опции» (например, более точного алгоритма) приводит к субоптимальному монокультурному сходу — состоянию, когда коррелированность системы ухудшает общий уровень принимаемых решений. Поскольку монокультуры формируются в областях, связанных с критически важными решениями, такими как кредитный скоринг или автоматизированный приём на работу, важно стремиться к оптимально обоснованным решениям.
Такие сценарии изучаются с позиций дизайна механизмов, где агенты выбирают между набором алгоритмов, некоторые из которых дают взаимосвязанные результаты. Совокупный эффект такого выбора измеряется через социальное благосостояние.
Этот раздел иллюстрирует проблему субоптимального монокультурного схода на примере автоматизированного найма. Найм представляет собой ранжирование группы кандидатов и выбор наиболее предпочтительных. В последние годы автоматизированный найм (автоматическое ранжирование кандидатов на основе взаимодействия с ИИ-системой) получил широкое распространение.
Как показал Джон Клейнберг[5], при определённых допущениях легко возникает субоптимальная монокультура автоматизированного найма: выбор скоррелированного алгоритма становится доминирующей стратегией, что приводит к формированию монокультуры со сниженным общественным благом.
Рассматривается две фирмы и множество из кандидатов с неизвестной полезностью . В процессе найма каждая фирма строит неточное ранжирование, а затем (по случайному порядку) нанимает первого доступного кандидата из своего списка. Фирма может использовать либо независимые оценки человека, либо общий алгоритмический рейтинг.
Ранжирующий алгоритм моделируется как вероятностное распределение на перестановках , определяемое параметром точности .
Чтобы был осмыслен, он должен удовлетворять:
- Дифференцируемость: Вероятность любой перестановки является непрерывной и дифференцируемой функцией параметра .
- Асимптотическая оптимальность: Для истинной перестановки : .
- Монотонность: Ожидаемая полезность самого высокого кандидата возрастает по мере увеличения , даже при удалении любого подмножества из .
Эти условия означают, что фирма всегда предпочтёт более высокие значения , даже если она второй выбирает кандидата.
И алгоритмические, и человеческие методы построения рейтинга описываются через и различаются только параметрами точности . Алгоритмическое ранжирование всегда даёт одну и ту же перестановку, в то время как человеческое — определяется независимо для каждой фирмы.