Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2012.04.01;
Скачать: [xml.tar.bz2];

Вниз

Помогите разобраться с реестром windows 7   Найти похожие ветки 

 
tj.nelson   (2011-12-13 18:43) [0]

Здравствуйте. Пишу программу по контролю времени за ПК. Прописал в автозагрузку - работает. Но программу можно легко обмануть путем загрузки из безопасного режима, и перевода время и даты.
Теперь прописываю в ключ HKLM\Software\Microsoft\Windows NT\CurrentVersion\winlogon Shell := Explorer.exe, c:\proga.exe
Проблема:
В ХР работает только так, на отично...
Но а в Windows 7, вместо записи в ветку HKLM\Software\Microsoft\Windows NT.... записывает автоматически в
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT...

Подскажите, как этого избежать и записать все таки в HKLM\Software\Microsoft\Windows NT\CurrentVersion\winlogon???
P.S. Я честно обьяснил намеренья моей программы. Не надо говорить что я вирусописатель! Я на стороне добра и света


 
Rouse_ ©   (2011-12-13 19:28) [1]


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

Это так-же легко проверить, если постоянно записывать текущее время. Если откатили назад, то текущая дата будет меньше чем запомненное ранее число.
ЗЫ: для реестра выставляй флаг при открытии KEY_WOW64_32KEY


 
Dennis I. Komarov ©   (2011-12-13 19:34) [2]

А разве винда не ведет журналы со всеми вытекающими?


 
Rouse_ ©   (2011-12-13 19:36) [3]


> А разве винда не ведет журналы со всеми вытекающими?

О переводе даты в биосе?


 
tj.nelson   (2011-12-13 19:50) [4]


> Это так-же легко проверить, если постоянно записывать текущее
> время. Если откатили назад, то текущая дата будет меньше
> чем запомненное ранее число.
> ЗЫ: для реестра выставляй флаг при открытии KEY_WOW64_32KEY
Если назад - легко, но а если вперед? ведь контроль  будет выключатся на суботу или воскресенье!
2. На флаг Reg.Access := KEY_WOW64_64KEY Delphi 7 ругается как неизвестный идентификатор!
Что делать? Есть вариант:
Столбец Value...
KEY_WOW64_64KEY = $0100 (delphi)
KEY_WOW64_32KEY = $0200 (delphi)
НО, где находится Столбец Value? После var, как простое приравнивание или как констата?


 
Rouse_ ©   (2011-12-13 19:59) [5]


> НО, где находится Столбец Value?

const KEY_WOW64_32KEY = $0200;


 
tj.nelson   (2011-12-13 20:07) [6]

Rouse_ спасибо, все работает! Ребят, спасибо всем!


 
Дмитрий Белькевич   (2011-12-13 20:31) [7]

В качестве идеи - если комп в сети периодически синхронизировать время с сервером времени. Ручками или стандартно.


 
Dennis I. Komarov ©   (2011-12-13 20:39) [8]


> Rouse_ ©   (13.12.11 19:36) [3]
>
> > А разве винда не ведет журналы со всеми вытекающими?
>
> О переводе даты в биосе?

ну...

> Пишу программу по контролю времени за ПК.

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


 
Rouse_ ©   (2011-12-13 20:46) [9]


> Dennis I. Komarov ©   (13.12.11 20:39) [8]
> ну...

На скока я помню - нет :)


 
Dennis I. Komarov ©   (2011-12-13 22:47) [10]


> Rouse_ ©   (13.12.11 20:46) [9]

А чего помнишь то? :)


 
Rouse_ ©   (2011-12-13 22:54) [11]


> Dennis I. Komarov ©   (13.12.11 22:47) [10]
> А чего помнишь то? :)

Пфф, даже затрудняюсь ответить на такую постановку вопроса... Ну ты в принципе не стесняйся - evt файл с записью о изменении даты через биос выложи :)


 
Dennis I. Komarov ©   (2011-12-13 23:02) [12]


> Rouse_ ©   (13.12.11 22:54) [11]

Ты [8] не дочитал.


 
Rouse_ ©   (2011-12-13 23:07) [13]


> Dennis I. Komarov ©   (13.12.11 23:02) [12]
> Ты [8] не дочитал.

Дочитал конечно :)
1. ""нечего" тут свои контроли разбрасывать" - если эти "контроли" есть часть обеспечения защиты от недобросовестного пользователя, то все легитимно как в плане архитектуры, так и в плане закона :)
2. Сети нет


 
Dennis I. Komarov ©   (2011-12-13 23:36) [14]

так что мешает закрыть доступ к BIOS? Запретить загрузку с др. носителей. Опечатать корпус... Хотя для контроля времени - перебор...

2. Пишем не отметки времени, а тики работы (с подписью результатов)


 
Rouse_ ©   (2011-12-13 23:45) [15]


> Dennis I. Komarov ©   (13.12.11 23:36) [14]
> так что мешает закрыть доступ к BIOS?

Эмм, я предполагаю что софтверным способом ничто не помешает :) Оп чем и спич...

> 2. Пишем не отметки времени, а тики работы

Ну раз речь зашла за биос - то это подразумевает ребут системы, ты о каких тиках речь ведешь? :)


 
Dennis I. Komarov ©   (2011-12-14 00:04) [16]


> ты о каких тиках речь ведешь?

о софтверных, т.е. работает софт и тик, тик, тик...


 
Rouse_ ©   (2011-12-14 00:09) [17]


> Dennis I. Komarov ©   (14.12.11 00:04) [16]
>
>
> > ты о каких тиках речь ведешь?
>
> о софтверных, т.е. работает софт и тик, тик, тик...

Оть эти оные тикать начинают как раз с начала ребута системы ;)


 
Dennis I. Komarov ©   (2011-12-14 00:37) [18]

от их счетаем, и подпись ставим, чтоб не ай-ай...


 
Dimka Maslov ©   (2011-12-14 16:36) [19]

Проверить факт перевода часов назад можно косвенно при помощи функции UuidCreateSequential. В GUID зашивается текущее время, серийный номер сетевой карты и некоторое число, суть которого не разглашается. Но как только время в компьютере было переведено назад (даже через биос) эта часть гуида (выделена жирным) увеличивается на единицу
{C55298E1-2657-11E1-9ED1-001CC0932ECC}


 
Rouse_ ©   (2011-12-14 16:48) [20]


> Dimka Maslov ©   (14.12.11 16:36) [19]

Прикольно, откуда о данной особенности узнал? :)


 
Dimka Maslov ©   (2011-12-14 16:52) [21]


> Прикольно, откуда о данной особенности узнал? :)


Не помню. Может сам допёр, когда изучал сущность гуидов. Может прочитал в книжке какой-то.


 
Inovet ©   (2011-12-14 16:53) [22]

> [19] Dimka Maslov ©   (14.12.11 16:36)
> эта часть гуида (выделена жирным) увеличивается на единицу
> {C55298E1-2657-11E1-9ED1-001CC0932ECC}

Интересно. А могут ведь и поменять алгоритм. И да, тоже интересно откуда узнал.


 
Inovet ©   (2011-12-14 16:56) [23]

А после чего должна увеличиться?
42EEE469-69CD-430B-AD63-319680BCADD9
0661DF09-D476-4D4A-BF2A-C67D6518D2DF
63E9B5E7-0206-44C9-BACB-32AA6D281279
66A45059-40BF-46FF-B3C3-9F9603E74F7C
4B66304D-2802-434F-B820-22C659CB0CF6
983DAF72-1C1A-4437-9404-0BE33ADFB3E8
AC8F1530-F0EB-43F1-94DF-510D50D5F344
D628EDEC-CECD-4F3D-98C0-410D8BDAF501
F0D2BA75-BB52-40A3-9219-C6A9F2872934
59A24FD9-4DA3-4D2E-A20D-731797F42219


 
Dimka Maslov ©   (2011-12-14 16:57) [24]


> А могут ведь и поменять алгоритм.


Могут и меняют, но для функции UuidCreate. А вот для UuidCreateSequential не меняют (пока)


 
Dimka Maslov ©   (2011-12-14 17:01) [25]


> Inovet ©   (14.12.11 16:56) [23]


UuidCreateSequentialи UuidCreate суть разные функции. Тем более всякие CreateGUID или нажатие Shift+Ctrl+G. Сама функция UuidCreateSequential в Delphi не прописана и требует динамической линковки RPCRT4.DLL


 
Inovet ©   (2011-12-14 17:07) [26]

> [25] Dimka Maslov ©   (14.12.11 17:01)
> Тем более всякие CreateGUID

Ага, я генерировал
CoCreateGuid


 
Dimka Maslov ©   (2011-12-14 17:28) [27]


> Ага, я генерировал
> CoCreateGuid


Точно не знаю, но по-моему CoCreateGUID внутри себя вызывает UuidCreate, которая вызывает UuidCreateSequential и извращает результат при помощи MD5 или чего-либо подобного.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2012.04.01;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.003 c
2-1323774868
igorium
2011-12-13 15:14
2012.04.01
цвета вкладок в TabControl


15-1322857803
Юрий
2011-12-03 00:30
2012.04.01
С днем рождения ! 3 декабря 2011 суббота


15-1322598602
Юрий
2011-11-30 00:30
2012.04.01
С днем рождения ! 30 ноября 2011 среда


15-1323157523
Pit
2011-12-06 11:45
2012.04.01
Delphi 7, приложение падает, если включена оптимизация


2-1323789641
Мелкий
2011-12-13 19:20
2012.04.01
О высоте строки в ListView





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский