Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Порты HDD, Как перехватить их? 
:(
    Опции темы
Vasan
Дата 9.8.2004, 04:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 9.8.2004

Репутация: нет
Всего: нет



Кто знает, как перехватить обращение через порты ввода-вывода к HDD? Нужен драйверок, точнее VxD? Ну что нибудь, напишите...
PM MAIL   Вверх
Ruterian
Дата 9.8.2004, 15:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 68
Регистрация: 9.1.2004
Где: Вязьма, Минск

Репутация: нет
Всего: нет



Я в прошлом году заказывал такую работу специалисту, т.к. самому это довольно сложно сразу сделать.
PM MAIL WWW ICQ   Вверх
Chingachguk
Дата 10.8.2004, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва

Репутация: нет
Всего: 18



В win 98 ?

Если обращения идут из приложения (win32/dos), то можно в отладчике Soft-Ice установить bpio или есть сервис у одного из vxd системы - типа так:

Код

 mov     esi,offset TrapPort; points to callback procedure
 mov     edx,0378h          ; I/O port number
 VMMCall Install_IO_Handler
 jc      not_installed      ; carry flag set if procedure not installed


Следует помнить, что не bpio, не такие сервисы не перехватывают обращения из нулевого кольца, т.е. когда команда i/o выполнена в драйвере - например, vxd.

Здесь можно воспользоваться аппаратным траппингом - регистры DRx. Про это можно прочесть в моей статейке "Защита, использующая хасп-ключ" (wasm.ru - часть 1). Там описан код перехвата и возможные трудности (приложение может пытаться сбросить траппинг). Наверняка есть и другие источники.

Это сообщение отредактировал(а) Chingachguk - 10.8.2004, 17:40


--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
oleg1973
Дата 11.8.2004, 20:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


asm fanat
****


Профиль
Группа: Экс. модератор
Сообщений: 3283
Регистрация: 16.7.2003
Где: Italy

Репутация: 7
Всего: 34



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


--------------------
SST 465555
icq 200-512-712
PM MAIL WWW ICQ   Вверх
Chingachguk
Дата 12.8.2004, 02:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва

Репутация: нет
Всего: 18



Если ты про "спокойные" проги из третьего кольца, которые пишут/читают порты для своей работы, то того сервиса, о котором я грил, или bpio за глаза хватает. Вообще-то это битовая карта ввода-вывода играет роль. А до портов жд - я совсем забыл - не в win98, не в nt из третьего кольца писать нельзя, так что непонятно, зачем я про третье кольцо распространялся.

Скорее всего нужен траппинг драйвера жд. Тогда можно написать через DRx, либо, что еще проще, найти в этом драйвере места с in/out и перехват.

А вот если порта прога читает из защищенного драйвера, то бывает такое ! Могут и DRx не спасти. Вот я счас одну такую ковыряю, смотри, как эта ... выполняет одну лишь in al,dx:

Код

; Типа собираемся сделать in al,dx
; Только что сбросили бит отладки через DRx в CR4,
; так что тут монитор с DRx обломается
; Пустшки типа xchg ebp,edx, xchg ebp,edx заноплены

00018959: 8F4424FC       pop         d,[esp][-04]
0001895D: 90             nop
0001895E: FFF2           push        edx
00018960: 0FB755F8       movzx       edx,w,[ebp][-08]
00018964: 68C231841A     push        01A8431C2
00018969: 892C24         mov         [esp],ebp
0001896C: 9C             pushfd
; Пошла хитрость: закидываем в ebp некое число
0001896D: BD143CD4FA     mov         ebp,0FAD43C14
00018972: 90             nop
00018973: 90             nop
00018974: 90             nop
00018975: 90             nop
; Тут делается neg и ...
00018976: F7DD           neg         ebp; -> 52BCC3EC
00018978: 9D             popfd
00018979: 0F8540CC0300   jne        .0000555BF
0001897F: 90             nop
00018980: 90             nop
00018981: 90             nop
00018982: 90             nop
00018983: 7403           je         .000018988
00018985: 93             xchg        ebx,eax
00018986: 90             nop
00018987: 90             nop
00018988: 0F8431CC0300   je         .0000555BF

; Перепрыгнули сюда
; Закидываем в стек значение ebp
000555BF: 9C             pushfd
000555C0: 892C24         mov         [esp],ebp
; Теперь ebp указывает на эту часть стека
000555C3: 89E5           mov         ebp,esp
000555C5: 60             pushad
000555C6: 6A00           push        000
000555C8: 8B0424         mov         eax,[esp]
000555CB: 8D642404       lea         esp,[esp][04]
000555CF: E82342FCFF     call       .0000197F7; ???
000555D4: 61             popad
000555D5: 680C330500     push        00005330C; +4EB0=581BC
; Резервируем место в стеке (типа push eax или sub esp,4)
000555DA: 8D6424FC       lea         esp,[esp][-04]
; Туда адрес тех самых байт 52BCC3EC в стеке размещенных
000555DE: 892C24         mov         [esp],ebp
; А теперь делаем на них "call"
000555E1: C3             retn

; Поскольку байты 52BCC3EC - это команды:

; Выполнить в стеке:

 in  al,dx; ECh
 retn      ; C3h

;

000581BC: 8F4424FC       pop         d,[esp][-04]
000581C0: 8B2C24         mov         ebp,[esp]
000581C3: 8D642404       lea         esp,[esp][04]
000581C7: 90             nop
000581C8: 90             nop
000581C9: 90             nop
000581CA: E851F1FEFF     call       .000047320



--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
oleg1973
Дата 12.8.2004, 11:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


asm fanat
****


Профиль
Группа: Экс. модератор
Сообщений: 3283
Регистрация: 16.7.2003
Где: Italy

Репутация: 7
Всего: 34



какаежо это хитрость smile.gif
хитрости помнится я на спектруме видел в загрузчиках игр smile.gif



--------------------
SST 465555
icq 200-512-712
PM MAIL WWW ICQ   Вверх
Chingachguk
Дата 12.8.2004, 13:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1232
Регистрация: 25.3.2002
Где: Москва

Репутация: нет
Всего: 18



А зачем в тех загрузчиках что-то скрывать надо было ???


--------------------
I don't like the drugs (but the drugs like me). M.Manson.
PM MAIL ICQ   Вверх
Vasan
Дата 12.8.2004, 13:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 22
Регистрация: 9.8.2004

Репутация: нет
Всего: нет



Ребята! Всем большое спасибо. Мне только нужна была зацепка, с чего начать. А то, что с третьего кольца них не сделаешь, это известно даже самому юзверю. ну все, давайте!!!
PM MAIL   Вверх
Guest
Дата 13.8.2004, 15:12 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Chingachguk
в те далекие времена софт на кассетах был если ты помниш smile.gif
ну и фирменых версиях зашита от копирования стояла

  Вверх
oleg1973
Дата 13.8.2004, 15:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


asm fanat
****


Профиль
Группа: Экс. модератор
Сообщений: 3283
Регистрация: 16.7.2003
Где: Italy

Репутация: 7
Всего: 34



эт я был smile.gif


--------------------
SST 465555
icq 200-512-712
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm: Общие вопросы"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0583 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.