• 4 июля стартует курс «Python для Пентестера ©» от команды The Codeby

    Понятные и наглядные учебные материалы с информацией для выполнения ДЗ; Проверка ДЗ вручную – наставник поможет улучшить написанный вами код; Помощь преподавателей при выполнении заданий или в изучении теории; Групповой чат в Telegram с другими учениками, проходящими курс; Опытные разработчики – команда Codeby School, лидер по информационной безопасности в RU-сегменте

    Запись на курс до 15 июля. Подробнее ...

  • 11 июля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

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

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

    Запись на курс до 20 июля. Подробнее ...

Статья Историческая вирусология: американский школьник и 250 миллионов - Blaster Worm: история, хронология, анализ

Предисловие
(Появился значится превьюшник)


IMG_20220611_180440_810.jpg

CsGJ.gif

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

1. Немного ностальгии: историческая вирусология или LoveLetter в цвете современности - 22 года спустя
2. Историческая вирусология: или 40 миллиардов долларов за 18 лет - MyDoom: хронология, история, анализ
3. Историческая вирусология: Чернобыль — как это было на самом деле или как заставить ваш ПК полететь из окна: история, хронология, анализ - CIH
4. Историческая вирусология: разговор о первом черве - или как одна ошибка изменила ход истории - Morris Worm
5. Историческая вирусология: раняя хронология программ-вымогателей - AIDS, GPcode, Arhivarius. Или как шутка психически больного стала каноном
6. Историческая вирусология: поздняя хронология программ-вымогателей - ZeuS, CryptoLocker, CTB: вирусный трафик ценой в миллиарды. Часть 1

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

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


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

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

Дисклеймер

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

Историческая вирусология: американский школьник и 250 миллионов - Blaster Worm: история, хронология, анализ

И вот мы отправляемся в солнечную Калифорнию, 2003 год, август. Ничем не примечательный день. Тепло, огромный солнечный диск тянется к линии горизонта, намекая на то, что его работа окончена, на смену выходит полная луна.

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

Правда не он наш герой статьи. Молодой тощий парнишка, недавно переехавший из Японии и преподающий в школе Джеффри информатику, ступает домой.

Ёшида Окицу ( отсылка к абсурдному аниме 2020 года) следует по темному переулку, размышляя о том, что сказал ему сегодня один из учеников. Ларсон утверждал, что существует некая уязвимость в буфере обмена виндоус 2000 и XP, на что наш герой лишь рассмеялся.

Стыд. Вот что сейчас чувствует Ёшида, ведь если бы он поверил в сказанное парнем, все не обернулось бы так. Стояло ведь только поверить.

Жалея о совершенной ошибке, Ёшида ступает домой: его ученика арестовали и скорее всего упекут в тюрьму на очень долгий срок. “Чем же я мог помочь?”, - раз от разу задает себе вопрос Окицу, прокручивая те воспоминания у себя в голове.

История червя Blaster начинается с того момента, когда коллектив разработчиков Xfocus нашёл уязвимость в Виндоус, но эта информация различается, где-то говорится, что сам Джеффри нашел эту дыру.

Но сути не меняет, именно эта уязвимость стала основой для множества червей и вредоносного ПО, хотя самым известным стал таки Бластер.

И вот, откатимся чуть-чуть назад, 11 августа 2003 года. Ёшида ведет урок информатики в классе Джеффри: ничего необычного, на первый взор.
Именно в это время молодой кодер зловредов и решает протестировать своё творение на случайной машине, а раз в компьютерном классе куча устройств, разгуляться есть где.

Кстати, это первый в мире зловред, который мог считаться ботнетом, ещё до создания МайДум, который, кстати, просто перенял этот способ от Бластера, поскольку после заражения машины начинали атаку на сервера Майкрософт, и, конечно же, всем известный таймер на 16 августа.

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

1654955177196.png


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

Что же начало происходить на компьютере, на котором был запущен червь? Постоянно начинают вылазить следующие ошибки:

1. Служба удаленного вызова процедур (RPC) неожиданно прервана.
2. Система отключается. Сохраните всю текущую работу и выйдите из системы.
3. Любые несохраненные изменения будут потеряны.
4. Это отключение было инициировано NT AUTHORITY\SYSTEM

Далее компьютер склонен выключаться или повторно перезагрузиться через случайные промежутки времени.

На компьютере под управлением Windows XP или Windows Server 2003 может появиться диалоговое окно, в котором пользователь может сообщить о проблеме в Microsoft.

Если это был Windows 2000 или Windows NT, вы можете получить сообщение об ошибке Stop.

Далее можно найти файлы: Msblast.exe, Nstask32.exe, Penis32.exe, Teekids.exe, Winlogin.exe, Win32sockdrv.dll или Yuetyutr.dll в папке Windows\System32.

Да, если бы он никак не палился, то, по моим предположениям, ущерб мог бы быть намного больше.
Идем дальше по хронологии.
11 августа 2003 года, сообщается о 48 000 зараженных машин.
12 августа 2003, энтузиасты подхватывают идею червя и начинают распространяться два новых червя. Sophos - чуть более совершенный вариант MSBlast и W32/RpcSpybot-A - совершенно новый червь, использующий тот же эксплойт, но с той же самой целью - DDoS компании Майкрософт.

1654955144348.png


14 августа 2003 года, 500.000 зараженных систем, инициируется DDoS атака на порт 80 сайта windowsupdate.com, отчего тот мгновенно сдыхает.

В этот же день, Майкрософт публикует данные о черве и о том, как удалить его со своих устройств. Отмечая в отчете, что Виндоус 2003 и NT не подвержены заражению, но отвергая бесконечные попытки подключиться к айпи адресу машины, устройства могут выйти из строя. Но в случае непосредственного запуска исполняемого файла на таких ПК, вирус вполне себе нормально работал. По факту так и происходило.

15 августа 2003, Майкрософт распространяет программы, способные уничтожить вирус, хотя некоторые люди, которые из-за постоянных перезагрузок не смогли сложить пасьянс, просто последовали по пути: ПРИШЛО ВРЕМЯ ПЕРЕустанавливать Ши-и-индоус.
На деле их это не спасало от повторного и циклического инфицирования, пасьянс не сложить в таких условиях. В этот же день начали поступать массовые жалобы на то, что из-за бесчисленных перезагрузок компьютеры то выходили из строя, то сгорели. Здесь, кстати, имеется такой же просчет, как и в случае с червем Мортиса, он не идентифицирует был ли заражен ПК ранее, он продолжает его заражать, вызывая подобие отказа в обслуживании.

16 августа 2003, 00:01. Сервера Майкрософт просто отключили и очень быстро локализовали атаку. Ущерб именно компании свелся к минимуму.

18 августа 2003 года, появляется модифицированная версия - Welchia, которая через три дня самоуничтожается, не добившись никаких успехов.

20 сентября, 2003 год, арест Джеффри какого-то там.

2004-2005, появляются новые варианты, но они никак не повторяют успех первой версии.

28 января 2005 год, создатель варианта MSBlaster приговорен к 18 месяцам лишения свободы.

И вот это все было вызвано ненавистью в сторону одного из создателей компании Майкрософт, знаете кого? Билла Гейтса. В коде самого зловреда имелось несколько сообщений, могу процитировать, могу рассказать. Ну первое ничем не примечательное:
“Я просто хочу сказать LOVE YOU SAN !!”
Чего он хотел этим добиться - неизвестно. А вот второе уже более наполнено смыслом:
“ Билли Гейтс, почему вы сделали это возможным? Прекратите зарабатывать деньги и исправьте программное обеспечение !!”.
Если я не ошибаюсь, сам Гейтс на это никак не отреагировал. Видимо, ему было настолько плевать, что аж плевать.
Сам оригинал бластера не был уж таким и проблемным, лично меня больше волнует и, наверное, поражает количество разновидностей, которые именовались латиницей, ничего не напоминает?

Бластер (собственной персоной)
Вариант длиной 7.200 байт, использует имя "penis32.exe" в качестве имени. Создал его как раз сам Джеффри.

MS Blaster.c

Blaster.C имеет длину 5.360 байта. Его имя файла - "teekids.exe", и он добавляет значение "Microsoft Inet Xp.. = teekids.exe" в тот же раздел реестра, что и исходный, но об этом поговорим чуточку позже.

MS Blaster.d.

Этот вариант использует имя файла "mspatch.exe" и добавляет значение "Nonton Antivirus = mspatch.exe" в тот же раздел реестра, что и в предыдущих версиях, забавная маскировка под антивирус, хотя все возможно на то время, 2003 год и шишек у сообщества любителей техники мало. Его длина составляет 11. 776 байта.

MS Blaster.e .

Вариант E Blaster использует имя файла «mslaugh.exe» и добавляет значение «windows Automation = mslaugh.exe» в тот же ключ реестра, что и оригинал.

MS Blaster.f .

Этот вариант использует имя файла enbiei.exe и добавляет значение " = enbiei.exe" в тот же ключ реестра, что и исходный. Его длина составляет 11.808 байт.
Этот вариант поступил из Румынии сентября 2003 года и был ограничен внутренней сетью румынского университета. Создателя упекли на 15 годиков за такую шутку. В тексте там что-то шлось о дипломе, так вот.. Не получил он его.
А, вот это послание, сразу же перевод оставлю:
“Не ходи на гидротехнический факультет!!! Ты зря тратишь время... Бирсан, твоя пенсия ждет!!! Я мчусь на диплом!!!!!!"
Ну это слишком локально, чтобы понять о чем тут речь. Какая пенсия, какой Бирсан. Бред.

Ms Blaster.g .

Blaster.G - самый большой вариант Blaster, весящий 66.048 байт. Он использует имена файлов "eschlp.exe" и "svchosthlp.exe". Он добавляет значения "explorer = (system32)\eschlp.exe /fstart" и "MSUpdate = (system32)\svchosthlp.exe" в тот же реестр, что и в предыдущих вариантах. Он также изменяет ключ реестра Internet Explorer, чтобы установить стартовую страницу браузера на “http://www.getgood.biz” .

MS Blaster.h

Blaster.H - это вариант размером 6.688 байт, в котором используется имя файла "mschost.exe". Он добавляет "windows shellext.32 = mschost.exe" в тот же раздел реестра, что и в предыдущих версиях.
Проблесков интеллекта у создателей я не обнаружил, ничего кроме новых функций и названий добавить не смогли. Печально.
А теперь к самому механизму работы: как устроен, чем дышит и что ест.
Итак, вот наш Ёшида приходит домой, ложится на кровать и начинает размышлять о происходящем в мире. Включает свой старенький ПК на Шиндоус 2000 и проверяет почту. Допустим, что в этот же миг на одном из зараженных устройств был сгенерирован айпи адрес нашего героя. Что происходит в таком случае?

Здесь, кстати, важно уточнить, что Майкрософт сам открыл эту лазейку своими патчами для RPC, это короче.. Сейчас загуглю, в общем. Удалённый вызов процедур - класс технологий, позволяющих программам вызывать функции или процедуры в другом адресном пространстве.

Вот для этой штуковины выходят, за месяц до инцидента, патч MS03-026, а затем MS03-039. Это позволяло червю распространяться без открытия вложений пользователями, просто рассылая спам на большое количество случайных IP-адресов, которые, между прочим, генерировались очень даже занятным образом, но о этом позже.
Система получает код, использующий уязвимость RPC (описанную в бюллетене Microsoft по безопасности MS03-026) от червя Blaster на уже зараженном компьютере, используя порт TCP 135. Если код эксплойта не соответствует системе, подсистема RPC выйдет из строя и это приведет её к тотальной перегрузке от чего наблюдаем следующий результат:

S3BGEImi7peBgq6mPE33ZZI_GS4D6XH4JqF9qlBUGnvriloSoI3R3gV4fOBOZaxFtE_NKjsN-43KUDxTXZm_IEptWD-xhJuk1dZlUiTu7if_06j1ejU4PY7SLHbXJHNmk-ZCapBhd30pNvnQ0Q


После успешной подгрузки кода, на компьютере Ёшиды открывается удаленная командная оболочка, где запускается слушатель на TCP порт 4444. Червь на уже зараженном компьютере запускает сервер Trivial File Transfer Protocol (TFTP), прослушивающий UDP-порт 69. Он отправляет команда целевой машине через порт 4444 загрузить червя и запустить его, а затем немедленно прекращает любые процедуры, генерируя следующий IP.
На машине нашего героя командная оболочка закрывается и выдает TFTP-команду "get", которая загружает червя из системной папки уже зараженной машины через порт 69 и запускает его.
При запуске Blaster добавляет значение "windows auto update = msblast.exe", чтобы запускаться при каждой загрузке системы. После он пытается создать мьютекс, который в версии Джеффри имел название "Billy", но здесь что-то идет не так и даже если червь уже запущен на устройстве, он будет запускаться вновь, что приводит не только к циклическому заражению, но и к бесконечному количеству процессов вируса.
Прежде чем начать искать жертву и генерировать айпи, он делает себе перерыв в 20 секунд, а после уже и приступает к выполнению задачи по самовоспроизведению.

Blaster использует два метода поиска айпи-адресов для заражения новых машин.
Первый метод будет использоваться с 40% вероятностью, используя IP-адрес зараженной машины в качестве ее основы. Первые два числа адреса остаются прежними, четвертое значение устанавливается равным нулю, а третье червь проверяет и подбирает сам. Если третье число в IP-адресе больше 20, с вероятностью 40% червь вычтет случайное число меньше 20 и изменит свой базовый адрес на это число.
Например, если зараженный компьютер имеет IP-адрес 201.27.145.5, червь может изменить его на 201.27.154.0. А с 60% вероятностью он начнет сканировать сеть на наличие в ней других устройств, а после начнет саморепродукцию.

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

Давайте запустим вирус на нашей виртуальной машине, которая и без того уже настрадалась и , кажется мне, что умрет после этого точно.
Итак, не будем медлить, сразу же открываем penis32.exe, ничего не происходит, разве что быстро очень промелькивает перед глазами оболочка CMD.

Сразу же видим следующую ошибку:

FZhIZ_xjsyOJULdUjrKGwpWCMvbu5vvu2JBtIwVbEUcp2Kbm6ML0mlgVKuTovXH8WIkF-f2OgUKBKQMHfvTk5FJMHe0pveKsACIh4YL-YObt_Z971c1-DKl8h78tpBiMCtHhutHzLe3bii4__g

М-м-м, окей, лады. Давайте теперь в это время откроем диспетчер задач и закроем сам процесс бластера, хотя уже и поздно и система все равно будет выключена.
Перейдем в реестр по пути:
Код:
Hkey_Local_Machine Software Microsoft Windows CurrentVersion Run

И удаляем оттуда все, что может быть связано с вирусом, далее можно ещё поискать следующие файлы в папке system32: Winlogin.exe, Win32sockdrv.dll или Yuetyutr.dll .
Ну и для завершенности картины, можем ещё закрыть порты 69, 4444 и 135, делается это через брауд… Я не знаю, как писать это слово. Брендмауэр или че оно там. Все. Ваш ПК чист.

Итоги

11 августа 2003 года - молодой Джеффри выпускает в сеть свое творение, по некоторым данным он и есть создатель, по другим же он лишь автор версии B, а первую написал кто-то неизвестный. Бластер породил на своей основе очень много версий, которые не отличались особым умом и сообразительностью, и зачастую творили дичь лишь локально.
Даже не смотря на все меры предосторожности и то, что Майкрософт смог уйти от прямой DDoS атаки, ущерб оценивают в 320 миллионов долларов. В основе связано это с повреждением зараженных машин. На улице 2003 год, информационная безопасность как понятие очень плохо развита и абсолютно никак не распространена в обществе.
Да что уж тут говорить, даже сейчас люди устраивают войны с домофоном, а некоторые передвигаются в фольговой шапочке:


И если говорить что-то, что подитожило бы всю эту статью, ммм, дайте подумать. Майкрософт сам опубликовал отчет о этой дыре и не думал даже её исправлять, не мудрено, что некие умельцы этим и воспользовались. Обращение самого Джеффри в коде Бластера о многом гласит:
Почему вы допустили это, Билли?
В чем-то автор Бластера был прав, но это не отменяет факта его злодеяний, кстати, поглядите на эту панду кунг фу:

7IrCUR0_oRUfivAQG2LzKxe2HnZgjQ4vNh0abpIpqQmiD5rwlIBayHyllMxkdLp6iymhFN5YccDBHWnmrPgv8v2HEi_sMrn53TffVzItDqctI0p82Set7t43S64Xusrp4Ee3Lu-363IV5kXzDQ



А с вами был какой-то парень под ником DeathDay, мира всем. Не прощаюсь.

11.08.2003 MS Blaster.B.​
 
Последнее редактирование:
Мы в соцсетях:

Похожие темы