Kitabı oxu: «Риски цифровизации: виды, характеристика, уголовно-правовая оценка»
Монография
© Коллектив авторов, 2022
© ООО «Проспект», 2022
* * *
Ответственный редактор доктор юридических наук, профессор Ю. В. Грачева
Авторы:
Грачева Ю. В., доктор юридических наук, профессор, профессор кафедры уголовного права Московского государственного юридического университета имени О. Е. Кутафина (МГЮА);
Иванов С. А., руководитель подразделения информационной безопасности компании «Первый Бит»;
Маликов С. В., доктор юридических наук, профессор кафедры уголовного права Московского государственного юридического университета имени О. Е. Кутафина (МГЮА);
Чучаев А. И., доктор юридических наук, профессор, главный научный сотрудник, и. о. заведующего сектором уголовного права, уголовного процесса и криминологии Института государства и права РАН.
Рецензенты:
Коробеев А. И., доктор юридических наук, профессор, заслуженный деятель науки РФ, заведующий кафедрой уголовного права и криминологии Дальневосточного федерального университета;
Воробьев В. В., кандидат юридических наук, доцент, заведующий кафедрой уголовно-правовых дисциплин Сыктывкарского государственного университета имени Питирима Сорокина.
Исследование выполнено при финансовой поддержке Российского фонда фундаментальных исследований (РФФИ) в рамках научного проекта № 18-29-18158.
Введение
Увеличение деловой, социальной активности в киберпространстве, цифровая трансформация предпринимательской деятельности и деятельности государственных и муниципальных служб предопределяют актуальность рассмотрения вопроса трансформации права в условиях развития цифровых технологий. Прорывное развитие цифровых технологий приводит к появлению новых видов нематериальных и трансформации традиционных материальных активов, образованию важных прямых и обратных зависимостей между объектами виртуального мира (киберпространства) и реального мира. Значимость преобразований и их беспрецедентная динамика изменяют характер угроз имуществу, жизни и здоровью человека, работе организаций, социуму и государству.
Противодействие киберугрозам, социокультурным угрозам, терроризму и идеологическому экстремизму не только ставит новые задачи перед специалистами по информационной безопасности, но и требует выработки механизмов правовой защиты, обладающих свойством оперативной актуализации в соответствии с изменениями характера и масштабов угроз. Такие механизмы позволят опережающими темпами реагировать на криминогенные угрозы безопасности личности, общества и государства в цифровой среде.
Для разрешения этой проблемы в настоящей монографии преследуется в первую очередь пропедевтическая цель – создание необходимого теоретического фундамента для последующего рассмотрения специальных уголовно-правовых вопросов. Проводится анализ технологий, образующих цифровую среду, и сфер жизнедеятельности, на которые инновационные технологии воздействуют или будут оказывать наибольшее влияние.
Угрозы цифровой среды, создающие опасность ущерба для человека, социума и государства, в пособии исследуются как совокупность причин и факторов, обусловленных применением цифровой технологии, от которой зависит вероятность нанесения ущерба, и сферы жизнедеятельности, определяющей характер и размер ущерба.
Глава I. Научно-технические направления, оказывающие наибольшее влияние на развитие цифровой среды
§ 1. Искусственный интеллект
Понятие. Искусственный интеллект (далее – ИИ) – это область научных знаний и технологий создания интеллектуальных машин и интеллектуального программного обеспечения. Также ИИ называют свойство интеллектуальных систем выполнять творческие функции, которые традиционно считаются прерогативой человека. Одной из ключевых особенностей интеллектуальных вычислительных систем является их способность приобретать знания посредством обучения (самомодификации) и применять эти знания для решения проблем.
Подобно тому, как человек использует свой мозг, чтобы учиться на новой информации, собранной органами чувств, ИИ учится на информации, передаваемой ему, например, в виде изображения или правил игры. Данная информация не только обрабатывается в соответствии с тем, как он запрограммирован, но и меняет сам алгоритм, при помощи которого ее обрабатывают. Процесс, при котором ИИ запрограммирован на автоматическое изменение собственного алгоритма, называется машинным обучением. Например, для идентификации кошки люди принимают во внимание форму и физические характеристики и сверяют это со знаниями о том, кто такая кошка, основываясь на воспоминаниях и опыте. Обучение человека естественным образом включает в себя построение абстрактных представлений, т. е. человек может распознать кошку, даже если видит только задние лапы и хвост или видит рисунок с кругом, обозначающим голову, и двумя треугольниками, изображающими уши. Для того чтобы ИИ мог идентифицировать кошку, в систему нужно внести миллионы изображений кошек и обучить ее распознавать определенные группы пикселей – наименьших единиц изображения, которые создают форму кошки. Впервые такое обучение ИИ было проведено компанией Google в 2012 г. с использованием технологии, известной как Deep Learning, в целях построить программу, которая может распознавать изображения с кошками. В программе изначально не задавались правила, согласно которым у кошек четыре лапы, хвост, два уха и т. д., но, поскольку изображения на обучающих данных были помечены как содержащие или не содержащие кошек, программа смогла самостоятельно создать визуальную концепцию кошки. Когда программе предоставлялось новое изображение, она с высокой точность была способна пометить его как «содержащий кошку» или нет. Искусственный интеллект Google получил информацию из изображений, научился идентифицировать кошек, а затем мог применять правила для решения вопроса о том, какие новые изображения содержат рисунок кошки. Несмотря на то, что в отличие от мозга человека ИИ на самом деле не знает, кто такая кошка, и не понимает этого, ему удалось создать абстрактное представление о том, что мы называем кошкой или, если точнее, «кошкой на изображении».
Существуют разнообразные методы машинного обучения: глубокое обучение с использованием нейронных сетей, обучение с подкреплением, обучение на основе статистических принципов. Многие программы ИИ применяются для анализа и обработки изображений или речи либо извлечения информации из них. Глубокое обучение зачастую необходимо для прогнозов, таких как медицинские диагнозы или возможное мошенничество с кредитными картами.
История. Старт развития искусственного интеллекта в современном его понимании произошел в 1950-х гг. XX в. и изначально предполагал решение сложных математических задач и создание «мыслящих машин». С самого начала сложились два конкурирующих подхода. Один – с применением формальных правил для манипулирования символами, логического подхода, не основанного на биологии. Этот подход получил название «старый добрый искусственный интеллект» (Good Old-Fashioned Artificial Intelligence, GOFAI). Сторонники второго подхода исходили из того, как работает мозг, и создавали «искусственные нейронные сети», базирующиеся на моделях, в основу архитектуры которых положена нейронная структура мозга.
В первые 20 лет GOFAI принес больший успех, что привело к значительному государственному финансированию. В реальных же условиях GOFAI не дал значимых результатов. Методология использования искусственных нейронных сетей не прошла проверку прикладными задачами и в 1970-х гг. финансирование исследований прекратилось, их количество уменьшилось, а сообщество ИИ сократилось. Через 10 лет, когда были усовершенствованы системы GOFAI и нейронные сети, решение задач, считавшихся ранее неразрешимыми, стало достижимым, и область ИИ снова стала казаться многообещающей. Однако надежды вновь не оправдались, и к 1990 г. количество исследований ИИ снова сократилось. Успех к рассматриваемой технологии пришел в начале 2000-х гг., что было обусловлено рядом значимых факторов:
– прогрессом методологии Deep Learning, модели решения задач, вдохновленной биологическими свойствами нейронных сетей;
– возможностью использования огромных объемов данных, ставших доступным в настоящее время;
– возросшей вычислительной мощностью процессоров;
– возможность горизонтального наращивания мощности вычислительных комплексов.
Обладая большими массивами данных, современные нейронные сети ИИ зачастую превосходят человека в решении многих задач, например в распознавании образов, моделировании, играх. Такая эффективность ранее была недостижима для систем ИИ. При этом системы, обеспечившие технологический и научный прорыв, могут самообучаться.
Для проведения сравнительной оценки ИИ и человеческих возможностей в 1950 г. А. Тьюринг предложил то, что станет известным как «тест Тьюринга». До сих пор еще ни ода система ИИ не прошла такой тест. Согласно правилам этого теста ИИ должен обрабатывать естественный язык, уметь учиться на разговорной речи и помнить сказанное, сообщать идеи человеку и усваивать общие понятия, отображая то, что мы называем здравым смыслом. Первым таким предложенным тестом стала игра, в которой участвуют мужчина, женщина и следователь. Задача следователя (ИИ) состоит в том, чтобы определить, кто из участников мужчина, а кто женщина. Невыполнимость по настоящее время теста Тьюринга связана с простым вопросом: попадает ли, в принципе, эта способность системы казаться разумной в область вычислимых проблем? Повсеместное распространение ИИ в виде голосовых помощников, систем распознавания изображений, голоса, автоматического перевода могут создать иллюзию того, что ИИ уже скоро достигнет уровня человеческого интеллекта. Однако ИИ нуждается в огромном количестве данных, чтобы учиться, в отличие от нашего мозга, который может учиться на разовом опыте, выстраивать заключения из одного-единственного события. Для поступательного развития ИИ необходимо дальнейшее углубление знаний об основных принципах функционирования мозга и о видах биологических сокращений, посредством которых человеческий мозг выполняет задачи. Несмотря на недостижимость идеала, повсеместное распространение методологии ИИ дает ощутимую пользу для решения специальных задач.
Технологии искусственного интеллекта. Искусственный интеллект характеризуется в первую очередь задачами, которые он предназначен решать, но некоторые технологии и методологии ассоциируются именно с технологическим решением ИИ к ним относят машинное обучение, биологическое моделирование, представление и использование знаний, дополненный интеллект, чат боты, системы управления ИИ и другие.
Машинное обучение является обширным подразделом ИИ, изучающим методы построения алгоритмов способных обучаться. Различают два типа обучения: по прецедентам (или индуктивное обучение), которое основано на выявлении общих закономерностей по частным эмпирическим данным; дедуктивное (или машинное) обучение, предполагающее формализацию знаний экспертов и перенос этих знаний в компьютер в виде базы знаний.
Машинное обучение находится на стыке математической статистики, методов оптимизации и классических математических дисциплин, но имеет также собственную специфику, связанную с проблемами вычислительной эффективности и переобучения. Многие методы индуктивного обучения разрабатывались как альтернатива классическим статистическим подходам. Многие методы тесно связаны с извлечением знаний и интеллектуальным анализом данных (Data Mining).
Машинное обучение не только математическая, но и практическая, исследовательская дисциплина. Чистая теория, как правило, не приводит к созданию методов и алгоритмов, полностью готовых к применению на практике. Чтобы заставить модель данных эффективно работать необходимо ее уточнять, выявлять дополнительные эвристики, компенсирующие несоответствие первоначально сделанных предположений условиям реальных задач. Практически ни одно исследование в машинном обучении не обходится без эксперимента на модельных или реальных данных, подтверждающего практическую работоспособность метода.
Выделяют следующие области машинного обучения:
Обучение с учителем – задачи, в которых требуется найти зависимость ответов от описаний, т. е. построить алгоритм, принимающий на входе описание объекта и выдающий на выходе ответ. Под учителем в данном случае следует понимать либо саму обучающую выборку, либо того, кто указал на заданных объектах правильные ответы. В рамках этого раздела машинного обучения могут решаться задачи классификации, регрессии, ранжирования и прогнозирования.
Задача классификации, т. е. определения отношения объекта к той или иной заранее заданной группе объектов актуальна в коммерческой деятельности (классификация клиентов и товаров в целях оптимизации маркетинговых стратегий, стимулирования продаж, сокращения издержек), сфере телекоммуникаций (классификация абонентов для определения уровня лояльности и предпочтения при выборе услуг оператора), медицине и здравоохранении (в целях диагностики заболеваний, классификации населения по группам риска), банковской сфере (для кредитного скоринга, отнесения человека к той или иной группе, что позволяет определить вероятность возврата кредита и вычислить размер допустимой суммы кредитования).
Задача регрессии – определение прогнозного числового значения решает такие прикладные задачи как прогнозирования спроса (дает количественную оценку спроса на тот или иной товар или вид товара), прогнозирования доходности акций по совокупности предоставляемой информации о деятельности компании, конкурентов, рыночной конъюнктуре, погодных и политических условиях и т. д., изучение структуры и постатейных размеров издержек производства на основе данных прошлых периодов и изменений, что позволяет прогнозировать регулярные расходы, проведение макроэкономических расчетов, в которых учитывается большое количество факторов, прогнозирование даты возврата кредита.
Задача ранжирования ставит целью сортировку объектов по значениям некоего характеризующего их показателя. Выбор показателя для ранжирования система определяет автоматически. В некоторых случаях задача ранжирования решается без выделения конкретного показателя за счет последовательно определения «соседей». Задача ранжирования применяется в информационном поиске, например, при сортировке в поисковых системах результатов поиска по «релевантности» – условному значению, определенному системой; в рекомендательных системах (в частности, на основе ранее прослушанных композиций предоставляется совет о том, какую песню или стиль система рекомендовала бы прослушать в порядке убывания рекомендательного индекса).
Задача прогнозирования ставится с целью спрогнозировать свойства объекта на основе данных за прошлые периоды. На примере желания снять наличные денежные средства в банкомате задача прогнозирования позволяет определить время и объем спроса на наличные денежные средства в банкоматах, установить необходимую численность персонала для обработки обращений клиентов во время штатной и пиковой нагрузки, спрогнозировать качество продукции по данным о производственном процессе, качестве исходного материала и квалификации персонала.
Обучение без учителя – в этой методологии система ИИ должна быть способна не просто отнести объект к той или иной группе, а без дополнительной информации самостоятельно выделить такие группы и затем определять принадлежность к ним объектов. По методологии обучения без учителя решаются задачи кластеризации, ассоциативных правил, фильтрации выбросов, сокращения размерности, заполнения пропущенных значений и др.
Задача кластеризации заключается в том, чтобы сгруппировать объекты в кластеры, представляющие собой сравнительно однородные группы объектов. К задаче кластеризации сводятся:
– анализ социальных сетей в разных сферах жизни общества для проведения исследований;
– оценка политических предпочтений сегментов аудитории в разных регионах, социальных и демографических группах;
– прогнозирование политической активности и акций на основе выявления поведенческих паттернов;
– агитация, т. е. распространение информации о кандидатах, данные о которых гражданин еще не рассматривал, но разделяет ценности партии кандидата;
– определение центров формирования общественного мнения;
– выбор популярных личностей среди лояльных к бренду людей в целях повысить эффективность кампаний при помощи информационных вирусных технологий, побуждающих распространять сведения о продуктах и компании саму аудиторию, которой она предназначена;
– поиск подходящих кандидатов в сотрудники компании по данным резюме и историй успеха сотрудников, которые уже плодотворно работают в компании;
– подбор сотрудников для какого-либо проекта;
– повышение эффективности командообразования на основе подтвержденных личных и профессиональных качеств;
– фокусировка рекламных кампаний на конкретном сегменте целевой аудитории;
– выявление латентных, не выражаемых явно потребностей покупателей, которые не ищут товар в интернете и не обращаются в магазины, но в общедоступных сообщениях (постах), группах, в которых состоят эти пользователи, оставляют информацию о своих намерениях или предпочтениях;
– определение кластеров коррумпированности – связей бизнеса и представителей власти.
Задача поиска ассоциативных правил – определение часто встречающихся наборов объектов в большом множестве таких наборов. Прикладные задачи, решаемые установлением ассоциативных правил:
– изучение событий, выявление причинно-следственных связей в поведении поставщиков, покупателей, сотрудников, инвесторов, конкурентов и иных лиц, оказывающих или могущих оказать влияние на компанию;
– анализ покупательской корзины – определение сочетаний товаров, пользующихся стабильным спросом, в целях оптимизировать поиск наборов покупателями;
– стимулирование спроса за счет формирования дополнительных предложений, проведения эффективных маркетинговых акций, продвигающих среди аудитории дополнительные товары.
Задача фильтрации выбросов – обнаружение в обучающей выборке небольшого числа нетипичных объектов. К задаче сводятся проблемы
– обнаружение мошенничества, т. е. выявление аномальных финансовых показателей по выручке или объему продаж, что помогает обнаружить факт кражи денежных средств или передачу информации конкурентам;
– обеспечение информационной безопасности. В частности, аномальное время работы сотрудника или его нетипичные действия дают возможность установить факт инсайдерской деятельности либо идентифицировать несанкционированный доступ к информационной системе;
– выявление ошибок при экономических расчетах, т. е. фильтрация выбросов привлекает внимание к ошибочно введенной в ручном режиме информации за счет определения ее нетипичности или отсутствия смысла.
Задача сокращения размерности заключается в том, чтобы при помощи некоторых функций преобразования перейти к наименьшему числу признаков объекта, не потеряв при этом никакой существенной информации. Решение задачи дает возможность оптимизации:
– производственных процессов – благодаря выявлению действий, не влияющих на эффективность;
– расходов на содержание сложных систем;
– использования вычислительных ресурсов.
Задача заполнения пропущенных значений – замена недостающих значений в матрице «объекты-признаки» их прогнозными значениями. Метод замены используется в социальных исследованиях, когда данные собираются не в полном объеме; для восстановления данных при сбоях или преднамеренном уничтожении; при прогнозировании удовлетворенности от продукта на основе данных по другим продуктам и другим потребителям.
Кроме обучения с учителем и без учителя, в машинном обучении применяются и другие методы:
Обучение с подкреплением – процесс, при котором происходит обучение модели, не имеющей сведений о системе, но обладающей возможностью производить действия в ней. Действия переводят систему в новое состояние, и модель получает от системы некоторое вознаграждение. Подобное обучение используется:
– в управлении роботами при выполнении таких задач, как манипулирование предметами, навигация в загруженном пространстве, поиск устойчивого положения предмета;
– в управлении технологическими процессами;
– при персонализации показов рекламы в интернете;
– в управлении ценами и ассортиментом в сетях продаж;
– при маршрутизации в телекоммуникационных сетях.
Частичное обучение занимает промежуточное положение между обучением с учителем и без учителя. Пример прикладной задачи – автоматическая рубрикация большого количества текстов при условии, что некоторые из них уже отнесены к каким-то рубрикам. Такая задача стоит при работе с большими объемами текстовых данных экономистами и юридическими службами, а также в научной деятельности.
Динамическое обучение возможно как с учителем, так и без него. Специфика такого обучения состоит в том, что информация о состоянии объектов поступает потоком и требуется немедленно принимать решение по каждому прецеденту, одновременно доучивая модель зависимости с учетом новых прецедентов. Как и в задачах прогнозирования, здесь существенную роль играет фактор времени.
Метаобучение отличается от методов тем, что прецедентами являются ранее решенные задачи обучения. Требуется определить, какие из используемых в них приемов работают более эффективно. Конечная цель – обеспечить постоянное автоматическое совершенствование алгоритма обучения с течением времени.
Биологическое моделирование искусственного интеллекта. Биокомпьютинг, или квазибиологическая парадигма (Biocomputing), – это биологическое направление в ИИ, сосредоточенное на разработке и использовании компьютеров, которые функционируют как живые организмы или содержат биологические компоненты, так называемые биокомпьютеры. В отличие от понимания ИИ, когда исходят из положения о том, что искусственные системы не обязаны повторять в своих структуре и работе структуру и протекающие в ней процессы, присущие биологическим системам, сторонники биокомпьютинга считают, что феномены человеческого поведения, способность человека к обучению и адаптации есть следствие именно биологической структуры и особенностей ее функционирования. Биокомпьютинг позволяет решать сложные вычислительные задачи, организуя вычисления при помощи живых тканей, клеток, вирусов и биомолекул. Часто используют молекулы дезоксирибонуклеиновой кислоты, посредством которых создают ДНК-компьютер. Биопроцессором также могут служить белковые молекулы и биологические мембраны. Например, на основе бактериородопсин-содержащих пленок создают молекулярные модели перцептрона.
Представление и использование знаний. Представление знаний (ПЗ), или Knowledge Representation (KR) – это область ИИ, в которой изучают то, как могут быть представлены знания и факты о мире и какие рассуждения могут быть сделаны с этими знаниями. Проблематикой ПЗ является возможность представления знаний таким образом, чтобы они были достаточными (в полном объеме содержали знания, необходимые для решения проблемы); не избыточными (компактными, естественными, пригодными для эффективных вычислений); способными выразить особенности проблемы; могли компенсировать недостаточную точность представляемых данных и обеспечить приемлемое время вычислений.
Для решения этих задач используется методология инженерии преставления знаний, в которых выделяют:
– декларативные знания, основанные на понятиях, фактах и объектах. Они дают всю необходимую информацию о проблеме в виде простых истинных или ложных утверждений;
– процедурные знания – правила, стратегии, программы и процедуры. Они описывают то, как проблема может быть алгоритмически решена, и шаги на пути ее решения;
– эвристические знания, накапливаемые интеллектуальной системой в процессе ее функционирования, а также заложенные в ней априорно, но не имеющие статуса абсолютной истинности в данной проблемной области. Обычно эвристические знания связаны с отражением в базе знаний неформального опыта решения задач. Эвристические знания основаны на правиле «большого пальца», т. е. на отказе от очевидно неприемлемых вариантов. Эвристические представления полезны для управления процессом рассуждения. При этом представление знаний базируется на стратегиях решения проблем в соответствии с опытом преодоления прошлых проблем, которым обладает эксперт;
– метазнания, дающие представление о других типах знаний, которые подходят для решения проблемы. Это «знания о знании», о том, как оно устроено и структурировано; «знания о получении знаний», т. е. приемы и методы познания (когнитивные умения) и оценка возможностей работы с ним. Иными словами, метазнания объединяют знания о способах использования знаний и знания о свойствах знаний. Задача применения метазнаний состоит в повышении эффективности решения проблем посредством правильного процесса рассуждения;
– структурные знания, связанные с информацией, основанной на правилах, наборах, концепциях и отношениях. Они представляют собой информацию, необходимую для разработки структур знаний и общей ментальной модели проблемы.
Архитекторы систем представления данных используют следующие логические структуры: списки и деревья для выстраивания иерархических знаний; семантические сети – схемы, применяемые для демонстрации здравого смысла или стереотипных знаний; скрипты – для описания события. Методология представления и использования знаний нашла широкое распространение в процессе развития экспертных систем – программного обеспечения, способного перенять у человека экспертизу в узких предметных областях, а также выступает сквозной низкоуровневой методологией, обеспечивающей возможность архитектурного планирования систем ИИ и баз знаний.
Области применения искусственного интеллекта. Работа с естественными языками и голосовые помощники. Обработка естественного языка (Natural Language Processing, NLP) является областью применения ИИ, которая занимается взаимодействием между компьютерами и людьми и использует естественный язык человека. Это направление, объединяющее ИИ и математическую лингвистику, изучает проблемы компьютерного анализа и синтеза естественных языков. Анализ в данном контексте означает возможность читать, распознавать, понимать и расшифровывать человеческие языки в целях выявления смысла передаваемой информации; синтез – способность генерировать текст с учетом грамматических и семантических правил естественного языка. Решение этих проблем позволит создать удобную форму взаимодействия компьютера и человека.
Типовое взаимодействие человека с компьютером на основе NLP выглядит следующим образом:
– человек что-либо произносит на естественном (человеческом) языке в микрофон компьютера;
– компьютер записывает звук;
– записанная аудиоинформация распознается и преобразуется в текст;
– данные текста обрабатываются интеллектуальными системами с учетом смысла сказанного и ответ выдается в форме цифровых данных;
– обработанные данные преобразуются в аудиоформат;
– компьютер воспроизводит аудиофайл.
Обработка естественного языка служит основой для многих прикладных программных приложений:
– приложений языкового перевода, например Google Translate или Yandex Переводчик;
– текстовые процессоры для проверки грамматической точности текстов, такие как Microsoft Word или Grammarly;
– приложения интерактивного голосового ответа, используемые в центрах обработки вызовов для ответа на запросы определенных пользователей;
– голосовые помощники, такие как Google Assistant, Siri, Cortana и Alexa;
– телефонные роботы для голосовой навигации по сервисам и автоматических голосовых уведомлений.
Некоторые системы способны не только распознавать человеческую речь, но и давать оценку – «тональность» высказываний, которая показывает эмоциональное состояние человека. Прикладное применение имеют также такие задачи, как идентификация человека по голосу и характерным речевым оборотам, определение числа участвующих в дискуссии людей и степени удовлетворенности полученным ответом.
Робототехника и искусственный интеллект. Робототехника и ИИ представляют собой наиболее перспективную комбинацию для автоматизации задач, не входящих в первичные заводские настройки роботизированной техники. В последние годы ИИ все больше распространяется в роботизированных решениях, обеспечивая гибкость и возможность обучения там, где раньше использовались неизменяемые производственные настройки. Широко задействованы роботизированные системы с ИИ-управлением на производственных предприятиях:
Сборочный роботизированный ИИ в сочетании с передовыми системами компьютерного зрения помогает в корректировке движений и манипуляций робота в режиме реального времени. Подобные системы применяются на сложных производственных участках и отраслях, например в аэрокосмической промышленности. ИИ также обеспечивает возможность роботизированной системе обучаться и автоматически определять, какие пути лучше всего подходят для конкретных процессов непосредственно в процессе его работы.
Упаковочные роботы. Роботизированные системы часто используют ИИ для более быстрой, дешевой и точной упаковки. ИИ помогает определять и сохранять оптимальные паттерны движения манипуляторов, которые совершает роботизированная система. В то же время постоянно совершенствует их, что делает пусконаладку и перенастройку роботизированных систем доступной пользователю без технической квалификации.
Обслуживание клиентов. В настоящее время роботы обслуживают клиентов в розничных магазинах, больницах и отелях по всему миру. Некоторых из этих роботов используют возможности обработки естественного языка для взаимодействия с клиентами. Чем больше эти системы взаимодействуют, «общаются» с людьми, тем качественней становится их работа. Развитие обеспечивается имплементированной системой самообучения.
Робототехника с открытым исходным кодом – часть роботизированных систем, которые в настоящее время представлены на рынке, поставляются как системы с открытым исходным кодом и возможностями ИИ. Благодаря этому пользователи могут перепрограммировать (за счет доступа к открытому коду алгоритмов) и научить (за счет функционала ИИ) своих роботов выполнять пользовательские задачи в зависимости от окружения и конкретного применения, например, на малых сельскохозяйственных предприятиях в которых необходимо выполнять множество разнообразных типовых операций. Совместное использование робототехники с открытым исходным кодом и систем ИИ является одним из основных трендов развития робототехники.
Проблематика безопасности использования систем искусственного интеллекта. Широкое проникновение систем машинного обучения обусловливается высокой эффективностью их использования и фактом свершившейся Четвертой промышленной революции. Совершенствуется автоматизация и интеллектуализация бизнес-процессов, технологические решения, совершенствуются роботы, функционирующие на базе систем искусственного интеллекта (ИИ). Все большее количество операций выполняется и решений принимается автоматически.
За счет этого расширяются возможности для киберпреступников атаковать информационные системы, использовать их в противоправных целях, что зачастую наносит вред жизни, здоровью, финансовый и другие виды ущерба. Если раньше хакеры ставили себе целью украсть данные с персонального компьютера или списать деньги с личного банковского счета, то в настоящее время глубокая цифровизация промышленности, транспортной и коммуникационной отраслей открывает новые возможности для деятельности злоумышленников. Одним из направлений атак стали системы ИИ, особенно уязвимые в случае наличия открытого доступа к их базовым алгоритмам и логике их работы.
Угрозы безопасности систем искусственного интеллекта.
В транспортной отрасли. Злоумышленники могут нарушать штатную работу автономных транспортных средств посредством провокаций приводящих к некорректной реакции транспорта на знаки ограничения проезда или скорости. Исследовательские проекты и эксперименты доказывают, что такие атаки не сложны для злоумышленников. К началу 2019 г. было опубликовано более 100 научных работ, в которых показаны разнообразные способы атак, имеющих целью вызвать ошибки системы распознавания изображений. Например: если маленький, трудноразличимый человеком стикер наклеить на дорожный знак система ИИ будет воспринимать его как другой знак, что при специальном выборе места атаки может спровоцировать аварию. За счет выявления уязвимости алгоритма ИИ и не сложного механизма ее реализации появляются угрозы не только для информационной системы, но и для жизни и здоровья людей.
В системах контроля доступа. Все более широкое распространение получают системы распознавания лиц в системах контроля физического доступа. Эти системы гораздо удобнее, чем RFID-карты, ключи или использование пин-кодов. Системы распознавания лиц снижают время, которое тратится на аутентификацию и повышают долю эффективного рабочего времени сотрудников организаций. Кроме того, в качестве дополнительной меры безопасности новые типы банкоматов используют механизм распознавания лица клиента. Однако, все еще нельзя быть уверенным и в том, что подобные средства абсолютно защищены и их нельзя взломать. В настоящее время независимые исследования показывают, что многие системы распознавания образов можно обойти при помощи специальных очков, что позволит проникнуть на охраняемую территорию, украсть материальные ценности или обмануть банкомат или платежную систему.
В системах анализа лояльности к бренду. Анализ слабоструктурированных или «сырых» текстов в социальных сетях и публичных платформах на тональность (негативный или позитивный характер) высказываний играет существенную роль для изготовителей товаров народного потребления, лекарств, производителей контента, кино- и музыкальной продукции. Атака на системы анализа тональности текста может вызвать серьезный ущерб для организаций, изучающих таким образом потребительский рынок и принимающий управленческие решения на основании результатов анализа. Исследователи продемонстрировали возможность переобучения и порчи модели ИИ, предназначенной для автоматического формирования оценки тональности комментариев. Злоумышленник может написать положительный комментарий, который ИИ воспримет как негативный и переобучится. Незначительное изменение в одном слове предложения может привести к тому, что система неправильно истолкует истинный характер комментария. Поскольку анализ «сырых» текстов имеет большое влияние на принятие управленческих решений атаки наносят прямой финансовый ущерб (в виде не окупившихся инвестиций в сам скомпрометированный проект) и упущенной прибыли.
В системах поведенческого анализа. Методы машинного обучения полезны для определения ненадлежащего поведения пользователей на публичных сервисах. Речь идет о выявлении фальшивых пользователей в социальных сетях и пользователей, которые платят за доменные имена, создают сайты-муляжи, чтобы иметь фальшивые, фактически анонимные учетные записи. Вредоносные краудсорсинговые, или, как их еще называют, краудтёрфинговые, системы нужны для связи заказчиков, которые готовы платить за дезинформацию о своем продукте или продукте конкурента, с исполнителями, которые реализуют эти планы, создают и распространяют поддельные новости, проводят вредоносные политические кампании. До недавнего времени модели машинного обучения были весьма эффективными в выявлении подобного рода активности, с точностью до 95 % отделяя естественное поведение от работы краудтерферов. Вместе с тем эти алгоритмы уязвимы, например для атак «отравлением» данных. При целевом противостоянии эффективность существенно снижается.
В системах обнаружения мошенничества с кредитными картами. В некоторых системах обнаружения мошенничества специальный аналитический инструмент (классификатор логистической регрессии) применяется для выявления транзакций с признаками мошенничества, которые блокируются до детального выяснения их валидности. Однако он тоже может подвергнуться атаке и мошеннические транзакции останутся незамеченными.
В системах интеллектуальной идентификации человека. Для усиления контроля выполнения «чувствительных» финансовых операций используются алгоритмы, определяющие по специфичности нажатия клавиш, что данные вводит человек, и идентифицирующие личность человека. Однако злоумышленники научились создавать состязательные выборки, которые обманывают весьма точный в нормальном режиме работы классификатор. После исследовательской атаки алгоритм начинал определять искусственно созданный клавиатурный ввод как принадлежащий конкретному пользователю-человеку.
В статистических спам-фильтрах. Некоторые спам-фильтры (например, SpamAssasin, SpamBayes, Bogo-фильтр) основаны на популярном алгоритме обучения Naive Bayes Machine, который впервые был применен в 1998 г. для фильтрации нежелательной почты. Посредством исследовательской атаки злоумышленники научились успешно «обходить» фильтры моделей машинного обучения.
Классификация атак на системы машинного обучения. Атаки на системы машинного обучения классифицируются по их целям, типу вызываемой в системе ошибки, осведомленности атакующего и типу атаки.
Классификация по целям атаки. Данная классификация проводится в зависимости от характера нарушения свойств безопасности: доступности, целостности, конфиденциальности модели и другим целевым свойствам, установленным для системы.
Нарушение доступности. К атакам с целью нарушения доступности относят атаки, направленные как на снижение стабильности работы модели для корректных входных данных, так и на полную остановку сервиса. К таким атакам относится:
– искусственное формирование запросов, которые требуют большей, чем планируемая, вычислительной мощности, искусственно вводя систему в режим пиковой нагрузки, что драматически снижает общую производительность;
– генерация потока сложноанализируемых объектов, которые будут ложно квалифицироваться и требовать медленной ручной классификации, отвлекая персонал от штатной работы;
– запуск конкурентных процессов, не позволяющих модели ИИ работать на проектных мощностях.
Нарушение целостности. Успешные атаки этого класса приводят к тому, что система продолжает корректно работать на основном потоке входных данных, но непредсказуемым образом дает некорректный вывод. Более сложной является атака обучающая модель таким образом, что на определенных, заранее установленных злоумышленниками данных выдается нужный злоумышленнику вывод. К этому классу атак относятся атаки состязательными примерами. Принцип атаки – подача модели на вход данных, изменённых таким образом, чтобы модель машинного обучения модель изменялась под задачи злоумышленника. Одно из планируемых последствий таких атак – подорвать доверие пользователей, которые увидев явные и непредсказуемые ошибки ИИ откажутся от этого сервиса.
Нарушение конфиденциальности. В результате атак этого класса происходит получение конфиденциальной информации о пользователях, самой модели, гиперпараметрах, использованных во время обучения (являющихся интеллектуальной собственностью), данных обучения. Это разведывательные атаки, backdoor, trojans и др.
Классификация по типу вызываемой ошибки. Когда атакующий ставит себе цель добиться гарантированно ошибочной классификации, атака называется non-targeted. Например, если на дорожный знак нанести определенную краску, модель распознавания уже не сможет отреагировать на знак.
Атака относится к типу targeted если цель атакующего отнести какой-либо экземпляр к определенному классу даже если это и не так. Например, рекламный плакат может содержать в себе паттерн, воспринимаемый моделью как дорожный знак и инициировать соответствующее поведение управляемой системой. Существенной проблемой является то, что человек визуально обнаружить проводимые таким образом атаки не сможет.
Классификация по осведомленности атакующего. Успешность атаки во многом зависит от того, сколько информации у атакующего о модели. Если атакующему известны модель, алгоритм, данные обучения, тип нейронной сети, количество ее слоев, то это атака называется атакой «белого ящика». Если атакующий обладает минимальными (общедоступными) знаниями о модели, данными обучения и алгоритмами, такие атаки называют атаками «черного ящика». Атаку, в которой используются частичные знания о модели, называют атакой «серого ящика».
Классификация по типу атаки. Среди атак на модели глубокого обучения выделяют три основных типа: состязательные атаки, «отравление» данных и исследовательские атаки. Кроме основных проводятся такие атаки как backdoors, trojans и др.
Состязательные атаки. Атаки реализуются посредством того, что входные данные изменяют таким образом, чтобы модель переобучилась и стала допускать ошибки в классификации. Угрозы от такого типа атак высока, поскольку подобные атаки очень эффективны, просты в реализации и масштабируемы – один и тот же метод атаки применим к различным моделям, построенным на одном алгоритме обучения.
«Отравление» данных. Такая атака проводится на этапе первичного обучения модели, когда злоумышленник вводит данные или манипулирует данными обучения, либо чтобы создать «черный ход» для использования во время эксплуатации (без ущерба для производительности модели при обычных входных данных), либо с целью добиться последующего генерирования произвольных ошибок искажая предназначение модели в процессе обучения.
В зависимости от цели злоумышленника это нарушает свойства целостности или доступности модели. Типичный пример создания «черного хода» – атака на распознавание лиц, когда злоумышленник вводит в набор обучающих образцов данные определенного объекта. Цель состоит в том, чтобы заставить модель связать конкретный объект (допустим, кепку) с целевым пользователем, например, пользователя, имеющего право доступа не территорию. Впоследствии любое изображение лица человека в кепке будет классифицироваться как пользователь, имеющих право доступа, даже если оно принадлежит не зарегистрированному в модели человеку. «Отравление» – один из самых распространенных типов атак. История «отравляющих» атак на ML началась в 2008 г. со статьи посвященной теме эксплуатации уязвимостей машинного обучения чтобы подорвать штатную работу спам-фильтров. В статье был представлен пример атаки на спам-фильтр. Позже было опубликовано более 30 других исследовательских работ об «отравлении» и защите от него.
Существуют четыре основных стратегии «отравления» данных:
1) модификация меток: атаку модификации меток злоумышленник проводит на этапе обучения модели – изменяются классификационные метки случайных экземпляров в наборах данных для обучения;
2) внедрение данных: при подобной атаке у злоумышленника нет доступа ни к данным обучения, ни и к алгоритму обучения, но у него есть возможность дополнить новыми данными обучающий набор. Таким образом можно исказить целевую модель, вставив в набор обучающих данных вредоносные образцы;
3) модификация данных: у атакующего нет доступа к алгоритму обучения, но он имеет полный доступ к данным обучения. Обучающие данные злоумышленник отравляет непосредственно путем изменения перед их использованием для обучения целевой модели;
4) разрушение логики: если у противника есть возможность напрямую вмешиваться в алгоритм обучения. Такая атака также называется логическим искажением.
Исследовательские атаки. Целью таких атак является нарушение конфиденциальности на этапе штатной работы модели. К исследовательским относят несколько типов атак: восстановление модели, восстановление принадлежности, инверсия модели, восстановление параметров. В процессе исследовательской атаки изучается модель ИИ или набор данных, которые в дальнейшем используют злоумышленники. Результат такой атаки – получение знаний о системе ИИ и ее модели, т. е. это атака для извлечения моделей. Атака на данные позволяет «добыть», в частности, сведения о принадлежности экземпляра классу (например, о наличии прав доступа на объект конкретного человека). При помощи инверсии модели извлекают конкретные данные из модели. В настоящее время исследования посвящены в основном атакам логического вывода на этапе разработки модели, но они возможны и во время обучения. Например, если мы хотим понять, как веб-сайт социальной сети определяет принадлежность к целевой аудитории, в частности к группе беременных женщин, чтобы показать конкретную рекламу, то можем изменить свое поведение, предположим, пытаясь найти информацию о памперсах, и проверить, получаем ли мы объявления, предназначенные для будущих мам.
Восстановление принадлежности экземпляра. Злоумышленник намеревается узнать, был ли конкретный экземпляр в наборе обучающих данных. Речь идет о распознавании изображений. Атакующий хочет проверить, были или нет в обучающем наборе сведения о конкретном человеке. Сам по себе это редко используемый тип разведочных атак. Однако он дает возможность разработать план дальнейших атаки, таких как атака «уклонение» класса «черный ящик». Чем больше вредоносный набор данных похож на набор данных жертвы, тем выше у злоумышленника шанс переобучить атакуемую модель. Вывод атрибута помогает узнать обучающие данные (например, об акценте ораторов в моделях распознавания речи). Успешная атака на восстановление принадлежности показывает, насколько соблюдается конфиденциальность, в частности персональных данных, разработчиками моделей ИИ.
Инверсия модели. На сегодняшний день является наиболее распространенным типом разведочных атак. В отличие от восстановления принадлежности, когда можно всего лишь угадать, был ли пример в наборе обучающих данных, при инверсии модели злоумышленник пытается извлечь из обучающего набора данные в полном объеме. При работе с изображениями извлекается определенное изображение. Например, зная только имя человека, злоумышленник получает его (ее) фотографию. С точки зрения конфиденциальности это большая проблема для любой системы, обрабатывающей персональные данные. Известны также атаки на модели ИИ, которые используются для оказания помощи в лечении в зависимости от генотипа пациента.
Восстановление параметров модели. Цель подобной атаки – определить модель ИИ и ее гиперпараметры для последующих атак типа «уклонение» класса «черный ящик». При этом восстановленные параметры модели используют, чтобы увеличить скорость атак. Одна из первых работ о таких атаках была опубликована в 2013 г. («Взлом умных машин при помощи более умных: как извлечь значимые данные из классификаторов машинного обучения»).
Кроме основных типов атак, выделяют атаки backdoors и trojans. Цели этих атак и типы атакующих различны, но технически они очень похожи на атаки «отравления». Разница заключается в наборе данных, доступных злоумышленнику.
Троянские атаки (trojans). Во время отравления злоумышленники не имеют доступа к модели и начальному набору данных, они могут только добавить новые данные в существующий набор или изменить его. Что касается трояна, то злоумышленники все еще не имеют доступа к начальному набору данных, но у них есть доступ к модели и ее параметрам, и они могут переобучить эту модель, поскольку в настоящее время компании, как правило, не создают свои собственные модели с нуля, а переобучают существующие модели. Например, если необходимо создать модель для обнаружения рака, злоумышленники берут новейшую модель распознавания изображений и переобучают при помощи специализированного набора данных, поскольку отсутствие данных и изображений раковых опухолей не позволяет обучать сложную модель с нуля. Это означает, что большинство компаний-разработчиков загружают популярные модели из интернета. Однако хакеры могут заменить их своими модифицированными версиями с идентичными названиями. Идея трояна заключается в следующем: найти способы изменить поведение модели в некоторых обстоятельствах таким образом, чтобы штатное поведение модели оставалось неизменным. Сначала хакеры объединяют набор данных из модели с новыми входными данными и уже на объединенном наборе переобучают модель. Модификация поведения модели («отравление» и трояны) возможна даже в среде «черного ящика» и «серого ящика», а также в режиме полного «белого ящика» с доступом к модели и набору данных. Тем не менее главная цель – не только ввести дополнительное поведение, но и сделать это таким образом, чтобы заложенная уязвимость (бэкдор) работала после дальнейшей переподготовки системы добросовестными разработчиками.
«Черный ход» (Backdoor). Идея такой атаки взята от одной из самых старых ИТ-концепций – бэкдоров. При разработке моделей ИИ исследователи закладывают в нее и общий, базовый функционал, и возможность дальнейшего переобучения. С целью маскировки атаки по завершению несанкционированного переобучения модель должна сохранить базовый функционал. Это достижимо за счет того, что нейронные сети, например, для распознавания изображений, представляют собой масштабные структуры, образованные миллионами нейронов. Чтобы внести изменения в такой механизм, достаточно модифицировать лишь небольшой их набор. Еще один фактор, делающий возможным атаку «черного хода», заключается в том, что модели распознавания изображений, например Inception или ResNet, крайне сложны. Они обучены на огромном количестве данных, для чего использовались дорогостоящие вычислительные мощности. Провести аудит и выявить черный ход крайне затруднительно.
Атаки подменой модели машинного обучения. Ресурсами малых и средних компаний создать модели машинного обучения высокого качества практически невозможно. Вот почему многие компании, которые обрабатывают изображения, применяют предварительно обученные нейронные сети крупных компаний. В связи с чем чтобы решить задачу обнаруживать раковые опухоли разработчики могут использовать сеть, доучивая ее, изначально предназначенную для распознавания лиц знаменитостей. Если злоумышленникам удастся взломать сервер, на котором хранятся общедоступные модели (а уровень безопасности общедоступных сервисов невысокий), и загрузить свою собственную модель с интегрированным «черным ходом», модели сохранят свойства, заложенные хакерами даже после переобучения модели добросовестными разработчиками. Например, «черный ход», встроенный в детектор американских дорожных знаков, оставался активным даже после того, как модель была переобучена на идентификацию шведских дорожных знаков вместо американских аналогов. Если владелец не является экспертом, обнаружить эти «черные ходы» практически невозможно. Регулярно появляются методики их обнаружения, но также регулярно возникают новые способы маскировки «черного хода», заложенного в модель.
Классификация атак на методики машинного обучения. Эталонный процесс обучения ИИ предполагает наличие большого набора подготовленных данных, доступ к высокопроизводительным вычислительным ресурсам. Задействованные данные не должны быть личными (приватными), они должны обрабатываться в едином централизованном хранилище. Необходима также фаза стандартного обучения и тонкой настройки гиперпараметров. Однако эти условия в полном объеме тяжело соблюдать на практике. В силу чего для смягчения таких жестких требований были разработаны и приняты в эксплуатацию методики машинного обучения, например трансферное обучение, федеративное обучение, сжатие моделей, многозадачное обучение, метаобучение и обучение на всем жизненном цикле. Они получили широкое распространение даже несмотря на наличие уязвимостей, позволяющих хакерам проводить успешные атаки на разработанные модели.
Многозадачное обучение. Оно повсеместно применяется для решения задач в области классификации изображений, обработки естественного языка и т. п. Даже когда целью обучения модели является выполнение одной задачи, модель обучают в целях выполнения связанных подзадач для улучшения качества и скорости решения главной задачи. Одна из возможных атак – «отравление» набора данных одной задачи и проверка возможности использовать ее выход (результат выполнения) для других задач. Например, жертва хочет обучить модель для определения выражения лица, но из-за нехватки данных решает вспомогательную задачу распознавания лиц при помощи общедоступных наборов данных. Злоумышленник «отравляет» общедоступный набор данных, когда занимается вспомогательной задачей, так чтобы создать «черные ходы» для всей модели. Безусловно, формирование обучающего изображения для создания бэкдора не является тривиальным вопросом и требует знаний и квалификации злоумышленника. Все атаки на однозадачные модели применимы к многозадачным моделям, однако последние могут подвергаться атакам новых типов. Пример – прогнозирование смены направления для рулевого управления в автомобиле без водителя. Разработчик атакуемой модели рассматривает классификацию характеристик дороги как вспомогательную задачу. Поскольку модель обучена для двух связанных задач, выходные данные классификации характеристик дороги имеют прямую связь с выходными данными задачи прогнозирования направления рулевого управления. Запрашивая ответ от зараженной модели характеристик дороги, злоумышленник задает взаимосвязи между этими заданиями. Хотя злоумышленник может не знать, как изменить входные данные, чтобы воздействовать на рулевое управление, но он может изменить вход – подменить определенную характеристику дороги, которая, в свою очередь, повлияет на прогнозирование рулевого управления. Другими словами, злоумышленник использует задачу A в целях создания задачи состязательного целевого ввода для задачи B. Даже если он напрямую не может атаковать B, то посредством вывода А он сделает это опосредованно.
Машинное обучение в течение жизненного цикла. С непрерывным обучением тесно связаны две концепции:
предположение о том, что все исторические знания доступны и используются для изучения новых задач;
накопление полученных новых знаний.
Первая концепция допускает потенциальное заражение данных при атаках типа Backdoor и исследовательских атаках. Согласно второй концепции, процесс может быть нарушен, поскольку атака не позволит системе сохранять получаемые знания и отработанные задачи. Это тип атаки на доступность, она не дает реализовать подход к обучению в течение жизненного цикла.
Выяснение того, как «черные ходы» и атаки «отравлением» данными могут повлиять на системы обучения, имеет первостепенное значение. Например, если решение справляется с задачей накопления знаний, может ли злоумышленник создать бэкдор для одной задачи и использовать ее для всех других новых задач? Если это возможно, то последствия для безопасности будут катастрофическими.
Также злоумышленники могут атаковать процесс накопления полученных знаний. Один из методов атаки заключается в изучении того, может ли добавление нескольких тщательно созданных обучающих образцов с правильными метками изменить структуру модели так, чтобы она плохо выполнялась в прежних задачах. Злоумышленники таким образом инициируют в модели оптимизацию ретроспективных знаний, цель которой состоит в том, чтобы изменить модель под новую, атакующую задачу, тем самым повредить результаты обучения на старых задачах. Механизмы атаки и защиты, характерные для обучения на протяжении всего жизненного цикла, требуют дополнительных исследований.
§ 2. Большие данные
Понятие. Большие данные (Big Data) – это крайне большой объем структурированных и неструктурированных данных произвольного типа, обрабатываемый в горизонтально масштабируемых информационных системах. Назначение систем Big Data – помогать в принятии решений и инициировать действия на основе анализа цифровой информации. При помощи систем Big Data принимаются решения о необходимости профилактики эпидемий, об изменении полётного графика воздушных судов, о пригодности деталей автомобиля для эксплуатации, о необходимости провести внеплановый ремонт на строительных объектах и многие другие.
История. Определение Big Data появилось в 2008 г. Безусловно, до этого времени существовали методологии анализа информации, однако стоимость хранения и обработки данных была столь велика, что ограничения в ресурсах либо сводили на нет полезность аналитических отчетов из-за низкой скорости их предоставления, либо качество отчетов было столь низким, что они не имели практического применения.
Вместе с тем, объемы данных росли лавинообразными темпами: пользователи социальных сетей генерировали огромные объемы информации, корпорации копили сведения о клиентах, индустриальные предприятия использовали датчики для контроля технологических процессов, в дополнение к ним в широкой эксплуатации появились домашние приборы и автоматизированных системы, которые без участия человека используют интернет, автоматически отсылают информацию о своем состоянии, получают и обрабатывают команды пользователей и тем самым также порождают огромные объемы данных.
Усиливалась и потребность в анализе этих данных – постоянно шел поиск ответа на бизнес-задачи: предсказание потребительского поведения с целью повысить эффективность маркетинговой активности; цифровое моделирование индустриальных объектов, с целью снизить затраты на дорогостоящие испытания; быстрый анализ данных с погодных датчиков для обеспечения безопасности полетов и др.
К 2008 г. технологический прорыв в области микропроцессорных технологий и в производстве систем хранения данных на порядки снизил стоимость хранения и обработки. Это упростило и удешевило доступ к вычислительным ресурсам до недостижимого прежде уровня, что сделало возможным дальнейший прогресс в развитии аналитических систем.
Важнейшей вехой в истории систем класса Big Data является развитие технологии кластеризации, реализующей горизонтальное масштабирование – объединение разрозненных единиц вычислительной техники в общую вычислительную систему с единым управлением.
Повысилась доступность систем Big Data для широкого круга разработчиков программного обеспечения благодаря изменению бизнес-моделей глобальных технологических компаний: появились трансконтинентальные IT-инфраструктуры, позволяющие использовать практически неограниченные вычислительные мощности и системы хранения без первичных инвестиций – на условиях оплаты аренды ресурса с почасовой тарификацией. Такого рода бизнес-модели сняли финансовые ограничения для малых технологических компаний и дали им возможность активно разрабатывать аналитические инструменты для широкого круга потребителей.
Предпосылками активного развития систем Big Data стали:
– рост объема цифровой информации и потребность коммерческих и государственных организаций в результатах ее анализа;
– технологический прорыв в области микроэлектроники;
– деятельность саморегулирующихся сообществ разработчиков программного обеспечения;
– появление новых бизнес-моделей коммерческих организаций, обеспечивающих широкий доступ к вычислительным ресурсам.
Свойства систем Больших данных. Определяющими свойствами, по которым системы анализа и сбора информации относят к классу Big Data, являются объем обрабатываемых данных, их разнородность, возможность горизонтального масштабирования. Выделяют также ряд потребительских свойств системы, такие как скорость обработки данных, потребительская ценность, достоверность и другие.
Основное свойство систем Big Data – обработка крайне больших массивов данных объем которых постоянно и с большой скоростью увеличивается. Речь идет о данных миллионов финансовых операций, десятках миллионов переходов на веб-сайтах интернет-магазинов, сотен миллионов значений датчиков погоды, снимающих показания по всему миру, миллиардов записей пользователей на персональных страничках социальных сетей, десятков миллиардов действий пользователей поисковых систем и мобильных приложений.
Разнородность данных – это возможность обработки в системе разнообразных типов данных и их структур. Это свойство характеризует возможность системы проводить анализ неструктурированных данных: «сырых» текстов, медиафайлов – аудиофайлов, видеофайлов и файлов изображений; слабоструктурированной информации: например, новостных каналов, электронных таблиц; структурированных данных реляционных СУБД и данных, полученных в виде структурированного ответа на запрос на специализированных языках работы с данными.
Скорость обработки означает возможность системы принимать и обрабатывать данные в необходимом объеме за ограниченное время. Многие системы Big Data предназначены для сбора информации из большого количества источников в режиме реального времени и их анализа также в режиме реального времени. Пример – медицинские устройства, предназначенные для сбора данных о здоровье и мониторинга состояния пациентов. Предназначение и важность этих систем требует собирать, анализировать эти данные и затем передавать результаты медицинскому персоналу за минимальное количество времени. Необходимость реализации интернета вещей медицинского оборудования создает запрос на обеспечение высокой скорости передачи и обработки данных.
Возможность горизонтального масштабирования – это возможность увеличить производительность и емкость системы путем подключения аппаратных или программных ресурсов таким образом, чтобы они работали как единое логическое целое. Этот механизм также называется кластеризацией вычислительных систем. Если кластеру требуется больше ресурсов для повышения производительности, обеспечения более высокой доступности, администратор может масштабировать вычислительный ресурс, добавляя в кластер больше серверов и/или хранилищ данных.
Поддержка горизонтальной масштабируемости подразумевает возможность увеличивать количество и заменять узлы «на лету», не значительно прерывая функционирование системы. Например, распределенная система хранения данных Cassandra, включает сотни узлов, размещенных в различных дата-центрах. Поскольку оборудование масштабируется горизонтально, Cassandra является отказоустойчивой и не имеет одной критичной точки отказа.
Еще одно преимущество заключается в том, что теоретически производительность горизонтально масштабируемых систем не ограничена. Производительность зависит только от количества узлов, подключённых к системе. Это драматически отличает системы с горизонтальным масштабированием от многих традиционных систем обработки данных в которых при увеличении вычислительного ресурса производительность системы в целом значимо не растет. Это приводит к серьезнейшим функциональным ограничениям традиционных систем.
Таким образом, поддержка горизонтального масштабирование обеспечивает возможность роста объемов данных и их анализа, при котором результат анализа не теряет своей полезности за время расчета. Например, оценка ситуации на дороге для системы автопилотирования должна быть рассчитана за доли секунды – в противном случае, такая оценка просто не нужна.
Примером технологического решения реализации горизонтального масштабирования является Hadoop – проект фонда Apache Software Foundation. Hadoop это библиотека для разработки программного обеспечения предназначенная для создания и выполнения программ, работающих на кластерах из сотен и тысяч узлов. Hadoop – библиотека с открытым т. е. бесплатно распространяемым и дающим возможность менять под свои нужды, программным кодом, практический инструмент разработчиков и архитекторов IT-инфраструктур.
Потребительская ценность системы относится к ключевым потребительским свойствам систем больших данных. Ценность системы – это ее пригодность для получения практически применимых выводов и принятия решений.
Наличие огромных объемов данных необходимо для анализа и, безусловно, существует прямая связь между данными (информации представленной в цифровом виде) и знаниями (достоверными представления о предметах и явлениях действительности), но из наличия взаимосвязи не следует означает, что в Big Data всегда есть знания и они могут быть извлечены. Если на их основании данных нельзя сделать полезных выводов, вся система не будет иметь ценности.
Технологии анализа позволяют автоматически находить в потоках данных зависимости, которые не в состоянии выявить человек, такие как, например, влияние атмосферного давления на покупку молочной продукции. Однако, если атмосферное давление за анализируемый период было приблизительно одно и тоже, собранные данные не будут содержать знания о существующей взаимосвязи и ценность системы будет нулевой.
Важной частью инициатив в области больших данных является понимание того, каковы затраты и выгоды от сбора и анализа данных. Необходим обоснованный прогноз, что в конечном счете получаемый результат анализа принесет конкретную пользу.
Качество данных и достоверность системы – свойства, которые показывают, что данные были получены из доверенных источников, в неискаженном виде, по доверенным каналам.
В случае, если анализ проводится на основе искаженных данных, выводы и решения не будут корректными. Например, сообщения в Twitter содержат хэш-теги, сокращения, опечатки, указание личных мнений и т. д. Таким образом данные не являются качественными т. к. искажение текста может привести к искажению заложенного в сообщения смысл. Впрочем, Twitter вызывает сомнения и как источник изначально достоверных данных. А если невысока исходная достоверность их сбор и анализ бесполезны.
Следующий пример относится к использованию данных систем глобальной навигации: часто GPS рассчитывает недостоверные координаты местоположения, особенно при размещении приемника в городских районах. Спутниковые сигналы теряются и искажаются, когда они отражаются от высоких зданий или других сооружений. Как единственный источник данных спутники сами по себе недостоверны. Для повышения качества данные о местоположении следует объединить со сведениями из других источников данных, например, с данными акселерометра или сигналами вышек сотовой связи.
Технологии систем Больших данных. Базовыми технологиями систем Big Data являются технологии сбора, анализа и представления данных.
Технологии сбора:
– смешение и интеграция данных (data fusion and integration) – набор техник для интеграции разнородных данных из разнообразных источников в целях анализа (например, обработка естественного языка, включая анализ настроения говорящего – тональности высказывания);
– краудсорсинг – привлечение широкого и заранее не определенного круга лиц для повышения ценности данных без вступления в трудовые отношения с этими лицами.
Технологии анализа:
– прогнозная аналитика – выявление закономерностей в имеющихся данных, помощь в оценке происходящих процессов и прогнозирование дальнейших событий;
– классификация – отнесение объекта к группе по определенному признаку;
– кластерный анализ – автоматизированное формирование сравнительно однородных групп и отнесение к ним объектов (например, по ряду поведенческих факторов можно выяснить намерение человека украсть что-либо: на основании схемы перемещения покупателя по торговому центру определить, что его поведение не является обычным и предотвратить кражу);
– регрессионный анализ – выявление вероятных последствий (например, можно смоделировать дорожные аварии как последствия сочетания скорости, дорожных условий, погоды, трафика);
– обучение ассоциативным правилам – определение непрямых зависимостей (например, рост количества покупок спичек при покупке мяса, но только в случае приобретения маринада);
– пространственный анализ (Spatial analysis) – класс методов с использованием топологической, геометрической и географической информации для обоснования градостроительных решений;
– машинное обучение – применение программ, которые независимо от человека самомодифицируются на основании обрабатываемых данных;
– классический статистический анализ;
– получение комплексных прогнозов на основе базовых моделей;
– создание самомодифицируемых систем, сходных по структуре с головным мозгом человека.
Технологии представления данных. К ним относится визуализация аналитических данных – представление информации в виде рисунков, диаграмм с использованием интерактивных возможностей и анимации как для получения результатов, так и для применения в качестве исходных данных в целях дальнейшего анализа человеком.
Прикладные технологии:
– имитационное моделирование – создание цифровых двойников, которые с заданной точностью имитируют поведение объектов в реальной жизни. В современной индустрии существенная часть испытаний перенесена в цифровое пространство. Довольно часто появляется бизнес-задача создания цифрового двойника целого предприятия для прогнозного мониторинга его деятельности;
– распознавание образов – технологии, преобразующие аудиоинформацию в текст, изображение в классификационные признаки, что позволяет классифицировать изображения и определять их автора.
Широко используются и другие прикладные решения, основанные на технологических возможностях Big Data.
Области применения Больших Данных.
Здравоохранение. Сфера здравоохранения в настоящее время порождает огромное количество информации, поэтому применение систем Big Data обладает серьёзным потенциалом и определяет будущее цифрового здравоохранения. Системы Big Data в сфере здравоохранения создают со следующими целями:
– снижение стоимости лечения благодаря повышению качества постановки диагноза;
– прогнозирование вспышек эпидемий, а также помощь в решении того, какие профилактические меры можно принять, чтобы минимизировать последствия эпидемии;
– диагностика – расширение списка заболеваний, которые можно выявить по косвенным признакам на ранних стадиях и предотвратить их развитие, что, в свою очередь, сделает лечение более легким и эффективным;
– усиление эффективности лечения с ростом глобальных баз знаний о пациентах, а не только личных знаний врача;
– повышение уровня доверия пациентов к официальной медицине, снижение уровня доверия к шарлатанам, благодаря возможности обосновывать применяемые методы лечения.
Пример технологического решения – носимые устройства и датчики на теле, которые могут обеспечивать снятие, передачу данных о состоянии здоровья в реальном времени и фиксацию их в электронной медицинской карте пациента. Такие технологии были разработаны, в частности, компанией Apple и получили названия Apple HealthKit, CareKit и ResearchKit. Основная цель – дать возможность пользователям и их врачам хранить свои медицинские записи и получать доступ к ним в режиме реального времени на своих телефонах. Это повышает качество диагностики и мониторинга текущего состояния.
Государственное управление. Службы государственного управления ежедневно должны обрабатывать огромное количество данных. Для выполнения своих функций им приходится отслеживать разнообразные источники и базы данных о гражданах, росте их потребностей, энергетических ресурсах, данных географических обследований и многие другие. Надлежащие изучение и анализ этих данных существенно помогают решать насущные проблемы, например:
– принятие на основе актуальных данных более быстрых и обоснованных решений относительно социальных программ;
– выявление событий и определение места их возникновения, которые требуют немедленного реагирования, например, экологическое состояние конкретного района или области;
– выявление и прогнозирование кассовых разрывов в местных бюджетах;
– контроль целевого использования земли и других ресурсов;
– мониторинг безработицы;
– снижение уровня угроз терроризма;
– организация высокоэффективных систем государственной кибербезопасности;
– выявление обманов, подлогов и предоставления недостоверных сведений;
– выявление лиц и организаций, уклоняющихся от уплаты налогов;
– обнаружение и изучение внезапных инфекций, вызванных недоброкачественными продуктами питания.
Логистика. Технологии Big Data используются в муниципальных, коммерческих организациях, а также частными лицами в целях оптимизации логистических операций. При помощи больших данных решаются такие логистические задачи:
– планирование маршрута и оценка времени движения по маршруту, на основе данных систем навигации;
– оптимизация индивидуального маршрута на основе данных по загруженности дорог за счет использования нескольких видов транспорта;
– выявление аварийных ситуаций, например, по отклонению от маршрута, простоям, потере сигнала или внезапному снижению веса транспортного средства;
– управление городским трафиком на основе оценки загруженности дорог и оценки структуры трафика в реальном времени;
– повышение уровня безопасности дорожного движения (обработка данных в реальном времени и прогнозный анализ используют данные службы безопасности дорожного движения для выявления областей с повышенным риском дорожно-транспортных происшествий, что помогает уменьшить количество аварий и увеличить уровень безопасности дорожного движения).
Пример технологического решения: сервис «Яндекс такси». Сервис использует огромное количество данных, касающихся водителей, их транспортных средств, местоположения, результата каждой поездки каждого транспортного средства и т. д. Все эти данные анализируются и применяются для прогнозирования предложения, спроса, местоположения водителя и тарифов, которые будут установлены для каждой поездки. Это повышает качество оказываемой услуги и выручку владельцев сервиса. Обладая возможностями обработки Больших данных, сервис вовлекает и удерживает клиентов сервиса, независимых водителей. Планирование маршрутов в объезд пробок положительно сказывается и на общей загруженности дорог.
Медиа и индустрия развлечений. Социальные и другие медиаплатформы являются одним из самых значимых источников огромных объемов данных. С помощью платформ люди реализуют свои социальные потребности. Для формирования и предложения индивидуальной подборки контента, который понравится конкретному человеку (музыка, видео, новости) системы анализа решают задачу кластеризации. Система выявляет людей со сходными вкусами, объединяет их в группы и предлагать всей группе контент, понравившийся нескольким членам этих групп.
В обмен на удобства, которые создают медиасервисы, бизнес-подразделения получают возможность делать на основе этой же информации более эффективные рекламные кампании, выявлять лояльность к бренду и решать другие бизнес-задачи потребительского поведения:
– прогнозировать интересы аудитории;
– оптимизировать потоки на платформах распространения цифрового мультимедиа;
– получать отзывы клиентов и данные об их враждебном отношении к бренду;
– проводить эффективный таргетинг рекламных объявлений для СМИ.
Пример технологического решения – музыкальные сервисы (Deezer, Spotify и др.) – платформы для предоставления музыки по подписке с использованием аналитики больших данных. Сервисы осуществляют сбор данных от всех пользователей по всему миру с целью дальнейшего формирования рекомендаций индивидуально для каждого пользователя.
В некоторых случаях системы на основе данных о прослушивании определенных стилей и композиций выявляют взаимосвязь между воспроизводимым музыкальным произведением и сиюминутным настроением пользователя. Такого рода данные могут использоваться для оптимизации рекламных объявлений и воздействия средствами рекламы на людей с целью побудить их к спонтанным покупкам.
Мониторинг и прогнозирование погоды. Эта область применения является ресурсоемкой вычислительной задачей. Службы наблюдения за погодой развернуты по всему земному шару, в сборе информации задействованы спутники, датчики давления, скорости ветра, температуры и другие метеодатчики. Для анализа погоды также используются архивные данные наблюдений прошлых десятилетий. Эта информация необходима для прогнозирования погодных явлений и изменения условий окружающей среды.
Исторический пример технологического решения – IBM Вeep Thunder – исследовательский проект компании IBM, обеспечивающий прогнозирование погоды посредством высокопроизводительных вычислений больших данных. В частности, в начале 2000-х, IBM помогала Токио улучшать прогноз погоды для предвидения стихийных бедствий или вероятности повреждения линий электропередачи.
Банковский сектор. Надлежащие изучение и анализ банковских данных помогают обнаружить незаконные действия и оценить риски банковской деятельности, а именно:
– выявлять кражи данных и злоупотребления кредитными и дебетовыми картами;
– оценивать риски и принять меры по снижению рисков венчурного кредита;
– обеспечивать прозрачность ведения бизнеса;
– определять изменение кредитного поведения клиента;
– устанавливать факты отмывания денег;
– помогать налоговым службам обнаруживать схемы уклонения от налогов.
Пример технологического решения: в программах для борьбы с отмыванием денег, таких как SAS Anti-Money Laundering (SAS AML), для обнаружения подозрительных и взаимосвязанных транзакций используется аналитика больших данных. Это позволяет анализировать данные клиентов и снижать риски банковской деятельности. Востребованность таких решений доказывает, что один из крупнейших мировых банков Bank of America является пользователем продукта SAS AML более 25 лет.
Разработка потребительских продуктов. Коммерческие организации применяют системы Big Data для прогнозирования покупательского спроса. Они создают прогностические модели новых продуктов и услуг, классифицируя свойства прошлых и текущих продуктов и услуг, анализируя взаимосвязь между этими свойствами и коммерческим успехом продукта. Кроме анализа и выявления востребованных свойств продукта, для планирования, производства и запуска новых продуктов, коммерческие организации собирают данные и аналитику от фокус-групп из социальных сетей, тестовых рынков и от магазинов в которые поступили пилотные партии продукта.
Пример технологического решения – Netflix – американская развлекательная компания, поставщик фильмов и сериалов в виде потокового мультимедиа. Netflix производит сериалы и заказывает производство фильмов на основе анализа жанрового предпочтения своих зрителей, узнаваемости актеров и режиссеров.
Прогнозное обслуживание. Признаки, на основе которых можно предсказать неисправности механизмов, могут содержаться, но быть трудно выявляемыми в производственных данных и данных по эксплуатации. Это могут быть структурированные данные – например, год производства оборудования, марка и модель машины, а также эксплуатационная информация, которая охватывает миллионы записей журнала поездок, данных датчиков, сообщений об ошибках и о температуре двигателя. Анализируя эти массивы данных, можно обнаружить риски появления проблем и исправить их до того, как они возникнут. На основании результатов анализа данных эксплуатации организации могут осуществлять техническое обслуживание с меньшими затратами и максимально увеличить время бесперебойной и безопасной работы деталей и систем.
Клиентский опыт. Технологии Big Data позволяют собирать данные из социальных сетей, веб-посещений, журналов вызовов и других источников, чтобы улучшить и максимально повысить эффективность взаимодействия с клиентами. Информация о всех видах взаимодействия между потребителем продукта и продуктом или сотрудниками компании анализируется. На основании анализа производитель может изменять сам продукт или подход к взаимодействию, формировать персонализированные предложения с целью привлекать больше клиентов, уменьшать отток постоянных клиентов, оценивать качество работы и проактивно решать возникающие у клиентов проблемы.
Проблематика безопасности Больших данных. Кибератаки на системы больших данных могут привести к крупному финансовому и другим видам ущерба: упущенная прибыль, потеря деловой репутации, судебные издержки, штрафы, бойкоты, санкции. Особенно велик ущерб при успешной атаке на информационные системы компаний, которые собирают информацию о клиентах – данные их кредитных карт и другие персональные данные. Это делает вопрос безопасности Больших Данных крайне важным.
Безопасность больших данных – собирательный термин для обозначения всех мер безопасности, используемых для защиты данных, алгоритмов, программного обеспечения и процессов от уничтожения, изменения, блокировки, компрометации и другого вреда, который может быть нанесен в результате воздействия на систему. Как и другие формы кибербезопасности, безопасность больших данных связана с анализом угроз безопасности, анализом уязвимостей системы и компонент, анализом вероятных нарушителей безопасности и возможных онлайн и офлайн атак.
Спецификой безопасности Больших данных является необходимость сохранения не только стандартных свойств безопасности – целостности, конфиденциальности, доступности, но и обеспечение достоверности, полноты, подлинности данных.
Вместе с тем вопросы обеспечения даже традиционных свойств безопасности стали вызовом для владельцев систем больших данных. Например, для обеспечения доступности системы необходимо создавать не только резервные копии данных, но и создавать избыточное количество вычислительных узлов. Создание систем резервного копирования данных, обеспечение возможности аварийного восстановления или систем с высокой отказоустойчивостью существенно увеличивают затраты на владение системой. А при ее постоянном масштабирование это становится особенно дорогим.
Взрывной рост использования и развития вызвал и проблему с обеспечением организационных мер безопасности. На этапе эксперимента и создания пилотных моделей системой Больших Данных управляют специалисты ответственные за сбор, предоставление и анализ информации т. е. специалисты в решении прикладных задач. Объем данных и общая ценность системы со временем растет, однако при переходе к промышленной эксплуатации ответственных за безопасность системы зачастую забывают назначить. В следствии чего система может оказаться не только изначально спроектирована без учета необходимости принятия мер безопасности, но и в процессе создания и эксплуатации не будет приведена к необходимому уровню защищенности.
Для обычных прикладных систем эта проблема не столь актуальна – ценность системы ясна уже на этапе формирования функциональных требований и необходимость учесть меры безопасности очевидна. Для обычных систем существует обширная практика использования средств защиты информации, разработаны рекомендации и стандарты, описывающие необходимые меры безопасности на разных этапах жизненного цикла. В случае систем Больших Данных создание системы практически всегда исследовательская работа – эксперимент, ценность системы изначально не очевидна, самих систем не так много, лучшими практиками владельцы систем делятся не активно и самих систем несравнимо меньше. В связи с чем и распространена ситуация, когда в эксплуатации, широком доступе оказывается крайне уязвимая система.
Еще одна специфика безопасности Больших данных использование открытых технологических разработок. Например, поиск и обнаружение зависимостей в данных осуществляются при помощи специальных аналитических инструментов. Многие инструменты, используемые при обработке больших данных и в интеллектуальной аналитике, имеют открытый исходный код т. е. представляют собой свободно распространяемый программный код и его описание. Это дает возможность на его основе создавать новые системы посредством копирования и доработки открытого кода. Зачастую использование осуществляется без детального изучения скопированного исходного программного кода и в случае, если код был получен не из доверенного источника, его использование может привести к появлению «черного хода» в новой системе.
Очевидно также, что даже если скопированный код был без закладок, он предназначен для решения именно прикладной задачи, и, если самостоятельно не поставить цели разработать подсистему безопасности система, созданная посредством такого переиспользования кода, окажется такой же уязвимой как исходная. С точки зрения специалистов в информационной безопасности такая практика является общей, системной угрозой безопасности Больших Данных.
Факторы рисков безопасности. Риски информационной безопасности систем Больших Данных формируют большое количество факторов. Некоторые из них такие, как использование сотрудниками личных устройств, использование распределенных инфраструктур, являются общими для систем различных классов, некоторые, отсутствие единых стандартов, специфичны именно для систем больших данных.
Ценность ресурса. Системы Большие данных являются дорогостоящими и представляют значительную прикладную ценность. Ценность представляют как сами данные, аналитические заключения, полученные с их помощью, так и программно-аппаратный вычислительный ресурс, задействованный в системе. Благодаря этой ценности к системам больших данных имеет место повышенный интерес со стороны злоумышленников.
Нарушителями безопасности Big Data становятся как профессиональные преступники, получившие заказ на выведение системы из строя или кражу доступа к данным или управлению системой, так и инсайдеры, осознавшие, какую ценность может представлять полученная в результате анализа информация и готовые ее продать.
Высокая динамика развития систем. Современная ситуация такова, что в коммерческих организациях постоянно создается управленческое давление стимулирующее быстрое принятие решений при разработке ИТ-решений и построении ИТ-систем. В связи с тем, что формирование требований к безопасности и применение мер безопасности замедляет скорость развития систем и их производительность, специалисты по безопасности зачастую отстраняются от участия в формировании архитектурных и бизнес-решений поскольку рассматриваются как объективный фактор снижения скорости роста деловой активности компании. Риски, порождаемые слабой защитой данных, игнорируются, несмотря на то, что они хорошо известны и у многих компаний есть собственный опыт получения финансового ущерба в результате реализации рисков безопасности.
Использование распределенных инфраструктур. Большая часть существующих систем Больших Данных управляет огромным количеством распределенных узлов обработки данных, обеспечивает взаимосвязь между значительным количеством интегрированных и смежных систем для обеспечения быстрого сбора и анализа информации.
Сбор и обработка больших данных, основанная на использовании распределенных ресурсов, чаще всего осуществляется посредством интеграции с ресурсами облачными, что приводит к необходимости обеспечить системе доступ в интернет. В результате тесная интеграция с сетями общего пользования негативно влияет на информационную безопасность распределенной системы.
Технология Hadoop – пример технологии с открытым исходным кодом. Изначально система на базе Hadoop развернутая исключительно на локальных ресурсах организации подвержена тем же угрозам безопасности, что и обычные системы. Однако при необходимости наращивать вычислительные мощности переход к распределенной обработке вовлекает в зону необходимого контроля существенное количество других внешних систем, в каждой из которых могут возникнуть проблемы. Процесс вычисления больших данных распределяется между несколькими серверами и узлами. Система Больших Данных, реализованная на Hadoop, может состоять из нескольких десятков узлов, иногда порядка сотен или тысяч, и большой объем информации постоянно мигрирует между ними.
Такая среда распределенных вычислений, включающая огромное количество эластичных т. е. динамически изменяемых ресурсов, делают обеспечение безопасности Больших Данных крайне сложной задачей.
Многие традиционные подходы к обеспечению безопасности, например, брандмауэры и системы обнаружения вторжений (IDS), не предназначены для защиты распределенных файловых систем и обработки огромного количества данных. Для снижения рисков технология Hadoop в настоящее время поддерживает механизмы безопасности, такие как использование Kerberos, управление разрешениями непосредственно HDFS (Hadoop Distributed File System). Однако Kerberos не является обязательным требованием для кластера Hadoop, что позволяет запускать группы задач без соблюдения каких бы то ни было требований безопасности. Кроме того, Kerberos трудно установить и настроить в кластере. Интеграции с Active Directory и облегченный протокол доступа к каталогам LDAP – тоже зачастую является проблемой.
Тем не менее разрабатываются и применяются новы методы обеспечения безопасности, учитывающие специфику распределённых вычислений. Это, в частности, внедрение криптографического преобразования всех данных – как локальных, так и транзитных.
Использование нереляционных хранилищ данных. Системы управления базами данных нового типа – NoSQL – в отличие от классических реляционных чаще всего не имеют на уровне базового функционала встроенных средств защиты. Считается, что для защиты баз NoSQL должны использоваться накладные средств защиты информации производства третьей стороны. В целях экономии накладные средства зачастую не приобретаются и не используются или используются, но могут быть неправильно настроены, если эта задача поручена не профильному специалисту.
Динамически изменяемое место хранения. С целью оптимизации стоимости и производительности архитектура больших данных подразумевает хранение информации на устройствах различных типов с различной производительностью и, соответственно, стоимостью. Например, чувствительные и часто используемые данные размещаются на высокопроизводительных твердотелых накопителях, архивы – на дешевых механических дисках с низкой скоростью чтения и записи. Таким образом, при изменении прикладной задачи и важности той или иной информации миграция данных с одного физического носителя на другой происходит в автоматическом режиме в соответствии с необходимостью обеспечить требуемую производительность и цену хранения. Организовать соблюдение безопасности таких автоматических процессов существенно сложней чем в традиционных системах с фиксированной схемой размещения данных.
Высокая уязвимость результата анализа данных. Аналитические инструменты реализуют главный прикладной функционал больших данных – при их помощи выявляются закономерности, которые помогают принимать решения, корректировать управленческие стратегии и др. Важно обеспечить защиту от внешних угроз не только самой системы, но и результатов анализа.
Результаты анализа в отличии от огромных объемов исходных данных могут иметь компактную, удобную для восприятия человеком форму, некоторые человек может просто запомнить. В связи с этим актуальной становится защита от инсайдеров, которые злоупотребляют полномочиями для получения являющихся ценной конфиденциальной информацией результатов анализа.
Классические проблемы контроля доступа. Как и в случае с классическими корпоративными ИТ-системами, в системе больших данных очень важно обеспечить процедуры аутентификации и авторизации, которые определяют, что пользователь именно тот, за кого себя выдает и устанавливают уровни доступа и полномочий в системе. Вероятный ущерб от несанкционированного доступа в системах Больших Данных существенно выше, чем в классических прикладных системах.
Стоит также отметить, что пандемия обострила проблему безопасного доступа к системам Больших Данных поскольку пользователи начали массово подключаться к корпоративным системам из недоверенной среды – из домашних сетей и с домашних устройств, не приведенных в соответствие корпоративным политикам безопасности.
Человеческий фактор. Проблема простых паролей, бесконтрольная передача и тиражирования паролей, использование одинаковых паролей в нескольких системах, потеря аппаратных средств авторизации, использование устройств не соответствующих корпоративной политике безопасности, некомпетентное управление привилегированным доступом, необоснованное повышение уровня доступа в системах – лишь некоторые из многих аспектов безопасности связанных с проблемой человеческого фактора при эксплуатации систем Больших Данных, которые имеют огромное значение в современном цифровом мире.
Использование сотрудниками личных устройств. Еще одним фактором, уменьшающим защищенность информационных систем Больших Данных, является практика использования собственного оборудования сотрудников – BYOD (Bring-Your-Own Device), когда при работе в корпоративной среде сотрудники задействуют собственные ноутбуки, смартфоны, на котором запускаются как корпоративные, так и сторонние приложения, устанавливаемые сотрудниками по личной инициативе.
Такие приложения, особенно неизвестного происхождения, повышают риски нарушения безопасности в корпоративных системах. Меры безопасности, принимаемые самим сотрудником, управляющим подобным устройством, крайне тяжело поднять до уровня и стандартов, установленных в корпоративной политике управления данными. В настоящее время на рынке уже существуют зрелые корпоративные решения по управлению устройствами, находящимися в личном владении пользователя. Такие системы контроля позволяют проверять устройство на соответствие политикам безопасности каждый раз перед тем, как предоставить доступ к корпоративной системе или разрешить доступ в корпоративную сеть. Однако, корпоративный контроль безопасности личных устройств удорожает владение ИТ-инфраструктурой, влияет на удобство использования оборудования, что приводит к тому, что таким контролем начинают пренебрегать в пользу дешевизны и удобства.
Отсутствие единых стандартов. В настоящее время при создании систем больших данных многие архитекторы и разработчики руководствуются весьма расплывчато сформулированными подходами или, наоборот, частными специализированными практиками отдельных отраслевых лидеров. Общепринятых стандартов в области Больших Данных в настоящее время нет.
Между тем стандартизация важна в любой системе массового применения, поскольку она задает определенный уровень качества и тем самым влияет на общее состоянии отрасли в том числе и в части безопасности. Стандарты позволяют напрямую, в случае если стандарт утвержден законодательно, или косвенно, если стандарт признан экспертным сообществом, регулировать независимую разработку и использование систем Больших Данных. Стандарт позволяет давать независимые сравнительные оценки технологических решений. Для обеспечения возможности стимулирования, оценки и регулирования использования технологий в сообществах широкого спектра стандарты играют очень важную роль.
Так, на текущий момент существует большое количество коммуникационных протоколов в разных прикладных областях Больших Данных, что создает проблемы интероперабельности – возможности взаимодействовать и функционировать с другими продуктами или системами без каких-либо ограничений и трудозатратных настроек сред, состоящих из систем, работающих в разных стандартах, по разным технологиям, так называемых гетерогенных сред.
Отсутствие стандартизации снижает динамику инноваций и создает барьеры для принятия концепций и технологий Больших Данных широким кругом лиц и организаций, поскольку возникает необходимость знать большое количество разнообразных протоколов и технологий.
Требуется более широкое сотрудничество между промышленностью и государственными структурами, которые способствуют и стандартизации, и конкуренции на рынке.
Уязвимости Больших данных.
Низкая достоверность входных данных. Проблемы безопасности при работе с большими данными зачастую начинаются с момента получения первичных данных. Это обусловлено тем, что нередко источники (учетная система, устройство IoT, веб-сервис и т. п.) являются в отношении к Big Data внешними, не контролируемыми системами. Источник, передающий в систему данные, может быть изначально скомпрометирован. Также может быть скомпрометирован канал передачи данных посредством внесения изменения в данные в процессе доставки данных, сохраняющие формат и искажающие смысл информации, и искажения, делающие получаемые данные непригодными для обработки.
Система Big Data, выстроенная без мер обеспечивающих доверие к входным данным, создает для владельца системы серьезные риски. Проблема особо актуальна при работе с розничным рынком. Ложные транзакции могут заноситься в систему посредством мошеннических устройств, имитирующих штатную работу. Если в базу данных попадет искаженная информация, то и результат анализа не будет отражать реальную ситуацию и решения, в том числе финансовые, будут приниматься исходя из неверных предпосылок. Подмена данных, поступающих на вход системы Big Data, может нанести крупный финансовый, материальный и другие виды ущерба.
Для снижения рисков таких атак необходимо использовать, например, системы контекстного контроля, анализирующие контекст транзакций, которые могут отслеживать в какое время, откуда, в каком объеме, кем и какие данные были получены от систем-источников и фиксировать выбросы – аномальные значения входных данных из систем-источников и конечных точек.
Небезопасные веб-интерфейсы. Многие веб-интерфейсы устройств, являющиеся узкоспециальными веб-сайтами, имеют ряд уязвимостей безопасности, характерных именно для веб-решений. Основная часть взаимодействия с Большими Данными происходит через веб-интерфейс, и именно они могут стать уязвимой частью системы, «дырой» в системе безопасности.
Реализация уязвимостей т. е. успешная атака на веб-интерфейс позволяет киберпреступникам получить доступ к данным и/или возможность использовать ее функционал. Веб-интерфейсы обычно служат для просмотра и обработки данных независимо от их размера. Такие давно известные методы взлома сайтов, как SQL-инъекция, все еще эффективны против веб-интерфейсов, которые не проверяют вводимые данные.
Отсутствие базовых средств контроля безопасности. Эта системная и нередко встречающаяся уязвимость заключается в том, что принципы безопасности зачастую не рассматриваются как необходимые принципы проектирования. Компании не закладывают в продуктивную модель то, как они будут защищать свои хранилища больших данных в процессе эксплуатации, не конструируют механизмы проактивной и реактивной защиты (например, сканирование и анализ угроз, защита периметра), не обеспечивают фильтрацию потоков данных в режиме реального времени, чтобы выявить и нейтрализовать угрозы безопасности и аномалий. При этом зачастую недостатки подсистем безопасности, которые можно обнаружить в системах больших данных, связаны с применением примитивных, уязвимых механизмов аутентификации – это, например, идентификация по учетной записи и паролю. Еще одна распространенная уязвимость – отказ от создания безопасных каналов доступа к базам данных по сетям общего пользования.
Бессистемное использование средств маскировки и шифрования. Даже при наличии средств сетевой защиты применение безопасных механизмов надежной передачи данных от конечных точек к системам не всегда проводится должным образом. Необходимость часто перенаправлять потоки ведет к появлению каналов обмена данными, которые по тем или иным причинам обходят использование механизма шифрования. В такой ситуации возникают потоки незащищенных данных.
Слабоуправляемая миграция данных. Система больших данных – распределенная инфраструктура с автоматизированным управлением. В силу этого незнание того, где находятся все данные в определенный момент времени, является нормой что представляет собой еще одну уязвимость систем больших данных. Данные при автоматизированном управлением хранилищем могут находиться как локально, так и в облаке. Потеря контроля при отслеживании перемещения данных создает риски зловредного воздействия, снижает уровень защищенности системы. Для подобных систем затруднено и принятие мер обеспечения безопасности, снижающих риски реализации угроз: журналы получения доступа, модификации получения и удаления данных, сбор информации о лицах, имеющих доступ к данным.
Этико-правовая проблематика использования Больших данных. Еще одна проблема Больших Данных заключается в возможности идентификации человека в системе Больших Данных посредством анализа так называемого цифрового следа – анонимизированных данных о покупках, действиях на веб-сайтах, данных перемещениях полученных с помощью датчиков GPS, чипов WiFi и прочей информации полученной с разного рода датчиков, из различных информационных систем. Такая возможность создает риски нарушения прав человека на неприкосновенность частной жизни, личной, семейной тайны, создает угрозы жизни здоровью и имуществу граждан.
Проблема заключается в том, что владельцами систем декларируется, а пользователи информационных систем вынуждены принимать на веру, что в системах используется информация, которую нельзя сопоставить с определенным человеком и на основе которой идентифицировать человека невозможно. В большинстве случаев соблюдение этого правила является прямым требованием законодательства РФ. В частности, для выполнения этих требований над информацией проводится специальная процедура – обезличивание. А, например, при передаче такого рода данных между организациями без прямого согласия субъекта персональных данных процедура обезличивания должна проводится практически всегда.
Однако, во-первых, факт выполнения процедуры обезличивания практически невозможно проверить (для такой проверки необходим непосредственный доступ к обрабатываемым в системе данным), а во-вторых, даже после выполнения обезличивания благодаря использованию разнообразных методов сбора информации и интеллектуального анализа над информацией можно провести и обратную операцию – деанонимизацию, т. е. идентификацию человека и сопоставление непосредственно с ним всей собранной информации.
Сбор данных о покупках в интернет-магазинах, действиях на веб-сайтах, данных датчиков GPS, WiFi осуществляется посредством внедрения в личные браузеры пользователей специального программного кода, ведения журнала поисковых запросов, сбор публичных данных из социальных сетей, фиксация уникальных аппаратных номеров мобильных устройств и компьютерного оборудования и другие методы.
С помощью обезличенной информации, полученной посредством одного метода сбора данных из одной системы идентифицировать человека практически невозможно. Однако интеллектуальное сопоставление совокупности разного рода данных позволяет идентифицировать человека, получать персонифицированную информацию о его поведении, личной жизни. Обогащение и сопоставление ранее обезличенных данных данными о поведенческой модели в интернет, перемещениям, покупательским предпочтениям, социальной активности и активности в поисковых сетях позволяет это сделать с высокой точностью.
Следует также отметить, что в настоящее время уже сложился коммерческий рынок продажи массивов данных. Так, например, можно приобрести журналы записей в которых указаны уникальные аппаратные номера смартфонов владельцы которых в определенное время посещали магазины с товарами с высокого ценового уровня. Такого рода сведения используются чтобы предлагать другие дорогостоящие товары посредством фокусной поисковой выдачи, sms-рассылок и другими маркетинговыми инструментами.
Существует также возможность приобрести сведения о том, с каких компьютеров (или мобильных устройств), каких браузеров были осуществлены определенные поисковые запросы и использовать эту информацию с той же целью – побуждать к покупке, навязывать товары и услуги.
Такая возможность приобретения и обогащения массивов данных делает проблематику использования Big Data еще более актуальной поскольку в какой-то момент цели владельцев систем Больших Данных или получивших к ним доступ могут оказаться не только коммерческими, но и противоправными. Очевидно, что информация о поведении, покупках, здоровье, сексуальных склонностях конкретного человека нарушает его права на неприкосновенность частной жизни и может быть использована для шантажа, угроз и мошенничества.
Например, данные из социальных сетей (в частности Facebook, Linkedin или Twitter) позволяют компаниям получать разнообразную информацию о своих пользователях. В частности, можно узнать схемы путешествий: где пользователи обедают каждый день, как развлекаются и т. п.
Таким образом, Большие данные, социальные сети и прогностические алгоритмы открывают новое поле для обсуждения вопросов приватности информации. С одной стороны, все технологии нейтральны и зависят от целей их применения, с другой стороны, только в системах Больших Данных использование результатов поведенческого анализа и исследование инструментов влияния на мотивацию людей может иметь настолько существенное (как положительное, так и негативное) влияние на человека и в целом общество. Большие данные увеличивают риски нарушения во многих сферах жизни человека, особенно при использовании данных из таких сфер жизнедеятельности как личные финансы, социальная активность, покупательская активность в обычных и интернет-магазинах.
В настоящее время назрела необходимость разработки комплекса четкой и всеобъемлющей нормативной базы, регламентирующей поведение тех, кто оперирует большими данными. Нормы должны недвусмысленно определять права и ограничения на сбор, передачу и другие виды обработки, обеспечивать принципы обработки минимально необходимого состава и объема собираемых данных, прозрачности их использования и распространения (в том числе и продажи), пресечение использования, не соответствующее декларированным целям сбора, нарушения прав физических лиц и организаций. В настоящее время практически применимых норм нет ни в области уголовного, ни административного права.
§ 3. Блокчейн
Понятие. Блокчейн – это тип электронного регистра для записи данных о транзакциях любого вида, которым нужно обеспечить постоянное хранение и защиту от несанкционированного доступа и изменений. Блокчейн функционирует как база данных, не имеющая центрального хранилища, которая управляется компьютерами, принадлежащими к сети блокчейн с равными полномочиями. Каждый из компьютеров в сети поддерживает копию регистра, чтобы предотвратить его потерю, все копии обновляются и проверяются одновременно. Иными словами, это регистр транзакций, хранящийся одновременно у всех его пользователей, защита которого обеспечивается шифрованием и технологиями электронной подписи. У данного регистра нет управляющего центра и администратора, который имел бы полномочия, превосходящие полномочия пользователей.
Технология блокчейн получила распространение в логистике, медицине, патентовании, кибербезопасности, торговле акциями, банковской сфере и др. Эксперты признают появление блокчейна одним из существенных факторов технологической революции, способным изменить многие сферы жизнедеятельности человека.
История. Зарождение технологии блокчейн эксперты относят к 1991 г., когда проводились эксперименты с системами документооборота с использованием систем шифрования и построением взаимосвязи между документами в виде цепочки блоков (block chain). Толчок к развитию произошел только в 2009 г., когда технология блокчейн легла в основу реализации криптовалюты биткойн. Создателем новой виртуальной валюты и блокчейна в современном его виде считают С. Накамото, который, скорее всего, является не одним человеком, а группой анонимных разработчиков, имена которых до настоящего времени не рассекречены. От имени С. Накамото был выпущен первый технический документ с описанием технологии блокчейн. В этом документе подробно рассказано о том, насколько хорошо данная технология применима для повышения доверия в цифровой среде за счет фактора децентрализации, который обеспечивает то, что никто и никогда не будет контролировать или менять данные.
Технологии блокчейн. Для иллюстрации принципов работы блокчейн цепочку блоков можно сравнить с книгой. Как и страницы книги, блоки блокчейн заполняются информацией. Каждый блок имеет метку времени, которая выполняет функцию номера страницы в книге. Новый блок всегда добавляется после блока с последней меткой времени. Таким образом формируется цепочка блоков. Защита записей в блокчейне обеспечивается посредством криптографических механизмов. Криптографические механизмы позволяют ограничивать доступ к данным и контролировать их целостность – отслеживать ситуации, в которых какая-либо информация в блоке несанкционированно изменилась. Криптозащита делает блокчейн технологией, применимой для отслеживания изменений, контроля подлинности и сохранности записей о финансовых транзакциях, фактах передачи товара, визирования истории болезни и другой важной информации.
В качестве примера можно рассмотреть электронную медицинскую карту. Каждая запись здесь аналогична блоку, для которого зафиксировано уникальное время создания. Система разработана таким образом, что поменять эту дату задним числом невозможно: все записи о диагностике и лечении идут в хронологическом порядке. Доступ к информации есть только у доктора и пациента, у каждого из них имеется свой приватный ключ. Третье лицо, например администратор или приглашенный специалист, может получить информацию из записи только в одном случае: если доктор или пациент поделится с ним ключом.
Еще одни пример – применение блокчейна при продаже электронной книги. Если защитить ее кодом блокчейн, то книга может свободно распространяться в зашифрованном виде по интернету, но доступ к содержанию получит только тот, кто произведет оплату, т. е. успешную транзакцию. Блокчейн будет инициировать перевод денежных средств автору и разблокирует книгу для покупателя. Таким образом, у автора появится возможность распространять свои работы без посредников и промежуточных комиссионных сборов.
К преимуществам блокчейн перед другими технологиями можно отнести:
– децентрализацию (отсутствует главный сервер хранения данных. Все записи хранятся у каждого участника системы, уничтожить цепочку блоков или перехватить управление распространением сведений о внесении изменений невозможно);
– прозрачность (любой участник может отследить все транзакции, проходившие в системе);
– конфиденциальность (все данные хранятся в зашифрованном виде, пользователь может отследить все транзакции, но не может идентифицировать получателя или отправителя информации. Для проведения операций требуется уникальный ключ доступа);
– надежность (любая попытка внести несанкционированные изменения будет отклонена из-за несоответствия предыдущим копиям. Для легального изменения данных необходим специальный уникальный код, выданный и подтвержденный системой);
– достоверность (данные, которые добавляются в систему, проверяют другие участники).
Области применения. Первоначально технология блокчейн использовалась в финансовой отрасли, однако в последствии область применения вышла далеко за пределы финансовых услуг. Эта технология распространилась в торговле, страховании, здравоохранении, сфере недвижимости, благотворительной деятельности и др.
Розничная торговля. Warranteer – приложение, позволяющее потребителям получить доступ к информации о продуктах, которые они приобрели, и обслуживание – в случае неисправности продукта.
Blockpoint – программа, которая упрощает создание платежных систем и позволяет использовать мобильный кошелек, программу лояльности, подарочные карты и другие функции в точках продаж.
Loyyal – платформа лояльности и вознаграждений, созданная на основе блокчейн и технологий интеллектуальных контрактов, дающая возможность создавать специальные программы для получения вознаграждения от нескольких не связанных между собой брендов.
Экономика совместного потребления. Bitcar – разделяемое владение коллекционными автомобилями стало возможным благодаря токену блокчейн, в котором отслеживается состояние автомобиля, а также то, кто им пользовался последним, и т. п.
Цепочки поставок. Blockverify фокусируется на решениях по борьбе с контрафактной продукцией, в которых используется блокчейн для проверки контрафактной продукции, перепроданных товаров, украденных товаров и мошеннических транзакций.
De Beers добывает алмазы и продает их, осуществляет более 30 % мирового оборота алмазов. Компания использует регистр блокчейн для отслеживания пути алмазов от шахты до покупки клиентом. Эта прозрачность помогает отрасли и всем, кто хочет проверить, подтвердить, что право собственности на алмазы чисто и не приведет к конфликтам. Fura Gems также планирует использовать блокчейн в процессе поставки изумрудов, рубинов и других драгоценных камней.
Страхование. В целях повышения эффективности и производительности в страховой отрасли Accenture создает блокчейн-решения для своих страховых клиентов. Они переводят ключевые процессы страховой отрасли в готовые блокчейн-процедуры, которые вызывают доверие к системе.
В настоящее время американская страховая компания Proof of insurancе тестирует блокчейн-решение для предоставления информации о подтверждении страховки под названием RiskBlock. В конечном счете этот инструмент поможет правоохранительным органам, застрахованным и страховщикам проверять страховое покрытие в режиме реального времени и ускорять обработку претензий.
Здравоохранение. MedicalChain – первая медицинская компания, применяющая технологию блокчейн для облегчения хранения и использования электронных медицинских карт при оказании услуг телемедицины.
Для предоставления любому поставщику медицинских услуг безопасного доступа к записям о пациентах MedRec использует блокчейн в целях экономии времени, денег и во избежание дублирования процедур между разными учреждениями и поставщиками медицинских услуг. Пациенты также могут получить доступ к анонимным медицинским записям о них, которые понадобятся для исследований.
Недвижимость. BitProperty при помощи блокчейн и интеллектуальных контрактов создает децентрализованное общество, позволяя любому в любой точке мира инвестировать в недвижимость. Deedcoin вместо обычной 6 %-ной комиссии на недвижимость работает за 1 % и надеется стать новым способом для покупателей и продавцов жилья связаться с агентами по недвижимости, которые работают с низкой комиссией.
Благотворительная деятельность. BitGive – глобальная платформа для пожертвований – использует технологии биткойн и блокчейн, чтобы обеспечить прозрачность для доноров путем обмена в режиме реального времени финансовой информацией и информацией о проектах. Save the Children, The Water Project и Medic Mobile – благотворительные организации, работающие с BitGive.
AidCoin. Исследования показывают, что 43 % людей не доверяют благотворительным организациям, AidCoin надеется усилить это доверие благодаря распределенным бухгалтерским книгам, смарт-контрактам и криптовалютам и сделать некоммерческий сектор более прозрачным.
Финансовые услуги. Bitcoin Atom – «ответвление» криптовалюты биткойн, позволяющее каждому легко обменивать криптовалюты без каких бы то ни было комиссий за торговлю и без рисков взлома, что делает Bitcoin Atom по-настоящему децентрализованным. Технология основана на атомарных свопах – инструменте для обмена одной криптовалютой на другую и не требует доверенной третьей стороны.
Securrency – это торговая платформа для криптовалют и любых видов активов, включая традиционно неликвидные активы, которые необходимо обменять через токены Securrency. Это позволяет торговать криптовалютой за пределами их собственных бирж.
ABRA – глобальный кошелек для приложений и криптовалют, который дает возможность покупать, инвестировать и хранить 20 криптовалют, включая биткойны, эфириум, лайткойны.
Реализация блокчейна. Чтобы создать собственное программное обеспечение (далее – ПО) для корпоративных или личных нужд, применяют специальные технологические платформы, самые популярные из которых следующие.
Эфириум – платформа и язык программирования. Он делает возможным для любого разработчика построение и опубликование распределенного приложения. Эфириум может служить для кодирования, децентрализации, обеспечения безопасности и совершения сделок практически в любой области: голосование, контроль доменных имен, обмен денег, совместное финансирование, управление, контракты, соглашения, интеллектуальная собственность и даже умная собственность, – благодаря интеграции с аппаратным обеспечением.
ChromaWay позволяет интегрировать технологии блокчейн финансовым учреждениям и создавать умные контракты, оцифровывая и представляя рабочее окружение приватным, безопасным и эффективным способом.
Смарт контракты. Смарт-контракт, умный контракт – это контракт между двумя или более сторонами в виде программного кода, который осуществляет мониторинг выполнения наборов условий и реализует механизмы исполнения обязательств, согласованных заинтересованными сторонами. Смарт-контракты выполняются с использованием технологии блокчейн. Исполнение контракта – это реализация программного кода, который обеспечивает осуществление обязательств базового соглашения без возможности вмешательства как любой из сторон договора, так и третьей стороны. Если согласованные условия соблюдаются, смарт-контракт реализуется полностью автоматически. Интеллектуальные контракты позволяют прозрачно и защищенно обменивать активы (деньги, акции, имущество и т. д.) без посредников, сохраняя систему взаимоотношений полностью бесконфликтной.
В традиционной схеме для получения зарегистрированного в суде документа в качестве доказательства наличия соглашения необходимо обратиться к нотариусу, оплатить его услуги и ожидать получения запрошенного документа. Благодаря умным контрактам сценарий полностью меняется: когда необходим документ, сторона его получает в электронном виде. Этот процесс исключает участие третьей стороны (в частности, нотариуса), а главное – умные контракты не ограничиваются только фиксацией условий в рамках какого-либо соглашения, они также способны инициировать автоматическое выполнение наступивших обязательств.
Умные контракты обычно работают на механизмах, в которых используются цифровые (в том числе финансовые) активы подлежащие депонированию и перераспределению между участниками в соответствии с условиями договора. Умные контракты могут отслеживать исполнение условий договора в режиме реального времени, помогают делать бизнес и другие транзакции более безопасными, эффективными и экономически выгодными.
Идея умных контрактов была впервые предложена в 1994 г. юристом и криптографом Н. Сабо, заложившим теоретические основы для цифровой валюты. В то время интереса к смарт-контрактам не было ввиду отсутствия технологической базы – цифровой платформы или распределенного реестра, которая могла бы их поддерживать.
В 2008 г. была разработана криптовалюта биткойн при помощи блокчейн-платформы, которая отслеживала финансовые транзакции. Эта технология позволила разработать код смарт-контракта, который используется для ввода всех условий контракта в блокчейн. В 2016 г. в округе Кук (штат Иллинойс) впервые был использован блокчейн в целях создания базы данных для передачи и отслеживания прав собственности. Когда эти транзакции происходят, в дополнение к традиционному бумажному документу, покупатель получает цифровой токен, который может служить доказательством права собственности.
К преимуществам смарт-контрактов перед другими технологиями можно отнести следующее:
– прозрачность. В коде смарт-контрактов алгоритмически изложены условия которые абсолютно точны и не допускают двойного толкования. В случае заключения контрактов традиционным способом есть вероятность появления ошибок поскольку лица, ответственные за заключение контракта, могут пропустить какое-либо условие. Более того, невозможно понять, что какое условие пропущено, пока не возникнет соответствующая ситуация. В случае со смарт-контрактом любое условие, которое не учтено в договоре, может привести к ошибке в программе на этапе тестирования, поэтому при создании интеллектуальных договоров все условия всегда указываются в явном виде. Акцептируют этот программный код все стороны участвующие в соглашении, что исключает возможность возникновения спора и проблем на более поздних этапах, поскольку условия тщательно проверяются и применяются только тогда, когда все участники согласны с ними. Потребность в изначальной детализации и алгоритмизации контрактов делает всю информацию по контракту прозрачной для всех участников, что снимает все вопросы, которые могли бы быть связаны с проблемой недопонимания;
– эффективность. Начало любого процесса связанного с документацией обычно занимает не менее одного-двух дней. Задержка в процессах происходит из-за большого числа посредников и избыточных рутинных этапов. В свою очередь, смарт-контракты представляют собой программный код, исполняемый в интернете, поэтому скорость реализации транзакций смарт-контрактов предельно высока. Смарт-контракты могут сэкономить часы или даже дни по сравнению с любым традиционным бизнес-процессом. В числе прочих низкоэффективных действий присущих традиционным контрактом – задержка, вызываемая человеческим участием, что при возможности всегда исключается в смарт-контрактах;
– надежность. Данные, введенные в блокчейн, создаваемый смарт-контрактом, не могут быть изменены или удалены. Если одна сторона не выполнит свои обязательства, другая будет защищена условиями смарт-контракта. Автоматизированные транзакции также не допускают возможности человеческой ошибки и обеспечивают точность при обоюдном выполнении обязательств по контракту;
– автономность. Интеллектуальные контракты выполняются автоматически на базе ресурсов участников блокчейн в интернете, что устраняет необходимость привлечения третьей стороны для развертывания инфраструктуры интеллектуальных контрактов и связанные с этим риски;
– безбумажная технология. Интеллектуальные контракты являются электронными документами с криптографической защитой, поэтому бумага ни в одном из процессов не используется. Это снижает расходы на бумагу и печать, повышает скорость обмена документами и, кроме того, оптимально с точки зрения экологии;
– экономичность. Применение умных контрактов вместо традиционных соглашений приводит к значительной экономии. Прежде всего в силу участия в смарт-контрактах только тех сторон, которые выступают участниками соглашения. Адвокаты, свидетели и посредники не играют роли при использовании умных контрактов. Смарт-контракты дают экономию на многих операционных расходах и ресурсах, в том числе на труде персонала, необходимого для мониторинга наступления условий контракта и контроля выполнения обязательств.
Умные контракты также имеют ряд потенциальных недостатков:
– отсутствие международных нормативных правовых актов, регулирующих блокчейн, криптовалюты и умные контракты, что затрудняет мониторинг этих технологий в глобальной экономике;
– сложность в реализации;
– невозможность изменения – стороны не могут вносить никакие поправки в соглашение об умном договоре или включать в него новые детали без разработки нового договора.
Применение смарт-контрактов.
Страхование. Если управление страхованием не автоматизировано, обработка претензий может занять много времени, что становится проблемой для клиентов и страховых компаний. Для клиентов это превращается в замораживание денежных средств на период разбирательства. Для компаний негативными эффектами становятся нежелательные административные расходы, недовольство клиентов и общая неэффективность бизнеса. Использование смарт-контрактов в таких процессах может привести к упрощению и оптимизации процессов за счет автоматического запуска платежа по требованию при выполнении определенных условий в соответствии с соглашением клиента и компании. Например, в случае причинения ущерба в результате стихийного бедствия умные контракты будут выполнены своевременно, люди смогут получать свои страховые вознаграждения и использовать их непосредственно после страхового случая в тот самый момент, когда финансовая поддержка особенно важна. Любые конкретные данные, такие как размер убытков из-за повреждения, могут храниться в блокчейне, и размер компенсации определится автоматически заранее заданным образом.
Смарт-контракты и интернет вещей (IoT). Технологии IoT используются для подключения повседневных устройств к интернету, чтобы улучшить взаимосвязь различных систем посредством датчиков IoT. Эти датчики могут быть подключены к системе блокчейн для отслеживания движения товаров и продуктов в процессе производства и доставки. Например, пользователи при совершении покупок в интернете зачастую формируют неправильный заказ, и поставщик отправляет им его и вынужден ждать возврата ошибочно заказанного товара. Посредством блокчейна и IoT товар и его местоположение можно отслеживать на каждом этапе пути, включая этапы складирования, транспортировки и доставки. За счет этого поставщик может вернуть товар с транзитного склада и выслать корректный заказ.
Полностью автоматизированная система обеспечивает доставку нужного продукта конкретному получателю, а поставщику позволяет более гибко управлять доставкой за счет того, что датчики, задействованные в системе, создают свои собственные записи в блокчейне, а при помощи умных контрактов можно отслеживать местонахождение соответствующего продукта. Интеллектуальный контракт постоянно обновляет статус местоположения товара, пока он не будет доставлен или возвращен.
Ипотечные кредиты. Ипотечные соглашения являются сложными так как в них включено много деталей: доход залогодержателя в зависимости от кредитного рейтинга, стоимости залога и др. Чтобы заключить ипотечный контракт, крайне важно провести проверку всех сведений о заемщике и объекте недвижимости. Этот процесс зачастую реализуется посредниками при участии третьих сторон, что делает его длительным и затратным как для кредитора, так и для получателя кредита.
Умные контракты выгодны по нескольким причинам. Наиболее важной из них является отказ от услуг посредников с целью избежать длительный процесс согласования процесса и путаницы, вызываемой человеческим фактором. Кроме того, все сведения по контракту могут храниться в одном месте, которое всегда доступно обеим сторонам.
Трудовые договоры. Если одна из сторон, работодатель или работник, не соответствует оговоренным ожиданиям, условия соглашения могут быть изменены в одностороннем порядке. Это приводит к недоверию, которое разрешается умными контрактами. Используя один умный договор для обеих сторон, можно четко определить положения, которые обеспечат справедливость трудовых взаимоотношений: сумму заработной платы, должностные обязанности и т. д. После того как эти транзакции записаны в смарт-контрактах, их можно использовать в разбирательствах в случае конфликтов и недопониманий.
Умные контракты также целесообразно использовать для начисления и выплаты заработной платы, чтобы сотрудник получал согласованную сумму в течение определенного времени.
Защита контента, защищенного авторским правом. В современном цифровом мире контент не ограничивается только текстами, он также представлен в виде аудио- или видеопроизведений. Если часть контента выпущена на коммерческой основе, его владелец должен получить гонорар. Ситуация усложняется, когда в процессе создания произведения участвуют несколько сторон, несущих ответственность за платежи или роялти. Интеллектуальный контракт может решить эту проблему, гарантируя каждому участнику контракта гонорары благодаря записи авторских прав на контент.
Логистика. Управление цепочкой поставок включает в себя отслеживание потока товаров и продуктов от начального этапа до конечного. Будучи важной частью процесса во многих отраслях, правильное функционирование цепочки поставок имеет решающее значение для бизнеса. Управление цепочкой поставок – работа очень большого числа людей и организаций. В то время как товары передаются по цепочке поставки интеллектуальные контракты регистрируют статус перемещения и изменения ответственности или прав собственности. Каждый участник логистического процесса может отслеживать местонахождение продукта в любой момент.
Местонахождение товара можно проверять на каждом этапе в течение всего процесса доставки, пока он не поступит к конечному потребителю. Если товар был потерян в процессе доставки, умные контракты позволяют определить последнее известное место складирования. Кроме того, если один из участников не выполнит условия контракта, это станет известным всем пользователям системы.
Умные контракты для многих отраслей промышленности имеют определенные преимущества перед другими технологиями: снижение накладных расходов, обеспечение прозрачности и экономия времени. Хотя они более надежны, безопасны, эффективны и заслуживают большего доверия по сравнению с бумажными контрактами, необходимо заботиться о том, чтобы избежать рисков повреждения кода смарт-контракта. По мере того, как компании развиваются и цифровизуют бизнес-процессы оценка рисков превращается в неотъемлемую часть их деятельности.
Проблематика безопасности блокчейн. В связи с широким распространением технологий блокчейна и повышением стоимости активов управляемых системами распределенного реестра, злоумышленники массово используют разнообразные методики атак реализующие уязвимости систем, основанных на технологии блокчейн. Атаки выполняются в целях перехвата управления активами пользователей, их кражи, причинения вреда деятельности компаний и государств, для хищения финансовых средств, подлога при исполнении контрактных обязательств, разрушения бизнес-процессов, основанных на блокчейн. В случае успеха такого рода действия приводят жертв атак к существенным убыткам.
Поскольку Блокчейн функционирует как децентрализованная база данных, т. е. не имеющая центрального хранилища и управляемая компьютерами, принадлежащими сети с равными полномочиями каждого участника (одноранговой), каждый из компьютеров в сети поддерживает копию регистра, чтобы предотвратить его потерю, а все копии обновляются и проверяются одновременно. Иными словами, регистр транзакций хранится одновременно у всех его пользователей, а защита его обеспечивается шифрованием и сертификатами электронной подписи. У данного регистра нет управляющего центра и администратора, наделенного полномочиями, превосходящими полномочия пользователей. Такая технология имеет ряд уязвимостей.
Уязвимости и атаки на блокчейн. В большинстве случаев самыми легкими объектами атак являются пользователи блокчейна. В первую очередь из-за менталитета предприятий малого бизнеса, стартапов в которых безопасность отодвигается на задний план. Еще одно направление атак – атаки на основе модификации широко распространенных блокчейн-систем, например, на базе Bitcoin и Ethereum уязвимости которых широко известны.
Можно выделить следующие виды атак на системы, в которых задействованы технологии блокчейна: а) атаки, связанные с уязвимостью технологий; б) атаки по словарю; в) фишинг; г) cryptojacking; д) атаки троянцами; е) атаки из-за уязвимости реализации; ж) атаки на владельцев криптокошельков.
Атаки, связанные с уязвимостью технологий блокчейна. Данные технологии устроены таким образом, что пользователь может посмотреть последние блоки записей в реестре и их «родительские» блоки чтобы узнать о состоянии транзакции. В случае с криптовалютами пользователь может проследить каждую транзакцию каждого участника перевода криптовалюты. Проверка транзакций жизненно важна для блокчейна. Каждый узел (пользователь) должен иметь возможность индивидуально проверить точность и валидность каждой цепочки блоков.
Для того чтобы быть уверенным и в том, что цепочка не была изменена, разработаны технологии объединения блоков, являющиеся ключевым элементом блокчейна. Благодаря функции хеширования в компактном виде выдается критерий неизменности блока записей, новый блок встраивает в себя информацию о целостности (неизменности) своих родителей (предыдущих блоков). Если информация от родительского элемента изменится, то значение функции хеширования тоже изменится, и подлог в родительских блоках будет обнаружен. Кроме того, при создании каждого блока необходимо предоставлять специальное подтверждение транзакции. Это подтверждение, в частности, показывает, что некоторый ресурс был потрачен на формирование блока.
Создание каждого блока называется майнинг. Подтверждения, требуемые для доказательства факта майнинга в каждой реализации блокчейна свои. Наиболее распространенным является доказательство выполнения работы (Proof-of-Work) т. е. алгоритм, который требует осуществления всех этапов решения задачи создания блока. Proof-of-Work – это алгоритм достижения консенсуса в блокчейне. При помощи такого консенсуса майнеры конкурируют друг с другом за завершение транзакций в сети за вознаграждение. Пользователи сети отправляют друг другу цифровые токены, после чего все транзакции собираются в блоки и записываются в распределенный реестр, блокчейн. Работа блокчейн-сети основана на решении ресурсоемких математических задач и возможности легко доказать, что решение было получено. Подтверждение наличия правильного решения задачи показывает, что все шаги были выполнены, например, с использованием ресурсов процессора.
Поскольку каждый блок требует ресурсоемкой работы по валидации, а последующие блоки связаны один с другим, можно достоверно подтвердить, что самая длинная цепочка требовала наибольшей работы и является наиболее надежной. Злоумышленнику потребуется огромное количество ресурсов, чтобы создать более длинную цепочку и атаковать популярные (длинные) цепочки записей. Объединение проверок целостности с реализацией функций хеширования внутри блоков, а также доказательство работы позволяют целым сетям доверять записям в распределенных реестрах.
Слабая сторона технологии Proof-of-Work заключается в том, что эта технология основана на предположении, что технологические операции блокчейна гарантированно распределены. В частности, ни одна организация или совместная группа не может представлять собой более чем 50 % участников сети одновременно. Нарушение этого правила дает возможность проводить атаку большинства: если доля ресурсов злоумышленников более 50 % они могут обрабатывать блоки быстрее, чем все остальные участники, создавая свои собственные цепочки исключительно по своему пожеланию. Эта возможность помогает реализовывать такие операции, как осуществление двойных расходов, когда одну и ту же монету можно потратить несколько раз или исказить получателя криптомонеты, замкнув операцию перевода на себя.
Атака большинства против платформы биткойн до сих пор не была успешной благодаря большому количеству пользователей этой платформы. Однако в отношении менее популярной валюты Verge и других криптовалют удавалось проводить и успешные атаки. Криптовалюты, привлекшие малое число участников, подвергаются серьезной опасности. Этот риск крайне актуален для систем блокчейна, разработанных в рамках отдельной компании. Многие организации изучают технологии блокчейна для реализации смарт-контрактов, управления товарными запасами и другими активами. Однако, если база данных или скорость выполнения криптографических функций корпоративных сетей недостаточно велика злоумышленник может использовать облачные технологии, бот-сети или пулы собственных ресурсов для атак на систему.
Еще одна уязвимость заключается в том, что большая часть узлов участников блокчейна является доверенными. В ситуации, когда пользователь не способен соединиться ни с одним доверенным узлом повышается вероятность реализации атаки Sybil, при которой злоумышленник заставляет жертву общаться только с вредоносными узлами. Злоумышленник может контролировать то, к какой информации, включая сам реестр блокчейна, может получить доступ жертва и полностью управлять записями жертвы в реестр. Для атаки Sybil особенно уязвимы небольшие корпоративные сети.
Еще одной уязвимостью является возможность появления коллизий (дублирования) значений хеш-функций. Значения хеш-функций используются для подтверждения прав на владение кошельком. Биткойн, например, использует 256-битную длину для идентификации владельца кошелька. Каждый ключ соответствует общему адресу на который другие могут отправлять средства. До тех пор, пока владелец имеет уникальный доступ к ключу никто не может отправлять транзакции из этого кошелька. В случае коллизии значения хеш-функций право собственности на кошельки и фонды будет трудно доказать, потому что с точки зрения сети обе стороны будут иметь одинаковые права. Стоит отметить, что такие коллизии крайне редки.
Атаки по словарю. Такие атаки известны уже несколько десятилетий. Как правило, они заключаются в подборе пароля жертвы. Когда пользователь создает пароль для сетевой учетной записи поставщик услуг не должен хранить пароль в виде простого текста. Вместо этого он должен взять его видоизмененный криптографический хеш пароля и сохранить его значение. Например, если пользователь в качестве пароля возьмет само слово «пароль», сервер может сохранить запись 5baa61e4c9b93f3f068 2250b6cf8331b7ee68fd8, которая является хешем SHA-1 слова «пароль». Хотя в большинстве случаев трудно восстановить исходное слово, зная его хеш, но если злоумышленники увидят хеш-значение «пароль» и хеш-значение «пароль1», то «пароль1» они все-таки смогут преобразовать в исходный текст.
Для прямого взлома это преобразование должно быть повторено миллиарды раз в отношении каждого мыслимого пароля. Единственным ограничением является время, но злоумышленники могут сосредоточиться на общеупотребимых паролях. Коллекция хеш-значений в сочетании с открытым текстом пароля называется радужной таблицей. Преобразование криптографического хеша в пароль в виде открытого текста называется «атакой радужной таблицы». Модифицированная атака радужной таблицы возможна против блокчейна, в частности биткойнов и связанных криптовалют. В биткойнах адрес представляет открытый интерфейс. Пользователи переводят монеты по этому адресу. Когда они платят кому-то монетами, транзакция происходит с этого адреса. Для того чтобы убедиться, что пользователи уполномочены инициировать транзакцию и тратить монеты с адреса они должны применять свои закрытые ключи. Такой ключ должен быть известен только владельцу и должен использовать алгоритм цифровой подписи биткойна на основе ключа пользователя. Если пользователи задействуют вместо ключа цифровой подписи из 64 произвольных символов обычные пароли, такие транзакции позволят злоумышленнику перехватить полный контроль над кошельком.
Фишинг. Мошенничество с фишингом – самый известный тип атак на блокчейн-системы благодаря их успешности и массовости применения. Рассмотрим атаку на примере криптовалюты Iota. В результате фишинг-атаки жертвы потеряли 4 млн долл. Эта атака подготавливалась несколько месяцев: злоумышленник зарегистрировал интернет-адрес <iotaseed.Io> и запустил бесплатный сервис генерации надежных seed-фраз (кодовая фраза, при помощи которой пользователь может восстановить доступ к своему кошельку с криптовалютой) для кошелька Iota. Для повышенной безопасности фраза должна была быть сложной в подборе, поэтому такой генератор пользовался успехом. Сервис генерации активно рекламировался, служба стабильно работала, помогала жертвам успешно заводить и использовать свои криптокошельки, создавая ложное чувство безопасности и доверия. В течение длительного времени злоумышленник поддерживал сервис, собирал данные о жертвах и только через шесть месяцев провел атаку. Воспользовавшись ранее украденной информацией, злоумышленник перечислил все средства из кошельков жертв на свои полностью анонимные кошельки.
Другой подход, основанный на изначально криминальном характере операции, был применен при атаке Tor-in-the-middle. К сети Tor обычно обращаются, чтобы скрыть местоположение пользователя от отслеживания третьими лицами. Многие посредством Tor создают скрытые сервисы, при помощи которых потребители могут покупать и продавать товары. Это делается либо для уклонения от налогов, либо в случае продажи товаров торговля которыми незаконна. Криптовалюты для таких сервисов – предпочтительная или единственная форма оплаты.
Эти сервисы также являются местом, где авторы вирусов шифровальщиков-вымогателей получают выкуп за зашифрованные файлы жертвы. Однако даже если жертва намерена уплатить выкуп и начинает использовать прокси-домены Tor, которые она нашла через поисковые системы или на которые вымогатели ссылались в своих инструкциях, в некоторых случаях ее средства в результате атаки могут быть перенаправлены на другой кошелек криптовалюты. В итоге злоумышленник-вымогатель не получает выкупа, а жертва либо теряет файлы, либо вынуждена повторно платить выкуп.
Одна из известных атак такого рода произошла в 2018 г., когда была обнаружена прокси-служба Tor, заменившая адреса биткойнов, связанных с вымогателями и адресами, находящимися под ее контролем. Специалисты в области безопасности выяснили, что операторы вредоносных прокси проверяли трафик и сайты в Tor на наличие признаков реквизитов кошелька биткойнов. Когда признаки находились, киберворы заменяли адрес адресом собственного кошелька.
Cryptojacking. Это метод перехвата управления вычислительными ресурсами в целях выполнения криптографических функций майнинга криптовалют. До 2016 г. одним из основных способов майнинга криптовалюты были его недобросовестные методы. Однако взрывной рост скрытого майнинга пришелся на конец 2017 – начало 2018 г. Новые майнеры появились за счет изменения апробированных вредоносных программ под задачи майнинга. Семейство вредоносного ПО фактически удвоилось за счет включения в него дополнительной функциональности. Так, вирус Black Ruby не только шифровал файлы пользователей и вымогал эквивалент 650 долл. в биткойнах, но и запускал майнинг на зараженном компьютере в пользу своего автора. Вредоносное ПО было модифицировано для осуществления перехвата управления программой XMRig Monero – популярным ПО для майнинга с открытым исходным кодом. Другая крупномасштабная майнинговая бот-сеть, обнаруженная в январе 2018 г., также использовала XMRig.
Подобные инструменты с открытым исходным кодом отчасти способствовали резкому увеличению количества вредоносных программ. Вредоносное ПО нацелено в первую очередь на перехват управления персональными компьютерами, но и другие устройства также могут стать целью атаки. Например, в Китае телефоны Android послужили для добычи монеты Monero. Вирус ADB.Miner использовал метод заражения вирусом класса «сетевые черви». На зараженных устройствах также были запущены майнеры типа XMRig. Поисковик shodan.io, который автоматически сканирует порты, а фактически выявляет уязвимости подключенных к сети устройств, предоставил статистику о более чем 1 млн устройств, работающих с открытым портом 5555, что делает их уязвимыми для атак ADB.Miner.
Еще один майнер такого же типа – XMRig.ADB.Miner – был обнаружен в результате повторного использования кода ботнета Mirai. Этот майнер появился в середине 2016 г. и был использован при множестве глобальных атак. По состоянию на февраль 2018 г. вредоносное ПО заразило около 7000 устройств в основном расположенных в Китае и Корее.
Еще один вид Cryptojacking – Cryptojacking посредством интернет-браузера. Компании, профессионально занимающиеся криптовалютами, в результате эксперимента с валютой альткойн разработали подход к использованию вычислительных ресурсов ПК посредством установленного на нем браузере. Перехват управления ресурсами осуществляется путем загрузки в браузер жертвы исполняемых кодов. Было, например, установлено, что расширение Archive Poster для браузера Chrome добывает монеты Monero без согласия владельца браузера и, конечно, не в его интересах. Жертвы впервые узнали об этой проблеме, когда некоторые пользователи расширения начали жаловаться на высокую загрузку процессора. К тому времени более 100 тыс. человек скачали майнер в составе программы, которая должна была помогать в ведении блога. Как минимум четыре версии приложения включали в себя криптографический код JavaScript от Coinhive, который легко встраивает и запускает майнинг на стороне браузера.
Не все формы Cryptojacking можно назвать полностью нелегальными – такого рода перехват управления принято относить к «серой» зоне взаимоотношений. Многие организации внедряют код для майнинга Coinhive и другие коды-майнеры в целях монетизации своих сайтов за счет вычислительных ресурсов устройств своих посетителей. Если пользователи согласны, то майнинг такого рода формально не считается вредоносным, хотя по этическим соображениям такой формат оплаты является нежелательным. Такой подход однозначно переходит в «черную» зону, когда владельцы сайтов и вовсе не раскрывают того, что они внедряют код для майнинга. В последствии посетители оказываются в замешательстве, сталкиваясь с фактом резкого снижения производительности своего браузера и компьютера.
Следует также отметить, что добавить код для майнинга может не только владелец веб-сайта. Например, благодаря уязвимости безопасности платформы популярного сайта по обмену видео YouTube злоумышленники смогли внедрить криптографический код для майнинга биткойнов и Ethereum в рекламные объявления (YouTube быстро удалил злонамеренных рекламодателей из своей сети и заблокировал майнинг-рекламу).
Доля в майнинговых системах ресурсов использованных посредством Coinhive в пике превышала 62 %. В определенный момент разработчики Coinhive приняли решение прекратить работу их сервиса. Решение было основано на падении стоимости криптовалют и факте того, что это приложение часто применялось злоумышленниками для добычи криптовалюты без разрешения пользователей, из-за чего оно полностью блокировалось средствами безопасности. Следует учитывать, что ничто не мешает другим разработчикам разворачивать деятельность аналогичных сервисов.
Атаки троянцами. В некоторых случаях атаки на вычислительные ресурсы являются целевыми т. е. направленными на конкретные группы пользователей, что делает их более эффективными. Например, один майнер был нацелен на любителей компьютерных игр (геймеров), посещающих определенный российский форум. Его вредоносное ПО маскировалось под модификации популярных игр. В результате установки такой модификации на свои компьютеры геймеры загружали и вредоносные программы и их компьютерные ресурсы служили для получения прибыли пресловутым майнером.
Чтобы скрыть использование чужих ресурсов и не вызвать подозрений, майнер настроил систему наблюдения за диспетчерами производительности. Если вирус определял, что открывается диспетчер, он останавливал майнинг. Более того, предполагаемый автор этого троянского ПО размещал свои вредоносные программы на нескольких российских форумах, не заботясь о сохранении анонимности.
Атаки на уязвимости реализации. Еще одним видом угроз являются атаки на реализацию самого блокчейна и его вспомогательные инструменты. Следует отметить: чем ближе к технологическому ядру блокчейна и чем глубже уровень реализации на который направлена атака, тем сложнее добиться ее успеха. Как правило, атаки, в которых используются уязвимости реализации, осуществляются вредоносными программами аналогичными эксплойтам традиционного ПО и веб-приложений.
В Wiki Bitcoin для официального инструментария Bitcoin ведется реестр угроз и уязвимостей. До исправления эти уязвимости привели, в частности, к успешным атакам типа «отказ в обслуживании», краже криптовалюты и раскрытию конфиденциальных данных. Поскольку ущерб от уязвимостей на уровне ядра может быть весьма значительным, разработчиками ведется регулярная работа по их обнаружению и исправлению посредством выпуска обновлений. Процесс создания и поддержки безопасного кода крайне труден. Резкое усиление популярности и взрывной рост технологий, в которых задействован блокчейн, усугубили проблему. Однако со временем в результате кропотливой работы с кодом обнаружение серьезных уязвимостей связанных с основными инструментами биткойна замедлилось, что дало использующим технологию чувство безопасности.
Pulsuz fraqment bitdi.