Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Друзья, подскажите, какие есть отличия между вызовом обычной функции (т.е. моей, определенной в одной из dll) и системной (т.е. реализованной в одной из dll винды)? У меня есть такие мысли: 1. Вызов системной функции переводит процессор в режим ядра. 2. Для системных функций работает механизм защиты. Особенно я не уверен во втором. У Рихтера нашел, что все объекты ядра создаются с указанием Security Attributes, т.е. можно задать права доступа, но с другой стороны у обычных функций типа MessageBox нет атрибута psa (хотя какой-то секьюрный механизм для них должен как-то работать). Как работает эта штука? Есть другие отличия? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 18:19 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер Якин, 1. Нет. В режим ядра вызов не переводит. Но функция сама может переключиться в ядро. Пользовательская функция тоже может это сделать теоретически. 2. Никакой защиты нет. Вы можете затереть тела системных функций в своем процессе и ничего вам за это не будет, кроме того что ничего не будет работать. Естественно другие процессы этого не заметят. Таким образом по факту никаких различий в поведении нет. Единственное отличие - расположение в адресном пространстве. Часто системные библиотеки загружены в отдельную область адресов и даже имеют фиксированный адрес загрузки. Но это сделано с целью упрощения АПИ и для оптимизации по скорости, а не связано с защитой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 19:00 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
подскажите, какие есть отличия между вызовом обычной функции (т.е. моей, определенной в одной из dll) и системной (т.е. реализованной в одной из dll винды)? Ты будешь наверное долго ржать — никаких отличий нет :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 19:25 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер Якин, 1. Вызов системной функции переводит процессор в режим ядра. Нет. Не сразу, потом, код системной Dll может переключиться в режим ядра. Если это нужно. 2. Для системных функций работает механизм защиты. Да нет там никаких особенно защит... с указанием Security Attributes, т.е. можно задать права доступа, Это не то, это атрибуты процесса, просто набор лишних параметров. Они не для защиты ядра от проникновения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 19:35 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Надо заметить, что код выполняющийся в режиме ядра находится за пределами адресного пространства процесса, поэтому никакой необходимости его защищать нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 19:53 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Не понял только, как согласовать Anatoly Moskovsky Вы можете затереть тела системных функций в своем процессе и Anatoly Moskovsky Часто системные библиотеки загружены в отдельную область адресов Так все-таки, системные dll грузятся в память как-то не так, как обычные? И как кстати можно затереть код, разве там у страниц памяти не стоит PAGE_EXECUTABLE? MasterZivТы будешь наверное долго ржать — никаких отличий нет :-) Странно) Мне этот вопрос задали на собеседовании в одной небезызвестной компании, я тогда не сообразил, но теперь интересно, что они хотели услышать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:02 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyЧасто системные библиотеки загружены в отдельную область адресов В отдельную область адресов внутри процесса. Так понятнее? Кинорежиссер ЯкинИ как кстати можно затереть код, разве там у страниц памяти не стоит PAGE_EXECUTABLE Такого атрибута нет. Есть PAGE_EXECUTE и он не защищает от записи. Он разрешает выполнение. :) Для защиты от записи есть другие атрибуты. Но процесс может их устанавливать и снимать когда захочет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:14 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyВ отдельную область адресов внутри процесса. А типа для чистой конкретности - в верхний гигабайт, который вроде как начиная с XP защищён от записи. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:16 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky, ну т.е. обрушить работу системных dll процесс не сможет, т.к. системные dll-ки проецируются в адресное пространство каждого приложения. Тогда действительно непонятно, чем отличается системный и обычный вызов :-( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:18 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovAnatoly MoskovskyВ отдельную область адресов внутри процесса. А типа для чистой конкретности - в верхний гигабайт, который вроде как начиная с XP защищён от записи. Записать туда скорее всего можно. Библиотека detours делает хуки переписывая начало системных функций. И это работало и на XP и на 7. Не уверен правда что это было в верхнем гигабайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:24 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер Якин, В старых версиях винды (95, 98) системные библиотеки и некоторые их структуры данных были общими физически и без защиты, и процессы могли портить друг друга из-за этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:27 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyЗаписать туда скорее всего можно. Библиотека detours делает хуки переписывая начало системных функций. И это работало и на XP и на 7. Ох давно я не перечитывал Рихтера... Ну, может, они там спроецированы с флагом copy-on-write... Вот в 95-й, да, они были тупо общими. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:35 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, то что Рихтер пишет про Windows 2000 в целом актуально для 7-ки и 8-ки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 20:40 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
И еще вопрос, у Рихтера я особо не нашел про систему безопасности винды. Раньше мельком слышал про 3 кольца привелегий - это оно и есть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 22:02 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер ЯкинИ еще вопрос, у Рихтера я особо не нашел про систему безопасности винды. Раньше мельком слышал про 3 кольца привелегий - это оно и есть? Нет. Это у процессора Intel. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 22:19 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер ЯкинРаньше мельком слышал про 3 кольца привелегий - это оно и есть? ну не 3, а 4. Windows использует 0 для ядра, 3 для режима пользователя(не понадобилась никому интеловская придумка) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2013, 22:53 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер ЯкинНе понял только, как согласовать Anatoly Moskovsky Вы можете затереть тела системных функций в своем процессе и Anatoly Moskovsky Часто системные библиотеки загружены в отдельную область адресов Так все-таки, системные dll грузятся в память как-то не так, как обычные? И как кстати можно затереть код, разве там у страниц памяти не стоит PAGE_EXECUTABLE? MasterZivТы будешь наверное долго ржать — никаких отличий нет :-) Странно) Мне этот вопрос задали на собеседовании в одной небезызвестной компании, я тогда не сообразил, но теперь интересно, что они хотели услышать. Может быть твой ржак они хотели услышать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2013, 00:42 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
MasterZiv, может быть) Народ, подскажите ключевые слова\книги что почитать про организацию безопасности в винде. В частности, как винда блокирует доступ к каким-то действиям (например, браузеру - модификация файлов на диске C:), какие механизмы за это отвечают? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2013, 07:56 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер Якин(например, браузеру - модификация файлов на диске C:), какие механизмы за это отвечают? это исключительно на совести броузера и плагинов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2013, 10:28 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Изопропил, если приложение запущено не от имени администратора, оно не сможет ничего записать на диск c (кроме папки users\user\...). Дальше, даже являясь администратором, системные файлы винды она мне не даст удалить. И, наконец, некоторые системные процессы менеджер задача убить не дает, даже Unlocker с ними не справляется - это все ведь каким-то механизмом разруливается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2013, 11:13 |
|
||
|
Тонкости вызова системных функций Windows
|
|||
|---|---|---|---|
|
#18+
Кинорежиссер Якин...это все ведь каким-то механизмом разруливается? лучще гвоорить: "механизмами" (в каждом случаи может быть отличии). например: вкрячили драйвер в систему, блокирующий ключик реестра на чтение и запись HKLM\Software\xru и фиг вы его прочитаете или перепишите. удачи вам (круглый) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2013, 15:05 |
|
||
|
|

start [/forum/topic.php?fid=57&fpage=72&tid=2019988]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
1ms |
| others: | 13ms |
| total: | 152ms |

| 0 / 0 |
