- Hacktool:Win32/AutoKMS: что это и как избавиться от вредоносной угрозы?
- Hacktool:Win32/AutoKMS: что это?
- Hacktool:Win32/AutoKMS (активатор): природа воздействия вируса на систему и пользовательские данные
- Удаление при помощи классического антивирусного сканера
- Использование узконаправленных утилит
- Удаление угрозы вручную
- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- SDR и HackRF для начинающих
- Оглавление
- Что такое SDR — Software-defined radio
- Какое железо выбрать для SDR
- HackRF
- Меры предосторожности для HackRF
- Значение кнопок и индикаторов HackRF
- Как HackRF вывести из состояния «кирпича»
- Кабель для HackRF — почему крайне желательно кабель с шумоподавлением
- Антенны для HackRF
- Программное обеспечение, поддерживающее HackRF
- Инструменты HackRF
- Как установить драйвер, инструменты HackRF и SDR утилиты
- Как обновить прошивку HackRF
- Быстрый старт с HackRF. Первый приём и передача данных в HackRF
- Вопросы и ответы по HackRF
- Я не могу получить доступ к моей HackRF под Linux
- hackrf_set_sample_rate fails (не удаётся установить частоту дискретизации)
- Что это за большой пик в центре моего спектра?
- Как мне справиться со смещением постоянного тока?
- Осмысление настроек усиления
- Системные Требования
- Светодиоды
- Полудуплекс, полный дуплекс
- Какова чувствительность приёма HackRF?
- Решение проблем
Hacktool:Win32/AutoKMS: что это и как избавиться от вредоносной угрозы?
С недавних пор некоторые пользователи компьютерных систем начали замечать присутствие в системе неизвестного процесса Hacktool:Win32/AutoKMS. Что это такое на самом деле, многие даже не догадываются, считая программу неким активатором. Увы, никакого отношения к утилите KMS этот процесс не имеет.
Hacktool:Win32/AutoKMS: что это?
Оговоримся сразу и бесповоротно: не стоит путать эту угрозу с известным приложением KMSAuto Net (иногда его называют Auto KMS Activator), которое было разработано компанией MSFree Inc. для быстрой регистрации программных продуктов Microsoft. Конечно, со своей стороны и эта утилита является незаконной, поскольку способна генерировать ключи для регистрации Windows или MS Office (это обычное компьютерное пиратство). Но она не идет ни в какое сравнение с Hacktool:Win32/AutoKMS. Что это такое, сейчас и посмотрим.
На самом деле это довольно опасный вирус-троян, который может доставить пользователю много хлопот. Но определить его присутствие в системе достаточно просто.
Hacktool:Win32/AutoKMS (активатор): природа воздействия вируса на систему и пользовательские данные
Этот троян действует по типу вирусов, которые принято называть угонщиками браузеров. Как правило, первым симптомом заражения является изменение стартовой страницы во всех установленных в системе веб-браузерах, постоянное перенаправление на небезопасные или потенциально опасные сайты, а также невозможность использования поисковых систем вроде Google или Yahoo!.
Но только этим вред, наносимый системе, не ограничивается. После проникновения в компьютер начинается внедрение не только на системном уровне. Происходит активное считывание пользовательских данных, где предпочтение отдается регистрационным логинам и паролям, которые хранятся в незашифрованном виде. Также могут пострадать и данные владельцев банковских карт и счетов.
Такова программа Hacktool:Win32/AutoKMS. Что это: троян, шпион или вор? Как оказывается, и то, и другое, и третье. Кстати, проявление активности может привести пользователя зараженной системы еще и на некий сайт, где говорится о том, что у юзера на компьютере были вирусы, программа разработчика их удалила, а Hacktool:Win32/AutoKMS – активатор вылеченной программы – является единственным средством восстановления регистрации пострадавшего приложения. Абсолютная ложь!
Удаление при помощи классического антивирусного сканера
Но займемся вопросом устранения угрозы. Первое, что приходит на ум, это использование установленного в системе или портативного антивирусного сканера. К сожалению, помогает это не всегда. Например, судя по отзывам пользователей, даже самые продвинутые продукты Dr. Web ничего не находят, а Microsoft Security Essential и вовсе зависает.
В этом случае нужно проверять еще не загруженную систему. И сделать это можно при помощи дисковых программ вроде Kaspersky Rescue Disk, которые запускаются до старта Windows. Их можно записать на обычную флэшку или оптический диск, после чего установить для них приоритет загрузки в настройках BIOS.
Использование узконаправленных утилит
На просторах Интернета нередко можно встретить советы по поводу того, что Hacktool:Win32/AutoKMS удалить можно исключительно при помощи специально разработанных для этого программ.
В большинстве случаев предлагается использование программ вроде YAC Anti-Malware Free и ей подобных. С этим еще можно согласиться. Но, когда предлагается скачать и установить приложение Win32/AutoKMS virus Removal Tool, тут точно задумаешься. Некоторые, конечно, «ведутся» на такие уловки. И в результате получают установку SpyHunter, который, быть может, вирус и удалит (правда, только после полной регистрации), но вот от самой программы впоследствии неискушенному в познаниях пользователю избавиться будет очень сложно (без специальных знаний практически невозможно). Так что лучше заняться удалением угрозы вручную, тем более сделать это достаточно просто.
Удаление угрозы вручную
Первым делом следует использовать раздел программ и компонентов в стандартной «Панели управления», загрузив систему в безопасном режиме. Не ожидайте, что там вирус будет показан под своим изначальным именем. Вместо этого отсортируйте установленные программы по дате.
Как правило, здесь будет показано несколько компонентов, от которых и нужно избавиться. Это:
- Search Snacks;
- Search Protect;
- HighliteApp;
- Fre_Ven_s Pro 23;
- FLV Player (remove only);
- PassShow;
- Coupon Server;
- TidyNetwork;
- V-bates 2.0.0.440;
- MyPC Backup.
Имейте в виду, что MyPC Backup и FLV Player не имеют ничего общего с официальными утилитами. Как уже понятно, все это нужно немедленно удалить. После этого, записав названия удаляемых компонентов и имя самого вируса, нужно войти в редактор системного реестра (regedit в консоли «Выполнить») и использовать поиск, с последующим удалением всего найденного. Если был установлен вышеупомянутый плеер, а пользователь удаляет из реестра связанные с ним ключи, лучше так и поступить. Сам плеер является бесплатным. Скачать его и установить заново проблемой не является.
Но для лучшего эффекта можно воспользоваться программой iObit Uninstaller, которая имеет в своем арсенале средств модуль мощного сканирования, применение которого избавит пользователя от редактирования реестра и поиска остаточных файлов на винчестере. Только при удалении результатов поиска нужно задействовать дополнительно строку уничтожения файлов.
В браузерах следует удалить некоторые активные надстройки. В случае с Chrome это SupraSavings. Даже в таком, казалось бы, защищенном продукте, как Mozilla Firefox, этот вирус тоже может оставлять свои следы. Тут нужно обратить внимание на расширение UNiDealsa, которое тоже нужно деинсталлировать. В других браузерах удаление расширений выглядит почти аналогично, изменяется только внешний вид разделов.
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
SDR и HackRF для начинающих
Оглавление
Я решил попробовать что-то новое (сколько уже можно «теребить» Wi-Fi?!) и в качестве этого нового выбрал SDR и HackRF, то есть радио (FM, рации, сигналы от беспроводных клавиатур и мышей и прочее). Саму железяку (HackRF ) я ещё не купил, но решил заранее подготовиться в плане документации. Я в плане SDR абсолютный новичок (у меня был давно Behold тюнер с FM и TV, но не думаю, что этот опыт мне пригодится в данной ситуации). То есть в этой теме я буду разбираться с самого-самого начала — если вам также это интересно и вы тоже начинаете с абсолютного нуля, то эта заметка должна стать для вас интересной.
Что такое SDR — Software-defined radio
Если коротко (как я себе это представляю): SDR (программно определяемая радиосистема) это когда все характеристики будущей радиоволны (например, её частота) создаются в компьютере, и затем такая «нарисованная» в компьютере волна отправляется на внешнюю железяку, чтобы быть отправленной как настоящая радиоволна. Благодаря такому подходу достигается большая гибкость в плане того, какие характеристики можно присвоить волне — понятное дело, что отправляющая железяка должна им соответствовать.
А вот определение и Википедии:
Программно определяемая радиосистема (англ. Software-defined radio, SDR) — радиопередатчик и/или радиоприёмник, использующий технологию, позволяющую с помощью программного обеспечения устанавливать или изменять рабочие радиочастотные параметры, включая, в частности, диапазон частот, тип модуляции или выходную мощность, за исключением изменения рабочих параметров, используемых в ходе обычной предварительно определённой работы с предварительными установками радиоустройства, согласно той или иной спецификации или системы.
ПОР выполняет значительную часть цифровой обработки сигналов на обычном персональном компьютере или на ПЛИС. Целью такой схемы является радиоприёмник или радиопередатчик произвольных радиосистем, изменяемый путём программной переконфигурации (отсюда происходит альтернативное наименование таких систем — программно конфигурируемые).
Ну, то есть, это такое радио, в котором для смены частоты не нужно крутить колёсико.
Какое железо выбрать для SDR
Бытовых (любительских) SDR, которые можно просто купить в магазине, очень много: Funcube Dongle, RTL-SDR, USRP, OsmoSDR, BladeRF, HackRF, AirSpy, устройства LimeSDR USB Type-A и другие. Вот здесь собран большой список с их характеристиками: https://en.wikipedia.org/wiki/List_of_software-defined_radios
Одним из самых популярных устройств является HackRF . У этого устройства большой диапазон поддерживаемых частот, а также приемлемая (по сравнению с некоторыми другими моделями) цена.
HackRF не дешёвый, его цена вместе с доставкой примерно $150. Есть намного более дешёвые модели, но, понятно, и с более скромными характеристиками (меньше поддерживаемых частот). Есть более продвинутые чем HackRF модели, но их цена (для меня) слишком высокая. Возможно, если вас интересует не весь спектр частот, а какие-то определённые частоты, то вы сможете найти другое устройство, которое будет работать лучше с этими частотами или стоить дешевле чем HackRF. HackRF — это довольно универсальное устройство с доступной ценой.
HackRF
HackRF One — это дешёвая, с открытым исходным кодом платформа Software Defined Radio.
HackRF One имеет следующие характеристики:
- Диапазон частот: 1 MHz – 6 GHz
- Полоса пропускания: 20 MHz
- RX ADC bits (биты на вход): 8
- TX DAC bits (биты на выход): 8
- TX кабель: Да
- Гнездо антенны: SMA female
- Дискретизация: 8 – 20 Msps
- Панадаптеры / Приемники: 0/1
- Полудуплексный ресивер
- Увеличение модности приёма и передачи, а также фильтр частот настраивается программно
- Программно-констролируемая мощность порта антенны: (50 mA на 3.3 V)
- Штырьевой разъём для подключения дополнительных плат увеличивающих функциональность
- Интерфейс хоста: USB 2.0
- Поддерживаемые операционные системы: Windows, Linux, Mac.
Как можно увидеть, у устройства довольно медленный интерфейс USB 2.0, а также частота пропускания только 20 MHz, то есть это не самый «ТОП». Но для обучения этого хватит. К тому же, за последнее время на устройство сильно снизилась цена. И ещё, хотя в характеристиках указана поддерживаемая частота 1 MHz – 6 GHz, но можно выйти за этот диапазон чуть ниже и чуть выше.
У этого устройства прошивка с открытым исходным кодом. Оно совместимо с GNU Radio, SDR# и другими программами. Хорошая совместимость с Linux.
Меры предосторожности для HackRF
Нельзя запускать приём или передачу данных без подключённой антенны! Это очень важно, поскольку прибор не контролирует, подсоединена ли антенна и в любом случае под нагрузкой подаёт электричество, поэтому без антенны HackRF может просто сгореть.
Либо вместо антенны используйте заглушку — имеется ввиду не пластиковые красные заглушки, которые защищают от пыли, а заглушку с функцией потребления нагрузки — золотистая «гайка», которая наворачивается на гнездо антенны
У прибора три одинаковых SMA female разъёма: два на одной стороне и один на другой стороне. Разъём для антенны это тот, который размещён один (другие два предназначены для синхронизации нескольких устройств HackRF).
Значение кнопок и индикаторов HackRF
При подключении к компьютеру HackRF на нём загораются индикаторы.
Первые три индикатора:
- 3V3
- 1V8
- RF
Это индикаторы питания различных элементов. Они могут гаснуть при включении режима экономии энергии. 1V8 и RF могут гаснуть, если HackRF ничего не делает. Но при работе HackRF (приём и передача данных) все три должны гореть. Если какой-либо из них не горит, то это означает, что имеется проблема.
Когда он горит, то это означает, что компьютер «общается» с HackRF как с USB устройством. Этот индикатор загорается чуть позднее первых трёх.
- RX — означает операции приёма данных
- TX — означает операции передачи данных
Последние три индикатора находятся под управлением программного обеспечения. Поэтому можно установить пользовательскую прошивку и переназначить их функции.
Что касается цветов, то они вообще ничего не означают: цвета разные только чтобы вы могли отличать светодиоды друг от друга.
Теперь рассмотрим кнопки.
- RESET — сбрасывает, перезагружает микроконтроллер. Аналог отключения и подключения USB шнура.
- DFU — режим обновления прошивки. На самом деле при обновлении прошивки этот режим не нужен. HackRF может обновлять свою прошивку без перехода в этот режим. Главная функция этой кнопки — это раскирпичивание устройства.
Эта кнопка функционально только при включении устройства или нажатии кнопки RESET. Всё остальное время эта кнопка не выполняет никаких функций, поэтому при установлении пользовательской прошивки этой кнопке можно назначить какую-нибудь функцию ввода.
Как HackRF вывести из состояния «кирпича»
Если вы прошили устройство так, что оно больше не работает, то вам нужно загрузиться используя DFU загрузчик — он прописан в ROM, поэтому его невозможно испортить. Для перехода в режим DFU вам нужно зажать эту кнопку, всё ещё удерживая эту кнопку отключить USB кабель и, продолжая удерживать эту кнопку, вновь подключить USB кабель. Если загорится только индикатор 3V3, но не загорятся другие, это означает, что вы успешно вошли в DFU режим
Ещё один способ перейти в режим DFU, это зажать кнопку DFU и при нажатой кнопке нажать и отпустить кнопку RESET.
В этом режиме вы можете использовать соответствующую программу на вашем компьютере для перепрошивки HackRF.
Кабель для HackRF — почему крайне желательно кабель с шумоподавлением
Для HackRF много разных дополнительных опций, например, экранированный чехол. На самом деле, по-настоящему важной опцией, результат от которой вы заметите сразу, является качественный USB кабель с возможностью подавлением шума.
Выбранный вами USB может иметь большое влияние на то, что вы видите используя ваш HackRF, особенно используя его на частотах в районе 120 и 480 MHz, на которых USB делает всю свою работу.
- Используйте экранированный USB кабель. Лучший способ гарантировать радиочастотные помехи от USB — использовать неэкранированный кабель. Вы можете проверить, что ваш кабель экранирован, используя тестер непрерывности, чтобы убедиться, что экран на одном разъёме имеет непрерывность с экраном на разъёме на другом конце кабеля.
- Используйте короткий USB-кабель. Использование чего-либо большего, чем 6-футовый кабель, может привести к плохим результатам. Чем длиннее кабель, тем больше потерь можно ожидать, и при создании этого поста был опробован 15-футовый кабель, и в результате HackRF работал только вполсилы.
- Для достижения наилучших результатов выберите кабель с ферритовым сердечником. Эти кабели обычно рекламируются как шумопоглощающие и распознаются по утолщению (пластиковому блоку) на одном из концов.
Снимок экрана до и после перехода на шумоподавляющий кабель:
Видео с тестами по данному вопросу:
- Позолоченные разъёмы для коррозионной стойкости, обеспечивающие стабильную и надёжную проводимость
- Ферритовый сердечник для фильтрации шумового сигнала и уменьшения ошибок при передаче
- Рельефная конструкция для гибкого перемещения, долговечности и удобства
- Уменьшает перекрёстные помехи и помехи с алюминиевыми контактами
- Полностью экранированный для защиты от внешних помех
- Длина 6 футов (то есть 1.83 метра).
Сам кабель недорогой, но дорогая доставка из США.
Аналогичные дешёвые варианты из Китая с бесплатной доставкой, правда без позолоченных коннекторов:
ИМХО, позолоченные контакты важны для недопущения коррозии, для защиты от помех это особо не влияет (пока не начнётся коррозия). То есть можно взять и китайские без позолоченных контактов — лишь бы другие характеристики об экранировании соответствовали действительности…
Антенны для HackRF
В комплекте с HackRF идёт телескопическая антенна — она неплохая для начала. Но для определённых задач вы можете подобрать антенну получше.
У HackRF SMA гнездо, а не RP-SMA! То есть в гнезде антенны нет штырька — там есть дырочка. Пример распространённых RP-SMA антенн — это Wi-Fi антенны — у них тоже нет штырька — у их тоже дырочка. Поэтому если вы прикрутите Wi-Fi антенну к HackRF, то она действительно прикрутится и визуально будет казаться, что она подключена. НО: на самом деле она не будет подсоединена, поскольку отсутствует соединительный сердечник.
Таким образом — вам нужны антенны со штырьком. Либо используйте переходник с RP-SMA антенны — они имеются.
Пример телескопической антенны, которая подойдёт для HackRF One — это ANT500 (по техническим характеристикам она также подходит для HackRF).
Обратите внимание на сердечник:
Программное обеспечение, поддерживающее HackRF
Здесь список приложений, о которых известно, что они работают с HackRF. Приложения разделены на три секции:
- программное обеспечение на основе GNU Radio;
- те, которые имеют прямую поддержку
- те, которые могут работать с данными от HackRF
Основывающиеся на GNU Radio
Прямая поддержка
Могут использовать данные HackRF
- Inspectrum (Инструмент анализа захвата с расширенными функциями): https://github.com/miek/inspectrum
- Baudline (может просматривать/обрабатывать данные HackRF, например, hackrf_transfer): http://www.baudline.com/
Обработка данных HackRF
Инструменты HackRF
В дополнении к сторонним инструментам, которые поддерживают HackRF, разработчики устройства предоставляют некоторые инструменты командной строки для взаимодействия с HackRF. Информацию о том, как пользоваться каждым инструментом, смотрите в справке соответствующей программы, например:
или в страницах руководства.
Первые два инструмента (hackrf_info и hackrf_transfer) должны покрывать большинство задач. Оставшиеся инструменты представлены для отладки и общего интереса; будьте осторожны, при неправильном использовании они могут навредить HackRF.
Считывает такую информацию об устройстве с HackRF как серийный номер и версию прошивки.
- hackrf_transfer
Отправляет и получает сигналы используя HackRF. Ввод/вывод может быть 8-битным знаковым квадратурным файлом или файлом WAV.
- hackrf_max2837
Чтение и запись регистров в микросхеме приемопередатчика Maxim 2837. Для большинства целей tx/rx (приёма-передачи) hackrf_transfer или другие инструменты позаботятся об этом за вас.
- hackrf_rffc5071
Чтение и запись регистров в микросхеме RFFC5071. Как указано выше, это только для любопытства или отладки, большинство инструментов позаботятся об этих настройках автоматически.
- hackrf_si5351c
Чтение и запись регистров в чипе тактового генератора Silicon Labs Si5351C. Это также должно быть ненужным для большинства операций.
- hackrf_spiflash
Инструмент для записи в HackRF новой прошивки. Больше всего используется для обновления прошивки.
- hackrf_cpldjtag
Инструмент для обновления CPLD на HackRF. Также иногда используется при обновлении прошивки.
Как установить драйвер, инструменты HackRF и SDR утилиты
В этом разделе подсказки по установке программного обеспечения для определённых операционных систем и дистрибутивов Linux.
Установка драйверов и утилит общего назначения
Большинству пользователей настоятельно рекомендуется, если вы не преследуете целей разработки или тестирования новых функций для HackRF, использовать собранные для вашей системы пакеты и устанавливать их с помощью менеджера пакетов, имеющегося для вашей операционной системы.
Linux
- Kali Linux, Ubuntu, Debian, Linux Mint
- Fedora / Red Hat
- Gentoo Linux
- Arch Linux
OS X (10.5+)
Windows
Исполнимые файлы поставляются как часть проекта PothosSDR, их можно загрузить здесь: https://downloads.myriadrf.org/builds/PothosSDR/
FreeBSD
Вы можете использовать бинарный пакет:
Вы можете собрать и установить с ports:
Сборка из исходников
Linux / OS X / *BSD
- Подготовка вашей системы
Вначале убедитесь, что ваша система обновлена используя метод обновления представленной в вашей операционной системе.
- Установка используя PyBOMBS
Проект GNU Radio имеет сборочную систему, которая покрывает ключевые библиотеки, драйвера для SDR железа и многие из модулей дерева. PyBOMBs позаботиться для вас в установке зависимостей.
- Сборка инструментов HackRF из исходников
Получите исходный код инструментов HackRF либо из архива выпуска, либо из git:
После загрузки исходного кода, инструменты хоста могут быть собраны следующим образом:
Если у вас есть HackRF, то вам может понадобиться обновить прошивку, чтобы она соответствовала версии инструментов хоста.
- Необходимые условия для Cygwin, MinGW или Visual Studio
- cmake-2.8.12.1 или более поздний из http://www.cmake.org/cmake/resources/software.html
- libusbx-1.0.18 или более поздний из http://sourceforge.net/projects/libusbx/files/latest/download?source=files
- fftw-3.3.5 или более поздний из http://www.fftw.org/install/windows.html
- Установите драйвер Windows для HackRF или используйте Zadig, смотрите http://sourceforge.net/projects/libwdi/files/zadig
- Если вы хотите использовать Zadig выберите HackRF USB устройство и просто установите/замените его на WinUSB драйвер.
Примечание для сборки Windows: Вам всегда следует выполнять hackrf-tools из командной строки Windows, а не из оболочки Cygwin или MinGW поскольку Cygwin/MinGW некорректно обрабатывают Ctrl+C и особенно для hackrf_transfer нажатие Ctrl+C (отмена) неправильно остановит программу и файл данных будет повреждён.
- Для Visual Studio 2015 x64
Создайте определение библиотеки для MSVC ссылкой
CMake создаст файл solution с именем HackRF.sln и ряд файлов проекта, которые могут быть собраны с помощью msbuild следующим образом:
Как обновить прошивку HackRF
Устройства HackRF поставляются с микропрограммой на флэш-памяти SPI и с битовым потоком, запрограммированным на CPLD. Прошивка может быть обновлена только с помощью USB-кабеля и хост-компьютера.
Эти инструкции позволяют обновить микропрограмму и поток битов CPLD, чтобы воспользоваться новыми функциями или исправлениями ошибок.
Если вам трудно заставить этот процесс работать из вашей родной операционной системы, вы можете использовать Pentoo или GNU Radio Live DVD для выполнения обновлений.
Шаг 1: Обновление прошивки SPI Flash
Чтобы обновить прошивку на работающем HackRF One, используйте программу hackrf_spiflash:
Вы можете найти двоичный файл прошивки (hackrf_one_usb.bin) в каталоге firmware-bin последней версии пакета или вы можете скомпилировать свой собственный из исходного кода. Для Jawbreaker используйте hackrf_jawbreaker_usb.bin. Если вы компилируете из исходного кода, файл будет называться hackrf_usb.bin.
Программа hackrf_spiflash является частью hackrf-tools.
При записи образа прошивки на SPI-флэш-память обязательно выберите прошивку с именем файла, оканчивающимся на «.bin».
После записи прошивки на SPI-флешку вам может понадобиться выполнить сброс устройства HackRF, нажав кнопку RESET или отключив и снова подключив его.
Если вы получили ошибку, в которой упоминается HACKRF_ERROR_NOT_FOUND, ознакомьтесь с FAQ. Часто это проблема разрешений, которая может быть быстро решена.
Шаг 2: Обновление CPLD
Для обновления до последней версии образа CPLD сначала обновите прошивку SPI flash, libhackrf и hackrf-tools. Затем:
Через несколько секунд три светодиода должны начать мигать. Это указывает на то, что CPLD был запрограммирован успешно. Перезагрузите устройство HackRF, нажав кнопку RESET или отсоединив и снова подключив его.
Только при необходимости: загрузка DFU
Режим загрузки DFU обычно требуется только в том случае, если прошивка не работает должным образом или никогда не была установлена.
Микроконтроллер LPC4330 на HackRF способен загружаться из нескольких различных источников кода. По умолчанию HackRF загружается с флэш-памяти SPI (SPIFI). Он также может загружать HackRF в режиме загрузки DFU (USB). В режиме загрузки DFU HackRF будет ждать, пока код будет доставлен с использованием стандарта DFU (обновление прошивки устройства) через USB, а затем выполнит этот код из ОЗУ. SPIFI обычно не используется и не изменяется в режиме DFU.
Чтобы запустить HackRF One в режиме DFU, удерживайте нажатой кнопку DFU при включении или при нажатии и отпускании кнопки RESET. Отпустите кнопку DFU после того, как загорится светодиод 3V3. Светодиод 1V8 должен оставаться выключенным. На этом этапе HackRF One готов к приёму прошивки через USB.
В режиме DFU вам следует использовать только образ прошивки с именем файла, оканчивающимся на «.dfu», а не на прошивку, оканчивающуюся на «.bin».
Только при необходимости: восстановление прошивки SPI Flash
Если встроенное программное обеспечение во флэш-памяти SPI было повреждено или вы программируете самодельный HackRF в первый раз, вы не сможете сразу использовать программу hackrf_spiflash, как указано в приведённой выше процедуре. Выполните следующие шаги:
- Следуйте инструкциям по загрузке DFU, чтобы запустить HackRF в режиме загрузки DFU.
- Напечатайте:
для загрузки прошивки из пакета релиза в оперативную память. Если у вас есть Jawbreaker, используйте вместо этого hackrf_jawbreaker_usb.dfu. В качестве альтернативы используйте
- для загрузки прошивки в оперативную память и её запуска.
- Выполните процедуру обновления прошивки SPI флэш прошивки как показано выше, чтобы записать образ прошивки «.bin» во флэш-память SPI.
Получение DFU-Util
При новых установках вашей ОС вам может потребоваться получить копию DFU-Util. Для большинства дистрибутивов Linux он должен быть доступен в виде пакета, например, в Debian/Ubuntu
Для Arch Linux/BlackArch:
Если вы используете платформу без пакета dfu-util, инструкцию по сборке можно найти здесь на странице сборки исходного кода dfu-util:
Теперь у вас будет установлена текущая версия DFU Util в вашей системе.
Быстрый старт с HackRF. Первый приём и передача данных в HackRF
Данные команды показаны для Linux.
Для просмотра информации о вашем устройстве, а также чтобы убедиться, что Linux правильно определяет HackRF и готов работать с ним, выполните команду:
Для выполнения тестового получения данных запустим hackrf_transfer с опцией -r после которой укажем /dev/null, чтобы данные не сохранялись на компьютер:
Будет использоваться скорость по умолчанию — 10 миллионов бит в секунду. Максимальная скорость HackRF равна 20 мегабитам в секунду, чтобы проверить эту скорость запустите команду с опцией -s, после которой укажите скорость в битах в секунду:
Некоторые устройства HackRF на некоторых компьютерах могут показывать предельную скорость равную 21500000. Чтобы проверить, поддерживает ли ваш компьютер такую скорость, выполните команду:
Главное, от чего зависит скорость — это USB разъём. На одном и том же компьютере скорость в разных USB гнёздах может быть разная. Как минимум ваш компьютер должен поддерживать скорость по умолчанию, то есть 10 мегабит в секунду.
Для передачи данных используется опция -t:
С hackrf_transfer вы обычно будете использовать опцию -f, после которой нужно указывать частоту в Герцах. Допустимые значения с 0MHz до 7250MHz.
Вопросы и ответы по HackRF
Я не могу получить доступ к моей HackRF под Linux
Вопрос:
При запуске hackrf_info или любой другой команды, которая пытается общаться с HackRF, я получаю следующее сообщение ошибки, хотя плата, кажется, правильно определена ядром Linux:
Ответ:
Используйте последние версии
Сначала убедитесь, что вы используете последнюю версию libhackrf и hackrf-tools. Например, HackRF One поддерживается только в версии 2014.04.1 или новее. Затем проверьте, успешно ли работает hackrf_info при запуске от имени пользователя root. Если это так, то вашему другому пользователю не хватает разрешения.
Проблема с разрешением
Обычный пользователь в Linux не имеет прав доступа к произвольным USB-устройствам из соображений безопасности. Первым решением было бы запустить каждую команду, которая пытается получить доступ к HackRF от имени пользователя root, что не рекомендуется для ежедневного использования, но, по крайней мере, это покажет, действительно ли работает ваш HackRF и проблема только в разрешениях.
Чтобы устранить эту проблему, вы можете написать правило udev, чтобы указать udev установить разрешения для устройства таким образом, чтобы к нему мог получить доступ любой пользователь системы, являющийся членом определённой группы.
(Следующие вещи были протестированы в Ubuntu и Gentoo и, возможно, требуют адаптации для других дистрибутивов Linux. В частности, для этой цели в вашем дистрибутиве может быть группа с именем, отличным от plugdev.)
Для этого вам нужно создать новый файл правил в папке /etc/udev/rules.d. Я проверил мой 52-hackrf.rules. Вот содержание:
Содержимое файла инструктирует udev искать устройства с идентификатором поставщика и идентификатором продукта, совпадающими с устройствами HackRF. Затем он устанавливает разрешения UNIX 660, а группе — plugdev и создаёт символическую ссылку в /dev на устройство.
После создания файла правил вы можете либо перезагрузиться, либо запустить команду
от имени пользователя root, чтобы дать команду udev перезагрузить все файлы правил. После повторного подключения платы HackRF вы сможете получить доступ к устройству со всеми утилитами как обычный пользователь. Если вы по-прежнему не можете получить доступ к устройству, убедитесь, что вы являетесь членом группы plugdev.
Если вы используете PyBOMBS, обратите внимание, что рецепт HackRF преднамеренно не устанавливает правила udev, чтобы избежать сбоев установки при запуске без полномочий root.
Энергосбережение и USB-автоподвеска
Распространённой проблемой для пользователей ноутбуков может быть управление питанием, включающее автоматическое отключение USB, что вероятно, если hackrf_info возвращает ошибку
при первом выполнении и работает, если вы запускаете его второй раз напрямую после этого. Это можно подтвердить, запустив
и убедиться, что причина ошибки это
Чтобы это исправить, вам нужно отключить USB AutoSuspend для HackRF. Если вы используете управление питанием TLP, вы можете добавить USB VID/PID HackRF в строку USB_BLACKLIST в /etc/default/tlp:
и перезапустите TLP с помощью
Модуль ядра hackrf
Если команда hackrf_info завершилась неудачно с сообщением об ошибке
это также может быть проблемой драйвера ядра. В некоторых версиях Ubuntu, таких как Ubuntu 15.04 с установленным gnuradio, предварительно установлен драйвер ядра. В этом случае когда вы подключаете модуль HackRF то, вероятно, вы получите некоторые сообщения ядра системного журнала, такие как:
для проверки последних записей системного журнала. Если вы попытаетесь запустить hackrf_info, он завершится с сообщением об ошибке, а в системном журнале появится сообщение вроде:
То, чтобы решить эту проблему, проверьте под учётной записью root, есть ли загруженный модуль ядра hackrf:
Если есть модуль ядра hackrf, попробуйте выгрузить его с помощью
Эту команду вы также должны выполнить как root. После этого команда hackrf_info (и все остальное, что связано с hackrf) должна сработать, а сообщения syslog usbfs должны исчезнуть.
После нажатия кнопки RESET или отключения и подключения USB кабеля этот модуль ядра снова загрузится и снова заблокирует доступ. Чтобы решить эту проблему, вы должны поместить в чёрный список модуль ядра hackrf в /etc/modprobe.d/blacklist(.conf). Текущее имя файла для чёрного списка может отличаться, это зависит от версии вашего дистрибутива Linux. В Ubuntu 15.04 он находится в /etc/modprobe.d/blacklist.conf. Откройте этот файл под учётной записью root с помощью текстового редактора и добавьте следующую строку в конце:
После перезагрузки системы, чтобы заставить работать обновленный modprobe, hackrf работал под Ubuntu 15.04 с исходными пакетами (версия прошивки: 2014.08.1) из коробки.
hackrf_set_sample_rate fails (не удаётся установить частоту дискретизации)
Вопрос:
Я пытаюсь запустить hackrf_transfer и hackrf_set_sample_rate завершается неудачей (не удаётся установить частоту дискретизации). Вызов libusb_control_transfer в hackrf_set_sample_rate_manual возвращается с LIBUSB_ERROR_PIPE.
Ответ:
Следуйте инструкции, чтобы обновить прошивку.
Что это за большой пик в центре моего спектра?
Вопрос:
Я вижу большой всплеск в центре моего FFT-дисплея, независимо от частоты, на которую настроен мой HackRF. Что-то не так с моим HackRF?
Ответ:
Вы видите смещение DC (постоянного тока) (или компонент, или смещение). Это неизменный аспект сигнала, в отличие от «чередующейся» части сигнала AC (переменного тока), которая изменяется со временем. Взять, к примеру, сигнал, представленный цифровой последовательностью:
Этот периодический сигнал содержит сильный синусоидальный компонент, охватывающий от -2 до 9. Если бы вы построили спектр этого сигнала, вы бы увидели один пик на частоте этой синусоиды и второй пик на 0 Гц (постоянный ток). Если бы сигнал охватывал значения от -2 до 2 (с центром около нуля), смещения постоянного тока не было бы. Так как он сосредоточен около 3,5 (число на полпути между -2 и 9), есть компонент постоянного тока.
Сэмплы, произведённые HackRF, являются измерениями радио осциллограмм, но метод измерения склонен к смещению постоянного тока, введённому HackRF. Это артефакт измерительной системы, а не указание на принятый радиосигнал. Смещение постоянного тока не является уникальным для HackRF; это является общим для всех систем quadrature sampling.
В прошивке HackRF (до выпуска 2013.06.1) была ошибка, из-за которой смещение постоянного тока было хуже, чем должно было быть. В худшем случае некоторые Jawbreaker испытывали смещение постоянного тока, которое в течение нескольких секунд работы давало сильный экстремум. Эта ошибка была исправлена. Исправление уменьшает смещение постоянного тока, но не устраняет его полностью. Это то, с чем вам придётся жить при использовании любой системы quadrature sampling, например HackRF.
Высокое смещение постоянного тока также является одним из немногих признаков, которые могут быть вызваны несоответствием версии программного обеспечения. Общая проблема заключается в том, что люди запускают старую версию gr-osmosdr с более новой прошивкой.
Как мне справиться со смещением постоянного тока?
Вопрос:
Хорошо, теперь, когда я понимаю, что это за большой пик в середине моего спектра, как мне справиться с этим?
Ответ:
Есть несколько вариантов:
- Игнорируй это. Для многих приложений это не проблема. Вы научитесь игнорировать это.
- Избегай это. Лучший способ справиться со смещением постоянного тока для большинства приложений — использовать настройку смещения; вместо того, чтобы настраиваться на свою конкретную интересующую частоту, настройтесь на близлежащую частоту, чтобы весь интересующий вас сигнал был смещён от 0 Гц, но все ещё в пределах принятой полосы пропускания. Если ваш алгоритм лучше всего работает с вашим сигналом с центром в 0 Гц (многие это делают), вы можете сместить частоту в цифровой области, переместив интересующий вас сигнал в 0 Гц и смещение постоянного тока от 0 Гц. Высокая максимальная частота дискретизации HackRF может быть большой помощью, поскольку она позволяет использовать настройку смещения даже для относительно широкополосных сигналов.
- Исправь это. Существуют различные способы удаления смещения постоянного тока в программном обеспечении. Однако эти методы могут ухудшать части сигнала, близкие к 0 Гц. Это может выглядеть лучше, но это не обязательно означает, что это лучше, например, с точки зрения алгоритма демодулятора. Тем не менее исправление смещения постоянного тока часто является хорошим выбором.
Осмысление настроек усиления
Вопрос:
Какие регуляторы усиления предоставляются HackRF?
Ответ:
HackRF (как Jawbreaker, так и One) предоставляет три разных аналоговых регулятора на RX и два на TX. Три регулятора усиления RX это этапы: RF («amp», 0 или 14 дБ), IF («lna», от 0 до 40 дБ с шагом 8 дБ) и основная полоса («vga», от 0 до 62 дБ с шагом в 2 дБ). Два регулятора усиления TX находятся на этапе RF (ВЧ) (0 или 14 дБ) и IF (ПЧ) (от 0 до 47 дБ с шагом 1 дБ).
Вопросы:
Почему настройка ВЧ усиления ограничена двумя значениями?
Ответ:
HackRF имеет два RF усилителя рядом с антенным портом, один для TX и один для RX. Эти усилители имеют две настройки: вкл или выкл. В выключенном состоянии усилители полностью обойдены. При включении они номинально обеспечивают усиление 14 дБ, но фактическая величина усиления зависит от частоты. В общем, ожидайте меньшего усиления на более высоких частотах. Для точного управления усилением используйте параметры усиления IF (ПЧ) и/или основной полосы.
Вопрос:
Как мне установить регуляторы усиления для RX?
Ответ:
Хорошая настройка по умолчанию для начала: RF=0 (выкл.), IF=16, baseband=16. Увеличьте или уменьшите регуляторы ПЧ (IF) и усиления основной полосы (baseband) частот примерно одинаково, чтобы найти наилучшие настройки для вашей ситуации. Включите RF amp, если вам нужна помощь в обнаружении слабых сигналов. Если ваши настройки усиления слишком низкие, ваш сигнал может быть погружен в шум. Если одна или несколько ваших настроек усиления слишком высоки, вы можете увидеть искажения (ищите неожиданные частоты, которые появляются, когда вы увеличиваете усиление), или минимальный уровень шума может усиливаться больше, чем ваш сигнал.
Системные Требования
Вопрос:
Каковы минимальные системные требования для использования HackRF?
Ответ:
Наиболее важным требованием является подача 500 мА при 5 В постоянного тока на ваш HackRF через порт USB. Если ваш хост-компьютер испытывает трудности с выполнением этого требования, вам может потребоваться использовать USB-концентратор с питанием.
Большинство пользователей захотят передавать данные в или из HackRF с высокой скоростью. Для этого требуется, чтобы хост-компьютер поддерживал Hi-Speed USB. Некоторые высокоскоростные USB-хосты лучше других, и на вашем компьютере может быть несколько хост-контроллеров. Если вам трудно работать с HackRF с высокой частотой дискретизации (от 10 до 20 Мбит/с), попробуйте использовать другой порт USB на вашем компьютере. Если возможно, расположите все так, чтобы HackRF был единственным устройством в шине.
Для хост-компьютера нет конкретных минимальных требований к процессору, но SDR обычно является приложением, интенсивно использующим процессор. Если у вас более медленный процессор, возможно, вы не сможете запустить определённое программное обеспечение SDR, или вы можете работать только с более низкой частотой дискретизации.
Вопрос:
Почему HackRF не работает должным образом с виртуальной машиной (VM)?
Ответ:
HackRF требует возможности передавать данные с очень высокой скоростью через USB. К сожалению, программное обеспечение VM обычно имеет проблемы с непрерывной высокоскоростной передачей данных по USB.
Есть некоторые известные ошибки с реализацией USB прошивки HackRF. Возможно, что исправление этих ошибок улучшит способность работать с HackRF с виртуальной машиной, но весьма вероятно, что работа с более высокой частотой дискретизации все ещё будет ограничена.
Светодиоды
Вопрос:
Какие светодиоды должны светиться?
Ответ:
Когда HackRF One подключён к USB-хосту, должны загореться четыре светодиода: 3V3, 1V8, RF и USB. Светодиоды 3V3, 1V8 и RF указывают на то, что внутренние источники питания работают правильно. Индикатор USB указывает, что HackRF One связывается с хостом через USB.
Светодиоды RX и TX указывают, что в данный момент выполняется операция приёма или передачи.
Вопрос:
Почему светодиоды разные цвета?
Ответ:
Каждый светодиод имеет один цвет. На HackRF One нет разноцветных светодиодов. Смежные светодиоды имеют разные цвета, чтобы их было легче отличить друг от друга. Цвета ничего не значат.
Полудуплекс, полный дуплекс
Вопрос:
Является ли HackRF One полудуплексным или дуплексным устройством?
Ответ:
HackRF One — полудуплексный трансивер. Это означает, что он может передавать или получать, но не способен выполнять обе операции одновременно.
Вопрос:
Почему HackRF One не дуплексное устройство?
Ответ:
HackRF One разработан для поддержки самого широкого диапазона приложений SDR в одном недорогом портативном устройстве. Многие приложения не требуют полнодуплексной работы. Полнодуплексная поддержка сделала бы HackRF больше и дороже, а для этого потребовался бы внешний источник питания. Поскольку потребности в дуплексном режиме можно удовлетворить, просто воспользовавшись вторым HackRF One, имеет смысл сохранить устройство небольшим, портативным и недорогим для всех, кто не требует работы в дуплексном режиме.
Вопрос:
Как изменить дизайн HackRF One, чтобы сделать его дуплексным?
Ответ:
Аппаратная конструкция HackRF One фактически дуплексная (с более низкой частотой дискретизации) от USB-соединения через ADC/DAC (АЦП/ЦАП). Раздел RF является единственной частью конструкции, которая не может поддерживать работу в дуплексном режиме. Самый простой способ сделать HackRF One full-duplex — создать дополнительную плату, которая дублирует радиочастотную секцию, а также обеспечивает внешний источник питания для требуемой дополнительной мощности. Это также потребует усилий программного обеспечения; прошивка, CPLD, libhackrf и другое программное обеспечение хоста должны работать для поддержки полнодуплексной работы.
Если вы попытаетесь перепроектировать секцию RF на HackRF One для поддержки полнодуплексного режима, основное внимание будет уделено MAX2837 (приемопередатчик промежуточной частоты). Эта часть является полудуплексной, поэтому вам потребуется либо две из них, либо вам придётся перепроектировать секцию RF, чтобы использовать что-то отличное от MAX2837, что может привести к радикально другому дизайну. Если вы использовали два MAX2837, вы можете использовать один RFFC5071 вместо двух RFFC5072.
Какова чувствительность приёма HackRF?
Вопрос:
Каков минимальный уровень мощности сигнала, который может быть обнаружен HackRF?
Ответ:
Это не вопрос, на который можно ответить для универсальной такой платформы SDR как HackRF. Конкретно можно ответить только для конкретного приложения. Например, вопрос, на который можно ответить: каков минимальный уровень мощности в дБм модуляции M на частоте F, который может быть обнаружен HackRF One с программным обеспечением S в конфигурации C с частотой ошибок по битам не более E%? Изменение любой из этих переменных (M, F, S, C или E) изменит ответ на вопрос. Даже, казалось бы, незначительное обновление программного обеспечения может привести к существенно другому ответу. Чтобы узнать точный ответ для конкретного приложения, вам придётся измерить его самостоятельно.
Конкретные спецификации HackRF включают диапазон рабочих частот, максимальную частоту дискретизации и динамический диапазон в битах. Эти спецификации могут быть использованы для приблизительного определения пригодности HackRF для данного применения. Тестирование необходимо для точного измерения производительности в приложении. Как правило, производительность можно значительно улучшить, выбрав подходящую антенну, внешний усилитель и/или внешний фильтр для приложения.
Решение проблем
Вопрос:
Почему известный сигнал имеет неправильную частоту, а регулировка центральной частоты смещает неправильную частоту ещё больше или меньше?
Ответ:
Вы, вероятно, используете на устройстве прошивку, которая не соответствует прошивке битового потока CPLD. Если используется последний код git, сначала обновите микропрограмму HackRF, затем установите последнее ПО для хоста, далее установите поток битов CPLD, а затем выключите и снова выполните питание на HackRF.