Используем структуру папок в качестве шифра: технология без файлового хранения данных
С каждым днем вопрос обеспечения безопасности при работе в интернете, надежного сокрытия файлов с персональной информацией становится все более актуальным для потребительского рынка. Не успевают специалисты создавать новые технологии, призванные сформировать надежную защиту пользовательских устройств, как хакеры активизируют свою деятельность и находят способы обходить все эти ограничения. В итоге получается своего рода замкнутый цикл. Пользователям приходится постоянно следить за обновлениями программного обеспечения, выполнять соответствующие установки, чтобы предотвратить или хотя бы минимизировать вероятность хакерских атак на персональные устройства.
Но наряду с классическими решениями в сфере компьютерный безопасности проводится немало работ, направленных на поиски более надежных и стабильных способов обеспечения защиты персональных данных. Так, относительно недавно организацией Trustedsec было проведено исследование, получившее название Hiding in Plain Sight, что в дословном переводе звучит как «прятаться на виду». Здесь речь идет о достаточно необычном бесфайловом методе сокрытия данных с применением структуры папок. Специалистам компании на практике удалось доказать, что можно спрятать слона в муравейнике.
В рамках сегодняшнего обзора познакомимся более подробно с данной технологией. Расскажем, как можно организовать сокрытие данных без файлов и как это работает на практике. Расскажем, с какими ограничениями, сложностями можно столкнуться при выполнении данных работ. Распишем, как выполняется расшифровка информации в данном случае. Подскажем, как применить данную технологию на практике. Эта информация будет полезна тем, кто задумывается над таким вопросом, как защита в интернете и хотел бы предотвратить несанкционированный доступ к своему устройству.
Что представляет собой бесфайловое хранения данных и как оно работает
В своем классическом представлении все антивирусное программное обеспечение, представленное на современном рынке, а также все решения, реализованные в системе Data Loss Prevention (DLP-решения) сосредоточено на файлах, где информация непосредственно в них хранится. Специалисты Trustedsec в своем исследовании полностью разрушили данную парадигму. Они сделали ставку на то, что папки можно использовать как своего рода контейнеры для хранения этих самых данных. То есть в этом случае сами по себе папки информацию содержать не будут. Отсюда и пошло название бесфайловое хранение – хранение данных есть, а вот файлов – нет. Но вот их имена станут основой для кодирования данных.
В рамках проведенного исследования была создана особая структура папок в виде иерархии. То есть одна папка размещалась внутри другой и так далее. При этом каждая из них имела свое собственное уникальное имя, представляющее собой один из элементов этих самых данных, что и планируется безопасно хранить. Представьте, что у вас есть такая структура папок как: «Папк.1/Папк.2/Папк.3/Папк.4/Папк.5», и так далее. Здесь можно продолжать практически до бесконечности. А что получится, если мы уберем разделители между этими папками? В итоге перед нами окажется непрерывная строка «Папк.1 Папк.2 Папк.3 Папк.4 Папк.5», которая и может по своей сути содержать информацию.
А теперь представьте что о мы присваиваем каждой папке соответствующее название. Как вариант, папка 1 будет называться у нас «Эта», папка 2 – «Осень», папка 3 – «Радует», папка 4 – «Нас», папка 5 – «Теплом». В этом случае иерархия всех этих папок будет выглядеть так «Эта/Осень/Радует/Нас/Теплом». Убираем слэш между названиями папок и получаем фразу «Эта осень радует нас теплом». В итоге мы обеспечиваем хранение данных, но при этом папки сами по себе остаются пустые, то есть не содержат внутри себя файлов. Конечно, в процессе реализации все выглядит несколько сложнее, требует использования дополнительных инструментов, форматов, идентификаторов. Но, надеемся, что саму суть технологии бесфайлового хранения данных вы уловили.
Чтобы исключить применение специальных символов, способных вызвать дополнительное внимание и подозрение, исследователи решили использовать дополнительно Globally Unique Identifier (GUID). Это стандартный формат для идентификаторов, который в настоящее время достаточно активно используются в системах. Он представляет собой всего одну строку, содержащую 32 символа. Между собой они все разделяются дефисами. Благодаря тому, что каждый из этих элементов выбирается случайно, между ними невозможно выявить взаимосвязь, и, как результат, это не вызывает никаких подозрений.
На картинке представлен небольшой фрагмент текста, подтверждающий данную концепцию.
Мы хотим обратить ваше внимание на то, что сейчас текстовая строка используется исключительно для тестирования возможности организации бесфайлового хранения данных. Но вы без проблем можете заменить источник вода на свой целевой файл. К слову, мы используем современную командную оболочку PowerShell, где разработчикам удалось реализовать лучшее из тех возможностей, что представлены в аналогах, то есть в других популярных на сегодня оболочках. С ее помощью можно легко и быстро считать данные из файла с использованием инструмента Get-Content. Получается, что изначально мы берем все наши входные данные и трансформируем и их в поток байтов. В итоге наша строка трансформируется в следующий элемент:
$data_bytes = [System.Text.Encoding]::UTF8.GetBytes($example_data)
После этого наш поток байтов трансформируется в шестнадцатеричный. Теперь он будет выглядеть следующим образом: $hexString = ($data_bytes | ForEach-Object { $_.ToString(“X2”) }) -join ‘’.
На следующем этапе нам необходимо трансформировать полученную выше шестнадцатеричную строку в набор путей, который будет включать в себя папки, где в качестве имен будет использоваться GUID – статистически уникальный 128-битный идентификатор. Теперь уже непосредственно создаем эти пути.
В итоге мы получаем файл, представляющий собой вывод закодированной информации. Здесь она уже скрыта непосредственно в путях, ведущих к папкам. А каждая из строк, представленных в данном файле — это иерархия папок. Все они без исключения будут содержать один из элементов нашей общей строки, которую мы кодировали.
То есть в итоге мы получили 44 папки уже на верхнем уровне. Хотим обратить ваше внимание на первые 6 символов, представленных в каждой из строк. Это будет 6-символьный рандомизированный шестнадцатеричный код. Система его автоматически сортирует в алфавитном порядке и тут же добавляет каждой строке. Благодаря такому решению появилась возможность настроить сортировку по имени и выводить каждую строку кода в том порядке, в котором она изначально и должна размещаться. Но при этом сама запись выглядит случайной и понять, какая именно информация в ней представлена, совершенно невозможно.
Ограничения и проблемы, с которыми можно столкнуться при реализации данной технологии
Несмотря на всю свою кажущуюся простоту, на практике технология достаточно эффективная и может дать хорошие результаты в обеспечении безопасности данных. Но все же как и любые другие решения, здесь есть ряд проблем и ограничений, с которыми вы можете столкнуться на практике. И это обязательно надо знать и учитывать, чтобы не оказаться в сложной ситуации в итоге. Из наиболее важных моментов на наш взгляд стоит выделить 2:
- Наличие ограничений на длину пути. В частности, в Windows на сегодня установленные лимиты в 260 символов. Это значит, что вы не сможете прописать в названиях папок объемные фразы. Здесь все зависит от общего количества вложений. Так, если вы сделаете всего 10 папок, то можно будет каждой из них придумать название в 26 символов. Но если таких папок будет 20, то средняя длина имени автоматически снизится до 13. Но в своем большинстве такая иерархия более внушительная. Это значит, что вам необходимо задавать имена папок максимально короткими. Так вы сможете вложиться в указанный лимит.
- Наличие вероятности вызвать подозрение. Несмотря на то, что расшифровать все эти коды, скрыте в названиях папок не представляется возможным, использование чистого шестнадцатеричного кода на практике все же может вызвать подозрения. Для того чтобы минимизировать появление подобных проблем, специалисты все же решили сохранить все имена всех папок в GUID-формате. Это сделает их максимально незаметными. А это значит, что с высокой долей вероятности они не привлекут стороннего внимания.
Еще один момент, на который хотели бы обратить ваше внимание - это на объем, что будет занимать папка на вашем диске. В нашем примере было использовано 220 папок и при этом они занимают 0 байт на нашем диске. Это значит, что реализация бесфайлового хранения данных не скажется негативным образом на расходовании ресурсов вашего устройства.
Теперь поговорим о том, как же расшифровать скрытую информацию. В противном случае ею не смогут воспользоваться не только сторонние люди, но и вы лично.
Как можно расшифровать данные хранящиеся без файлов?
Все, что было зашифровано раньше, должно также трансформироваться и обратно, то есть расшифровываться. Для того чтобы запустить процесс декодирования, нам необходимо обратить внимание на все папки, находящиеся в верхнем уровне непосредственно в целевом каталоге. После этого мы заходим в каждую папку верхнего уровня, отсортированную в нужном нам порядке. А далее уже извлекаем из них всю свою структуру папок. При этом наше шестнадцатеричное число автоматически будет добавляться к строковой переменной «hex stream». Этого достаточно для того, чтобы были считаны все пути, ведущие к папкам верхнего уровня. После этого поток hex автоматически будет трансформирован в байты. После этого он будет или же записываться в соответствующий файл, либо же отображаться на мониторе вашего компьютера.
Внизу под кодом представлен непосредственно расшифрованный текст. Как видите, в декодировании данных, хранящихся без файлов нет ничего сложного.
Сложности с практическим применением
На практике бесфайловое хранение данных может использоваться разными способами. Вот только несколько потенциально возможных решений:
- Надежное скрытие в системе важных для вас данных. При этом явных файлов на вашем компьютере не будет, они не будут занимать свободное пространство и память.
- Уход от классического анализа антивирусных программ, что на сегодня уже по праву можно назвать статическим.
- Формирование сложных многоярусных структур, которые невозможно идентифицировать на пользовательском устройстве либо же расшифровать его, не обладая соответствующими знаниями и инструментами.
Несмотря на наличие достаточно весомых преимуществ и, можно даже так сказать, передовое решение, здесь все же есть один существенный недостаток, о котором обязательно надо знать и учитывать перед планированием работы. В частности, весь процесс кодирования данных в структуре папок на вашем устройстве автоматически приведет к увеличению общего объема информации в процессе архивирования. Так, даже обычный текстовый файл может ощутимо увеличиться в размере. На картинке вы можете увидеть, как это же текстовый файл вырос 1 071 КБ до 21 688 КБ после того, как к нему была применена структура папок.
Возможно, у данной проблемы в обозримом будущем найдется какое-то решение, но на сегодня это выглядит именно так.
Подводим итоги
Как видите, сама идея применение папок, а точнее их имен для сокрытия важной информации — это достаточно интересный и неординарный подход к решению проблемы защиты данных. Но то, будет ли использоваться данная методика на практике, вызывает глубокое сомнение, по крайней мере сегодня. И основная проблема здесь в том, что данная методика ориентирована в первую очередь на обход детектирования средств защиты, а не на решение основной проблемы — сокрытие данных.
Еще больше под сомнение возможность использования методики бесфайлового хранение данных на практике ставит то, что на современном рынке уже есть технологии, которые способны обеспечить достаточно высокие показатели защиты пользовательских устройств от всевозможных внешних угроз. В частности, одним из наиболее передовых инструментов здесь будут мобильные прокси. Они представляют собой серверы-посредники, которые в работе будут пропускать через себя весь поток данных, обеспечивая подмена вашего реального IP-адреса и геолокации на собственные технические параметры. В итоге формируется полностью защищенное соединение с интернетом. Ни система, ни какие-либо сторонние лица не смогут идентифицировать ваше устройство и, соответственно, не смогут к нему подключиться для получения доступа к вашей персональной информации. Наряду с обеспечением защиты мобильные прокси также помогут:
- сохранить высокую конфиденциальность и анонимность действий в сети;
- организовать работу в многопоточном режиме, как вариант мультиаккаунтинг для максимально эффективного продвижение бизнеса в социальных сетях без всяких рисков и ограничений;
- обеспечить возможность использования программ, автоматизирующих действия, без опасений нарваться на штрафные санкции от системы;
- обходить всевозможные региональные ограничения, установленные в той или иной стране на законодательном уровне, получать доступ к любым сайтам.
Но в этом случае очень важно подобрать наиболее надежные мобильные прокси для работы. Такие, которые обеспечили бы вам максимальную функциональность взаимодействия в сети. И одно из лучших решений в данном сегменте рынка на сегодня предлагает сервис MobileProxy.Space. В этом случае вам будет предоставлен персональный канал с неограниченным трафиком, а также доступ к огромному количеству IP-адресов от реальных операторов сотовых сетей. Благодаря этому для системы ваше подключение будет выглядеть максимально естественно, не вызовет никаких подозрений. Для смены адреса можно будет воспользоваться специальная ссылкой, хранящейся в вашем личном кабинете или же настроить таймер для автоматической смены IP в интервале от 2 минут до 1 часа. Также вы сможете выбрать наиболее подходящую для себя геолокацию, оператора сотовых сетей, что станет основой вашей новой цифровой личности.
Пройдите по ссылке https://mobileproxy.space/user.html?buyproxy, чтобы познакомиться более подробно с тем, что представляет собой данный мобильный прокси, а также воспользоваться бесплатным тестированием на протяжении 2-х часов. Также в вашем распоряжении будет круглосуточная служба технической поддержки, которая мгновенно отреагирует на пользовательские обращения и устранит проблемы, что возникнут при работе с прокси быстро и качественно. Если у вас возникли дополнительные вопросы, с высокой долей вероятности ответы на них вы найдете в разделе FAQ.