August 21, 2024

CyberCamp: Неизданное 

Не так давно я работал в одной из ИБ компаний, где мне поступило предложение составить список задач для предстоящего CyberCamp 2024. Спустя некоторое время список из трёх задач был готов, но остался вопрос их внедрения, который при мне не был закрыт в виду моего увольнения. С тех пор я не владею информацией будут ли эти задачи на мероприятии, но не думаю что их публикация принесет проблем, потому что их можно либо не вводить либо переделать. Я хочу начать с задач уровня "очень легко", а на последок оставить вам задачу со "звездочкой", над которой предлагаю вам самостоятельно поработать. Сама статья несёт больше развлекательный чем информативный характер, поэтому было бы очень здорово получить от вас фидбек в виде усложнений представленных задач, либо можете составить свои и отправить на почту deepquestclub@inbox.ru или же в чат DeepQuest.

Level 1. Раскопка

Описание: участникам предоставлен файл изображения с полным содержанием метаданных.

Задача: используя различные инструменты провести эксгумацию данных и осуществить разведку по открытым источникам.

Итог: предоставить полный отчёт по определённым пунктам.

Сама по себе задача не представляет сложности, для усложнения можно ввести так же временные рамки на выполнение. Эта задача покажет уровень осведомленности участника в тех или иных поисковых действиях, платформ и инструментов. Так же сложность поиска по эксгумированным данным зависит от их "изолированности" в сети. То есть какая-то часть для отчёта буквально гуглится простым запросом, а другая требует ворошить веб-ресурсы.

Какие именно данные нужны будут для отчёта я так и не придумал, но при составлении задачи отталкивался от своей старой публикации. И снова отталкиваясь от нее можно положить в пункты отчёта модель камеры, координаты геопозиции, имя/псевдоним автора и дату съёмки.

Так же для усложнения можно ввести шифрование данных:

  1. exiftool -j image.jpg > metadata.txt
  2. openssl enc -aes-256-cbc -salt -in metadata.txt -out encrypted_metadata.bin -pass pass:secret-key
  3. base64 encrypted_metadata.bin > encrypted_metadata.txt
  4. exiftool -UserComment="$(cat encrypted_metadata.txt)" image.jpg
  5. exiftool image.jpg

В качестве ключа для шифрования можно использовать имя/псевдоним автора, чтобы участник сначала осуществил визуальный поиск в сети. Так же можно каждое поле метаданных зашифровать своим уникальным ключём.

Level 2. Большой брат

http://64.69.144.102/view/index.shtml

Описание: у вас есть IP адрес камеры, которая транслирует поток изображения из комнаты радиовещания.

Задача: используя различные инструменты нужно найти ведущего эфира по средам.

Итог: предоставить данные его текущего местожительства.

Задача намного легче предыдущей и я не успел придумать способы её усложнения. Фактический у нас уже на самой камере красуется постер LeoFM, а нам только остаётся вбить название в поисковике, после чего мы выходим на страничку университета и эфира.

Для подведения итогов нам требуется немного OSINT и задача решена.


Level 3. Десерт

Описание: имеется pngzip файл, взаимодействуя с которым участнику потребуется предоставить геопозицию в радиусе двух километров от координат изображения.
Задача: нужно извлечь из pngzip файла исходное изображение и секретное (нужное для выполнения задачи) и восстановить биты изображения, чтобы убрать артефакты с искажениями.
Итог: выдать геопозицию секретного изображения

Для начала я опишу шаги по сокрытию изображений и стеганографии, которые использовал:

  • Первым делом я урезал младшие биты RGB со сдвигом 8 бит, чтобы получить нужный мне эффект искажения изображения. Значения можно менять в зависимости от желаемого эффекта. А нужен он мне для того чтобы усложнить визуальное восприятие и дальнейший поиск:
  • Следующим шагом мы проводим сокрытие искаженного изображения в байтах основного:
  • Теперь нам остается только создать zip архив и спрятать в нем изображение:
    zip archive key.txt cat hide_result.png archive.zip > pnzip_image.png


Я добавил в архив файл key.txt, чтобы оставить участнику подсказку о способе восстановления изображения. Но в любом случае ему придется самому писать этот алгоритм. Что я предлагаю сделать вам тоже.

В общем задачи требуют доработки так как представляют собой только скелет для составления чего-то полноценного, но думаю получилось интересно. Все еще надеюсь что задачи появятся на CyberCamp 2024. Вообще я обещал вам условие и решение задач, но мне было лень пилить материалы.