Всем доброго! Может для кого-то этот вопрос покажется сверх глупым, но все же мне хотелось бы услышать ваше мнение на него. Вопрос в следующем, может ли или можно ли новому процессу задать пид ниже 31 и всегда ли за system закреплен PID==8?
Idle и System не являються процессами в полном смысле, так как это чудо не выполняет код режима пользователя. "Процесс" System хранит в себе большую часть потоков создаваемых ядром. SystemPID==8 всегда. Драйвера могут поменять PID. Но стабильность системы после таких махинаций практически равна нулю, так как PID жертвы могут использовать куча других процессов (не только его хендл), которые зелёного понятия не имеют о проведённых махинациях. Так что на лету изменять PID врятли возможно. А вот во время создания... Думаю это вполне реально. Но где начинать копать - тут тебе я не советчик.
DelExe, следовательно в момент создания нового процесса, я могу задать ему любой пид или все-таки существует кокой-то запретный дипозон раздоваемых пидов процессам? интересная иформация, а есть конкретные примеры таких драйверов?
Это на рутките поищи _http://www.rootkit.com Драйвера прятающие процессы, будучи немного модифицированными способны изменить PID. Я издевался над своей системой до тех пор, пока логический диск на FAT32 не окочурился. Я же говорю - на лету такое вытворять нечего. Проверено на собственной шкуре (точнее на хардовской шкуре). Это стоит делать в момент создания процесса. А вот куда дальше тебе двигаться я не могу сказать, так как в этом направлении не копал. Могу лишь предложить, что стоит найти код в системе создающий EPPROCESS а в нём найти код манипулирующий пидом.
Можно, если поменять его в структуре EPROCESS, причем при правильной реализации пробдем со стабильностью не будет. Примеры смены pid я кажется гдето приводил. В windows XP за ним закреплен pid 4
Ой! Виноват. Извините за дизинформацию. Позор на мою седую голову. Иду пить иаду. Если другой процес помнит PID жертвы, то какие будут соображения?
А зачем другому процессу pid жертвы? Разве только что для открытия с помощью OpenProcess. А OpenProcess совершенно наплевать на pid в структуре EPROCESS (который используется только при перечислении процессов), для открытия есть еще одна таблица в которой храняться все процессы и потоки, называется она PspCidTable.
Ms Rem, что-то твоя программа опракинула мою винду, может ты сам пытался эксперементальным путем понизить пид свой программы ниже 8?
Это наверно потому, что та прога через физикалмемори ломиться, а это действительно очень нестабильный способ. Если все делать из драйвера, то все нормально будет работать. Меньше 8 я правда ставить не пробовал.
Ну вот ждал я ждал, этого самого и не дождался, решил сам попробовать, что вы думаете???? Я разочарован, я то глупец надеялся, что w2k отслеживает процессы и не позволяет левым сесть ниже системного, а на деле все иначе. Конечно полноценного рабочего процесса мне не удалось получить, но скорей всего кривость моих рук, но факт остается фактом и вы можете это сами лицезреть в аттаче. P.S. по какой-то причине не могу прикрепить файлик Маξимальный размер аттача 50 кб. Только зарегистрированные пользователи. вроде как все условия соблюдены см. тут еще прикол , кто-нить из вас видел процесс с пидом -1 , вот я его наблюдаю, а возник он после запуска еще одной копии приложения и попытке присвоения ему PID=6.