Ломаем wetware

Ломаем wetware

Данная статья представляет из себя своеобразный синтез традиционной информатики и биоинформатики, изначально зародившийся в качестве попытки разъяснения хакерам почему и как должны применяться ноотропные препараты. Первая часть статьи посвящена собственно механизмам обработки данных мозгом на достаточно низком уровне, фактически - основам нейробиологического ассемблера, а также постройке вышеупомянутой машины на базе этих механизмов.

Андрей Владимиров (andrew arhont.com), соавтор книг  Wi-фу: "боевые" приемы взлома и защиты беспроводных сетей и Hacking Exposed Cisco Networks (Hacking Exposed)

1. Введение.

Данная статья представляет из себя своеобразный синтез традиционной информатики и биоинформатики, изначально зародившийся в качестве попытки разъяснения хакерам почему и как должны применяться ноотропные препараты. В ходе этой попытки возникла идея создания вполне реалистичного биокомпьютера, использующего те же молекулярные единицы анализа информации, что и человеческий (и не только) мозг, и специализированного для высокоэффективного взлома симметричных шифров. В связи с обьемом излагаемой информации, окончательные выкладки пришлось разбить на две части. Первая часть посвящена собственно механизмам обработки данных мозгом на достаточно низком уровне, фактически - основам нейробиологического ассемблера, а также постройке вышеупомянутой машины на базе этих механизмов. Вторая часть включает в себя описание действия и применения распространённых ноотропных препаратов, опять же используя в качестве основы описанные в первой части механизмы. Таким образом, если всё, что вас интересует, это "разгон" возможностей вашего мозга за пределы его естественных лимитов, не следует пренебрегать первой частью. Понимание - ключ к эффективности любой методологии.

Немного об авторе для разъяснения истоков приведённой информации. Я занимался разработкой эрго- (повышающих выносливость) и ноотропных препаратов ещё будучи студентом в советские времена, по образованию - нейрохимик, работал и защищался в группе, которой принадлежит честь открытия и классификации большинства упомянутых в статье рецепторов на глутамат. После защиты не смог продолжать исследования в интересующих меня областях по длинному ряду причин, в придачу старое хобби взяло верх, и я стал инженером по информационной безопасности, которым и являюсь по сей день. Разумеется, 13 лет из жизни не выбросишь, и попытки синтеза обоих областей неизбежны. Это - одна из них.

Сразу же оговорим - данная статья не имеет никакого отношения к социальной инженерии (несмотря на название), искусственному моделированию нейрональных сетей и биоинформатике в её традиционном понимании. Объекты, с которыми мы здесь имеем дело - это не так называемые ДНК компьютеры, а типичные "фон Ньюмановские машины", оперирующие согласно тем же логическим принципам, что и ваша рабочая станция. Математическая сторона обсуждаемых здесь вопросов намеренно сведена к минимуму - предполагаемая аудитория не является математиками, и передать предлагаемые здесь идеи абсолютно возможно без потоков непонятных для не имеющих математической базы читателей формул.

2. Вскрываем "влажные сети".

Вопреки распространённому заблуждению, логически человеческий мозг не представляет из себя один массивный ЦПУ. Это массивная сеть, состоящая приблизительно из триллиона клеток-хостов, 100 миллиардов из которых - нейроны (по крайней мере согласно данным управления перспективных исследований Министерства обороны США (DARPA). Данная сеть использует гигантское количество процессоров с ещё большим количеством взаимосвязей между ними. Вычислительная мощь такой сети сводится к частоте обновлений этих взаимосвязей, т.е. фактически к нахождению, установлению и поддержанию маршрутов. Таким образом, роль процессоров в ней сводится к основной, если не единственной, задаче - заполнению и поддержанию таблиц маршрутизации, определяющих поток сетевого трафика между "хостами". Мы ещё вернёмся к тому, что считать процессором в данной системе. А сейчас стоит подчеркнуть, что чем быстрее маршруты устанавливаются и пересчитываются, тем быстрее идёт процесс обучения. Чем больше поддерживается разнообразных маршрутов и чем они сложнее, тем больше информации сохраняется в подобной сети. Чтобы переносить информацию в долговременную память, маршрут должен быть поддержан в течении достаточно длительного времени; в некоторых случаях он может существовать постоянно до наступления смерти или серьёзного повреждения вовлечённых нейрональных цепей. Отдельно взятый нейрон имеет тенденцию забывать то, что с ним произошло 10 миллисекунд назад, таким образом вне сети с точки зрения сохранения данных он бесполезен. Давайте же рассмотрим более подробно протокол маршрутизации, который управляет естественными нейрональными сетями.

Трафик данных в нейрональных сетях есть ни что иное, как обусловленная разницей мембранных потенциалов передача электрического импульса, всегда текущая по пути наименьшего сопротивления / максимальной проводимости / наименьших затрат. Таким образом, единственной переменной, кроме, разумеется, наличия физического подключения нейрона к нейрону ("воткнутый кабель"), определяющей направление и силу потока данных в нейрональной сети, является проводимость (выраженная в Сименсах, Ом-1). Упростив, мы можем сравнить её с пропускной способностью / толщиной канала. Это и есть искомая метрика. Как насчёт пакетов обновления маршрутизации? Устойчивый поток низкочастотной синaптической стимуляции, так называемый "протокол сопряжения", не обуславливает направление течения основного (с точки зрения возникновения и стабилизации маршрута) высокочастотного потока данных. Однако, протокол сопряжения указывает соединённым нейронам, что их "подключение" друг к другу существует и вполне функционально. Налицо близкое сходство функции с таковой у HELLO протокола, используемого такими распространёнными протоколами маршрутизации, как OSPF и BGP. При обрыве старого или установлении нового маршрута, механизмы обратной связи немедленно сообщают вовлечённой нейронной сети об изменении архитектуры маршрутизации через соединённые нейроны или, локально, через изменение концентраций так называемых модуляторов обратной связи (легко диффундирующие низкомолекулярные соединения, такие как монооксид азота, угарный газ, арахидоновая кислота и т.д.). Нейроны, получившие подобную информацию, передают её дальше по цепочке. Этот процесс во многом сходен с наводнением сети пакетами объявлений о состоянии канала (LSA). Наконец, нейрональные цепи мозга имеют различные местные правила обучения в зависимости от месторасположения и типа нейронов. Таким образом, наши внутренние "домены маршрутизации" могут быть разбиты на иерархические зоны, варьирующие по степени важности пролегающих маршрутов. Просуммировав приведённые утверждения, можно провести простое, но ёмкое сравнение:

Нейрональная маршрутизация OSPF
проводимость в Сименсах пропускная способность канала относительно 100 Мегабит/с (по умолчанию)
протокол сопряжения HELLO протокол
электрохимические изменения при смене маршрута сообщают другим нейронам об этой смене "затопление" LSA пакетами при изменениях маршрута информируют другие маршрутизаторы об изменениях
области с различными паттернами локального обучения и градациями  важности проходящих сигналов Зоны OSPF
соединение таких областей в единую систему со специфической функциональностью Автономные системы OSPF

Таким образом, сходство с OSPF, или другими протоколами маршрутизации на основе алгоритма Dijkstra довольно очевидно. С целью описания протокола нейрональной маршрутизации можно даже ввести такой термин, как OMCPF (Open Maximum Conductance Path First или, по аналогии с русским переводом OSPF, первоочередное открытие маршрутов максимальной проводимости). Остаётся выяснить, как на низком уровне инициируются, устанавливаются и модифицируются маршруты данного протокола. Это наиболее интересный вопрос, на который нет простого ответа. В конечном итоге, многие изменения на "неветварных сетях" вносятся системным администратором посредством закрытия и подъёма интерфейсов, внесения списков распределения маршрутов, установки пассивных портов, назначения приоритетов маршрутов, установки новых модулей и так далее. С другой стороны, даже принимая во внимание генетические факторы, "надсмотрщик" над (само)обучением наших нейрональных сетей отсутствует.  

Общепризнанным правилом, управляющим обучением в "ветварных сетях", является закон обучения, сформулированный американским физиологом Дональдом Геббом в 1949-ом году. В его канонической формулировке, если возбуждение двух нейронов взаимосвязано, синаптическая сила (вес,  Wij) между ними должна увеличиваться. Математически, изменение синаптического веса между двумя нейронами i и j есть умножение частоты возбуждения этих нейронов (ri и rj) на константу скорости обучения k:  Wij = k*ri*rj. Разумеется, синаптический вес прямо пропорционален проводимости через синапс. Так как тело/отростки нейрона, с электродинамической точки зрения, могут быть представлены как непрерывный кабель с относительно гомогенным сопротивлением, именно проводимость через синапсы (соединения между отростками нейронов) определяет судьбу наших маршрутов. De facto, именно синапс, а не целостный нейрон, является процессорной единицей, рабочей лошадью наших нейрональных сетей. Давайте рассмотрим его несколько более подробно.

Синапсы подразделяются на электрические (эфапсы) и химические. Поскольку эфапсы, составляющие основу функционирования электрических органов скатов и угрей, в человеческой нервной системе практически отсутствуют, для нас они интереса не представляют. Типичный химический синапс представлен на приведенной 3D иллюстрации.

Химический синапс.

При повышении мембранного потенциала входящего нервного окончания происходит высвобождение химического медиатора (синие точки на иллюстрации) из пузырьков-хранилищ этого окончания. Постоянная базальная низкоуровневая диффузия медиатора, не зависящая от значительных повышений мембранного потенциала, ответственна за вышеупомянутый HELLO протокол нашего OMCPF. Выброс квантов медиатора при значительных изменениях потенциала ответственен за установление, поддержание и изменение маршрутов. Однако, в не меньшей мере, за регуляцию маршрутов ответственна реакция на выброс этих квантов по другую сторону синaптической щели. Мало того, оба процесса взаимосвязаны, образуя единую систему. Приёмниками "пакетов" медиатора (нейротрансмиттера) на принимающей (постсинаптической) стороне щели являются рецепторы, представленные на иллюстрации в качестве "розеток", проходящих сквозь мембрану. Ближайшей аналогией рецептора в ИТ-мире является демон, слушающий на определённом порту. Безусловно, рецепторы того же типа могут быть расположены и на входящем окончании, тем самым частично обуславливая обратную связь в рассматриваемой системе ("открытые клиентские порты").  

Упрощённое отображение модели химического синапса по Коху (1999) в виде электрической схемы представлено на иллюстрации ниже:

Простая электрическая модель химического синапса

Безусловно, на этой схеме нам наиболее интересен анализатор входящих сигналов, ответственный за логику функционирования нашего процессора, в первую очередь за обнаружение им совпадений и паттернов. А в самом анализаторе наиболее важен триггер, отдельно взятая "транзисторная единица" рассматриваемого процессора. Опустимся же ещё одним уровнем ниже и рассмотрим, как функционирует подобная единица с точки зрения операций предложенного OMCPF протокола и что она представляет из себя физически. Для этого необходимо иметь по крайней мере поверхностное понимание роли вовлечённого в процесс медиатора и рецепторов, реагирующих на изменение его концентрации при передаче сигнала через синапс.

Основными медиаторами возбуждения и торможения в центральной нервной системе человека являются глутаминовая (преимущественно возбуждение) и гамма-аминомасляная (преимущественно торможение) кислоты. Последняя активно участвует в механизмах негативной обратной связи и подавлению информационного шума в передаче сигналов по нейрональным сетям. В контексте данной статьи эти функции не так принципиальны, как непосредственная передача возбуждения между нейронами, посему займёмся глутаматом и синапсами-процессорами, в которых эта аминокислота является преобладающим медиатором. Именно на этих синапсах мы можем найти истинные "ветварные транзисторы" в виде ко-локализованных пар глутаматергических (реагирующих на изменение концентрации глутамата в синaптической щели) рецепторов двух разных типов, а именно НМДА и АМПА рецепторов. Эти рецепторы, названные по традиции в честь избирательно активирующих их синтетических соединений, представляют из себя ионные каналы, открывающиеся при связывании с ними выбрасываемого из пресинаптического нервного окончания глутамата. Прохождение ионов через открывшийся канал ведёт к изменению ионного баланса по обе стороны мембраны и, как следствие, изменению её потенциала (в нашем случае деполяризации), что и есть передача электрического сигнала от одного нейрона к другому. 

Из рассматриваемой пары рецепторов нам наиболее интересен НМДА. Это наиболее сложный рецептор из всех известных науке в настоящее время, и именно особенностями его функционирования многие исследователи (включая автора данной статьи) объясняют процесс обнаружения и фиксирования корреляций и паттернов в значительном количестве нейрональных сетей центральной нервной системы (ЦНС). Именно эти особенности определяют синaптическую силу и, в конечном итоге, маршрутизацию согласно OMCPF.  К их числу относятся:

  1. Способность пропускать через себя как ионы натрия, так и ионы кальция.
  2. Регуляция пропускной способности ионов кальция изменениями значения мембранного потенциала. Данная регуляция объясняется тем, что при потенциале покоя мембраны (примерно -70 милливольт) наиболее узкая часть канала частично блокирована "застрявшим" в нем ионом магния. При
  3. повышении этого потенциала (деполяризация) этот ион освобождает "ворота" и позволяет кальцию проходить.
  4.  В большинстве случаев для достаточного для прохождения ионов кальция повышения потенциала необходима ко-активация соседнего АМПА рецептора. Таким образом, полноценная функциональность НМДА канала достигается только в связке с АМПА.
  5. НМДА рецепторы обладают огромным количеством так называемых участков модуляции. Связывание различных соединений (от простейшей аминокислоты глицина до длинных пептидов и ионов цинка), присутствующих в среде рецептора, с этими участками предоставляет множество дополнительных рычагов регуляции функции этого рецептора. Эти рычаги вносят значительную лепту в создание локальных правил обучения и оценки сигналов, т.е. "зон OMCPF" по аналогии с зонами OSPF. Eщёе одним немаловажным фактором в создании этих зон является локальное количество пар рецепторов и их кластеризация.

Так как лучше один раз увидеть, чем сто раз услышать, следующая иллюстрация показывает, как физически выглядит НМДА рецептор, включая некоторые участки модуляции его функций (каковых на самом деле гораздо больше). АМПА рецептор выглядит примерно также, но с меньшим количеством участков модуляции. Некоторые подвиды АМПА рецепторов также способны пропускать кальций, но их пропускная способность для ионов этого металла гораздо ниже, чем у НМДА, то же относится и к их распространённости в ЦНС. Поэтому мы не будем на этом останавливаться.

                        Упрощённое изображение НМДА рецептора

Мы рассмотрим электрический процесс установления корреляции между поступающими сигналами посредством ко-активации пары НМДА/АМПА в следующей части, поскольку именно регуляция этого процесса лежит в основе действия ряда истинных ноотропных препаратов, которым во многом и посвящена вторая часть статьи. А сейчас, давайте абстрагируемся от роли описываемых рецепторов и событий в ЦНС и попробуем построить своеобразное вычислительное устройство на основе этих рецепторов.

3. Построение молекулярного биокомпьютера на основе рецепторов, ответственных за обучение естественных нейрональных сетей.

Существуют три возможных типа входных данных для нашей пары рецепторов:

  • отсутствие входных данных
  • подъем концентрации глутамата, активирующий один рецептор пары
  • подъем концентрации глутамата, активирующий оба рецептора пары

Результатом могут являться четыре типа выходных данных:

  •  отсутствие выходных данных
  • повышение концентрации внутриклеточного натрия
  • повышение концентрации внутриклеточного натрия и кальция
  • деполяризация мембраны (изменение мембранного потенциала на N милливольт)

От этого и будем отталкиваться.

Рассматривая повышение внутриклеточного кальция в качестве выхода и активацию отдельного рецептора как единицу, получаем Булев AND:

               NMDA        AMPA Повышение [Ca2+]
0 0 0
1 0 0
0 1 0
1 1 1

Беря повышение концентрации внутриклеточного натрия как выход, получаем Булев OR:

               NMDA        AMPA Повышение [Na+]
0 0 0
1 0 1
0 1 1
1 1 1

Беря порог неизменности величины потенциала покоя как выход, легко получаем Булев NOT:

               NMDA        AMPA mV
0 0 1
1 0 0
0 1 0
1 1 0

Измеряя повышение внутриклеточной концентрации и натрия, и кальция, и принимая при этом повышение концентрации обоих ионов за 0, получаем Булев XOR:

               NMDA        AMPA Повышение [Na+] + [Ca2+]
0 0 0
1 0 1
0 1 1
1 1 0

Также достаточно просто получить ADD и SUB используя комбинацию данных выхода [Na+] vs [Na+ && Ca2+]. А как насчёт сдвигов с фиксированным или изменяемым шагом? Для их получения необходим обладающий шагом параметр, в качестве которого может вполне подойти деполяризация мембраны. Например, +10 mV могут быть приняты за правый сдвиг на один регистр и -10 mV - за подобный сдвиг влево. Деполяризация мембраны способна достигать значения в +30 mV, что даёт десять регистров при использовании подобной схемы. Безусловно, можно использовать меньший размер шага, который даст большее количество регистров, но сделает точное измерение перехода из одного регистра в другой более проблематичным. В качестве альтернативы можно измерять пошаговые изменения околорецепторных внутриклеточных концентраций ионов кальция и натрия, хотя в данном случае логично ожидать большие величины отклонений / "размазанности" сигнала по сравнению с измерением изменений деполяризации мембраны. Так или иначе, проблема генерации правых и левых сдвигов используя данную пару рецепторов вполне разрешима.                                                 

Что же будет результатом подобных, пока теоретических, конструкций? (Би)молекулярная процессорная единица (так как рецептор является одной молекулой), способная выполнять как минимум одну логическую операцию за единицу времени, как альтернатива простому бинарному переключателю, в то время как классические теории нейрональных сетей рассматривают целостный нейрон как простой бинарный переключатель и не более! Здесь и начинается самое занимательное. Активация НМДА рецептора по отношению к пропусканию ионов кальция достаточно медленна по сравнению с другими медиатор-активируемыми ионными каналами. Это связано с вовлечением в такую активацию двух шагов (ко-активация пары рецепторов, вышибание ионов магния из ворот канала) вместо одного. Тем не менее, можно спокойно утверждать, что она не займёт больше, чем 100 микросекунд. Так как именно НМДА активация лимитирует "цикл" нашей пары, в конечном счёте получаем 10000 циклов в секунду, или 10 кГц. В естественных условиях на один нейрон приходится 30 - 40 000 рецепторных пар. Методы современной молекулярной биологии позволяют достигнуть значительной оверэкспрессии рецепторов в используемых клетках, таким образом миллион рецепторных пар на крупную клетку (например, стандартно используемый ооцит жабы Ксенопус) - вполне реалистичная цифра. Настолько же реалистично иметь миллион клеток на чашку Петри и десяток чашек на скромный инкубатор. Вычислительное устройство, основанное на данном предположении, будет иметь минимальную теоретическую скорость в 10 000 х 1 000 000 х 1 000 000 х 10 = 1017 Гц, при этом каждый выполняемыйвыполнмяемый цикл - это как минимум одна Булевская операция или сдвиг. Для чего может оптимально использоваться подобное устройство? Разумеется, для прикладной реализации и взлома Фейстелевских шифров!

Рассмотрим RC6, известный и широко используемый симметричный блочный шифр профессора Ривеста, в качестве примера. Причина такого выбора заключается в отсутствии в RC6 табличных замен. Для воссоздания таблицы замен на нашей (пока гипотетической) "рецепторной машине", прийдется использовать массив рецепторных пар (если у вас есть лучшие идеи для эмуляции таблицы замен используя всего одну пару рецепторов, предлагаю поделиться ими с окружающим миром). Безусловно, RC6 использует MUL, но эмулировать умножение используя сдвиги регистров очень легко, и имплементация подобных сдвигов с помощью пары рецепторов уже была описана в статье. Таким образом, RC6 является удачным алгоритмом для рассмотрения с точки зрения подобной "биологической атаки". В соответствии с описанием RC6 для конкурса по выбору AES, RC6 использует 254 операции для шифровки или расшифровки блока данных. Если "рецепторная машина" способна выполнить минимум 1017 операций в секунду, то она способна к шифровке 3.937x1014 блоков или 5.039x1016 бит в секунду с помощью RC6, что впечатляет.

Как насчёт взлома? В данном случае мы оперируем с системой, изначально оптимизированной для работы с операциями, используемыми современными (пост-Люциферовскими) Фейстелевскими шифрами. Таким образом, имеет смысл сравнивать подобную систему со специализированными аппаратными устройствами, разработанными для взлома шифров, например с FPGA (Field-Programmable Analog Array, чипы перепрограммируемой логики). Решениям на базе FPGA необходимо 260 циклов для генерации ключа RC6. Предполагая аналогичное количество циклов для нашей рецепторной машины, возможно получение 3.846x1013 ключей в секунду. Для истощения 128-битного пространства понадобится 8.848x1024 секунд или 2.8x1017 лет. Таким образом, шифр выдерживает подобную атаку, если не создать подобное вычислительное устройство большей мощности. Как насчётнасчет RC4? Подсчитаный номер циклов для генерации RC4 ключа - 256. За секунду рецепторная машина способна генерировать 3.9x1013 RC4 ключей, и выработка 40-битного пространства (64-битный WEP) займётзаймет всего-лишь 0.028 секунды. Для шифра с небольшим количеством циклов, необходимых для генерации ключа, даже очень длинные ключи могут быть взломаны нашим устройством без особых проблем. К примеру, А5 шифр, используемый GSM телефонами (всего 3 цикла для генерации ключа), может быть взломан примерно за 553.46 секунды или 9.22 минуты при длине ключа 64 бита.

Следует сказать, что все приведённые выше цифры должны быть приняты с хорошей долей здорового скептицизма, поскольку они основаны на простом подсчете необходимого числа циклов и построены на сравнении возможностей рецепторной машины с уже существующим "традиционным" аппаратным обеспечением. Вероятность значительной недооценки возможностей предложенного вычислительного устройства, которое представляет из себя массивную параллельную структуру (порядка миллиона "ЦПУ" на одной клеточной мембране и как минимум миллион мембран на один блок "машины") и будет иметь ничтожную продукцию тепла и крайне малые энергозатраты, очень велика. В конце концов, потенциал возможного параллелизма вычислений "рецепторной машины" при приведённых расчётах во внимание не принимался и требует дальнейшего тщательного математического моделирования и проработки. При этом, именно генерация тепла и энергозатраты ЦПУ являются основными ограничителями прироста тактовой частоты современных процессоров. Так или иначе, даже вышеприведённые примеры демонстрируют, что постройка подобного устройства может легко сделать 64-битные ключи многих симметричных шифров достоянием истории.

                                    

Возникает вопрос: насколько реалистично создание такой системы на практике? С точки зрения автора, при наличии значительных ресурсов (государство, крупная компания), вполне реалистично. Вот ряд рекомендаций по постройке описываемой "рецепторной машины":

- используйте крупные нечеловеческие клетки, устойчивые к последствиям чрезмерной активации НМДА и АМПА рецепторов. Не используйте реальные нейроны. Они высокочувствительны к изменениям локальной среды, требовательны, медленно растут и достаточно часто погибают

  • обессмертите используемые клетки (ничего необычного для современной молекулярной/клеточной биологии, хотя для не-биолога это может звучать по крайней мере странно. Раковые клетки "бессмертны", неозлокачествлённые клетки могут быть сделаны бессмертными через внесение в них генов, блокирующих механизмы запрограммированной клеточной смерти).
  • используйте оверэкспрессию рецепторов для достижения максимального количества, выдерживаемого выбранными клетками без повреждений (обычно от миллиона до пяти миллионов рецепторов на одну клетку)
  • альтернативно можно попытаться использовать не клетки, а искусственные мембранные структуры с вживлёнными в них рецепторами. Понятно, что обе стороны искусственной мембраны должны быть изолированы для поддержания необходимого потенциала    
  • используйте флюоресцентную окраску для считывания точечных изменений измеряемых параметров. С помощью такого подхода, пара рецепторов (наш "мини-ЦПУ") может быть представлена как "пиксель" на огромной "логической карте", и изменения соотношений поглощённого / излучённого света будут иметь назначенные им (или привязанные к ним) логические и другие операции. Для считывания данных можно использовать модифицированный электрофотофлюoриметр. Проблема подобного подхода заключается в том, что автору пока не известен краситель, который способен излучать кванты света или же пошагово менять цвет в зависимости от уровня поляризации мембраны. Однако, я уверен, что данная техническая проблема вполне решаема и, не исключено, что подобный краситель уже открыт. В конечном итоге, описываемый подход может привести к созданию функциональной мозаики света (или цвета), отражающей "мозаику логики" на "тарелке процессоров".  
  • ещё одна проблема - это высоколокализованная доставка нужных концентраций медиатора(ов) к парам рецепторов. Её можно попытаться решить путем активной доставки медиатора(ов) через мембрану с различной / изменяемой электрически регулируемой проницаемостью.

Подведём итоги. Построить вычислительное устройство, основанное на парах НМДА/АМПА рецепторов сложно и потребует усилия как минимум полноценного НИИ. Тем не менее, это не относится к разряду невозможного и однозначно стоит попробовать. Подумайте: интеграция всего-лишь 10-ти подобных машин приведёт к созданию "ветварного" суперкомпьютера, который будет всего-лишь в сто раз медленнее сказочного "ДЕСозавра" (крупный динозавр, функция каждой клетки которого - перебор ключей DES), упомянутого в знаменитой "Прикладной Криптографии" Брюса Шнайeра. Однако, в данном случае речь идёт не о воображаемом монстре, а о вполне осуществимом на практике проекте.

4. Уроки безопасности, которые можно извлечь изучая естественные нейрональные сети.

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

Вам наверное будет интересно узнать, что аналоги DDoS, атак ошибок/некорректного ввода данных и преполнения буфера всегда существовали в нейрональных сетях ЦНС, при этом многие из этих аналогов являются фатальными в прямом смысле слова. В рассуждениях о принципах физического построения рецепторной машины были упомянуты последствия перевозбуждения глутаматергических рецепторов, которые следует избегать. С высоты птичьего полета речь идет, фактически, о коротком замыкании в нейрональных сетях. Без искр, без дыма, но конечный результат плачевен - вовлечённые нейроны погибают. Когда постоянная активация пары АМПА/НМДА (а в некоторых случаях - и всего лишь одного из этих рецепторов) присутствует в течении длительного времени и без наличия эффективной отрицательной обратной связи, велики шансы переполнения буфера внутриклеточных ионов кальция и бесконтрольного повышения концентрации ионов этого металла. Такое переполнение буфера фатально, так как способно активировать различные механизмы дезинтеграции нейрона. В условиях экстремального перевозбуждения, также возможно "переполнение натриевого буфера", ведущее к отеку нейрона вплоть до его физического разрыва. Разрушенный нейрон высвобождает весь хранящийся в нем (для передачи данных) глутамат, который только способствует перевозбуждению и инициирует цепную реакцию, повреждая и убивая близлежащие нейроны. Все эти разрушительные события обобщены под термином "токсичность возбуждения".

В менее экстремальных условиях, постоянная активация нескольких нейрональных цепей инициирует стабильную активацию / поток трафика в физически соединенных с ними цепях. Это естественно для "поддержания маршрутов", вызванного вводом внешних данных (обучение). Однако, установление и поддержание бесполезных маршрутов без ввода внешних данных или при отсутствии их корректной проверки, оценки и фильтрации крайне вредоносно (эпилептогенез). В процессе генерации судорожной активности, вовлеченные нейроны затапливают пока не вовлеченных в этот процесс соседей бессодержательным трафиком, напоминая тем самым стандартные DDoS атаки (поскольку как минимум несколько хостов "заливают" свои цели "пакетами", т.е. квантами выделяемого медиатора). Даже более того, поражённые цели начинают сами передавать абнормальный трафик дальше по сопряжённым с ними цепям, что весьма напоминает scatterback при DDoS, smurf и рефлективные DDoS атаки, осуществляемые с помощью утилит наподобие pHorgasm'а. Что же касается атак ошибок/некорректного ввода данных, такие соединения как НМДА и АМПА (в честь избирательности которых и названы оба рассматриваемых в этой статье рецептора), эмулируют эффект глутамата ("корректные данные ввода"), не являясь при этом таковым и проявляя значительную ядовитость в экспериментах на животных. Сходство с естественным медиатором, сопровождающееся отличным (более мощный, отсутствующий, противоположный) эффектом на рецептор обуславливает механизм действия бесчисленного количества натуральных и синтетических токсинов.

Основной вывод из этих наблюдений заключается в том, что "ничто не ново под Луной". По воле случая или нет, распространённые на Интернете атаки  отражают патологические события естественных нейрональных сетей в плане как логики, так и структуры атак. Если подойти с точки зрения логики подобных биологических событий, наиболее эффективная DDoS атака будет включать:

  • использование перегрузки трафиком, выглядящим нормально как с точки зрения содержания (корректные запросы), так и с точки зрения происхождения (подделка исходных IP адресов)
  • атакованные узлы должны сами генерировать атакующий трафик и распространять его далее (рефлективный DDoS)
  • атакованные узлы должны быть ассимилированы для вовлечения в атаку (DDoS черви)

Любопытно наблюдать, как прогресс развития DDoS атак на современном Интернете движется именно в этом направлении.

Теперь о борьбе с подобными "атаками" в нейрональных сетях. Лучший способ устранения судорожной активности - подавление или даже хирургическое устранение источника/oчага инициации патологического возбуждения. Следуя этой логике, активная изоляция атакующих хостов для обрыва DDoS является намного более эффективным подходом, чем пассивная фильтрация трафика атаки в точках его назначения и даже на пути к ним. Фактически, речь идет об использовании систем обнаружения и предотвращения атак (IPS) для исходящего трафика - подход, который на данный момент практически никем не используется. "Ветварные" сети всегда имеют функционирующие пути и способы негативной обратной связи, способные к отбрасыванию и фильтрации излишних сигналов. В то же время, сколько развёрнутых в настоящее время TCP/IP сетей используют эгрессивную фильтрацию с активной реакцией на обнаруживаемые аномалии? 

С более традиционной точки зрения, подобная логика смещает акцент с листов контроля доступа (ACL) на системы обнаружения атак (IDS) и их эффективное расследование, если речь не идет о листах контроля доступа на шлюзе, через который изначальный источник атаки подсоединён к Интернету. 

В заключение, рассуждая о безопасности отдельно взятого узла, два доминирующих подхода к сохранению узла (нейрона) в биологических сетях сводятся к блокированию вовлечённых рецепторов ("ветварная" аналогия фильтрации портов) и устранению излишних внутриклеточных кальциевых ионов / блокированию последствий их воздействия (ветварный эквивалент неисполнимого стэка / динамических областей данных и, в какой-то мере, chroot). В естественных нейрональных сетях, только комбинация обоих подходов показывает себя эффективной, при этом основной проблемой "защитников" является временная потеря специфических функций защищаемым нейроном. Данная проблема более подчёркнута при использовании блокирования вовлечённых рецепторов. Сопоставьте эти наблюдения с происходящим в кремниевых эквивалентах наших "ветварных сетей" и прийдите к собственным выводам.

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

П.С.: автор статьи выражает благодарность д-ру Максиму Орловскому, нейрофизиологу, за проверку приведенных материалов.

Академия Информационных Систем (г.Москва) открывает подготовку специалистов по эксклюзивной программе «БЕЗОПАСНОСТЬ БЕСПРОВОДНЫХ СЕТЕЙ». Преподаватели-практики из Лондона - авторы книги «Wi-Foo: «боевые» приемы взлома и защиты беспроводных сетей» - расскажут о последних разработках в области безопасности сетей. Курс пройдет с 28 ноября по 2 декабря. В программе предусмотрены практические атаки и демонстрация способов защиты. Подробная информация: http://www.infosystem.ru/longkurs.php?fid=1123500873655060

Не ждите, пока хакеры вас взломают - подпишитесь на наш канал и станьте неприступной крепостью!

Подписаться