|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
|
Как узнать уровень защиты процесса не используя GetProcessInformation (эта функция минимум для Windows 8)?24.12.2021, 11:05. Показов 5121. Ответов 45
Метки нет (Все метки)
У меня тут такой вопрос, нигде не нашёл ответа в Интернете. Как узнать уровень защищённости процесса, например системный он или нет, ну там есть несколько уровней разной защиты. Использование GetProcessInformation мне не подходит там для Win 8. Мне надо для семёрки хотя бы. А лучше и для XP. Рекомендовали функцию NtQueryInformationProcess или ZwQueryInformationProcess с кодом ProcessProtectionInformation (61). Но когда я пробовал и долго мучился у меня ничего не получилось, лично у меня, что в XP, что в Win 7 выдаёт ошибку &HC0000003 короче мол такого параметра нету, хотя даже в MSDN есть описание для ZwQueryInformationProcess, но у меня не работает. И нигде не нашёл рабочих примеров для NtQueryInformationProcess с кодом ProcessProtectionInformation именно. Может, что подскажете!?
0
|
|
| 24.12.2021, 11:05 | |
|
Ответы с готовыми решениями:
45
Как узнать уровень громкости Windows 7 ? Обход UAC на Windows 10 pro (Максимальный уровень защиты) Можно ли, используя библиотеку BASS, узнать уровень входного сигнала? |
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
|
| 25.12.2021, 09:52 [ТС] | |
|
Все мои процессы в системе выдают флаги (tInf.Flags) либо 2 либо 8 (процесс от имени другого пользователя) и почти все остальные ноль флагов нет
0
|
|
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
|
|||||||
| 25.12.2021, 10:09 | |||||||
|
Вот на Win11 например всё ок:
0
|
|||||||
|
Модератор
|
||
| 25.12.2021, 10:23 | ||
|
Изначально стоял вопрос узнать защищен ли процесс и уровень его защищенности. Я не совсем понимаю что за системный процесс? Запущенный от имени системы или критический системный процесс?
Добавлено через 2 минуты
0
|
||
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
|
| 25.12.2021, 12:31 [ТС] | |
|
Да, изначально я действительно ставил такой вопрос, защищённый процесс или нет. Я не предполагал даже, что в Windows 7 все процессы являются не защищёнными оказывается. Ну я наивно полагал что узнав, какой процесс защищённый то я узнаю какой процесс системный (критический). Может это и сработало бы в Win 8+
Дело в том, что я не знаю никакого способа кроме Restart Manager APi (который работает медленно) и кроме WMI (который ещё медленнее и ненадёжнее) чтобы узнать является ли процесс системный с включёнными SeDebugName привилегиями. И знаю только один единственный способ без привилегий через простое OpenProcess выдаст ошибку или нет... Вот так и работаю зато выдаёт результат за 0 миллисекунд OpenProcess в отличии от других методов. Добавлено через 3 минуты Ну я люблю больше пользоваться Process Hacker нежели чем Process Explorer. Кстати в Process Hacker'е открытый код по лицензии GNU по моему. Это вообще отлично. Процессы NT AUTHORYTI\система вот эти процессы меня интересуют.
0
|
|
|
Модератор
|
|||
| 25.12.2021, 15:09 | |||
|
WinStationGetProcessSid - получаешь SID процесса; LookupAccountSid - получаешь имя (если нужно), либо просто через EqualSid чекаешь предопределенный SID. Также можно через GetTokenInformation TokenUser получить SID.
0
|
|||
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
|||||||
| 25.12.2021, 22:32 [ТС] | |||||||
Добавлено через 4 минуты Хотел ещё спросить, через PEB процесса никак нельзя узнать системный он или нет?
0
|
|||||||
|
Модератор
|
|
| 25.12.2021, 22:42 | |
|
HackerVlad, я уже написал как. Я не понимаю что значит системный процесс. Если запущенный от имени системы то получаешь токен процесса и смотришь его SID, если критический системный процесс - то через ProcessBreakOnTermination.
Добавлено через 3 минуты HackerVlad, где конкретно в какой программе посмотреть список системных процессов? Вот в Process Explorer / Process Hacker / Task Manager - как эти процессы отличить от несистемных - то что имеется в виду?
0
|
|
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
|
| 25.12.2021, 22:47 [ТС] | |
|
Системные процессы - это процессы запущенные ни только от имени системы но и все процессы которые не открываются на полный доступ через OpenProcess. То есть это все НЕ пользовательские процессы. Все процессы которые запущены НЕ от имени пользователя. Включая LOCAL_SERVICE и что там ещё, я забыл. Ну спасибо, я понял в каком направлении опять копать. В любом случае пока лень писать такой код самому. Я с Restart Manager API неделю переписывал с C++. А потом оказалось что 300 миллисекунд надо потратить чтобы узнать о 50 процессах системные они или нет. Или 200 миллисекунд. В общем много очень.
0
|
|
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
||||||
| 25.12.2021, 23:03 [ТС] | ||||||
|
Сразу хочу сказать, тем что я делюсь сейчас, этого когда нет нигде в Интернете. Пришлось писать самому. Абсолютно нигде нет.
Именно для VB6 я имею ввиду. Restart ManagerAPI.
0
|
||||||
|
Модератор
|
|
| 26.12.2021, 00:21 | |
|
HackerVlad, IsPrivilegeProcess - не определена.
Добавлено через 59 минут HackerVlad, используй связку функций EnumServicesStatusEx (получай PID сервисов и сверяй с переданным) и NtQueryInformationProcess c флагом ProcessBreakOnTermination.
0
|
|
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
|||||||||||
| 26.12.2021, 04:55 [ТС] | |||||||||||
|
IsPrivilegeProcess забыл и правда функцию скопировать, она определяет включены ли права SeDebug, по моему, для того чтобы понять работает из под админ прав или нет. С полностью включенным UAC, лично у меня, можно получать информацию быстрее не обращая внимание на RebootReasons который пакетно не получишь. Тут всё и замедляется.
С включенным UAC там и правда легче там все процессы системные например защищены от удаления, их определение легче. Спасибо за подсказку про EnumServicesStatusEx. Можно определить о том процесс сервис или нет только через списки перебирая? Про Restart Manager API. Он сам по себе медленный. Один запрос 50 - 100 млск. NtQuerySystemInformation в 10 раз быстрее, а то и в 100 раз быстрее. Жаль не даёт информации только о том системный процесс или нет) Про NtQueryInformationProcess c флагом ProcessBreakOnTermination. Я конечно этим пользуюсь давно. Это только процессы вызывающие синий экран. Это smss.exe, csrss.exe (2 шт) и wininit.exe и всё. Кстати я заметил если с них снять БСОДность и удалить их из памяти килл процессом то тогда каждый запрос к Restart Manager API приводит к зависанию приложения. В отличии от других функций. Ну это извращение правда уже. Для EnumServicesStatusEx готового примерчика не найдётся? Добавлено через 14 минут Что я там забыл кстати скопировать? Простая функция которая определяет инициализирован ли любой массив:
0
|
|||||||||||
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
|||||||
| 27.12.2021, 18:28 [ТС] | |||||||
|
Почему нет описание функции WinStationGetProcessSid в MSDN. Ох...
Добавлено через 5 часов 59 минут
0
|
|||||||
|
Модератор
|
||||||||||
| 28.12.2021, 11:05 | ||||||||||
0
|
||||||||||
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
||
| 28.12.2021, 15:00 [ТС] | ||
|
0
|
||
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
||
| 28.12.2021, 16:01 [ТС] | ||
|
RmCritial в API Restart Manager'а значит что процесс системный и не обязательно бсодный (но так же может и бсодный)
0
|
||
|
Модератор
|
|||||||
| 28.12.2021, 17:36 | |||||||
0
|
|||||||
|
Вернулся
1751 / 647 / 45
Регистрация: 10.09.2021
Сообщений: 2,800
|
||
| 28.12.2021, 17:39 [ТС] | ||
|
0
|
||
|
Модератор
|
|
| 28.12.2021, 17:47 | |
|
0
|
|
| 28.12.2021, 17:47 | |
|
Драйвер для защиты процесса Защита книги макросом. Разный уровень защиты на листах. Как реализовать? Связь процесса-родителя и процесса-ребенка через pipe, используя для синхронизации семафоры Создание процесса из программы для защиты основного от несанкционированного завершения Организуйте двустороннюю поочередную связь процесса-родителя и процесса-ребенка через pipe, используя для синх Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Знаете, от чего появляется стресс?
kumehtar 15.07.2026
Стресс появляется оттого, что вы, зная как поступить правильно, делаете наоборот.
Ларри Уингет
|
Нас бьют, а мы крепчаем? Какая чушь!
kumehtar 15.07.2026
Вот это вот бытующее мнение, что человек меняется только под действием проблем, всегда считал вредоносным. Поверь, от проблем у людей появляются не изменения, а нервное расстройство и ПТСР. А. . .
|
сукцессия 29. Переход от одних деревьев на другие делать более или менее вероятностным?
anaschu 12.07.2026
Насколько смена типов микоризы — исключительное событие в двухвековой сукцессии? Оценка вероятности в пространстве параметров
В текущей версии модели успешно реализован ключевой механизм. . .
|
сукцессия 27. Думаю, как переделывать уже написанную статью с планами на сукцессию.
anaschu 12.07.2026
Анализ соответствия модели требованиям
Реализованные компоненты:
Механизм закисления почвы через протонную помпу
Конкуренция между типами микориз
pH как триггер сукцессии
C/ P соотношение. . .
|
|
Сукцессия 26. Мат модель создана.
anaschu 12.07.2026
Модель смены растительных сукцессий посредством управления грибами работает внутри небольшой ячейки почвы, восстанавливающейся после пожара, где ненадолго бывшее царство хвойных снова захватили. . .
|
Решил проблему с ошибкой пагинации сообщений с сервера на алгоритме обхода дерева "Эстафета хвоста".
Hrethgir 12.07.2026
Проблема была в том, что удалялась именно новая кнопка, а не старая. Ни один ИИ не обнаружил это, а сам я смог только когда с работой стало попроще и когда заставил работать будущее автономное. . .
|
сукцессия 25. Хронология ошибок
anaschu 12.07.2026
# От 50-тонного гриба до устойчивого леса: хроника ошибок при построении модели вековой сукцессии микоризы
## О чём эта статья
В процессе построения ОДУ-модели (система дифференциальных. . .
|
сукцессия 24. Промежуточное общее описание модели
anaschu 12.07.2026
Хендофф: модель АМ→ЭКМ сукцессии микоризы (ризосфера, 50 лет)
Содержание проекта
Симуляция вековой (50 лет) экологической сукцессии в почве леса
Основные участники: АМ-гриб, ЭКМ-гриб,. . .
|