Специалисты поместили малварь в цепочку ДНК. Эксплоит способен атаковать компьютерное оборудование
Малварь, закодированная в ДНК, хакеры, проникающие в сети корпораций через образец слюны или крови и похищающие секреты, люди, чья ДНК защищена от анализа вредоносным кодом? Звучит как научная фантастика, но, похоже, с подобными явлениями специалисты по информационной безопасности и биоинформатике столкнутся уже в обозримом будущем.
Группа ученых из Вашингтонского университета, под руководством Тадаёши Коно (Tadayoshi Kohno) готовится представить интересный доклад на конференции USENIX Security, которая состоится в Канаде на следующей неделе, 16-18 августа 2017 года. Исследователи сумели поместить в цепочку ДНК работающую малварь, которая способна атаковать ДНК секвенсор через переполнение буфера (buffer overflow). С результатами изысканий специалистов уже сейчас можно ознакомиться на официальном сайте университета, где также был опубликован посвященный проблеме детальный доклад (PDF).
Как оказалось, создать биологическую малварь, которая сохранит стабильность и работоспособность после помещения в ДНК, совсем непросто. Хотя специалисты нацеливались на простую атаку на переполнение буфера, даже с этим возникли проблемы. В итоге в докладе команда признается, что для воплощения идеи в жизнь им пришлось немного сжульничать. Дело в том, что, как правило, данные ДНК-секвенирования хранятся в формате FASTQ, для работы с которым используется специальное ПО, к примеру опенсорсное решение fqzcomp. Несмотря на то, что подобное ПО часто содержит баги (изучив 13 популярных программ, удалось обнаружить реальные уязвимости практически во всех), исследователи были вынуждены умышленно привнести в код fqzcomp собственную уязвимость, которая создавала идеальные условия, специально для атаки на переполнение буфера. Для этого было добавлено 54 строки кода на C++, а еще 127 строк были удалены.
Биологическую малварь поместили в ДНК, воспользовавшись тем, что время секвенирования ДНК его разбирают на составляющие (аденин [A], гуанин [G], цитозин [C] и тимин [T]), а оборудование преобразует полученные данные в двоичные единицы информации (A=00, C=01, G=10, T=11). Правда и здесь не обошлось без проблем. К примеру, Коно отмечает, что секвенция ДНК может происходить в любом направлении, тогда как код может читаться только в одном. Из-за подобных нюансов атака исследователей срабатывала успешно лишь в 37% случаев, и они предполагают, что в будущем такие эксплоиты будут умышленно создаваться как «палиндромы».