Приветствую всех!
Решил написать полноценную статью про ноутбуки для пентеста и гибридную графику в них. Статья будет разбита на 2 части из-за большого объема.
Это продолжение и дополнение этих заметок. Так как появилось свободное время, то решил доработать и структурировать их.
Вообще, я не представляю Kali Linux или другой дистрибутив для пентеста на ПК (исключение - для эффективного перебора паролей). Ноутбук удобен своей мобильностью и хорошей производительностью (я говорю о средней ценовой категории). Из доступных на рынке предложений мне больше всего нравятся решения MSI. В частности линнейка GL, так как она находится в доступной ценовой категории, что позволяет использовать ноутбук как для работы с требовательным ПО, так и для игр. Конкретно MSI мне нравится продуманной системой охлаждения и широким выбором моделей в ценовых категориях. Это ни в коем случае не реклама MSI, а субъективное мнение. Модели Asus тоже неплохи, однако не все имеют продуманную систему охлаждения в средних ценовых категориях.
Однако я отвлекся. Инструкция будет полезна и тем, кто хочет разобраться с зоопарком, творящимся в технологиях, драйверах и прочих компонентах графической системы Linux. Проблема с гибридной графикой является здесь ключевой. NVidia упорно не желает реализовать поддержку технологии Optimus для дистрибутивов Linux. Брутить на ноутбуках - не лучшая затея, однако многим нужнен Optimus на Linux для других целей - игры, работа с графикой, да и в целом с NVidia система работает шустрее. Вернемся к бруту - он вполне возможен на ноутбуках, однако для этого я использую технологию CoolerBoost (нажимаем кнопку, вентилятор набирает обороты). В результате при бруте температура не поднимается выше 70-75 градусов. Это как в играх в Windows, так что особой опасности нет. Для работы c 4-way handshake самое то.
Сразу скажу - я не любитель тратить время на видео, так что предупреждаю - статья будет объемная. Предназначена для новичков. Эту тему решил раскрыть, так как в сети есть только обрывки информации или устаревшие инструкции. Практическая цель - работа с pyrit и hashcat посредством CPU и двух видеоадаптеров (технологии OpenGL и CUDA).
Инструкция будет включать в себя пояснения к командам, оптимизацию работы с системой, установку закрытых драйверов Intel, NVidia и настройку Kali Linux на работу с hashcat, pyrit и т.д. Она предназначается для владельцев новых ноутбуков с гибридной графикой (технология Optimus) от NVidia. То есть в ноутбуке присутствует Intel® HD Graphics (iGPU) и дискретный видеоадаптер NVidia (dGPU). Особенность в том, что к экрану подключен только iGPU. dGPU не работает на прямую, а только через iGPU (выполняет сложные задачи).
В Linux адекватно работать с гибридной графикой (Intel HD + NVidia с пропиетарным драйвером) до недавнего времени можно было только при помощи открытого проекта Bumblebee. Однако шмель не везде стабильно работает и требует тонкой настройки.
В 2016 году довели до ума технологию PRIME Syncronization (исправление проблем с тирингом). PRIME позволяет использовать Optimus в двух режимах: "PRIME GPU offloading" и "Reverse PRIME". Для работы ему необходимы загруженные KMS- и DDX-драйвера для iGPU и dGPU. До недавнего времени KMS-драйвер для NVidia был только nouveau, теперь это реализовано и в блобе. Однако стоит заметить, что в пропиетарный драйвер поддерживает только Reverse PRIME (это наш случай, дискретная карта будет выступать в качестве основного GPU, на котором будет работать графическая оболочка). Получается что iGPU не задействован и используется только для вывода картинки на экран с dGPU.
К сожалению, PRIME GPU offloading (закрытая реализация Nvidia Optimus, т.е. как в Windows) пока не поддерживается блобом (для лучшей производительности и работы с CUDA, OpenGL и т.д. нужны пропиетарные драйвера), так что GPU offloading пока не будет.
Возможно Nvidia все-таки реализует полноценный Optimus, или хотя бы "горячее" переключение без костылей. С этим связан этот проект. В 2018 году обещают
Сразу поясню про hashcat и pyrit. Мне не удалось запустить pyrit с CUDA, только с OpenGL. Зато в этом режиме pyrit использует iGPU + все CPU + dGPU совместно. hashcat поддерживает работу с CUDA, но более сложен и работает с Intel-овскими девайсами кривовато.
По поводу CUDA в pyrit - возможно надо плясать с бубном, использовать Bumblebee + блоб/нуво. Лезть на этот кактус я не намерен.
Думаю для CUDA нужно ставить non-glvnd дрова, как здесь. Я ставлю дрова с NVidia binary OpenGL/GLX library (glvnd-variant), есть еще neutral, но из коробки работать не будет. Мой выбор glvnd обоснован тем, что с помощью этого проекта в перспективе будет реализован Optimus. Если кто-нибудь использует на ноутбуке pyrit + CUDA, то напишите, пожалуйста, порядок установки.
Внимание! Это инструкция для полностью чистой системы, поэтому не надо задавать вопросы про ошибки dpkg, пакетов и т.д.
Так как стали возникать странные вопросы, решил подготовить чисто консольные команды, без лишней воды. Вопросы проблем с установкой системы, записью на флешку и т.д. я не буду рассматривать, т.к. они решены в моей предыдущей статье и неоднократно обсуждались на форуме.
Сделаю дополнение по поводу Weekly-релизов (выходят раз в 2 недели), в которые включены последние обновления. Идем
Решил написать полноценную статью про ноутбуки для пентеста и гибридную графику в них. Статья будет разбита на 2 части из-за большого объема.
Это продолжение и дополнение этих заметок. Так как появилось свободное время, то решил доработать и структурировать их.
Вообще, я не представляю Kali Linux или другой дистрибутив для пентеста на ПК (исключение - для эффективного перебора паролей). Ноутбук удобен своей мобильностью и хорошей производительностью (я говорю о средней ценовой категории). Из доступных на рынке предложений мне больше всего нравятся решения MSI. В частности линнейка GL, так как она находится в доступной ценовой категории, что позволяет использовать ноутбук как для работы с требовательным ПО, так и для игр. Конкретно MSI мне нравится продуманной системой охлаждения и широким выбором моделей в ценовых категориях. Это ни в коем случае не реклама MSI, а субъективное мнение. Модели Asus тоже неплохи, однако не все имеют продуманную систему охлаждения в средних ценовых категориях.
Однако я отвлекся. Инструкция будет полезна и тем, кто хочет разобраться с зоопарком, творящимся в технологиях, драйверах и прочих компонентах графической системы Linux. Проблема с гибридной графикой является здесь ключевой. NVidia упорно не желает реализовать поддержку технологии Optimus для дистрибутивов Linux. Брутить на ноутбуках - не лучшая затея, однако многим нужнен Optimus на Linux для других целей - игры, работа с графикой, да и в целом с NVidia система работает шустрее. Вернемся к бруту - он вполне возможен на ноутбуках, однако для этого я использую технологию CoolerBoost (нажимаем кнопку, вентилятор набирает обороты). В результате при бруте температура не поднимается выше 70-75 градусов. Это как в играх в Windows, так что особой опасности нет. Для работы c 4-way handshake самое то.
Сразу скажу - я не любитель тратить время на видео, так что предупреждаю - статья будет объемная. Предназначена для новичков. Эту тему решил раскрыть, так как в сети есть только обрывки информации или устаревшие инструкции. Практическая цель - работа с pyrit и hashcat посредством CPU и двух видеоадаптеров (технологии OpenGL и CUDA).
Инструкция будет включать в себя пояснения к командам, оптимизацию работы с системой, установку закрытых драйверов Intel, NVidia и настройку Kali Linux на работу с hashcat, pyrit и т.д. Она предназначается для владельцев новых ноутбуков с гибридной графикой (технология Optimus) от NVidia. То есть в ноутбуке присутствует Intel® HD Graphics (iGPU) и дискретный видеоадаптер NVidia (dGPU). Особенность в том, что к экрану подключен только iGPU. dGPU не работает на прямую, а только через iGPU (выполняет сложные задачи).
В Linux адекватно работать с гибридной графикой (Intel HD + NVidia с пропиетарным драйвером) до недавнего времени можно было только при помощи открытого проекта Bumblebee. Однако шмель не везде стабильно работает и требует тонкой настройки.
В 2016 году довели до ума технологию PRIME Syncronization (исправление проблем с тирингом). PRIME позволяет использовать Optimus в двух режимах: "PRIME GPU offloading" и "Reverse PRIME". Для работы ему необходимы загруженные KMS- и DDX-драйвера для iGPU и dGPU. До недавнего времени KMS-драйвер для NVidia был только nouveau, теперь это реализовано и в блобе. Однако стоит заметить, что в пропиетарный драйвер поддерживает только Reverse PRIME (это наш случай, дискретная карта будет выступать в качестве основного GPU, на котором будет работать графическая оболочка). Получается что iGPU не задействован и используется только для вывода картинки на экран с dGPU.
К сожалению, PRIME GPU offloading (закрытая реализация Nvidia Optimus, т.е. как в Windows) пока не поддерживается блобом (для лучшей производительности и работы с CUDA, OpenGL и т.д. нужны пропиетарные драйвера), так что GPU offloading пока не будет.
Возможно Nvidia все-таки реализует полноценный Optimus, или хотя бы "горячее" переключение без костылей. С этим связан этот проект. В 2018 году обещают
Ссылка скрыта от гостей
адекватное переключение между iGPU и dGPU. Новости и подвижки в этом направлении
Ссылка скрыта от гостей
.Сразу поясню про hashcat и pyrit. Мне не удалось запустить pyrit с CUDA, только с OpenGL. Зато в этом режиме pyrit использует iGPU + все CPU + dGPU совместно. hashcat поддерживает работу с CUDA, но более сложен и работает с Intel-овскими девайсами кривовато.
По поводу CUDA в pyrit - возможно надо плясать с бубном, использовать Bumblebee + блоб/нуво. Лезть на этот кактус я не намерен.
Думаю для CUDA нужно ставить non-glvnd дрова, как здесь. Я ставлю дрова с NVidia binary OpenGL/GLX library (glvnd-variant), есть еще neutral, но из коробки работать не будет. Мой выбор glvnd обоснован тем, что с помощью этого проекта в перспективе будет реализован Optimus. Если кто-нибудь использует на ноутбуке pyrit + CUDA, то напишите, пожалуйста, порядок установки.
Ссылка скрыта от гостей
[RUS]
Ссылка скрыта от гостей
[EN]
Ссылка скрыта от гостей
[RUS]
Ссылка скрыта от гостей
[EN]
Ссылка скрыта от гостей
[RUS]
Ссылка скрыта от гостей
[RUS]
Ссылка скрыта от гостей
[RUS]
Ссылка скрыта от гостей
[EN]
Ссылка скрыта от гостей
[EN]
Ссылка скрыта от гостей
[RUS]
Ссылка скрыта от гостей
[EN]
Ссылка скрыта от гостей
[EN]
Ссылка скрыта от гостей
[EN]
Ссылка скрыта от гостей
[EN]Внимание! Это инструкция для полностью чистой системы, поэтому не надо задавать вопросы про ошибки dpkg, пакетов и т.д.
Так как стали возникать странные вопросы, решил подготовить чисто консольные команды, без лишней воды. Вопросы проблем с установкой системы, записью на флешку и т.д. я не буду рассматривать, т.к. они решены в моей предыдущей статье и неоднократно обсуждались на форуме.
Сделаю дополнение по поводу Weekly-релизов (выходят раз в 2 недели), в которые включены последние обновления. Идем
Ссылка скрыта от гостей
и скачиваем самый первый образ kali-linux-2018-W12-amd64.iso. Да, это GNOME 3. Именно под него заточен мануал.Осторожно, длиннопост.
Ноутбук MSI GL62 6QE (
Чтобы не было вопросов выложу выводы консоли:
Ноутбук MSI GL62 6QE (
Ссылка скрыта от гостей
), dualboot - Windows + Kali Linux 2018.1.Чтобы не было вопросов выложу выводы консоли:
# uname -a
# cat /etc/*release*
# lspci -k | grep -A 2 -E "(VGA|3D)"
# lspci -k
# glxinfo | grep "OpenGL renderer"
# xrandr --listproviders
# glxinfo | grep -i "direct rendering"
# xrandr --verbose|grep PRIME
# nvidia-smi
# hashcat -I
# hashcat -b -D 1,2,3 --force --optimized-kernel-enable
# pyrit list_cores
# pyrit benchmark
# cat /etc/*release*
# lspci -k | grep -A 2 -E "(VGA|3D)"
# lspci -k
# glxinfo | grep "OpenGL renderer"
# xrandr --listproviders
# glxinfo | grep -i "direct rendering"
# xrandr --verbose|grep PRIME
# nvidia-smi
# hashcat -I
# hashcat -b -D 1,2,3 --force --optimized-kernel-enable
# pyrit list_cores
# pyrit benchmark
При загрузке у владельцев новых ноутбуков вылазит оно:
[ 0.366426] ACPI Error: No handler for Region [EC___] (ffff9b76470bf678) [EmbeddedContro1] (20160831/evreg ion-166)
[ 0.366431] ACPI Error: Region EmbeddedControl (ID=3) has no handler (20160831 L/exfldio-299)
[ 0.366435] ACPI Error: Method parse/execution failed [\_SB.PCIO.LPCB.EC._REG I (Node ffff3b76470c0bl8), AE_NOT_EXIST (20160831/psparse-543)
Это нормально, просто косяки BIOS, к Linux отношения не имеет.
Тоже нормальная ситуация, иногда пропадает само, иногда возвращается, проблемы в железе Intel:
pcieport 0000:00:1c.0: PCIe Bus Error: severity=Corrected, type=Physical Layer, id=00e0(Receiver ID) device [8086:9d14] error status/mask=00000001/00002000
pcieport 0000:00:1c.0: [ 0] Receiver Error (First)
[ 0.366426] ACPI Error: No handler for Region [EC___] (ffff9b76470bf678) [EmbeddedContro1] (20160831/evreg ion-166)
[ 0.366431] ACPI Error: Region EmbeddedControl (ID=3) has no handler (20160831 L/exfldio-299)
[ 0.366435] ACPI Error: Method parse/execution failed [\_SB.PCIO.LPCB.EC._REG I (Node ffff3b76470c0bl8), AE_NOT_EXIST (20160831/psparse-543)
Это нормально, просто косяки BIOS, к Linux отношения не имеет.
идем в /etc/default/grub
ищем строчку linux GRUB_CMDLINE_LINUX_DEFAULT="quiet"
меняем на:
linux GRUB_CMDLINE_LINUX_DEFAULT="quiet libata.noacpi=1"
и сохраняем изменения.
Можно попробовать обновить BIOS (не советую).
ищем строчку linux GRUB_CMDLINE_LINUX_DEFAULT="quiet"
меняем на:
linux GRUB_CMDLINE_LINUX_DEFAULT="quiet libata.noacpi=1"
и сохраняем изменения.
Можно попробовать обновить BIOS (не советую).
Тоже нормальная ситуация, иногда пропадает само, иногда возвращается, проблемы в железе Intel:
pcieport 0000:00:1c.0: PCIe Bus Error: severity=Corrected, type=Physical Layer, id=00e0(Receiver ID) device [8086:9d14] error status/mask=00000001/00002000
pcieport 0000:00:1c.0: [ 0] Receiver Error (First)
# leafpad /etc/apt/sources.list
должно быть так:
deb
deb-src
должно быть так:
deb
Ссылка скрыта от гостей
kali-rolling main contrib non-freedeb-src
Ссылка скрыта от гостей
kali-rolling main contrib non-free# leafpad /etc/gdm3/daemon.conf
раскомментируем (убираем #) строчки и сохраняем:
AutomaticLoginEnable = true
AutomaticLogin = root
раскомментируем (убираем #) строчки и сохраняем:
AutomaticLoginEnable = true
AutomaticLogin = root
# echo -e "blacklist nouveau\noptions nouveau modeset=0\nalias nouveau off" > /etc/modprobe.d/blacklist-nouveau.conf && update-initramfs -u && reboot
в случае ошибок (драйвер Intel, hashcat и т.д.) можно поменять на:
# echo -e "blacklist nouveau\noptions nomodeset i915.modeset=0 nouveau.modeset=0\nalias nouveau off" > /etc/modprobe.d/blacklist-nouveau.conf && update-initramfs -u && reboot
в случае ошибок (драйвер Intel, hashcat и т.д.) можно поменять на:
# echo -e "blacklist nouveau\noptions nomodeset i915.modeset=0 nouveau.modeset=0\nalias nouveau off" > /etc/modprobe.d/blacklist-nouveau.conf && update-initramfs -u && reboot
Часто в Kali Linux приходится ставить что-то из исходников:
# make
# make install
Только вот, удалить или обновить потом некоторый софт с github у Вас скорее всего не выйдет...
Если конечно автор не добавил поддержку make uninstall. Так же можно собрать .deb-пакет из исходников.
wget
Открываем в "установке приложений", устанавливаем. После установки checkinstall будет виден из synaptic.
# make
# make install
Только вот, удалить или обновить потом некоторый софт с github у Вас скорее всего не выйдет...
Если конечно автор не добавил поддержку make uninstall. Так же можно собрать .deb-пакет из исходников.
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Открываем в "установке приложений", устанавливаем. После установки checkinstall будет виден из synaptic.
Результатом будет то, что для полного цикла обновления достаточно будет команды up в консоли:
# apt-get install axel -y && wget -U firefox
# echo -e '#!/bin/bash\napt-fast update && apt-fast upgrade -y && apt-fast dist-upgrade -y && apt-fast autoremove -y && sleep 15s; reboot' > up && chmod ugo+x up && cp up /usr/local/bin/up && rm -rf up && up
# apt-get install axel -y && wget -U firefox
Ссылка скрыта от гостей
&& mv apt-fast.sh /usr/bin/apt-fast && chmod +x /usr/bin/apt-fast# echo -e '#!/bin/bash\napt-fast update && apt-fast upgrade -y && apt-fast dist-upgrade -y && apt-fast autoremove -y && sleep 15s; reboot' > up && chmod ugo+x up && cp up /usr/local/bin/up && rm -rf up && up
# apt-fast install synaptic i965-va-driver-shaders mesa-utils mesa-vulkan-drivers pyrit-opencl lm-sensors psensor -y && psensor
# pyrit && leafpad /root/.pyrit/config
меняем на:
use_CUDA = false
use_OpenCL = true
# pyrit && leafpad /root/.pyrit/config
меняем на:
use_CUDA = false
use_OpenCL = true
Последнее редактирование: