|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
14.09.2013, 09:44 | #1 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Управление компонентами другого приложения/окна
Скажу сразу - меня попросили написать кейлоггер, хотите верьте, хотите нет.
Сам кейлоггер я не писал, я его скачал в интернете - где не важно. Я написал программу, которая отправляет мне на почту txt файл лога каждые 5 минут и 10 секунд (а это уже другая проблема). Моя текущая проблема заключается в том, что кейлоггер не заменяет содержимое лога, а ДОПОЛНЯЕТ его, таким образом размер лога растёт быстро. Пытался после каждой отправки лога закрывать процесс программно и открывать его заново - сам кейлоггер возмущается (I/O error). Помню, что в универе писал практику по хэндлам, но там мы рисовали в Paint посредством GetDCWindow (или как то так). Там же мне рассказывали, что можно получить доступ к управлению компонентами окон других приложений. У Delphi 7 есть полезная утилита - WinSight32.exe, которая позволяет отобразить структуру каждого окна, хэндлы, имена классов, заголовки окна и приложения. Таким образом я узнал, что у нужного мне компонента, из которого сохраняется лог файл имеет класс TMemo (как ни странно). Вопрос остался только в том, как получать доступ к такому объекту ?
Подпись ? Не, не слышал ...
|
14.09.2013, 09:47 | #2 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Забыл добавить - простое удаление лога не катит. TMemo кейлоггера само по себе не очищается, а в файл записывается весь Memo.
Подпись ? Не, не слышал ...
|
14.09.2013, 14:16 | #3 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
В прочем ладно, я таки додумался, как это нужно делать правильно, в следующем посте отпишу ...
Подпись ? Не, не слышал ...
Последний раз редактировалось OmegaBerkut; 14.09.2013 в 15:54. |
14.09.2013, 14:26 | #4 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Не важно как я до этого додумался (может только потому что уже очень сонный), но узнав про сообщение Win32 с таким названием - "WM_CLOSE", мне не пришлось ковыряться в дочернем TMemo. Благодаря примерно такой конструкции:
Код:
P.S. Посчитав, примерно получилась трата времени на сбор данных чуть менее двух секунд (с 2-х ядерным процессором 2.3 GHz). P.P.S. Понимаю, что этот способ решения не соответствует поставленному вопросу - но изначально задумывалось именно так, просто были другие способы, очень уж не оптимальные с точки зрения "зашифроваться". ----- А сейчас я займусь прикреплением скриншотов экрана ... Ибо 5 скринов за 5 минут (одно письмо за 5 минут) - это уже получается нехило ... Это я так, троллю свою очень уж сонливость ...
Подпись ? Не, не слышал ...
|
14.09.2013, 17:19 | #5 |
Участник клуба
Регистрация: 12.09.2012
Сообщений: 1,030
|
Хакер, тебя не учили, что у объекта тоже есть дескриптор? Так ищи его.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби. |
14.09.2013, 17:49 | #6 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Хакер не хакер, а показатель выявления - 12/46 (тык). Работает исправно.
Что по поводу дескриптора - спасибо, я знаю про FindWindowEx, вот только не задача, я пытался присвоить этот дескриптор в переменную TMemo - без результата; Пытался отсылать туда сообщения - тоже не получалось. Найти дескриптор объекта не сложно, там всего ОДИН компонент, который я нашёл быстро, но как я уже сказал - править его я не смог - видать не такой я уж и хакер. ОЛОЛО. Кстати, ESET-NOD32 угадал на 100 % по поводу оригинального производителя самого кейлоггера. --- P.S. Да, это я похвастался.
Подпись ? Не, не слышал ...
|
14.09.2013, 17:50 | #7 |
Спокойный псих
Участник клуба
Регистрация: 19.03.2013
Сообщений: 1,538
|
Ну да, за скриншоты никто ничего не говорил. Проходят все 46 (это как я понял).
Подпись ? Не, не слышал ...
|
15.09.2013, 23:25 | #8 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
На форуме запрещено обсуждение кейлогеров и другого зловредного софта.
|
16.09.2013, 08:27 | #9 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Это скорее монолог чем дискус. )
I'm learning to live...
|
16.09.2013, 13:03 | #10 |
Участник клуба
Регистрация: 12.09.2012
Сообщений: 1,030
|
Ага, а где модератор? Тут автор почти всю тема, сам с собой талковал.
Что нужно программисту: Компьютер, Среда программирование, Воображение, Прямые руки, Мозги, Знания этой среды программирования.
Программист-это профессия, а программирование-это моё хобби. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
управление компонентами в режиме run-time. | KrisPipis | Помощь студентам | 3 | 08.12.2010 01:11 |
Как отмасштабировать форму приложения со всеми её компонентами? | zmey31313 | Общие вопросы Delphi | 5 | 11.12.2009 16:23 |
Получить дескриптор окна другого приложения и сделать его активным Delphi 7 | AndersX | Помощь студентам | 4 | 18.10.2009 09:32 |
Работа с компонентами стороннего приложения | imprezident | Win Api | 1 | 30.05.2009 22:12 |
Управление компонентами(видимыми и невидиммыми) в чужой программе(любой) | Alter | Win Api | 21 | 13.05.2009 23:13 |