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

Вниз

Как забить на КиллПроцесс!???   Найти похожие ветки 

 
XM-AD   (2001-10-22 11:48) [0]

Мастаки! Помогите решить проблему! Вобщем есть одна паразитирующая программуля, которая вырубает любой процесс по его АйДи... Программа, которую вырубают, ничего сделать боле не успевает и тихо, но быстро умирает... :( Подскажите, как перехватить вызов килл-ера на мой АйДи и показать ему БОЛЬШОЙ и ЖИРНЫЙ кукиш???


 
Anatoly Podgoretsky   (2001-10-22 12:43) [1]

Если это не противоречит корпортивной политике, то найди ее в реестре и заблокируй.


 
XM-AD   (2001-10-22 15:11) [2]

Кого отключить? Прогу-киллера что ли?? Если да, то вариант не проходит.....


 
Anatoly Podgoretsky   (2001-10-22 15:34) [3]

Почему?


 
XM-AD   (2001-10-22 17:01) [4]

Потому что она выполняет еще ряд нужных функций....... а прибивание процесса применимо и к другим вредным созданиям программистов....


 
BadDude   (2001-10-24 13:10) [5]

решение одно - написть apispy, который отлавливает в системе вызов OpenProcess и исходя из параметров функции разрешать или запрещать ее выполнение


 
Anatoly Podgoretsky   (2001-10-24 13:58) [6]

XM-AD © (22.10.01 17:01)

То есть это относится к корпоративной политики, видимо одна из програм мониторинга и ты пыиаешься ее обойти, как к этому относится руководство.


 
Ketmar   (2001-10-24 23:36) [7]

2BadDude:
apispy под 9x - задача нетривиальная. Мне вот сообщили, что мой перехватчик ни разу не работает :-( следовательно, надо лезть в ring0 и там веселиться, а это ой как нудно...

2XM-AD:
оставляя в стороне вопрос допустимости таких действий, по существу можно сделать так: две программки. одна - монитор, другая - твоя. обе следят друг за другом. если монитор заметил, что твою убили - он ее перезапускает. если твоя заметила, что помер монитор - перезапускает монитор. гарантия не 100-процентная, но зато позволяет избавиться от извратов и низкоуровневого ковыряния в маздайке.

Satanas Nobiscum!


 
33   (2001-10-25 02:17) [8]

И еще третью программу, которая следит, чтобы не убили первые две.


 
Dennis S   (2001-10-25 10:36) [9]

Уж не знаю, в струю или нет...

2XM-AD:
Если тебе нужно, чтобы эта паразитирующая программуля все-таки висела в трае, тогда, наверное, тебе есть смысл состряпать копию данного паразита один к одному, с одной малинькой разницей - конкретно твою прогу он даже светить не будет в списке...

Надеюсь, как вариант, идея пойдет!


 
BadDude   (2001-10-25 20:00) [10]

2Ketmar
я читал твою статью про использование DebugApi. мне вообще она показалась интересной, но далеко не идеальной... :)
для меня же образцовым примером использования DebugApi стал листинг из книги "Windows"95 Programming Secrets", автор Matt Pietrek. Здесь автор приводит универсальный код - работает на всем семействе win32, причем именно работает, да к тому же без всяких драйверов и тому подобного занудства :), см. далее
2XM-AD сходи на www.wheaty.net, там есть реально работающий пример про отлов вызова функций в системе (см. мой пред. совет), а еще на cmp.phys.msu.su/ntclub
надеюсь этого хватит. изучай :)


 
Ketmar   (2001-10-27 21:50) [11]

2BadDude:
спасибо. буду штудиовать. если пойму, напишу дополнение к статье.
вот только боюсь Я, что там используется техника DLL injecting, которую Я так хотел похе... сорри, проигнорировать :-) хотелось же делать все "по документации". ну вот кто Мне скажет, какого черта M$ нифига не следует документации, которую сама же и пишет? точнее, какого черта она оставляет "дырки" в документации, которые можно истолковать как нравится? :-((( ненавидю! :-)

Satanas Nobiscum! 27-Oct-XXXVI A.S.


 
Ketmar   (2001-10-27 21:51) [12]

все. уже вижу. таки DLL injecting. #%$%$#%#!! :-(((

Satanas Nobiscum! 27-Oct-XXXVI A.S.


 
paul_shmakov   (2001-10-29 12:48) [13]

2 Ketmar:
именно dll injecting. мне эта фишка тоже очень не нравится, но сколько я не рою, ничего другого, более грамотного не нахожу. только под win9x можно без этого - выделяешь память выше 2Гб (чтобы всем процессам доступна была), записываешь туда функции перехватчики, меняешь первые байты перехватываемых функций прямо в загруженной kernel32.dll (как поменять атрибут защиты я в bo2k нашел - вызовом к ring0 через VXDCall).
И никаких dll, отладки и т.п. Но это работает только под win9x, что не особо интересно :(


 
Ketmar   (2001-10-29 22:33) [14]

2paul_shmakov:
да. мелкомягкие как всегда облажались с переносимостью кода :-( а вот SleepyHead, между прочим, клялся-божился, что Мой код ВЕЗДЕ работать будет. вредина-обманщик :-) Я ж ему поверил...
а как в ring0 попасть - Я нашел в исходниках cih"а :-)
только вот ни разу не понимаю логики - почему в NT можно править керналь, а в 9x - низзя? вроде бы наоборот оно логичней... кстати, а если атрибуты защиты страницы поменять Virtual"ом? нету времени эксперементировать, к сожалению... не проканает? hotfix говорил, что не проканает, если Я не ошибаюсь.
то есть получается, что NT умеет делать copy on write на кернале, а 9x - не умеет? странно это... впрочем, с чего бы это Я хочу от некрософта логики? :-)

жыз
все больше убеждаюсь: пингвин рулит! только пока никак не могу разобраться с эльфами - как там пришпандерить линковку библиотек во время загрузки... что-то ребята с этим намуд(р)или. или Я торможу безбожно...

Satanas Nobiscum! 29-Oct-XXXVI A.S.


 
paul_shmakov   (2001-10-31 17:51) [15]

Это как можно "в NT можно править керналь"??? Как раз в win9x можно. Только не через VirtualProtect(Ex)... Он не позволит изменять защиту на станицах ядра.
Win9x вообще не знает про "copy on write".



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

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

Наверх





Память: 0.48 MB
Время: 0.006 c
3-18710
ЕвгенийА
2002-01-10 01:25
2002.02.07
OpenDialog и Table


3-18777
3asys
2002-01-14 14:08
2002.02.07
Ввод изображения через DBImage


4-19025
Art
2001-11-18 18:06
2002.02.07
Как использовать ShellExecute?????


1-18855
Yuri Btr
2002-01-22 15:07
2002.02.07
Командная строка


1-18863
dim2001
2002-01-22 21:44
2002.02.07
Как распечатать StringGrid на лазерном принтере?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский