Статья О шантаже в интернете: как безобидное фото в Инстаграм может скомпрометировать тебя - Fawkes, Anti DeepFake, DFL Часть 2

Untitled-1.png

(Превью чтобы посмеяться, сделано с помощью Python :D @Johan Van )​


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

Здесь вот можете почитать первую часть:

  1. О шантаже в интернете: как безобидное фото в Инстаграм может скомпрометировать тебя - DeepFakeLab, ISR

Но кратко перескажу суть, если лень читать все: в прошлой статье мы создали полноценный дипфейк, используя один интересный репозиторий с Гитхаба. Также разобрались с нейросетью, которая улучшала качество изображений и несколькими скриптами для очистки и подмены метаданных.

А прежде чем начать почитайте дисклеймер:

Дисклеймер

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


Защищаем себя или как максимально отвести от себя подозрения

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

Поэтому, используя анонимный криптокошелек я покупаю, не скажу где, чью-то виртуальную карту вместе с Киви Кошельком. Зачем она мне, спросите вы?

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

Возьмем мы её в Амазон ЕС2, этот сервис по сей день дает 12 месяцев абсолютно бесплатного пользования. Поэтому быстренько устанавливаем TOR, включаем VPN и едем регистрировать аккаунт в Амазоне. В качестве телефонного номера, будет использован временный, который можно получить вот . ( Очень удобная шняга, трубы помогает чистить. Если кто-то не заплатил, так звонишь ему сутками).

Вводим рандомные имена и города, посредством гугла узнаем ZIP код и на этом… Всe.

Теперь переходим в консоль EC2 - Instances - Launch - Windows Server 2022 и Debian.

Теперь подключаем ключ безопасности. Если что, подключение будем проводить через этот же браузер, благо такая функция есть. И здесь я пожалуй объясню, почему не хочу использовать Ngrok. Так как нам нужно, дабы жертва, 100% зашла на этот ресурс, хотя не так и обязательно, нужна ссылка, которая не будет банится каждым браузером и не будет вызывать излишних подозрений, мол настоящий форум.

Создаем собственный сайт

Для этого собственно, нам и понадобился Windows Server 2022, сперва нужно проверить доступны ли порты 443, 80 и 3000, так как именно их мы будем приписывать IP нашего сервера. Так как мы заведомо используем виртуальную машину, то в настройках Брандмауэра стоит добавить правило о входящем и исходящем подключениях на эти порты.

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

m0B1HMkc7HigOVLrrtwgmAHa65mrlKVLhaJ0tj8Njd4TCZ69lbGA8ehX6DJkAsNHPaWJzxVVNykKIf9wQV3nE6kltXGtG6arYDQ1rX4wuKihRNy-hdasxZS4dNzBMUfZB9T5OARR9gvHAE_KIzQXEWj2Qj3N0w62XfLy20Ag_r0LP-d6jH3cDV3A4Q


Я наперед нашел форумник, который отлично подходит, что по тематике, что внешнему виду, поэтому доменное имя будет носить следующий вид - - с оригиналом различает его лишь заглавная i вместо l и домен высшего уровня в виде ml, что малину не особо ломает.

А потом я так подумал, а зачем мне делать это с Винды, если можно с Дебиан, где уже установлен Nginx, который и будет, используя PaaS работать с доменным именем. Поэтому переходим к установке и работе.

Через тот же Тор подключаемся через SSH к установке, затем установим докер работы с контейнерами:
Код:
sudo apt-get update

sudo apt-get install \

    ca-certificates \

    curl \

    gnupg \

    lsb-release

    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo \

  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \

  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update

sudo apt-get install docker-ce docker-ce-cli containerd.io

Пояснять за каждую строчку нужно? Я ведь простой трубочист, не шарю. Ладно, вкратце - обновляем пакеты, устанавливаем сертификаты,Curl gnupg и realese, после качаем докер для дебиан и устанавливаем его. Вот.

Но для дальнейшей работы, нам потребуется уже визуальная оболочка. Так как на машинах ЕС2 от Амазон она по дефолту не установлена, придется маяться с её установкой, хотя делается все это одной командой:
Код:
pkg update && pkg upgrade && pkg install x11-repo && pkg install tigervnc openbox obconf xorg-xsetroot xcompmgr xterm polybar st libnl zsh geany pcmanfm rofi feh neofetch htop vim elinks mutt git wget curl xfce4-settings

Вот, может ты думал, нафига тебе Виндоус Сервер? А я скажу, теперь используя дефолтный SSH менеджер, устанавливаем подключение к нашей машине на Дебиан. Хе-хе.

Теперь переходим в Network manager,в котором заполняем следующую информацию:

Тип: - А
Дополнительные DNS -
И наш внешний IP.

GANOhxUpv_rl4j2lGCC0WYypbYZFhIA2e_2_AItUarXQg5vAl5dmsyl-VKSBLodUACPGRA4n5lC-xKneO5GoqKXG0EnyMnT013H0Dlz8ice6bTOaJBFHyHCIw-df5C2eGIrAc4s0UdHXTY1Y00zY-f9taPHGatvCTovDiYthDlmQ9EoXA5z7s2PsAA


Теперь воспользуемся магической командой, которая настроит нашу систему для управления контейнерами:
Код:
docker run -p 80:80 -p 443:443 -p 3000:3000 -v /var/run/docker.sock:/var/run/docker.sock -v /trubochist:/turbo2 caprover/caprover

Если ты вообще не шаришь, что за хрень я тут написал в виде кода, то поясню. Здесь мы запускаем наш первый контейнер - caprover, даем ему доступ к портам 80, 443 и 3000. Разрешаем доступ к докеру и указываем путь для хранения файлов - trubochist/turbo2 .

Затем мы переходим или по адресу нашей машины или по домену с портом :3000, вводим желаемый пароль. В поле ниже вводим наш домен и жмякаем на Enable Domain.

Вот и все. Теперь осталось только заполучить актуальный вид страницы, которой мы будем подражать. Сделать это очень легко с помощью команды wget:
Код:
wget а вот ссылку на такие форумы я не дам, сорян nc -l 1 -k -E

Или же просто сохранить страницу как.

Модификация и подготовка фейковой страницы

Не сказал бы, что это будет самым легким процессом, но придется покопаться в коде и немного подредактировать содержимое. Естественно, ориентируя на жертву, то есть нам нужны минимальные познания, типа города проживания, возраста и имени. Благо, люди, вы прекрасны. Оставляете все эти данные в открытом доступе на своих страницах. Трубочист рекомендует так делать. ( Нет конечно).

Screenshot_23.png



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

Создаем и настраиваем контейнер с сайтом-подделкой

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


Насколько мне известно, для этого нужно установить компонент Compouse для Докера, делается это вот следующим образом:
Код:
curl -L "https://github.com/docker/compose/releases/download/1.8.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose  

docker-compose --version


Далее настройка, хотя это мне делать было лень и я просто нашел заранее заготовленный конфиг, который и используем, скачать его можно вот так:
Код:
git clone git@github.com:codex-team/docker.git codex-docker
cd codex-docker


Далее запустим тестовый прогон, обновив конфигурацию и собрав тестовый контейнер:
Код:
docker-compose build
docker-compose up

Эту консоль мы ни в коем случае не закрываем и открываем ещё одну. Сейчас нам нужно установить необходимые компоненты для работы с сайтом:
Код:
git clone https://github.com/codex-team/codex www


В этой папке проводим замену нескольких интересующих нас файлов , включая index.html .

Вуаля, пишем доменное имя в адресной строке, переходим и… Прекрасно.

Что же, с самой тяжелой частью реализации плана закончили. Далее механизм злодеяния вполне ясен - покупаете, используя купленную карту , аккаунты в социальных сетях или регистрируете их на временную почту. Ну или вообще можно воспользоваться скриптом, который производит анонимную отправку сообщений на телефонные номера:
Код:
git clone https://github.com/TheDarkRoot/AnonSMS.git

 cd AnonSMS

 chmod +x AnonSMS.py

 python3 AnonSMS.py


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

А от самой девушки, используя поддельную страницу в социальной сети, он требовал около 300$ за удаление ненастоящих материалов с её лицом.

Но его очень быстро нашли, так как парнишка даже не пытался заметать следы, он использовал свои реальные устройства, никак не скрывая IP. И теперь парнишке грозит до 4 лет лишения свободы. Справедливо?


О самом главном - способы защиты

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

Как вы уже могли понять, лучшая защита - нанести упредительный удар, нынче каждый ваш друг может таить нож за спиной до того времени, пока этот нож не окажется у тебя в спине. Найдите своего недруга и отбейте у него( почки) желание как-либо вредить, а тем более наживаться.

Не туда меня понесло, говорю, что лучшим способом будет просто не дать будущему злоумышленнику совершить преступление. Не давайте ему благоприятную почву для действий. Понимаю, что современные тренды, типа “выложи фоточку в инстАграм” никуда не исчезнут. И раз так делают все, то и тебе охота. Используйте фильтры на лица, маски, немного размывайте контуры лица блюром и не указывайте информацию типа дней рождения, города проживания и так далее.

Ну и есть ещё один занятный репозиторий, который, в принципе должен немного помочь, хотя я сомневаюсь в его работоспособности. Вашему вниманию представляю - Fawkes. Знаете, вот интуиция трубочиста, нельзя репозиторию с таким именем доверять, ну да ладно.

Screenshot_24.png



Fawkes — это система защиты конфиденциальности, разработанная исследователями из Чикагского университета. Этот код предназначен только для защиты личной конфиденциальности или научных исследований.
Знаете, я понял, что ничего не понял. Рубрика кривой перевод в деле.

Короче, объясняю. Эта штуковина налаживает определенный спектр масок, эффектов и делает лицо не распознаваемым для ИИ типа DFL или других разработок на основе TenserFlow.

Трубочист раскидал непонятный китайский текст(вопрос почему там написано на китайском, если разработка из США) для нормальных ребят, обращайтесь. Давайте установим эту шнягу и проверим её эффективность, используя алгоритм определения лиц из DFL:
Код:
pip install fawkes

И пока скрипт устанавливается, разберемся с опциями в рамках рубрики кривой перевод китайцев:

  • -m, --mode : компромисс между конфиденциальностью и размером возмущения. Выберите из low, mid, high. Чем выше режим, тем больше возмущений будет добавлено к изображению и обеспечена более сильная защита. Эту опцию будем использовать на значении mid, так как нам нужна визуально не отличающаяся фотография.
А более и пояснять нет за что. Для примера будем использовать фотку Барака Обамы.

jhRM00QuDAFa78-qhZNKbjn2fc8UkYFiL9XX26890j2-q7ie2Bd7Y40I7jL656QPqKGUS0aSo3viJOhIrrkhDLjdgauaOIuWEQwtKUt4xv6Qdt4vjhR-jG_EHqov0yitoXOuptES9hd4lLMu5GTgpJNP32vQQlEFAYg8Fmb8h0atXenm6qY_FbK1


Такой вот командой запускаем работу и ожидаем:
Код:
fawkes -d BarackObama2005portrait.jpg --mode mid

После переходим к DFL, прежде преобразовав картинку в видео и изменив её название на data_scr, теперь запускаем сначала extract frames.bat, а после и extractfacesates.bat.

Хотя и визуально в картинках нет изменений, DFL не распознал ни единого лица. А это значит, что эта штуковина работает неплохо. Пользуйтесь.

PcOiZAw5FQKYB--SgiUZv1QK-bZXafeOsPNIZOsWVpEQ4WC7A4p50r-Sh0hyTRM0hP40qhG2Hc516wTcELqSQj1flHfzlrTgvLivOoB3XBUdFFcK3NBaSipqnWEKINKaxq1CxNTTsHZd2y6D9msuJTiMOwenJWGsbmA6Gt9AuZvlLr0weTZA8Nyq


И сейчас хочу быстренько рассказать о способе определения дипфейков, здесь все предельно просто. Раз то или иное видео было создано с помощью нейросети, значит и распознать его досконально сможет лишь нейросеть. Клин клином. Поэтому, мне удалось найти неплохой такой репозиторий, который работает на базе уже обученных моделей и с точностью в 80% способен определить подделку на видеоматериале.

И рубрика кривой перевод. Классификация глубокого обучения для обнаружения поддельных видео из видеовходов и рендеринга их в виде экспортированного вывода с аннотациями лиц людей в видео как real или fakeс использованием бумаги FaceForensics++ с точностью ~ 80% для HD-видео.

Короче долой все это, давайте просто возьмем то самое видео, которое было сгенерировано DFL и попытаемся проанализировать его с помощью этого репозитория, но сперва установка:
Код:
git clone https://github.com/pourabkarchaudhuri/anti-deep-fake.git
pip install -r requirements.txt


Использование будет выглядеть вот так:
Код:
python detect_from_video.py -d /root/fake.mp4

Первое использование не показало успеха и скрипт просто крашнулся, но во втором вывод был помечен, как Fake. А это значит, что он действительно распознал подделку. Более глубокие тесты я проводить не буду.


Итоги

Все, что могло было быть сюда написано уже было сказано ранее, но суммирую:

  1. Не выкладывайте свои фото везде где только можно. Пытайтесь хоть как-то сохранять анонимность в сети.
  2. Используйте маски, блюры и тому подобные вещи.
  3. На крайний случай обработайте свои фото с помощью fawkes.
  4. И думайте головой.


А на этом эта статья подходит к концу. С вами был Трубочист, пока-пока. Не забудь лайк и комментарий, если понравилось и узнал что-то новое.
 
Последнее редактирование модератором:
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!