Руководство по взлому и расшифровке паролей Cisco

Руководство по взлому и расшифровке паролей Cisco

Во время тестов на проникновение нередко можно встретить конфигурационный файл сетевого устройства Cisco. Это может быть резервная копия конфигурации, найденная где-то на каком-то компьютере в сети. Это может быть вывод журнала консоли (например, из PuTTY), содержащий фрагменты конфигурации Cisco. Или мы можем просто взломать какое-нибудь устройство Cisco, настроенное с учетными данными по умолчанию.

Распространенные типы паролей Cisco

В следующих разделах мы рассмотрим все эти типы паролей в порядке от наименее безопасных (самых простых для взлома) до самых безопасных (сложных для взлома):

 

Cisco Password Crackability Best speed John the Ripper Hashcat
Type 0 instant instant n/a n/a
Type 7 instant instant n/a n/a
Type 4 easy 26.4 million per second --format=Raw-SHA256 -m 5700
Type 5 medium 1.2 million per second --format=md5crypt -m 500
Type 8 hard 11.6 thousand per second --format=pbkdf2-hmac-sha256 -m 9200
Type 9 very hard 1.8 thousand per second --format=scrypt -m 9300

Все примеры и измерения скорости в этой статье были произведены на стандартном современном ноутбуке, оснащенном графическим процессором и 4 ядрами процессора.

Пароль Cisco типа 0

Пароль Cisco типа 0 в основном представляет собой открытый текстовый пароль. Нет ни шифрования, ни обфускации. Это самый старый и самый небезопасный метод хранения паролей на устройствах Cisco. Его никогда не следует использовать.

В следующем примере показан пароль типа 0, найденный в конфигурации Cisco:

username admin privilege 15 password 0 P@ssw0rd

Как видите, взламывать и расшифровывать действительно нечего. Мы можем ясно видеть, что пользователь admin имеет пароль P@ssw0rd.

Пароль Cisco типа 7

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

В следующем примере показан пароль типа 7, найденный в конфигурации Cisco:

username admin privilege 15 password 7 0236244818115F3348

Расшифровка паролей Cisco типа 7

Существует ряд свободно доступных инструментов для расшифровки пароля типа 7. Вот некоторые примеры:

Например, чтобы расшифровать приведенный выше пароль типа 7 с помощью скрипта Ciscot7 Python, просто запустите:

wget https://raw.githubusercontent.com/theevilbit/ciscot7/master/ciscot7.py

python ciscot7.py -d -p 0236244818115F3348

Руководство по взлому и расшифровке паролей Cisco

Понятно, что пароль P@ssw0rd.

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

Пароль Cisco типа 4

Этот тип пароля был разработан примерно в 2013 году, и первоначальный план состоял в том, чтобы использовать алгоритм PBKDF2 (функция получения ключа на основе пароля, версия 2). Но из-за проблемы с реализацией это каким-то образом оказалось простой итерацией SHA256.

В следующем примере показан пароль типа 4, найденный в конфигурации Cisco:

username admin secret 4 ds4zcEBHQMiiscBff5JmSaUctdI8fVdmGU18HAtxOCw

Расшифровка паролей Cisco типа 4 с помощью John

John the Ripper распознает этот тип пароля как Raw-SHA256. Чтобы взломать его, мы должны сначала преобразовать его в следующий формат, удобный для Джона, и сохранить его в файле:

admin:ds4zcEBHQMiiscBff5JmSaUctdI8fVdmGU18HAtxOCw

Тогда мы можем взломать его вот так, используя словарь, например:

john --format=Raw-SHA256 --wordlist=/usr/share/wordlists/rockyou.txt --fork 4 hashes.txt

Обратите внимание, что поскольку у нас 4 ядра ЦП, мы можем запустить john в 4 экземплярах, используя параметр —fork:

Cracking cisco type 4 password with john multi threaded   Руководство по взлому и расшифровке паролей Cisco

На приведенном выше снимке экрана видно, что средняя скорость составляет около 26,4 миллиона попыток ввода пароля в секунду.

Расшифровка паролей Cisco типа 4 с помощью Hashcat

Hashcat распознает этот тип пароля как хеш-режим 5700. Чтобы взломать его, мы можем продолжать использовать тот же формат, дружественный к Джону. Затем мы можем взломать его, используя словарь, например:

hashcat -m 5700 --username -O -a 0 hashes.txt /usr/share/wordlists/rockyou.txt

Обратите внимание, что с помощью параметра -O (оптимизированные ядра) мы значительно увеличим скорость. Но это также ограничит длину пароля до 31 символа.

Cracking cisco type 4 password with hashcat   Руководство по взлому и расшифровке паролей Cisco

На приведенном выше снимке экрана видно, что средняя скорость составляет около 1,14 миллиона попыток ввода пароля в секунду. Кажется, в нашем случае взломать этот хэш с помощью john намного быстрее.

Пароль Cisco типа 5

Этот тип пароля был введен примерно в 1992 году и, по сути, представляет собой тысячную итерацию хэша MD5. Соль имеет длину 4 символа (32 бита). Для современных компьютеров это не так уж сложно и поэтому во многих случаях его можно успешно взломать.

В следующем примере показан пароль типа 5, найденный в конфигурации Cisco:

username admin secret 5 $1$jUfy$2TVVXJ8sy.KO8ZhAKfIHt/

Расшифровка паролей Cisco типа 5 с John

John the Ripper распознает этот тип пароля как md5crypt. Чтобы взломать его, мы должны снова сначала преобразовать его в следующий формат, удобный для Джона, и сохранить его в файле:

admin:$1$jUfy$2TVVXJ8sy.KO8ZhAKfIHt/

Тогда мы можем взломать его вот так, используя словарь, например:

john --format=md5crypt --fork=4 --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt

Cracking cisco type 5 password with john multi threaded   Руководство по взлому и расшифровке паролей Cisco

На приведенном выше снимке экрана видно, что средняя скорость составляет около 155 тысяч попыток ввода пароля в секунду.

Расшифровка паролей Cisco типа 5 с помощью Hashcat

Hashcat распознает этот тип пароля как хеш-режим 500. Чтобы взломать его, мы можем продолжать использовать тот же дружественный к Джону формат. Тогда мы можем взломать его вот так, используя словарь, например:

hashcat -m 500 --username -O -a 0 hashes.txt /usr/share/wordlists/rockyou.txt

Обратите внимание, что с помощью параметра -O (оптимизированные ядра) мы значительно увеличим скорость. Но это также ограничит длину пароля до 31 символа.

Cracking cisco type 5 password with hashcat

На приведенном выше снимке экрана видно, что средняя скорость составляет около 1,2 миллиона попыток ввода пароля в секунду. Намного лучше, чем Джон в нашем случае.

Пароль Cisco типа 8

Этот тип пароля является правильной реализацией неудачного типа пароля 4. На этот раз он действительно использует алгоритм PBKDF2 и 10-символьную соль (80 бит). По сути, это 20 000 итераций SHA256, что значительно усложняет взлом по сравнению с предыдущими типами паролей.

В следующем примере показан пароль типа 8, найденный в конфигурации Cisco:

username admin secret 8 $8$dsYGNam3K1SIJO$7nv/35M/qr6t.dVc7UY9zrJDWRVqncHub1PE9UlMQFs

Расшифровка паролей Cisco типа 8 с помощью Джона

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

admin:$8$dsYGNam3K1SIJO$7nv/35M/qr6t.dVc7UY9zrJDWRVqncHub1PE9UlMQFs

Тогда мы можем взломать его вот так, используя словарь, например:

john --format=pbkdf2-hmac-sha256 --fork=4 --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt

Cracking cisco type 8 password with john multi threaded

На приведенном выше снимке экрана видно, что средняя скорость составляет около 1200 попыток ввода пароля в секунду. Немного.

Расшифровка паролей Cisco типа 8 с помощью Hashcat

Hashcat распознает этот тип пароля как хеш-режим 9200. Чтобы взломать его, мы можем продолжать использовать тот же дружественный к Джону формат. Тогда мы можем взломать его вот так, используя словарь, например:

hashcat -m 9200 --username -a 0 hashes.txt /usr/share/wordlists/rockyou.txt

Cracking cisco type 8 password with hashcat

На приведенном выше снимке экрана видно, что средняя скорость составляет около 11 600 попыток ввода пароля в секунду. В нашем случае это определенно быстрее, чем john, но в целом не очень быстро.

Пароль Cisco типа 9

Этот тип пароля использует алгоритм Scrypt. Scrypt был специально разработан, чтобы сделать взлом очень трудным даже на крупномасштабных установках для взлома с большим количеством графических процессоров или аппаратных ASIC. Это связано с тем, что Scrypt требует большого объема памяти для выполнения своей функции.

В следующем примере показан пароль типа 9, найденный в конфигурации Cisco:

username admin secret 9 $9$nhEmQVczB7dqsO$X.HsgL6x1il0RxkOSSvyQYwucySCt7qFm4v7pqCxkKM

Расшифровка паролей Cisco типа 9 с помощью Джона

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

admin:$9$nhEmQVczB7dqsO$X.HsgL6x1il0RxkOSSvyQYwucySCt7qFm4v7pqCxkKM

Тогда мы можем взломать его вот так, используя словарь, например:

john --format=scrypt --fork=4 --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt

Cracking cisco type 9 password with john multi threaded

На приведенном выше снимке экрана видно, что средняя скорость составляет около 1400 попыток ввода пароля в секунду. Немного.

Расшифровка паролей Cisco типа 9 с помощью Hashcat

Hashcat распознает этот тип пароля как хеш-режим 9300. Чтобы взломать его, мы можем продолжать использовать тот же дружественный к Джону формат. Тогда мы можем взломать его вот так, используя словарь, например:

hashcat -m 9300 --username -a 0 --force hashes.txt /usr/share/wordlists/rockyou.txt

Обратите внимание, что мы должны предоставить параметр —force, так как хэш-режим 9300 помечен как нестабильный для нашего конкретного устройства.

Cracking cisco type 9 password with hashcat

На приведенном выше снимке экрана видно, что средняя скорость составляет около 1800 попыток ввода пароля в секунду. Тоже немного.

Советы по взлому

Используйте собственные правила KoreLogic

John the Ripper содержит очень полезный набор правил для генерации паролей под названием KoreLogic. Этот набор правил появился на конкурсе DEFCON 2010, и это отличный способ генерировать пароли из шаблонов или когда традиционная атака по словарю терпит неудачу.

Чтобы использовать его, просто создайте словарь с такими шаблонами, например:

infosec

infosecmatter

infosec matter

Сохраните его в файл Patterns.txt. Затем просто запустите john следующим образом:

john --wordlist=patterns.txt --rules=korelogic ...

Цепь Джона Потрошителя с Hashcat

Хотя были предприняты некоторые попытки преобразовать вышеупомянутые правила KoreLogic в Hashcat, результат лишь частичный. К счастью, мы можем объединить John the Ripper с Hashcat, чтобы он полностью использовал правила KoreLogic.

Просто сгенерируйте пароли с помощью John the Ripper на стандартном выходе и загрузите их в Hashcat, используя канал, подобный этому:

john --wordlist=patterns.txt --rules=korelogic --stdout | hashcat ...

Тот же метод можно использовать для любого набора правил, который мы создали в формате john.

Надеюсь, вы сможете взломать несколько хэшей Cisco с помощью этих советов.

Заключение

В этом руководстве мы рассмотрели типы паролей Cisco, которые можно найти в сетевых устройствах на базе Cisco IOS. Мы рассмотрели все распространенные типы паролей Cisco (0, 4, 5, 7, 8 и 9) и предоставили инструкции о том, как их расшифровать или взломать с помощью популярных взломщиков паролей с открытым исходным кодом, таких как John the Ripper или Hashcat.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Click to rate this post!
[Total: 1 Average: 5]

Leave a reply:

Your email address will not be published.