Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
BiBi-Windows-Wiper-Analysis — Технический анализ вайпера Bibi-Windows, нацеленного на израильские организации | Kitploit
Инструменты/GitHubGitHub/knight0x07/bibi-windows-wiper-analysis
Обратная инженерияАнализ вредоносных программЦифровая криминалистикаАнализ Бинарных ФайловРазведка угрозРеагирование на Инциденты
GitHubknight0x07/bibi-windows-wiper-analysis

BiBi-Windows-Wiper-Analysis

Технический анализ вайпера Bibi-Windows, нацеленного на израильские организации

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Репозиторий
8122 лет назадЕщё не проверено
Поделиться

Технический анализ BiBi-Windows Wiper, нацеленного на израильские организации

30 октября команда Incident Response из Security Joes обнаружила новый Linux-вайпер под названием "BiBi-Linux", развернутый прохамасовской хактивистской группой для уничтожения их инфраструктуры. А затем, 1 ноября 2023 года, ESET Research написали в твиттере о Windows-версии Bibi Wiper, развернутой группой BiBiGun — поддерживаемой ХАМАС хактивистской группой, которая впервые появилась во время конфликта между Израилем и ХАМАС в 2023 году.

В этом посте мы рассмотрим Windows-версию BiBi Wiper, известную как "BiBi-Windows Wiper"

Технический анализ

При запуске BiBi-Windows Wiper проверяет, были ли переданы вайперу какие-либо аргументы. Аргументом здесь является каталог, который нужно уничтожить, — bibi.exe <directory_to_destroyed>. Если аргумент не передан, он выполняет следующую процедуру для получения целевых дисков:

  • Считывает жестко заданный путь: "C:\Users"

  • Получает доступные в данный момент диски с помощью GetLogicalDrives(), где возвращаемое значение является битовой маской, затем перебирает диски от A до Z (26 дисков). Далее выполняет битовую проверку с полученной маской, чтобы определить доступные диски в системе, и добавляет ":\" к имени диска.

  • Здесь он исключает диск C, проверяя i != 2, где 2 — позиция битовой маски для диска C

  • Затем для доступных дисков, кроме диска C, он выполняет GetDriveTypeA(), которая возвращает тип диска. BiBi-Windows Wiper нацеливается только на следующие типы дисков:

    • DRIVE_FIXED
    • DRIVE_REMOVABLE
    • DRIVE_RAMDISK

1

Таким образом, BiBi-Windows Wiper нацеливается на:

  • жестко заданный каталог — "C:\Users";
  • и все доступные диски, кроме диска "C:".

Затем он выводит целевые каталоги на консоль, получает NumberOfProcessors из GetNativeSystemInfo() и на основе количества процессоров вычисляет количество потоков, после чего выводит его на консоль.

2

Далее он создает новый поток, который считывает команды, хранящиеся в обратном порядке, а затем создает новый процесс с помощью CreateProcessA для выполнения этих команд. Ниже приведены команды:

  • cmd.exe /c bcdedit /set {default} recoveryenabled no - Отключает среду восстановления Windows
  • cmd.exe / c bcdedit / set {default} bootstatuspolicy ignoreallfailures - Заставляет систему загружаться в обычном режиме, а не в среде восстановления Windows
  • cmd.exe /c wmic shadowcopy delete - Удаляет теневые копии томов с помощью WMIC
  • cmd.exe /c vssadmin delete shadows /quIet /all - Удаляет теневые копии томов с помощью VssAdmin

3

Кроме того, он создает еще один поток, который выполняет основные процедуры вайпера. Процедуры вайпера выполняют следующие действия:

  • Аргументы функции вайпера:
    • Arg1 — путь к уничтожаемому каталогу (может быть указан оператором или получен, как описано ранее);
    • Arg2 — количество потоков.
  • Затем он запускает бесконечный цикл, где счетчиком является значение раунда "[+] Round %d\n" — поэтому после запуска вайпер будет уничтожать данные бесконечно!
  • Далее, исходя из количества потоков, он создает в цикле несколько потоков, которые выполняют основную функцию вайпера.
  • BiBi-Windows Wiper исключает файлы с расширениями ".exe", ".dll" и ".sys"

4

Анализ функции вайпера

Теперь давайте разберемся, как BiBi-Windows Wiper уничтожает данные на машине.

  • Сначала вайпер рекурсивно обходит каталог, подлежащий шифрованию, а затем получает размер целевых файлов.
  • Затем он в цикле выполняет функцию вайпера для целевых файлов в зависимости от размера файла, где вторым аргументом функции вайпера является "0xFF"
  • Функция вайпера реализует Mersenne Twister PseudoRandom Number Generator Algorithm, генерирующий случайные числа, как показано ниже.

5

  • Сгенерированное функцией sub_140008BF0() случайное число затем подвергается операции взятия по модулю (%) со значением "0xFF + 1 = 100", и результат (остаток) операции по модулю является байтом, которым перезаписывается целевой файл байт за байтом.

7

Пример ниже относится к файлу с данными "hello", который перезаписывается этими 5 случайными байтами в цикле.

ogfile_val -> rand_num % (hardcoded_val + 1) -> overwrite_val

root@kitploit:~
h - 0xDD9B40A5 % 0x100 -> 0xA5
e - 0x37905317 % 0x100 -> 0x17
l - 0x54B7A20C % 0x100 -> 0x0C
l - 0xDBD10533 % 0x100 -> 0x33
o - 0x18ED3C42 % 0x100 -> 0x42

Файл перезаписан случайными байтами — Уничтожен!

9

Когда данные в файле перезаписаны случайными байтами и файл уничтожен, BiBi Wiper изменяет имя файла следующим образом:

  • Он снова вызывает предыдущую функцию Mersenne Twister, где на этот раз жестко заданным аргументом является "0x3D". Как только случайное число сгенерировано, выполняется операция по модулю с "0x3E", и выходное значение (остаток) сохраняется аналогичным образом.
  • Затем выходное значение остатка умножается на 2, и это значение используется как индекс в широкой строке, как показано ниже:
root@kitploit:~
rand_no = twisterfunc()
remainder_output = rand_no % (0x3D + 1)
wide_string = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
filename_byte = wide_string[remainder_output * 2]

Thus,
if random num = 0xC6D15D79
mod_out = 0xC6D15D79 % 0x3E => 0x31
offset = 0x31 × 0x2 = 0x62
so the 62nd indexed value in the wide string becomes one of the character for the filename. In this case the value is "n"

Эта же процедура выполняется 0xA (10) раз, и все проиндексированные значения объединяются, образуя случайное имя файла, например 1wnRvB6teT, а затем добавляется расширение ".BiBi" (Bibi — это прозвище премьер-министра Израиля Биньямина Нетаньяху) вместе с номером раунда в конце следующим образом — <rand_filename>.BiBi

10

Таким образом, BiBi-Windows Wiper уничтожает все файлы в целевых каталогах, перезаписывая данные в файлах случайными байтами. Поскольку цикл, то есть раунды, бесконечен, вайпер будет снова и снова рекурсивно перезаписывать файлы случайными байтами до бесконечности и не остановится, полностью уничтожая файлы на машине!

Выполнение BiBi-Windows Wiper, демонстрирующее целевой каталог, ядра процессора, потоки, номер раунда, статистику и уничтоженный файл с расширением .BiBi

12

Спасибо за чтение! — knight0x07

Скачать инструмент