Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
03.12.2012, 13:04
|
#41
|
Временная регистрация
Регистрация: 27.12.2008
Сообщений: 56
Сказал спасибо: 17
Сказали Спасибо 18 раз(а) в 15 сообщении(ях)
|
Re: USB VID/PID Changer
Все же стоило приобщить к делу системщиков, по крайней мере виндосовских.
ОС win построена на основе системных сообщений обо всем что в системе происходит. И этот факт позволяет рядом со своим экзешником программы положить собственно написаную DLL, задачей которой будет сниферство всех системных сообщений и ожидание имено того сообщения, что нам надо, т.е. когда система запросит у устройства его дескриптор, дождаться ответа этого дескриптора И В ЭТОТ МОМЕНТ подменить сообщение-оригинал своим сообщением с нужным дескриптором. На основе этого можно вообще систему вводить в заблуждение сплош и рядом.
Всё выше сказаное мною было проверено только на Вин ХР. С остальными осями и версиями еще не баловался. Метод рабочий, ибо был проверен на перехват координат движения мыши и блокировка горячих клавиш.
ниже пару цитат из Вики, где собственно есть примеры кода на линукс, перехват сетевых пакетов, ну а дальше все в ваших руках...
https://ru.wikipedia.org/wiki/Перехв...граммирование)
Цитата:
|
Перехват (программирование)
|
Цитата:
|
Перехват в режиме ядра
|
Цитата:
|
Введение в перехват API для системы команд x86
|
http://www.securitylab.ru/analytics/428735.php
__________________
Пастух построил ковчег, а судостроители Титаник
|
|
|
Сказали "Спасибо" crocafm
|
|
|
03.12.2012, 13:34
|
#42
|
Супер-модератор
Регистрация: 15.10.2007
Сообщений: 3,539
Сказал спасибо: 172
Сказали Спасибо 1,561 раз(а) в 811 сообщении(ях)
|
Re: USB VID/PID Changer
Сообщение от crocafm
|
ОС win построена на основе системных сообщений обо всем что в системе происходит. И этот факт позволяет рядом со своим экзешником программы положить собственно написаную DLL, задачей которой будет сниферство всех системных сообщений и ожидание имено того сообщения, что нам надо
|
Это как так? DLL это динамически подключаемая библиотека. Она сама ничего не делает.
|
|
|
|
03.12.2012, 13:39
|
#43
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,608
Сказал спасибо: 708
Сказали Спасибо 4,364 раз(а) в 2,002 сообщении(ях)
|
Re: USB VID/PID Changer
crocafm,
мы здесь обсуждаем типа аппаратное решение
|
|
|
|
03.12.2012, 13:50
|
#44
|
Временная регистрация
Регистрация: 27.12.2008
Сообщений: 56
Сказал спасибо: 17
Сказали Спасибо 18 раз(а) в 15 сообщении(ях)
|
Re: USB VID/PID Changer
Цитата:
|
Это как так? DLL это динамически подключаемая библиотека. Она сама ничего не делает.
|
беда беда с програмированием.
Запускается программа весом 10кб и имеющая с десяток строк кода, она подключает DLL, а В НЕЙ уже 100МБайтное приложение, и программе остается только сделать Jump на начальный адрес DLL в которой само тело программы.
Но так как сама программа хуки системе делать не имеет право, вот я и предложил это делать через DLL.
Цитата:
|
мы здесь обсуждаем типа аппаратное решение
|
ну так то конечно более изящно, чем програмно, но зная спецификацию и принципы работы юсб, пока не представляю как это сделать.
Нет ну сделать конечно можно все что угодно, но СКОРОСТЬ....
ААА, ЭВРИКА!!!
копайте в сторону ПЛИС
плюсы
1) простота
2) скорость
минусы
1) цена
2) маленький буфер, но при наличии хорошей скорости, его может много и не понадобиться
__________________
Пастух построил ковчег, а судостроители Титаник
|
|
|
Сказали "Спасибо" crocafm
|
|
|
03.12.2012, 15:20
|
#45
|
Прописка
Регистрация: 09.02.2011
Сообщений: 164
Сказал спасибо: 1
Сказали Спасибо 27 раз(а) в 22 сообщении(ях)
|
Re: USB VID/PID Changer
Сообщение от crocafm
|
беда беда с програмированием.
Запускается программа весом 10кб и имеющая с десяток строк кода, она подключает DLL, а В НЕЙ уже 100МБайтное приложение, и программе остается только сделать Jump на начальный адрес DLL в которой само тело программы.
|
Вот и студенты подтянулись.
Теперь дело веселей пойдет.
|
|
|
Сказали "Спасибо" Impartial
|
|
|
03.12.2012, 22:43
|
#46
|
Прописка
Регистрация: 25.11.2006
Адрес: Харьков
Сообщений: 295
Сказал спасибо: 25
Сказали Спасибо 71 раз(а) в 60 сообщении(ях)
|
Re: USB VID/PID Changer
Сообщение от Impartial
|
Да подменить дескрипторы не проблема.
Я говорю о том, что вопрос про универсальность бессмысленный.
А подменить под конкретное устройство не проблема. Все дескрипторы легко читаются.
Только потом станет большой вопрос, что со всем этим делать.
Нужно полностью программную часть подменяемого устройства знать, то есть прошивку.
|
Насколько я понял смысл задачи, "хамелеон" совсем не должен подменять собой "модифицируемое" устройство. Поэтому не нужно знать ни "прошивку", ни алгоритм работы этого устройства. Нужно только подменить его VID и PID. Не вдаваясь пока в схемотехническую реализацию, попробую изложить возможный алгоритм.
Сразу после подачи питания (присоединения к USB-хосту компьютера) "хамелеон" не обнаруживает себя на шине вышестоящего хоста, а сам выступает хостом для "модифицируемого" устройства. Получает от него дескрипторы (в какой-нибудь свой буфер), подменяет в этом буфере VID и PID (благо, их положение в дескрипторе известно). После этого сам подключается к вышестоящему хосту и на его запрос выдает модифицированный дескриптор из буфера. А вот дальше, каким-то образом, "хамелеон" должен самоустраниться, соединив "устройство" и вышестоящий хост напрямую.
Это в общих чертах. Конечно, будут тонкости... Так, в процессе конфигурирования устройства на USB шине, насколько я помню, запрос дескрипторов посылается два раза. Но, думаю, это тоже можно как-то учесть.
|
|
|
|
03.12.2012, 23:12
|
#47
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,608
Сказал спасибо: 708
Сказали Спасибо 4,364 раз(а) в 2,002 сообщении(ях)
|
Re: USB VID/PID Changer
tsb,
Ну где то так, только без выставления себя хостом. Хамелеон снифирует обмен по шине и в нужный момент шина USB переключается и дается подмененный ответ.
|
|
|
|
03.12.2012, 23:14
|
#48
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,608
Сказал спасибо: 708
Сказали Спасибо 4,364 раз(а) в 2,002 сообщении(ях)
|
Re: USB VID/PID Changer
Сообщение от Impartial
|
Вот и студенты подтянулись.
Теперь дело веселей пойдет.
|
Эйфория от обучения иногда дает эффект типа "море по колено".
|
|
|
|
04.12.2012, 01:18
|
#49
|
Временная регистрация
Регистрация: 27.12.2008
Сообщений: 56
Сказал спасибо: 17
Сказали Спасибо 18 раз(а) в 15 сообщении(ях)
|
Re: USB VID/PID Changer
зря иронизируете, в электронике уже 16 лет, в программировании 7.
а примеры работы с юсб на ПЛИС есть на сайте терры-электроники
__________________
Пастух построил ковчег, а судостроители Титаник
|
|
|
|
04.12.2012, 01:20
|
#50
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,608
Сказал спасибо: 708
Сказали Спасибо 4,364 раз(а) в 2,002 сообщении(ях)
|
Re: USB VID/PID Changer
Сообщение от crocafm
|
зря иронизируете, в электронике уже 16 лет, в программировании 7.
а примеры работы с юсб на ПЛИС есть на сайте терры-электроники
|
Терра, конечно, крутой авторитет. Правда, в плагиате, как правило. Дали бы тогда уж хоть ссылочку, раз все так серьезно(сайт та блин бальшой).
Надеюсь, это не будет моргание светодиодом.
Последний раз редактировалось Kabron; 04.12.2012 в 01:35.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:45.
|
|