Как увеличить мощность (TX Power) Wi-Fi карты в Kali Linux и BlackArch
Актуальная версия инструкции здесь: Простой способ увеличить TX Power для Wi-Fi в Kali Linux и BlackArch
В разных странах разное законодательство и технические нормативы, в том числе в отношении Wi-Fi. В некоторых странах не разрешено использовать частоты некоторых Wi-Fi каналов (например, в США нельзя использовать каналы 12, 13 и 14). В большинстве стран установлено ограничение на мощность Wi-Fi сигнала в 20.0 dBm. Но есть страны в которых стоит ограничение в 30.0 dBm. Можно воспользоваться этой лазейкой (заставить думать Wi-Fi карту, что она в стране где разрешено 30.0 dBm) и поднять её мощность (TX Power) до значения в 30.0 dBm.
Для Wi-Fi устройств есть такое понятие как управляющий домен (regulatory domain или "regdomain") – именно в этом параметре указана страна, в котором, как предполагается, работает данное устройство. Также имеется сопутствующая база данных, в которой для каждой страны прописаны разрешённые частоты и разрешённая для них мощность.
Алгоритм следующий:
- мы устанавливаем общесистемную настройку управляющего домена на значение той страны, где разрешена мощность в 30.0 dBm;
- устанавливаем повышенную мощность для беспроводного адаптера.
По идее, описанный метод должен работать для многих беспроводных карт, но на практике встречаются следующие ограничения:
- физическая неспособность карт работать на мощностях более 20.0 dBm (например, беспроводной интерфейс изначально показывает мощность 15.0 dBm при разрешённых 20.0 dBm – в таком случае никаким способом не удастся поднять мощность выше 15.0 dBm, хотя бы даже до тех же самых 20.0 dBm);
- особенности драйверов, например, некоторые драйверы игнорируют системные настройки. Это не является неразрешимой проблемой – но для каждой модели нужен свой подход (обычно, требуется небольшой патч для драйвера) или (что намного проще), патч базы данных управляющего домена.
Посмотреть, что вам разрешено прямо сейчас и на что способен ваш беспроводной адаптер можно командой:
sudo iw list
Например, для России разрешены следующие частоты и мощность:
Оказывается, каналы с 100 по 128 не разрешается использовать, а для каналов с 132 по 165 разрешена повышенная мощность.
Полную актуальную базу в текстовом виде можно посмотреть здесь.
Странами, в которых разрешены каналы с 1 по 13 на мощности 30.0 dBm являются (к примеру):
- BZ
- GY
- NZ
- VE
Обратите внимание, что для каналов на 5 ГГц у них разные значения (разный список разрешённых частот и мощностей).
Далее я покажу поднятие мощности на примере Alfa AWUS052NH в Kali Linux. В старых инструкциях указывается на необходимость установить дополнительные пакеты – в настоящее время это не нужно. Всё необходимое в Kali Linux уже имеется! Подробности для BlackArch/Arch Linux ниже.
Останавливаем службы, которые могут нам помещать (это необязательно, должно работать и с ними):
sudo systemctl stop NetworkManager sudo airmon-ng check kill
Чтобы узнать, настройки какого региона действуют в данный момент выполните команду:
sudo iw reg get
Строка country 00 говорит о том, что у меня не установлено какое-либо значение и применяются стандартные настройки.
Теперь устанавливаем управляющий домен на значение BZ:
sudo iw reg set BZ
Сразу можно проверить, принялись ли настройки:
sudo iw reg get
Заодно на новые возможности можно посмотреть командой:
sudo iw list
Если на данном этапе настройки управляющего замена не применились (не установились) на системном уровне, то не получится повысить мощность Wi-Fi адаптера, пока вы не разберётесь с причиной этого.
Посмотреть имя беспроводного интерфейса и его текущее состояние можно командой:
sudo iw dev
Далее увеличиваем мощность (замените wlan0 на имя вашего беспроводного интерфейса):
sudo ip link set wlan0 down sudo iw dev wlan0 set txpower fixed 30mBm # sudo iw wlan0 set monitor control # если нужно, переводим в режим монитора sudo ip link set wlan0 up
Проверяем:
sudo iw dev
Строка txpower 30.00 dBm говорит о том, что у нас всё получилось.
Усиление мощности для Alfa AWUS036NHA
Для AWUS036NHA эти же команды не имеют эффекта.
Объяснение можно найти здесь:
«За назначение свойств каналам отвечает regulatory domain, который зависит от страны. Данные берутся из базы данных в юзерспейсе при помощи утилиты crda. По идее сменить страну можно командой «iw reg set $КОД_СТРАНЫ», но в случае с устройствами от atheros из коробки этот метод не работает, так как у атеросов regulatory domain зашит в EEPROM и линуксовый драйвер читает именно его, игнорируя настойки системы. К счастью, у нас тут opensource и мы можем наложить несложный патч:»
Т.е. это тот самый случай, когда драйвер игнорирует системные настройки и использует значение, зашитое производителем на аппаратном уровне. Проблема, в принципе, решаема, причём несколькими различными методами.
Если у вас Alfa AWUS036NHA или любая другая, которая игнорирует системные настройки regulatory domain, то это не повод впадать в отчаянье.
Вы обратили внимание, что база данных, из которых берутся данные, представляет собой обычный текстовый файл? По идее, сразу должна возникнуть мысль, можно ли подправить его под нужную страну? Можно!
Начнём с того, что проверим, для какой страны произведена ваша беспроводная карта:
sudo iw reg get
В моём случае строка country GB говорит о том, что карта произведена для страны, которая в базе данных названа GB.
Мой метод отличается от других инструкций, где вручную устанавливаются пакеты wireless-regdb и crda. Эти пакеты уже должны быть установлены в вашей системе (в Kali Linux есть по умолчанию). Единственное что мы сделаем – заменим файл базы данных.
В последних версиях Kali Linux не установлен пакет crda, установим его:
sudo apt install crda
Установим зависимости, необходимые для компиляции базы данных:
sudo apt install python3-m2crypto
Клонируем исходные файлы:
git clone git://git.kernel.org/pub/scm/linux/kernel/git/sforshee/wireless-regdb.git cd wireless-regdb/
Теперь нам нужно отредактировать текстовый файл базы данных:
gedit db.txt
В нём найдите строку country 00 и пропишите для неё что-то вроде (можете подправить под свой вкус):
(2402 - 2482 @ 40), (30) (5170 - 5835 @ 80), (30) (57000 - 66000 @ 2160), (40)
Эти же строки впишите для country GB (у вас может быть другая страна — зависит от вашей карты, вы можете посмотреть это значение командой sudo iw reg get):
Сохраните и закройте файл.
Пропатчим файлы для использования Python3
sed -i 's/#!\/usr\/bin\/env python/#!\/usr\/bin\/env python3/' *.py
Выполните команду:
make
В результате из текстового файла был создан бинарный файл БД (regulatory.bin) которым мы подменим одноимённый файл в системе.
Удаляем исходный файл базы данных:
sudo rm /lib/crda/regulatory.bin
Копируем нашу модифицированную БД:
sudo cp regulatory.bin /lib/crda/regulatory.bin
Ещё раз для нового формата, который также используется:
sudo rm /usr/lib/firmware/regulatory.db sudo cp regulatory.db /usr/lib/firmware/regulatory.db
Копируем необходимый публичный ключ (файл БД подписан сгенерированным специально для нашего пользователя ключом):
sudo cp $USER.key.pub.pem /lib/crda/pubkeys/ sudo cp $USER.x509.pem /usr/lib/crda/pubkeys/
Перезагрузите компьютер.
Теперь НЕ нужно использовать sudo iw reg set BZ.
Убедимся в этом:
sudo iw reg get
Строки
country GB: DFS-ETSI (2402 - 2482 @ 40), (N/A, 30), (N/A)
говорят о возможности увеличить мощность до 30 dBm.
Пробуем:
sudo ip link set wlan0 down sudo iw dev wlan0 set txpower fixed 30mBm # sudo iw wlan0 set monitor control # если нужно, переводим в режим монитора sudo ip link set wlan0 up
Результат:
После того, как мы пропатчили базу данных, больше нет необходимости менять значение управляющего домена ни для какого беспроводного интерфейса!
Повышение можности Wi-Fi адаптера в BlackArch / Arch Linux
В BlackArch/Arch Linux рекомендуется установить пакет wireless-regdb-pentest. Подробности в статье «Как увеличить мощность (TX-Power) Wi-Fi карты в BlackArch». Если по каким-либо причинам вы не хотите использовать wireless-regdb-pentest, то ниже описано, как это сделать другим путём (по аналогии с Kali Linux).
Все вышеприведённые команды работают и в BlackArch / Arch Linux. Но необходимо установить пару дополнительных пакетов:
sudo pacman -S crda wireless-regdb
В файле /etc/conf.d/wireless-regdom можно разкомментировать строку с соответствующей страной, чтобы значение устанавливалось при загрузке системы.
Также в BlackArch / Arch Linux другое имя беспроводных интерфейсов – замените их в командах на правильные.
В BlackArch / Arch Linux при генерации бинарного файла БД возникнет ошибка
openssl rsa -in ~/.wireless-regdb-mial.key.priv.pem -out mial.key.pub.pem -pubout -outform PEM writing RSA key Generating regulatory.bin digitally signed by mial... ./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-mial.key.priv.pem File "./db2bin.py", line 13 print 'Usage: %s output-file input-file [key-file]' % sys.argv[0] ^ SyntaxError: Missing parentheses in call to 'print' make: *** [Makefile:58: regulatory.bin] Ошибка 1
Она связана с тем, что по умолчанию Arch Linux использует Python 3, а не Python 2. Для решения проблемы откройте файл Makefile:
gedit Makefile
И замените в нём строку
./db2bin.py regulatory.bin db.txt $(REGDB_PRIVKEY)
на
python2 ./db2bin.py regulatory.bin db.txt $(REGDB_PRIVKEY)
Заключение
Увеличение мощности Wi-Fi адаптера бесспорно полезно только при глушении Wi-Fi, а также в атаках деаутентификации. Во всех остальных атаках увеличение мощности совсем не обязательно что-то изменит, поскольку мощность влияет на то, как громко «кричит» ваш Wi-Fi адаптер, но не увеличивает его чувствительность (как хорошо он «слышит» других).
Также следует помнить о возможности разблокировать некоторые каналы, которые могут быть недоступны в вашей стране.
Если вы хотите всё вернуть в исходное состояние, то выполните следующие команды:
sudo apt purge wireless-regdb crda sudo apt install wireless-regdb
================================================
Обращение к тем, кто разбирается
В этой инструкции мы меняем базу данных, генерируем свою пару ключ-сертификат и подписываем ей БД. Раньше проверка подписи выполнялась пакетом crda и нам достаточно было просто скопировать свой сертификат, чтобы crda делала по нему проверку.
Теперь валидация сертификата выполняется на уровне ядра и crda больше не нужен. По этой причине в последних версиях crda уже не устанавливается по умолчанию. Тем не менее в репозиториях этот пакет присутствует, его можно установить. После этого за проверку подписи вновь начинает отвечать crda и мы используем проверенный способ с копированием нашего сертификата в /lib/crda/pubkeys/.
Но теперь это уже можно назвать костылём и не факт, что пакет crda вовсе не уберут из репозитория.
В связи с этим вопрос, кто знает, как добавить свой сертификат, чтобы он использовался для проверки подписи файла regulatory.db на уровне ядра, то есть без crda? Если кто-то знает, то пишите в комментариях.
В данный момент всё примерно так:
sudo journalctl -b | grep -i regulatory
Но в выводе получаем, что загруженная БД regulatory.db неправильно сделана или подпись отсутствует/недействительна:
дек 11 07:43:35 HackWare-Kali kernel: cfg80211: Loading compiled-in X.509 certificates for regulatory database дек 11 07:43:35 HackWare-Kali kernel: platform regulatory.0: firmware: direct-loading firmware regulatory.db дек 11 07:43:35 HackWare-Kali kernel: platform regulatory.0: firmware: direct-loading firmware regulatory.db.p7s дек 11 07:43:35 HackWare-Kali kernel: cfg80211: loaded regulatory.db is malformed or signature is missing/invalid
Пока пакет crda решает эту проблему.
P.S.
Небольшой анонс, на Arch Linux пакет wireless-regdb-pentest теперь делает так:
То есть устанавливает TX power на 36.00 dBm. Тестирую, уже обнаружились нюансы, но всё вроде решаемо. Если всё получится, то адаптирую это для Kali Linux.
Связанные статьи:
- Лучшая Wi-Fi карта для Kali Linux и BlackArch (93.9%)
- Карты и антенны для аудита Wi-Fi (для Kali Linux) (93.9%)
- Решение проблем с ошибками rt2x00usb_vendor_request: Error - vendor request * failed for offset * with error -110 и RTNETLINK answers: Operation not possible due to RF-kill (92.6%)
- Простой способ увеличить TX Power для Wi-Fi в Kali Linux и BlackArch (57.5%)
- Захват рукопожатий в Windows (56.8%)
- Инструкция по использованию Masscan — лучшего массового сканера больших сетей (RANDOM - 1.4%)
Алексей спасибо за статью,но насчет патча не совсем понял,то есть его нужно применять в самой системе или его нужно зашить в само устройство? или на AWUS036NHA физически невозможно увеличивать мощность?
Судя по этой инструкции, AWUS036NHA должна вытягивать 30.0 dBm (хотя я не смог найти в спецификации её «output power»).
По поводу патча – по ссылке патчиться драйвер беспроводной карты (модуль ядра). Но там для другой модели – привёл в качестве хорошего объяснения проблемы и примера решения.
Ещё один пример (проблема решается для карт на драйвере ath5k) здесь.
Кстати, в инструкции по ссылке https://dscallday96.wordpress.com/2013/08/14/maximizing-the-tx-power-of-alfa-awus036nha/ используется другой подход – редактируется база данных со спецификациями стран. По идее, это намного проще, чем искать исправление для драйвера – сейчас попробую и, если получится, дополню инструкцию.
Получилось и для AWUS036NHA! Для неё использовался другой метод — патч БД. Дополнил эту инструкцию.
Алексей спасибо,Вы гений! )) обязательно попробую данный метод когда куплю себе эту карту,Еще раз спасибо Вам за Вашу работу.
тестовый коммент,что то не мог написать вчера.
Комментарий попал в Спам — сейчас восстановил.
Добрый день Алексей,решил я вчера попробовать данную инструкцию на своем TP-Link 722N ,сделал все по порядку как вы описали,и Вы знаете,действительно получилось,вот посмотрите скриншот
, но не знаю,что то я сомневаюсь что данный адаптер может работать на такой мощности,может это только визуально он так показывает 30 dBm ,Вы как думаете?
И еще хотел спросить насчет вот этой команды-
слово fixed означает что при каждом подключении адаптера он всегда будет работать на мощности в 30 dBm ?
Мне к примеру не нужно чтобы он работал всегда на полную мощность,а только на время ссесии когда он используется.
Комментарий попал в спам, думаю, из-за ссылки на хостинг картинок. Здесь на сайте вы можете прикрепить картинку к вашему сообщению (под кнопкой «Отправить комментарий») – лучше пользуйтесь ей, чем хостингами картинок.
В характеристиках в интернете про TP-Link 722N я нашёл:
В другом месте:
Т.е. получается, что действительно он не может.
Думаю, с USB тестером можно было бы сказать более точно – у меня есть тестер, но нет TP-Link 722N.
В команде слово fixed означает фиксированную величину. Действие этой команды можно изменить другой аналогичной командой, также действие прекратиться после перезагрузки ОС.
у меня после этой команды даже после перезагрузки как только подключал адаптер и в терминале набирал sudo iw dev мощность сразу была на 30 dBm, не знаю почему так.
(Для коллективной базы знаний), какой у вас дистрибутив?
С этой ошибкой должна справиться команда:
Система жалуется на отсутствие модуля m2crypto. Есть два способа установки этого модуля, один из которых указан в статье: "apt install python3-m2crypto", но после команды "make" у меня вылезла ошибка как у вас. Второй способ: "apt install python-m2crypto", — у меня все заработало.
Здравствуйте! Вы верно обратили внимание, поскольку при сборке там используется не Python 3, а Python 2. Поэтому вместо python3-m2crypto нужно устанавливать python-m2crypto. Инструкцию поправил, на всякий случай там теперь установка сразу для двух версий (на случай, если будет сделан переход на Python 3):
Спасибо! мне не помогло)))
У вас тот случай, когда изначально показывает менее 20. Кстати, команда sudo iw reg set BZ не попала в скриншот или вы её не вводили (хотя, как уже сказал, для данной беспроводной карты это неважно)?
через sudo iw reg set BZ тоже самое
Алексей, добрый день.
AWUSO36ACH — CH, насколько я понимаю версия для Китая.
Насколько я понимаю, у меня тоже ТОТ САМЫЙ случай, а можно по подробнее, какой ТОТ. И что с этим можно сделать?
Заранее благодарен.
через sudo iw reg set BZ тоже самое
Алексей, очень прошу вас, скажите, какую антенну взять на AWUS051NH V2, нужна направленная и оочень дальнобойная, насчет типа (параболическая т.д.) тоже не знаю, но вот нужно уложиться в 1600(пик1700) рублей
Про антенны, которые я пробовал, написано здесь. Улучшения есть, но не надо ждать чудес.
Я не пробовал большие антенны (типа Yagi ), которые предназначены для размещения вне помещений. ИМХО, смысл в них есть только при работе с таким же или более мощным источником сигнала как показано на этой карнтинке:
Спасибо, Алексей.
Подскажите пожалуйста, как править базу данных на абсолютно все возможные частоты.
И еще, я слышал о Tube-u от Alfa, говорят, ничуть не лучше обычных альф.
Также слышал о Bullet M2, но обзоров на него не нашел.
Ну что же, для Alfa AWUS036NHA всё робит как часы.
А у меня от не скомпилировася файл. Модешь дать скомпилированный файл?
Не компилируется потому что читаете невнимательно. А если бы читали внимательно, то заодно бы узнали, что файл подписывается ключом, который генерируется персонально для каждого пользователя. То есть чужой файл всё равно не будет работать.
Окей, согласен, сглупил. Нашел в чем была проблема, в моем случае:
1) sudo apt install python-pip
2) sudo apt-get install libssl-dev swig python3-dev gcc
3) sudo pip install M2Crypto
После systemctl reboot в reg gt у меня появилась страна GB: DFS-ETSI , хотя до этого было только значение country 00: DFS-UNSET.
Далее по продолжил по гайду. Я не знаю из за чего возникли в моем случае дополнительные телодвижения, но все хорошо что хорошо кончается. Возможно, кому то мой комментарий поможет. Осталось рещить вопрос с "code 0x03" в ривере, и будет мне свой кусочек счастья))
Приветствую! Спасибо за полезный комментарий. Кстати, пакет M2Crypto можно установить прямо из репозиториев Kali Linux, в этом случае не нужно устанавливать другие зависимости для компиляции:
Инструкцию я поправил.
Про проблему 0x03 в Reaver я писал в статье «Решение проблем Reaver: WARNING: Failed to associate with и WPS transaction failed (code: 0x03), re-trying last pin». С чипсетами Atheros такой проблемы нет, но она есть со всеми чипсетами Ralink. Мне помог самый последний способ — когда ассоциация с ТД делается с помощью aireplay-ng, а reaver запускается с опцией -A. Там же ссылка на WiFi-autopwner и скриншоты, где этот фикс автоматизирован. Всё вполне работает, но для нормального перебора WPS нужен быть не слишком далеко от ТД, иначе будут другие ошибки.
И ещё рекомендую попробовать OneShot (инструкция «Как взломать Wi-Fi обычным адаптером без режима монитора»), там таких проблем как у Reaver нет (подойдёт если ТД уязвима к Pixie Dust).
Добрый день.
А в wifislax как это сделать? Попробовал, не получилось.
Это бесплатный дистрибутив? Если да, подскажите, где скачать для тестов?
Добрый день.
Вот здесь
https://www.wifislax.com/
И я не много удивлён, что Вы не знаете о нём.
Спасибо!
Про эту ОС я слышал и знаю, что linset первоначально именно там появился. Но, вроде, ещё упоминали про какую-то версию PRO, а закрытые/платные продукты мне не интересны.
На самом этом сайте я всё-таки тоже был, даже, наверно, пару раз. Но он ведь и не на русском, и не на английском. Открыл – ничего не понял – закрыл.
Попробую всё-таки разобраться с этой ОС, как будет возможность.
На сколько я знаю, он абсолютно бесплатен, и русский есть. При загрузке есть выбор языка.
По первому описанию сразу все получилось(стало 30.0 dBm), но после команды reboot все настройки упали, ввел sudo iw dev и показывает частоту 20.0 dBm. Как можно исправить, подскажите пожалуйста?
Вы имеете в виду что после перезагрузки сбросились настройки, которые были установлены с помощью sudo iw dev wlan0 set txpower fixed 30mBm ?
Если да, то так и должно быть — эти настройки всегда действуют до перезагрузки. Для постоянных изменений нужно редактировать базу данных, как показано в этой же статье.
Доброго времени суток.
Имею в наличии, awus036nha и кали 2019.3. Пробывал разные варианты и хоть ты тресни, 20dbm…
Вчём может быть дело? В драйверах или мне так с альфой повезло?
Приветствую! В этой инструкции я показываю на примере в том чилсе адаптера Alfa AWUS036NHA — то есть в принципе он поддерживает 30.0 dBm.
Подключите Wi-Fi карту и проверьте, для какого региона она использует настройки:
Здесь в инструкции я правлю настройки не для всех регионов. Возможно, тот регион, который у вашей карты, пропущен. То есть отредактируйте базу данных для региона вашей карты по аналогии, как показано здесь, и замените базу данных по этой инструкции.
Сори я слепой))) Пропустил этот пункт. Спасибо.
ПС. Хм… так ещё проще добится 33dbm на awus036nh
Ваш метод не помог, при make вдаёт ошибку на kali 2019.3
Решил проблему так:
доп зависимость sudo apt-get install libnl-3-dev libnl-genl-3-dev
вместо вашего скрипта git clone https://github.com/Distrotech/wireless-regdb.git
Дальше как у вас
Alexey, добрый день!
Буду безмерно благодарен за ссылку на оригинал Alfa AWUS036NHA. Сам мониторил ибеи и амазоны на наличие. Но ее либо нет в продаже, либо фейк, либо пониженная версия чипа atheros с префиксом L (low-cost).
Приветствую! Оказалось, что у меня у самого с AR9271L. Я начал читать Античат, в чём разница между Atheros AR9271 и AR9271L: здесь и следующая страница. Там один пользователь говорит, что в системе определяется как AR9271, а по факту оказалась AR9271L. Я заинтересовался, вскрыл свою карту, еле-еле с помощью увеличительного стекла рассмотрел чип и он оказался AR9271L! Это сюрприз для меня. Но карта нормальная, не жалуюсь.
Приветствую. А wps pixie dust, null pin карта делает? Такая же карта, вскрыл тот же чип что у вас, немного обвязки не распаяно…..
Атаку Pixie Dust и отправлять пустой ПИН может делать любая Wi-Fi карта, которая может переходить в режим монитора и поддерживает беспроводные инъекции. Это не на уровне возможностей карты, это на уровне ПО. Если Reaver есть, значит может.
Спасибо за разъяснение.
Таки не обойтись без грусти в этой жизни ачат читал, вю ветку. Значит, закажу такую же. Посылаю Вам лучи добра)
Добрый вечер! Использую Kali на виртуалке vmware и также поставил Kali на raspberry pi4. Есть на руках два адаптера LOGILINK WL0237 (чип rtl8811au) и TP-LINK ARCHER T9UH (чип rtl8814au). На raspberry использую команду iwconfig wlan0 txpower 27. Проверил на обоих адаптерах — txpower переключается на указанный в команде. Но пытаюсь эту же команду использовать на виртуалке и для обоих адаптеров выскакивает сообщение:
Error for wireless request "Set Tx Power" (8B26) :
SET failed on device wlan0 ; Operation not permitted.
Могу предположить, что проблема в установленном драйвере вайфай-адаптера. Дрова на виртуалке ставил до прочтения вашей статьи, а на raspberry уже из статьи. Можете подсказать как удалить полностью установленные драйвера вайфай адаптера на виртуалке? Или может есть еще какие-то варианты решения проблемы?
Приветствую! Ошибка Error for wireless request "Set Tx Power" (8B26) : SET failed on device wlan0 ; Operation not permitted всегда возникает, если Wi-Fi карта уже находится в режиме монитора. Поэтому то, что выделаете и что вызывает ошибку, делайте до перевода беспроводного адаптера в режим монитора, а затем можно устанавливать его в режим монитора (если нужно). Здесь, в инструкции, показана правильная последовательность команд — достаточно просто следовать инструкции.
Нашел я все-таки причину — все дело в написании команды!
У вас указано следующее:
sudo
iw dev wlan0
set
txpower fixed 30mBm
Я у себя набираю: sudo iw wlan0 set txpower fixed 3000
Эта команда у меня срабатывает и на виртуалке и на raspberry pi4. Нашел я это здесь
https://github.com/aircrack-ng/rtl8812au/tree/v5.6.4.1Может кому-то пригодится
День добрый. Все проделал как указано в статье, все скомпилилосб и перезаписал файлы, но после перезагрузки все значения в странах остаютсяс теже как были до изменения. что это может быть?
Приветствую! Вы поменяли для той страны, для которой у вас предназначен адаптер? Возможно, ваш адаптер не поддерживает мощность больше, чем есть.
Конечно поменял везде 30 и скомпилил. Заменил файл ругуляторный bin. Но оно не меняется после перезагрузки и вообщк.Адаптер 036nha, и даж если он не подходит, хотя это нет файл bin же новый
Все поменял каку вас в статье, у меня тоже GB.Везде выставил как у вас. пересобрал базу и regulatory.bin и перезаписал его и ключ, попосле перезагрузки и ввода разных вех команд ничего не меняется. Векак было по дефолту остается. обидно ибо только альфу взял, лучше б NHверию бпал
В смысле «везде»? Там очень много стран, неужели вы для каждой поменяли? Командой sudo iw reg get посмотрите, для какой страны у вас адаптер. Внимательно сделайте изменения в базе данных для этой страны. И ещё раз внимательно выполните все шаги. Если AWUS036NHA, значит просто что-то не так сделали или пропустили какой-то шаг.
Вопро как раз в том, что я три раза уже повторил ве по шагам, как у вас. Адаптер тот же, теже выводы команд, тот же код страны
Сейчас провере на свежей Kali Linux. Может быть что-то изменилось уже.
Единственное отличие — он ругается когда делаешь make на m2rypt. из репозитория
python-m2crypto для второй версии не ставится. python3-m2crypto ставится.
В файле db2bin.py заменил в начале #!/usr/bin/env python на #!/usr/bin/env python3. make ошибок не дал.Может в этом беда?
В общем разобрался. M2Crypt для Python2 вставать не хочет (
apt
install
python-m2crypto
) в Kali.sudo
apt
install
python-m2crypto python3-m2crypto
// он так ругается
// я поставил так
sudo pip2 install M2Crypto
//потом уже далее по статье
git clone git:
//git
.kernel.org
/pub/scm/linux/kernel/git/sforshee/wireless-regdb
.git
cd
wireless-regdb/
//правим базу как в вашей статье
//а потом просто
make
make install
//И ВСЕ!! Ничего руками никуда переписывать не нужно, само встает как надо.
Поправил, изменений довольно много:
— исправлена команда по установке зависимостей
— патч файлов *.py на использование Python3
— замена файла regulatory.db (из-за этого и не работало)
— теперь ключ $USER.x509.pem также копируется в /usr/lib/crda/pubkeys/ (не уверен что это нужно, но здесь https://aur.archlinux.org/packages/wireless-regdb-pentest/ так делается, поэтому я тоже сделал)
Теперь работает:
Скриншот сегодняшний, из последней версии Kali Linux.
Если у вас по-прежнему что-то не так или после любой команды возникает ошибка, то пишите, будем разбираться дальше.
Друзья, вот у меня хоть все и скомпилилось и все я заменил, но после ребута страны теже восстанавливаются и значения по ним.
global
country 00: DFS-UNSET
(2402 — 2472 @ 40), (6, 20), (N/A)
(2457 — 2482 @ 20), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(2474 — 2494 @ 20), (6, 20), (N/A), NO-OFDM, PASSIVE-SCAN
(5170 — 5250 @ 80), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5250 — 5330 @ 80), (6, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN
(5490 — 5730 @ 160), (6, 20), (0 ms), DFS, PASSIVE-SCAN
(5735 — 5835 @ 80), (6, 20), (N/A), PASSIVE-SCAN
(57240 — 63720 @ 2160), (N/A, 0), (N/A)
phy#0
country GB: DFS-ETSI
(2402 — 2482 @ 40), (N/A, 20), (N/A)
(5170 — 5250 @ 80), (N/A, 20), (N/A), AUTO-BW
(5250 — 5330 @ 80), (N/A, 20), (0 ms), DFS, AUTO-BW
(5490 — 5710 @ 160), (N/A, 27), (0 ms), DFS
(57000 — 66000 @ 2160), (N/A, 40), (N/A)
Как такое возможно?
На kali 2020.2 такая же ситуация
Если бы прочитали комментарии на одну ветку вверх, то узнали бы, что эта проблема была решена, а этот комментарий без ответа по той причине, что является дублем. Всё прекрасно работает, проверено неделю назад.
Ну можно еще и так сделать:
git clone https://github.com/mcepl/M2Crypto
python setup.py build
python setup.py install
Скрипты из пакета wireless-regdb поддерживают в равной мере Python 3 и 2. Причём некоторое время назад при улучшении поддержки Python 3 поломали поддержку Python 2, но потом починили.
В репозиториях Kali Linux удалили pip для Python 2 и, видимо, удалили многие или все другие пакеты для Python 2. Сейчас в Kali Linux можно вообще удалить Python 2 и это не приведёт ни к каким проблемам с зависимостями. Видимо, недалеко то время, когда Python 2 не будет предустанавливаться по умолчанию, а затем и исчезнет из репозиториев.
Чтобы мне не приходилось исправлять инструкцию каждый месяц, в ней сделан полный переход на Python 3.
Можете подсказать как сделать это на роутере опенврт для 036nha ?
Alexey, добрый день, не выходит с адаптером awus036nhr-v2.
1ый способ не меняет домен (см. скрин 1)
2ой способ: отредактировал файл, собрал бинарник, заменил файлы бд, скопировал ключ.
Безрезультатно.
Если всё сделали правильно, значит, опять что-то поменялось. У меня нет сейчас времени перепроверять.
Инструкция верифицирована 15 сентября 2020 года на последней Kali Linux с последними обновлениями (2020.3, ядро 5.7.0) — всё прекрасно работает.
Долго не получаось. Точно не могу сказать в чем было дело. Но последняя последовательность действий была следующей:
юзнул из коментариев git clone https://github.com/mcepl/M2Crypto
переименовал папку wireless-regdb(побоялся удалять), она у меня уже была — видимо кривая. накатал ее заново, следовал инструкции, перегрузил — все получилось!
enerating regulatory.bin digitally signed by root…
./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-root.key.priv.pem
Traceback (most recent call last):
File "./db2bin.py", line 128, in <module>
from M2Crypto import RSA
ImportError: No module named
make: *** [Makefile:60: regulatory.bin] Ошибка 1
M2Crypto установлен в kali 2020.3
У меня в нотбуке 2 wifi адаптера (встроеный и внещний). про вводе команды
iw reg
set
BZ
регион меняется только для встроеного(wlan0), а для внешнего(wlan1) остается тот же. адаптер Tp-link TL-WN722NДобрый день! Спасибо за ресурс с уникальным и ценным контеннтом!
Шол по монуалу и сталкнулся с такой по команде make бинарный файл не собирается.
Alfa AWUS1900 Realtek RTL8814AU
Linux kali 5.9.0-kali4-amd64 #1 SMP Debian 5.9.11-1kali1 (2020-12-01) x86_64 GNU/Linux
root@kali:~/wireless-regdb# make
Generating regulatory.bin digitally signed by root…
./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-root.key.priv.pem
/usr/bin/env: «python332»: Нет такого файла или каталога
make: *** [Makefile:60: regulatory.bin] Ошибка 127
python332 создавал эту папку, менял версию python с 3 на 2. — Выдает еще больший каскад ошибок.
Подскажите в чем может быть причина? В каком направлении думать? Что почитать для того что бы избежать таких ошибок?
python332 ??????? Даже не знаю, почему такой файл не найден в вашей системе…
Если делать всё по инструкции, просто копировать и вставлять команды в терминал, то всё работает. Проверил сегодня, получилось вот так — это последняя Kali Linux с последними обновлениями:
Пока проверял, выяснилось, что пакет crda больше не устанавливается по умолчанию — я уже внёс это изменение в инструкцию. То есть просто делайте по инструкции, не читайте комментарии и не придумывайте отсебятину.
Alexey: У меня такая же проблема! вот это имя python332 получается если несколько раз выполнять вот это
1
sed
-i
's/#!\/usr\/bin\/env python/#!\/usr\/bin\/env python3/'
*.py
После выполнения команды
1
make
у меня вышла ошибка
Generating regulatory.bin digitally signed by root…
./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-root.key.priv.pem
/usr/bin/env: ‘python3’: No such file or directory
make: *** [Makefile:60: regulatory.bin] Error 127
после чего я опять попробовал
1
sed
-i
's/#!\/usr\/bin\/env python/#!\/usr\/bin\/env python3/'
*.py
1
make
и получилась уже вот такая ошибка
Generating regulatory.bin digitally signed by root…
./db2bin.py regulatory.bin db.txt ~/.wireless-regdb-root.key.priv.pem
/usr/bin/env: ‘python33’: No such file or directory
make: *** [Makefile:60: regulatory.bin] Error 127
в чем взаимосвязь — понять не могу.
в общем застопорился на этом месте
Приветствую, эта команда в файлах заменяет строки «#!/usr/bin/env python» на «#!/usr/bin/env python3», замену делает простым добавлением тройки в конце строки. Да, если выполнить два раза, будет две тройки, если три — 3 тройки, если четыре, то 4 тройки.
Просто не надо её выполнять 2 раза. А на самом деле, теперь её не надо выполнять вовсе, поскольку Python 2 из Kali Linux убран вовсе. То есть по умолчанию в любом случае будет использоваться Python 3 даже со строкой «#!/usr/bin/env python». Раньше по умолчанию использовался Python 2 поэтому был необходим этот патч.
В общем, удалите папку и скачайте заново. И ни используйте эту команду или используйте один раз.
При следующей проверке инструкции я уберу эту команду — убрать без проверки не могу, а на проверку прямо сейчас нет времени.
Ошибся по поводу утверждения, что команда больше не нужна — команда нужна, но её нужно выполнить только один раз.
Обращение к тем, кто разбирается. В этой инструкции мы меняем базу данных, генерируем свою пару ключ-сертификат и подписываем ей БД. Раньше проверка подписи выполнялась пакетом crda и нам достаточно было просто скопировать свой сертификат, чтобы crda делала по нему проверку.
Теперь валидация сертификата выполняется на уровне ядра и crda больше не нужен. По этой причине в последних версиях crda уже не устанавливается по умолчанию. Тем не менее в репозиториях этот пакет присутствует, его можно установить. После этого за проверку подписи вновь начинает отвечать crda и мы используем проверенный способ с копированием нашего сертификата в /lib/crda/pubkeys/.
Но теперь это уже можно назвать костылём и не факт, что пакет crda вовсе не уберут из репозитория.
В связи с этим вопрос, кто знает, как добавить свой сертификат, чтобы он использовался для проверки подписи файла regulatory.db на уровне ядра, то есть без crda? Если кто-то знает, то пишите в комментариях.
P.S.
Небольшой анонс, на Arch Linux пакет wireless-regdb-pentest теперь делает так:
То есть устанавливает TX power на 36.00 dBm. Тестирую, уже обнаружились нюансы, но всё вроде решаемо. Если всё получится, то адаптирую это для Kali Linux.
Добрый вечер! у меня проблема, подскажите что означает в данном случае country 99??
global
country 00: DFS-UNSET
(2402 — 2472 @ 40), (6, 20), (N/A)
(2457 — 2482 @ 20), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(2474 — 2494 @ 20), (6, 20), (N/A), NO-OFDM, PASSIVE-SCAN
(5170 — 5250 @ 80), (6, 20), (N/A), AUTO-BW, PASSIVE-SCAN
(5250 — 5330 @ 80), (6, 20), (0 ms), DFS, AUTO-BW, PASSIVE-SCAN
(5490 — 5730 @ 160), (6, 20), (0 ms), DFS, PASSIVE-SCAN
(5735 — 5835 @ 80), (6, 20), (N/A), PASSIVE-SCAN
(57240 — 63720 @ 2160), (N/A, 0), (N/A)
phy#0
country 99: DFS-UNSET
(2402 — 2472 @ 40), (N/A, 20), (N/A)
(2457 — 2482 @ 40), (N/A, 20), (N/A), PASSIVE-SCAN
(2474 — 2494 @ 40), (N/A, 20), (N/A), NO-OFDM, PASSIVE-SCAN
(5140 — 5860 @ 80), (N/A, 30), (N/A), PASSIVE-SCAN
Приветствую! Это коды с 00 по 99 не привязаны к странам. Думаю, вам будет достаточно создать секцию с кодом 99 по аналогии с «country 00».