![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 22.05.2010
Сообщений: 2
|
![]()
Не подскажите, каким образом можно сопоставить временные каналы 70h и 71h и значения счетчика временных тиков процессора (посредством команды RDTSC выводимых на экран). Как появятся дельные советы, выложу еще пару вопросов по данной теме. Идея заключается в следующем : мы получаем показания счетчика, и имеем текущее время из cmos . В момент фиксации и , например, спустя 60 секунд мы должны просмотреть изменилось ли время или нет. А именно - показатели cmos и таймера. Есть ли расхождения. Так же интересен вопрос - возможно ли как то вести подобие истории работы системы(процессов) имея шкалу времени (миллисекунды, секунды, минуты, дни, месяца) и как ее возможно организовать в ассемблер.
Рассматриваю также помощь на платной основе... Уже отчаялся диплом стоит , преподаватель грызёт *facepalm* |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 31.05.2009
Сообщений: 786
|
![]()
Вы случайно не Modelos делаете? Если так, то могу только посочувствовать
![]() |
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
Andeserg
Наверное антиотладчик хотите замостырить? через CMOS вы можете получить минимум секунды, а в счетчик RDTSC можно подсовывать любое значение смотри MSR-регистры на службе хакера |
![]() |
![]() |
![]() |
#4 |
Новичок
Джуниор
Регистрация: 22.05.2010
Сообщений: 2
|
![]()
Используя регистр RDTSC необходимо в программном варианте реализовать следующее:
Всё довольно просто - суть задачи такова: если программу трассируют под отладчиком, то естественно количество тактов увеличивается. Поэтому необходимо поймать время которое без отладчика, сравниваем его с текущим и если больше, значит отладчик есть . То есть сравнение времени до попадания отладчика в работу системы, и текущего времени( допустим отладчик уже в системе). + реализовать необходимо так, чтобы шла своеобразная проверка - если есть отладчик в системе, писалось бы сообщение , нападобие * меня атакуют* , если же все тихо - то * система работает нормально*, или что-то в этом роде. В теории как будет все выглядеть мне понятно, а код никак не получается сваять. Вот и ищу помощи извне. Всё еще рассмотрю платный вариант работы под заказ.( имеется некая модель операционной системы и идеальным будет вариант вклинивания туда этого момента). |
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
Andeserg
Вашу защиту нейтрализуют ухватившись за сообщение "меня атакуют" правильнее, если ваша программа обнаружила, что ее взламывают поддсовывать исследователю другой фрагмент программы |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
Andeserg
Изначально бред: RDTSC -- ассемблерная инструкция для платформы x86, читающая счётчик TSC (Time Stamp Counter) и возвращающая в регистрах EDX:EAX 64-битное количество тактов с момента последнего сброса процессора. rdtsc поддерживается в процессорах Pentium и более новых. Опкод: 0F 31. В многозадачных операционных системах инструкция может быть превращена в привилегированную (установлен 3 бит в управляющем регистре CR4), и её использование приведет к генерации исключения в программе. Создавать универсальную защиту для программ, то есть программу работающую и на медленных процессорах (типа первых Pentium и Celeron с тактовой частотой 66 MHz) и на современных Pentium 4 (~3,6 GHz) основанной на привязке RDTSC к таймеру -- посчитайте какой разброс у вас получится, кроме того, я вам дал ссылку на статью, где показан механизм с помощью которого хакеры подменяют значение RDTSC |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программирование CMOS | gromsgu | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 0 | 16.12.2009 16:13 |
Служба времени, RDTSC | UnluckyStudent | Помощь студентам | 3 | 27.07.2009 10:52 |
свой GetCount на rdtsc | Ulex | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 3 | 04.09.2008 22:58 |