Холодная атака: какой пароль взломать первым?

19 января, 2022, Oleg Afonin
Рубрика: «Разное»
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

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

Что такое «холодная» атака?

«Холодной» атакой назовём попытку восстановить доступ к зашифрованным данным и/или подобрать пароль к зашифрованным данным в условиях, когда доступны только сами файлы с данными (либо только метаданные шифрования из заголовков файлов). В рассматриваемой ситуации недоступна никакая информация о владельце файлов, об используемых им паролях или учётных записях. Более того, в ряде случаев неизвестно даже, принадлежит ли предоставленный эксперту набор файлов одному и тому же человеку. Такая ситуация — одна из наиболее тяжёлых в работе эксперта, и в то же время — одна из самых типичных.

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

  1. Определить файлы, для которых могут существовать уязвимости. Такие файлы могут быть расшифрованы мгновенно или очень быстро, однако далеко не всегда при этом восстанавливается оригинальный пароль. Сюда, например, входят файлы Microsoft Office, сохранённые даже современными версиями приложений в «классическом» формате (статья). Такие файлы можно восстановить без длительной атаки на пароли. Так, для документов в форматах .doc/.xls (в отличие от современных .docx/.xlsx) может быть доступен вариант гарантированной расшифровки DOC/XLS в Advanced Office Password Recovery.
  2. Если файлов несколько, провести оценку скорости атаки для каждого файла относительно других форматов (наименее стойкие файлы стоит атаковать в первую очередь); см. таблицу ниже.
  3. В первую очередь атаковать наименее стойкие файлы. Если файлов несколько, выстроить очередь атаки таким образом, чтобы наименее стойкие файлы располагались вверху очереди.
  4. Провести оценку скорости атаки на имеющемся оборудовании (это важно для настройки последовательности атак).
  5. В зависимости от скорости атаки на имеющемся оборудовании и доступного для проведения атаки времени выстроить цепочку атак.

В цепочку атак могут входить следующие действия:

  1. Атака по словарю, составленному из глобальных утечек паролей (словарь top-10000 в Elcomsoft Distributed Password Recovery).
  2. Перебор цифровых паролей длиной от 1 до 8 цифр; максимальная длина цифровых паролей напрямую зависит от стойкости формата. Так, для нестойких форматов можно запустить перебор паролей длиной в 1-8 цифр, а для самых стойких – от 1 до 4 цифр.
  3. Словарная атака с использованием словаря английского языка с мутациями*.
  4. Словарная атака с использованием словаря русского языка (как в варианте с кириллицей, так и в различных вариантах транслитерации) с мутациями*.
  5. Если после предыдущих атак пароль не найден, то в оставшееся время запускается атака методом полного перебора.

* В список мутаций, которые имеет смысл включать при атаке по умолчанию, входят следующие (активировать одновременно):

  1. Мутация «год» в среднем режиме.
  2. Мутация «заглавные буквы» в среднем режиме.

Рассмотрим каждый шаг подробно.

Оценка скорости атаки

Первый и необходимый шаг – оценка скорости атаки. Если файлов – несколько, то в первую очередь имеет смысл настроить атаку на файлы в наименее стойких форматах. Скорость атаки зависит от нескольких параметров:

  1. Формат файла
  2. Используемое для атаки программное обеспечение
  3. Используемой для атаки аппаратное обеспечение

Формат файла оказывает сильное влияние на скорость перебора. Так, на одном и том же оборудовании документ с расширением .doc может показать скорость атаки в 84,400 паролей в секунду, а документ с расширением .docx – уже только всего 7,300 паролей в секунду. Несмотря на то, что цифры в данном примере условные, привязанные к одной конкретной аппаратной конфигурации, они вполне отражают реальное соотношение скоростей между этими двумя форматами на любом оборудовании.

В качестве программного обеспечения мы используем Elcomsoft Distributed Password Recovery – за исключением, однако, тех случаев, когда пароль с файла или документа можно снять мгновенно или очень быстро другими способами.

Наконец, в качестве аппаратного обеспечения могут выступать как отдельные компьютеры, так и компьютеры, объединённые через локальную или глобальную сеть, а также виртуальные инстансы в облачных сервисах Amazon или Microsoft Azure. В компьютерах, в свою очередь, большую важность имеет установленный графический ускоритель или ускорители; производительность центрального процессора отходит на второй план.

Скорость атаки для различных форматов в разных аппаратных конфигурациях публикуется на странице Elcomsoft Distributed Password Recovery (раздел Графики производительности). Кроме того, сравнительную скорость перебора паролей для ряда распространённых форматов файлов можно узнать из приведённой ниже таблицы. В качестве точки отсчёта мы используем старый, но до сих пор не потерявший актуальность видеоускоритель NVIDIA GTX 1080: его производительность хорошо известна, её легко сравнить с производительностью более новых видеокарт.

Название формата Паролей в секунду / NVIDIA GTX 1080
MD5 (single hash) 9800000000
NTLM (MD4) 9100000000
Domain Cached Credentials Windows 2000-2003 ( 2xMD4 ) 7310000000
SHA-1 (single hash) 5450000000
MD5 (many hashes) 2820000000
SHA-1 (many hashes) 2503203112
SHA-256 2211000000
Adobe Acrobat9 PDF (SHA256+AES256) 2050000000
LM (DES-56) 1070000000
SHA-512 851500000
IKE PSK (HMAC(sha1) ) 200587000
MS SQL Server 2000 18300000
MS SQL Server 2005 17650000
SQL CE (sdf) v4.0 platform default (SHA256+AES128) 17300000
SQL CE (sdf) v3.0 (MD5+RC4) 17200000
SQL CE (sdf) v3.5 (SHA1+AES128) 17100000
MS SQL Server 2014 17047000
SQL CE (sdf) v4.0 engine default (SHA512+AES256) 16700000
PFX/P12 certificates (without strong enc-tion)( pbkdf2_sha1(1) ) 7340000
PGP secret key (MD5) (simple1) 3280000
PFX/P12 certificates (with strong encryption)( pbkdf2_sha1(?) ) 1570000
OpenOffice (pbkdf2_sha1(1024) + AES-256) 1150210
Keychain 1130000
IBM Notes (pbkdf2_sha1(5000) + AES128) 567000
PGPDisk 10.3.0 (.pgd) (CAST5) 457000
WPA/WPA2 PSK (pbkdf2_sha1(8192) + HMAC(sha1)) 334000
IBM Notes (pbkdf2_sha1(5000) + AES256) 289000
PGP secret key (MD5) (simple2) 284000
Domain Cached Credentials Vista+ ( 2xMD4 + pbkdf2_sha1(10240) ) 282000
PGPDisk 10.3.0 (.pgd) (AES256) 273000
PGPDisk 10.3.0 (.pgd) (EME2-AES) 273000
LastPass 215000
IBM Notes (pbkdf2_sha256(5000) + AES128) 205000
ZIP (AES) 203000
Apple iWork 09 150000
Dashlane 139000
iOS 4.x-9.x, 10.1 iTunes Backup 139000
PGP WDE 134000
PGPDisk 10.3.0 (.pgd) (Twofish) 120000
Keepass 119000
1Password 108000
Hancell 2010/2014 108000
OpenOffice (pbkdf2_sha1(1024) + Blowfish) 95300
Microsoft Office 2007 84400
IBM Notes (pbkdf2_sha512(5000) + AES256) 72300
BlackBerry backup 50700
Microsoft Office 2010 48500
GnuPG 2.0 (secring.gpg) 30800
PGP secret key (SHA1) (IteratedSalted1) 30800
RAR 5 25300
PGP zip archive (.pgp) 24300
Apple iWork 2014 22900
PGP secret key (SHA1) (IteratedSalted2) 18600
RAR 3-4 17100
OpenDocument (pbkdf2_sha1(100000) + AES256) 13400
FileVault 9800
OS X Password 9650
FileVault_APFS 8500
Encypted DMG (AES-128) 7390
Microsoft Office 2013/2016 7300
Bitcoin 5920
TrueCrypt: SystemDisk AES_RIPEMD160 4960
7Zip 4490
TrueCrypt: SimpleDisk AES_RIPEMD160 3010
TrueCrypt: Container AES_RIPEMD160 2630
BitLocker 875
TrueCrypt: SystemDisk Unkn_Unkn 756
TrueCrypt: Container Unkn_Unkn 668
TrueCrypt: SimpleDisk Unkn_Unkn 667
iOS 10.2+ iTunes Backup 95

Очередь задач и последовательность атак

В понятие «очереди задач» входит список файлов, на которые будет производиться атака. «Очередь атак» включает настроенные пользователем атаки, которые будут последовательно использоваться программой, чтобы восстановить пароль для конкретного файла. Эти термины можно изобразить следующим образом:

Файл 1
------ Атака 1
------ Атака 2
------ Атака 3
Файл 2
------ Атака 1
------ Атака 2
------ Атака 3
Файл 3
------ Атака 1
------ Атака 2
------ Атака 3

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

Поступления.docx
------ Атака по словарю top-10000
------ Атака на цифровые пароли (1-6 знаков)
------ Словарная атака с мутациями по словарю English.dic
------ Словарная атака с мутациями по словарю Translit.dic
------ Словарная атака с мутациями по словарю Russian.dic
------ Полный перебор (полный набор символов; 1-8 знаков)
Продажи.xlsx
------ Атака по словарю top-10000
------ Атака на цифровые пароли (1-6 знаков)
------ Словарная атака с мутациями по словарю English.dic
------ Словарная атака с мутациями по словарю Translit.dic
------ Словарная атака с мутациями по словарю Russian.dic
------ Полный перебор (полный набор символов; 1-8 знаков)

В Elcomsoft Distributed Password Recovery добавленные в очередь задач файлы обрабатываются последовательно. Это означает, что переход на следующий файл произойдёт в одном из двух случаев: если пароль был найден в процессе какой-либо атаки, либо продукт завершил все атаки из очереди для данного файла. Именно поэтому так важно заранее оценить скорость перебора паролей для каждого из обрабатываемых файлов, расположив их в порядке возрастания стойкости (самые «быстрые» форматы – в начале очереди).

Внимание: Используйте мутации аккуратно! Обязательно настройте атаки таким образом, чтобы перебор заданного множества паролей завершался в течение прогнозируемого времени. Использование чрезмерного количества мутаций, а также их максимальных настроек, существенно увеличит количество паролей для перебора, а, следовательно, и время, требуемое для проведения атаки.

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

Заключение

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

 


  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  

REFERENCES:

Elcomsoft Distributed Password Recovery

Производительное решение для восстановление паролей к десяткам форматов файлов, документов, ключей и сертификатов. Аппаратное ускорение с использованием потребительских видеокарт и лёгкое масштабирование до 10,000 рабочих станций делают решение Элкомсофт оптимальным для исследовательских лабораторий и государственных агентств.

Официальная страница Elcomsoft Distributed Password Recovery »

НАШИ НОВОСТИ