#64 Kali Linux для продвинутого тестирования на проникновение. Атака bit-flipping.
Здравствуйте, дорогие друзья.
Большинство злоумышленников не уделяют особого внимания атакам криптотипа, поскольку они требуют много времени, и, значительной вычислительной мощности для взлома зашифрованного текста, и извлечения значимой информации. Но в некоторых случаях логику реализованной криптографии можно легко понять.
В этом разделе мы рассмотрим атаки с переворотом битов, в которых используется цепочка блоков шифрования (CBC) для шифрования заданного открытого текста. В CBC, прежде чем Вы зашифруете блок, открытый текст будет подвергнут операции XOR с зашифрованным выводом предыдущего блока, создав логическую цепочку блоков, как показано на рисунке ниже:
В двух словах, XOR сравнивает два значения и возвращает true, если они различны. Все, что Вам нужно, это вектор инициализации. Получите доступ к Mutillidae, перейдя к OWASP 2017 > A1 — Injection (Other) > CBC bit flipping:
Тестировщики должны иметь возможность попасть на следующую страницу, как показано на рисунке ниже:
Как мы видим, текущий пользователь приложения работает с идентификатором пользователя 100 и идентификатором группы 100. Вам нужно быть пользователем 000 в группе 000, чтобы стать привилегированным пользователем root.
Единственное, что нам нужно изменить, это значение IV, 6bc24fc1ab650b25b4114e93a98f1eba. Как так это значение является шестнадцатеричным и имеет длину 32 символа, длинной 128 бит. Приступаем к оценке инициализации вектора, разделив значение на два символа в виде блока и изменив значение в URL на доступ к ним один за другим:
• http://yourIP/mutillidae/index.php?page=view-user-privilege-level.php&iv=0
0c24fc1ab650b25b4114e93a98f1eba: No change to the User or Group ID
• http://YourIP/mutillidae/index.php?page=view-user-privilege-level.php&iv=6
b004fc1ab650b25b4114e93a98f1eba: No change to the User or Group ID
Когда мы добираемся до пятого блока, 6bc24fc100650b25b4114e93a98f1eba, мы видим изменение идентификатора пользователя, как показано на рисунке ниже:
Тестировщики могут использовать Python 2 (поскольку шестнадцатеричный код недоступен в Python 3) для генерации шестнадцатеричного значения. Введите python в терминале Kali, что должно привести нас к оболочке Python 2.7.18 по умолчанию. Мы будем XOR-ть значения, чтобы получить результат, 000:
1 2 3 4 5 6 |
>>> print hex(0XAB ^ 0X31) 0x9a >>> print hex(0X9A ^ 0X31) 0xab >>> print hex(0X9A ^ 0X30) 0xaa |
Чтобы стать пользователем root, идентификатор группы и идентификатор пользователя должны быть равны 000, поэтому мы повторяем то же самое на все блоки, пока значение не изменится. Наконец, мы получаем восьмой блок, 6bc24fc1ab650b14b4114e93a98f1eba, изменивший идентификатор группы; теперь мы делаем то же самое, что и для идентификатора пользователя:
1 2 3 4 5 6 7 |
kali@kali:~# python Type "help", "copyright", "credits" or "license" for more information >>> print hex(0X25 ^ 0X31) 0x14 >>> print hex(0X14 ^ 0X30) 0x24 >>> exit() |
Это дает нам следующий ключ: 6bc24fc1aa650b24b4114e93a98f1eba. Когда вы проходите IV
с новым значением, теперь Вы должны получить доступ к приложению с расширенными привилегиями, т.к. показано на рисунке ниже:
Даже если шифрование включено на самом высоком уровне, таком как TLS1.3, если приложение принимает или выполняет аутентификацию с помощью метода HTTP GET, злоумышленники могут потенциально использовать сетевым устройствам, таким как маршрутизаторы, и по-прежнему иметь возможность захватывать все параметры URL.
На этом все. Всем хорошего дня!
#1 Kali Linux для продвинутого тестирования на проникновение. Целевое тестирование.
#2 Kali Linux для продвинутого тестирования на проникновение. Методология тестирования.
#3 Kali Linux для продвинутого тестирования на проникновение. Введение в возможности Kali Linux.
#7 Kali Linux для продвинутого тестирования на проникновение. Kali на Android (телефоны без рута).
#8 Kali Linux для продвинутого тестирования на проникновение. Настройка и кастомизация Kali Linux.
#11 Kali Linux для продвинутого тестирования на проникновение. Создание тестовой лаборатории. Metasploitable3.
#12 Kali Linux для продвинутого тестирования на проникновение. Создание тестовой лаборатории. Mutillidae.
#14 Kali Linux для продвинутого тестирования на проникновение. OSINT и Пассивная разведка.
#15 Kali Linux для продвинутого тестирования на проникновение. Наступательный OSINT. Maltego.
#16 Kali Linux для продвинутого тестирования на проникновение. Наступательный OSINT. OSRFramework. theHarvester.
#18 Kali Linux для продвинутого тестирования на проникновение. Наступательный OSINT. Гугл Дорки.
#20 Kali Linux для продвинутого тестирования на проникновение. Защитный OSINT. CUPP. CeWL. Twofi.
#24 Kali Linux для продвинутого тестирования на проникновение. IPv4. IPv6. Инструменты IPv6.
#26 Kali Linux для продвинутого тестирования на проникновение. Сканирование портов. Nmap. Masscan.
#27 Kali Linux для продвинутого тестирования на проникновение. Информация DHCP. ARP-broadcasting.
#30 Kali Linux для продвинутого тестирования на проникновение. Оценка уязвимости. Эксплойты.
#33 Kali Linux для продвинутого тестирования на проникновение. OWASP ZAP.
#35 Kali Linux для продвинутого тестирования на проникновение. Сканер сетевых уязвимостей OpenVAS.
#37 Kali Linux для продвинутого тестирования на проникновение. Специализированные сканеры.
#42 Kali Linux для продвинутого тестирования на проникновение. The Social Engineering Toolkit (SET).
#48 Kali Linux для продвинутого тестирования на проникновение. Беспроводные и Bluetooth-атаки.
#49 Kali Linux для продвинутого тестирования на проникновение. Беспроводная разведка.
#50 Kali Linux для продвинутого тестирования на проникновение. Обход скрытого SSID.
#52 Kali Linux для продвинутого тестирования на проникновение. Атака на WPA и WPA2. Брут-форс атака.
#56 Kali Linux для продвинутого тестирования на проникновение. WPA3. Bluetooth-атаки.
#62 Kali Linux для продвинутого тестирования на проникновение. Sqlmap.
#63 Kali Linux для продвинутого тестирования на проникновение. XML-инъекция.