А как вы думаете, текст находится где ? Текст содержится в АП процесса, и чтобы защитить данные в нем находящиеся, нужно как минимум запретить его открывать, запретить читать и писать в его АП. Перехватывать ctrl+alt+del нету смысла, перехватив NtTerminateProcess Вы можете запретить завершить процесс. Так же следует контролировать запуск удаленных потоков, апц с кодом ExitProcess и еще очень много всего, не думаю что для курсовой для института нужно охватывать все варианты развития событий. Для контроля принтскрина нужно контролировать NtUserPrintWindow, NtUserQueryWindow, NtGdiBitBlt итп По поводу ctr+v это вообще смешно звучит, даже не знаю что сказать Если в указанной статье вы не нашли ничего полезного, значит вы не понимаете сути, происходящей не только в кернел, но и даже в юзер моде.
Не то, чтобы я мог особенно помочь по теме, но ИМХО толерантность ответов haxorart достойна, если и не уважения, то при сверхзавышенном ЧСВ хотя бы снисхождения. haxorart Могу попробовать дать старт, т.к. задачи ИМХО не самые тривиальные. Начать можно с самого простого: запретить выполнение ReadProcessMemory, сводящуюся в ядре к NtReadVirtualMemory. А ещё лучше перехватить ZwOpenProcess. Простейший способ это сделать — пропатчить соответствующий адрес в табличке SSDT. По этому есть статьи, книги да и гуглится достаточно быстро. Здесь было бы, например, странно "защищать" программу, которая сама же и отдаёт данные по Ctrl+C. Т.е. после нажатия Ctrl+C edit box'у отправляется сообщение WM_COPY. Принимая это сообщение, стандартное поведение edit box'а заключается в том, чтобы собственноручно скопировать в буфер обмена свои данные. Если процесс сам хочет отдать свои данные, зачем его тогда от этого защищать? Ну да ладно... В принципе SetClipboardData также сводится к вызовам через аналогичную табличку из графической подсистемы. Поэтому там будет работать аналогичный перехват. В общем прямо по теме могу посоветовать Хоглунда: Subverting Windows Kernel. Если нет базовых знаний, то сначала надо начать с этого: http://www.wasm.ru/forum/viewtopic.php?id=29640 (в частности основное внимание обратить на Руссиновича и Соломона).
Всё описанное вами для меня является само собой разумеющимся и было реализованно сразу же, поэтому подобные вопросы я и не задавал. А вот информация по горячим клавишам и буферу не была мною найдена. Но статья выше решила проблему.
На будущее прежде чем писать незнакомые слова почитайте про них. То что вам надо правильнее назвать "антиграббинг текста". Дампят бинарную информацию и это совсем другая задача. Хотя конечно дампом можно "граббить", но тут уж спецы вам сразу скажут - абсолютной защиты нет. Берем фотоаппарат и КУКУ!
Задачу ставил преподаватель. Кто ж знал, что такой прикол получиться? На будущее буду знать, спасибо.