Ссылка на гит:
Всем привет.
Как многим малварьщикам известно, в хроме поменяли шифрование паролей, из-за этого все старые стилеры пошли по бороде, хе-хе.
Вообще защита такая себе, в кратце как там реализовано сейчас:
Chromium изменил механизм шифрования и использует AES-256-GCM.
Данный проект расшифровывает пароли с помощью функций BCrypt (Это API винды). Не нужно никаких файлов DLL.
Новый механизм Chrome заключается в следующем:
Сначала генерируются 32-байтовые случайные данные. Затем он шифрует их с помощью функции Windows DPAPI («CryptProtectData»).
В этот зашифрованный ключ вначале вставляется подпись «DPAPI» для идентификации.
Наконец, этот ключ кодируется с использованием Base64 и сохраняется в файле «Local State» в папке «User Data».
Теперь, чтобы сохранить пароль для входа на сайт, Chrome шифрует его, используя алгоритм AES-256-GCM с указанным выше главным ключом и 12-байтовыми случайными данными.
Наконец, он вставляет подпись «v10» в зашифрованный пароль и сохраняет ее в указанном выше файле «Login Data».
Также в конец зашифрованного пароля добавляется 16 байт аудентификационного тега.
Итого зашифрованный пароль выглядит так:
<V10:3 байта> <NONCE:12 байт> <Сам шифрованный пароль> <Аудентификационный тег:16 байт>
В общем расшифровать все это можно при помощи API "BCryptDecrypt".
Как, посмотрите код проекта, вообще хотел переделать по лучше, но похоже руки не скоро дойдут...)))
Полезно для любителей писать стилеры, программы восстановления паролей и тестирования защиты.
Благодарности:
Благодарю @Jefferson, за предоставления каркаса.
Также есть реализация на C#:
Вы должны зарегистрироваться, чтобы увидеть внешние ссылки
Всем привет.
Как многим малварьщикам известно, в хроме поменяли шифрование паролей, из-за этого все старые стилеры пошли по бороде, хе-хе.
Вообще защита такая себе, в кратце как там реализовано сейчас:
Chromium изменил механизм шифрования и использует AES-256-GCM.
Данный проект расшифровывает пароли с помощью функций BCrypt (Это API винды). Не нужно никаких файлов DLL.
Новый механизм Chrome заключается в следующем:
Сначала генерируются 32-байтовые случайные данные. Затем он шифрует их с помощью функции Windows DPAPI («CryptProtectData»).
В этот зашифрованный ключ вначале вставляется подпись «DPAPI» для идентификации.
Наконец, этот ключ кодируется с использованием Base64 и сохраняется в файле «Local State» в папке «User Data».
Теперь, чтобы сохранить пароль для входа на сайт, Chrome шифрует его, используя алгоритм AES-256-GCM с указанным выше главным ключом и 12-байтовыми случайными данными.
Наконец, он вставляет подпись «v10» в зашифрованный пароль и сохраняет ее в указанном выше файле «Login Data».
Также в конец зашифрованного пароля добавляется 16 байт аудентификационного тега.
Итого зашифрованный пароль выглядит так:
<V10:3 байта> <NONCE:12 байт> <Сам шифрованный пароль> <Аудентификационный тег:16 байт>
В общем расшифровать все это можно при помощи API "BCryptDecrypt".
Как, посмотрите код проекта, вообще хотел переделать по лучше, но похоже руки не скоро дойдут...)))
Полезно для любителей писать стилеры, программы восстановления паролей и тестирования защиты.
Благодарности:
Благодарю @Jefferson, за предоставления каркаса.
Также есть реализация на C#:
Вы должны зарегистрироваться, чтобы увидеть внешние ссылки
Последнее редактирование: