Добавление в автозагрузку
| |
Волк-1024 | Дата: Вторник, 24.04.2012, 22:31 | Сообщение # 26 |
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 469
Статус: Offline
| Ну, например, при добавлении ключа в RunOnce. ССleaner его не видет
|
|
| |
xXxSh@dowxXx | Дата: Среда, 25.04.2012, 09:10 | Сообщение # 27 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Marra_Kesh ну если говорить о скрытности тогда вернемся к первому посту, но там опять же остается нерешенной задача по копированию в обход проактивки антивирусов, и даже в этом случае некоторые программы определяющие автозагрузчики находят по мимо реестра и этот файл в папке автозагрузки...
вобщем пришла мне в голову одна идея, а что если не просто копировать себя в папку актозапуска, а создать там NTFS поток и засунуть в него наш файл, кто нибудь тестил потоки на автозапуске, кто что знает?
поэкспериментировал я немножко и вот чего удалось добиться с помощью потока, в принципе бесполезно, но все же удивляет
все делалось ради эксперимента , хотел было смайлик нарисовать :), но увы, оказалось что обязательно должен быть разделитель в виде "." либо в файле либо в потоке перед расширением, но что еще поразило, если хотя бы в потоке мы указываем расширение то в файле (к которому мы создали поток) точку перед расширением можно смело убрать и наоборот, тогда выглядеть процесс будет примерно так:
:1.exe или в моем случае : . или . :
поэтому я решил ограничиться неким подобием самолетика ну или треугольника как хотите первое изображение с диспетчеза задач, второе из стороннего софта:
Сообщение отредактировал xXxSh@dowxXx - Среда, 25.04.2012, 12:18 |
|
| |
xXxSh@dowxXx | Дата: Среда, 02.05.2012, 11:12 | Сообщение # 28 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| К моему удивлению, после немногочисленных тестов с антивирусом, оказалось что эвристика антивируса как раз таки не обращает внимание на Code CopyFile(PChar(ParamStr(0))
все дело в самой папке "Автозагрузка", антивирь ругается вот на это
Code PChar(GetSpecialPath($0007)
то есть когда копирование идет конкретно в эту папку, я и подумал, антивирь же не ругается когда мы просто копируем методом "CTRL+C", видимо это происходит потому что у нас в фокуче активное окно експлоурера в этой папке при помощи проводника, так может быть можно при помощи какого либо варианта или API функции использовать в коде оригинальный подход...
Сообщение отредактировал xXxSh@dowxXx - Среда, 02.05.2012, 11:14 |
|
| |
gravitas | Дата: Среда, 02.05.2012, 15:04 | Сообщение # 29 |
Авторитетный
Зарегистрирован: 01.05.2010
Группа: Пользователи
Сообщений: 385
Статус: Offline
| 15 строк кода и 30 постов. Товарищи, вы что, ошалели?)
|
|
| |
Don_Diego | Дата: Среда, 02.05.2012, 16:08 | Сообщение # 30 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| Quote (xXxSh@dowxXx) все дело в самой папке "Автозагрузка", антивирь ругается вот на это Code PChar(GetSpecialPath($0007) Если бы да так... Я создавал уже и новую папку в Program Files, копировал туда как обычную программу - все равно кричит. И причем кричит только KIS. NOD32, Аваст, и даже, сильно удивился, DrWeb молчат.
|
|
| |
xXxSh@dowxXx | Дата: Среда, 02.05.2012, 19:43 | Сообщение # 31 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Don_Diego странно, вот мой код, самокопирование в "Program Files" каспер последний обновленный не орет:
Code function GetSpecialPath(CSIDL: word): string; var s: string; begin SetLength(s, MAX_PATH); if not SHGetSpecialFolderPath(0, PChar(s), CSIDL, true) then s := ''; Result := PChar(s); CopyFile(PChar(ParamStr(0)), PChar(Result + '\1.exe'), False); end;
procedure TForm1.Button1Click(Sender: TObject); begin GetSpecialPath($26); end;
может быть я по ошибке в исключение добавлял проект, хз, вроде нет...
Don_Diego скажи что у тебя за каспер который даже папку "Program Files" контролирует ?
да все верно, в другие папки норм копируется, а вот в "Автозагрузку" каспер выдает сообщение в котором так и написано цитирую - "программа пытается создать файл, входящий в группу Операционная система/Параметры автозапуска" и потом определяет его как "Trojan.generic", но это только если в автозагрузку копироваться...
Сообщение отредактировал xXxSh@dowxXx - Среда, 02.05.2012, 19:53 |
|
| |
Don_Diego | Дата: Среда, 02.05.2012, 21:59 | Сообщение # 32 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| xXxSh@dowxXx, KIS 2011, с последними обновлениями. Тут наверно весь прикол вот в этом: Quote (xXxSh@dowxXx) Code procedure TForm1.Button1Click(Sender: TObject); begin GetSpecialPath($26); end; Где-то слышал что если запускать процедуры через кнопки - то он не ругается. У меня же все делалось без влияния на то пользователя Выдает "Trojan.generic"... А если убрать автозагрузку, сделать вообще как пинч то вроде все нормально. Но такой способ меня не устраивает - пользователи иногда меняют пароли
|
|
| |
xXxSh@dowxXx | Дата: Среда, 02.05.2012, 22:28 | Сообщение # 33 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Quote (Don_Diego) Тут наверно весь прикол вот в этом:
Code procedure TForm1.Button1Click(Sender: TObject); begin GetSpecialPath($26); end;
то есть с моим кодом у тебя на Program Files больше не ругается?
|
|
| |
Don_Diego | Дата: Среда, 02.05.2012, 23:09 | Сообщение # 34 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| xXxSh@dowxXx, если без кнопочки, то ругается. http://s2.ipicture.ru/uploads/20120502/uyI6RLyR.jpg
|
|
| |
xXxSh@dowxXx | Дата: Среда, 02.05.2012, 23:21 | Сообщение # 35 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| не знаю я переписал вот таким образом, и опять же каспер молчит:
Code function GetSpecialPath(CSIDL: word): string; var s: string; begin SetLength(s, MAX_PATH); if not SHGetSpecialFolderPath(0, PChar(s), CSIDL, true) then s := ''; Result := PChar(s); CopyFile(PChar(ParamStr(0)), PChar(Result + '\1.exe'), False); end;
procedure TForm1.FormCreate(Sender: TObject); begin GetSpecialPath($26); end;
end.
хз почему у тебя так, может у тебя не GetSpecialPath($26); а GetSpecialPath($0007); стоит в коде, тогда да, сразу палит, автозагрузка же...
|
|
| |
Don_Diego | Дата: Среда, 02.05.2012, 23:32 | Сообщение # 36 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| xXxSh@dowxXx, сильно не кричи, но я не сохранил тот переработанный проэкт. Уже и сонный, спать хочется. Вобщем вот сюда нужно вновь запхнуть твой код, а потом проверить:
PS: DecryptString - это функция расшифровки данных, в комментариях поставлены раскодированные значения
Сообщение отредактировал Don_Diego - Пятница, 04.05.2012, 14:44 |
|
| |
xXxSh@dowxXx | Дата: Четверг, 03.05.2012, 09:27 | Сообщение # 37 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Если я правильно понял, то ты хочешь создать .ini файл с параметрами ключа реестра,который в итоге тебе нужно скопировать в "Program Files", если у тебя ругается на твою функцию копирования антивирь,то попробуй заменить на мою,она по сути почти ни чем не отличается,просто у меня не WinPach параметр...,я сам к сожалению в данный момент проверить не могу,так как я на работе и пишу с телефона,завтра дома буду, тогда и гляну сразу твой код...
|
|
| |
xXxSh@dowxXx | Дата: Четверг, 03.05.2012, 09:34 | Сообщение # 38 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Ребята,давайте еще подумаем,какими еще вариантами можно перелопатить функцию таким образом что бы не ругался антивирус во время копирования в папку автозагрузки, у кого какие еще есть варианты?
|
|
| |
Don_Diego | Дата: Четверг, 03.05.2012, 10:33 | Сообщение # 39 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| Quote (xXxSh@dowxXx) Если я правильно понял, то ты хочешь создать .ini файл с параметрами ключа реестра,который в итоге тебе нужно скопировать в "Program Files" Эм... TRegIniFile также можно использовать для записи в реестр, что и делается, раньше на такой способ даже антивирус не кричал. Функция WinPath это считай аналог приведенной GetSpecialPath, тоесть как видно она принимает такие же параметры - "$26". Но в отличии от твоей она просто возвращает путь к системной папке. А у тебя интересный подход (я уже выспался ) с запутыванием кода.
|
|
| |
xXxSh@dowxXx | Дата: Пятница, 04.05.2012, 09:30 | Сообщение # 40 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| Don_Diego все я дома, щас буду пробувать, только вот скажи, а зачем ты используешь шифрование путей?
и еще че та я не могу найти, в uses какой модуль требуется для WinPach.., капец после суток на работе вобще ниче не соображаю
Сообщение отредактировал xXxSh@dowxXx - Пятница, 04.05.2012, 09:53 |
|
| |
Don_Diego | Дата: Пятница, 04.05.2012, 10:30 | Сообщение # 41 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| xXxSh@dowxXx, согласен, шифрование путей считай бессмысленно, но все же хоть маленькая защита от некоторых антивирусов. Там же шифруется и сам пароль доступа на почту. Конечно, и его то можем выловить с помощью любого снифера, но хоть в файле его хрен найдешь Называй эту функцию как хочешь, хоть WinPath, хоть GetSpecialPath, все равно функциональность от этого не изменится: Code uses ShlObj;
function WinPath(FolderID: word): string; var FolderPath: string; begin SetLength(FolderPath, MAX_PATH); if not SHGetSpecialFolderPath(0, PChar(FolderPath), FolderID, true) then FolderPath:= WinPath(CSIDL_APPDATA); Result:= PChar(FolderPath); end;
|
|
| |
xXxSh@dowxXx | Дата: Пятница, 04.05.2012, 11:42 | Сообщение # 42 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| а ну да, одна и та же функция просто названа по разному... хз вроде все проверил, на эту функцию вобще антивирь не ругается, даже если без кнопки и без формы, хз почему у тебя так, неужели в KIS и KCrystal по разному устроена проактивка?, может у тебя на добавление записи в ветку Run реестра ругается?
скорее всего так и есть, потому что на функцию копирования в обычные папки проактивка не должна реагировать...
Сообщение отредактировал xXxSh@dowxXx - Пятница, 04.05.2012, 11:49 |
|
| |
Don_Diego | Дата: Пятница, 04.05.2012, 12:12 | Сообщение # 43 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| Quote (xXxSh@dowxXx) неужели в KIS и KCrystal по разному устроена проактивка? Если это действительно так, то всем нужно скорей переходить на KIS 2011 Насколько мне известно то в KCrystal лишь улучшена защита для банковских операций. Меня вот интересует тогда, почему он не ругается когда в Run пишутся другие программы? Хотя... Мне кажется он ругается потому что в троянце идет обращение к файлам куки и паролей MSIE, Mozilla, Opera и Google Chrome. Последний кставти вообще запрещает к ним доступ когда сам открыт. Поэтому пришлось его...закрывать
|
|
| |
Don_Diego | Дата: Пятница, 04.05.2012, 14:35 | Сообщение # 44 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| Только что скомпилировал этот код:
И вот что получилось:
Значит вывод: вновь перерабатываем функцию автозапуска, и тем у кого стоит KCrystal срочно меняем его на KIS 2011!
Сообщение отредактировал Don_Diego - Пятница, 04.05.2012, 14:38 |
|
| |
xXxSh@dowxXx | Дата: Пятница, 04.05.2012, 18:20 | Сообщение # 45 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| ок, это уже интересно, а ты файл свой скомпиленный случаем не с рабочего стола запускаешь?
если я правильно понял, то по уведомлению каспера видно что скорее всего оно вылетает не когда ты запускаешь скомпилированный Project1.exe, а когда переходишь в папку с ним, или когда любым образом обращаешься к файлу, копируешь например, каспер у тебя сразу выдает что это троян, хотя могу и ошибаться, но если Explorer.exe то это должно быть именно так, потому что первым делом к файлу обращается проводник и процесс Explorer'a...
Сообщение отредактировал xXxSh@dowxXx - Пятница, 04.05.2012, 18:30 |
|
| |
Don_Diego | Дата: Пятница, 04.05.2012, 21:19 | Сообщение # 46 |
Продвинутый
Зарегистрирован: 16.04.2012
Группа: Пользователи
Сообщений: 253
Статус: Offline
| xXxSh@dowxXx, папка с проектом в другом месте, скопировал на рабочий стол Project1.exe, KIS молчал. Но когда я попытался его запустить, то тут же вылезло то что вылезло Ты этот же самый код компилировал у себя, проверял KCrystal?
|
|
| |
xXxSh@dowxXx | Дата: Пятница, 04.05.2012, 22:42 | Сообщение # 47 |
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
| в общем капец какой то, все перепробывал, даже запись в реестр через WinAPI, один хрен каспер палит все, единственный вариант это компилировать а потом править через Дизассемблер, тогда можно чуть исправить пару байт что бы каспер замолчал, только так, если только не попробывать еще какой нить вариант записи в реестр или самокопирования...
Quote (Don_Diego) Ты этот же самый код компилировал у себя, проверял KCrystal?
да я установил новый буилд KCrystal последний самый, он так же палит сразу как только компилишь, но что меня больше поразило, теперь каспер контролирует файлы не только по средствам проводника Explorer.exe но и по всем открытым процессам, он теперь в режиме реального времени прогоняет каждый процесс на предмет обращения к новым файлам, вот только оперативы еще больше стал пожирать зараза...
Сообщение отредактировал xXxSh@dowxXx - Пятница, 04.05.2012, 22:43 |
|
| |
Волк-1024 | Дата: Пятница, 04.05.2012, 23:53 | Сообщение # 48 |
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 469
Статус: Offline
| Код палица не сигнатурно... Так что при почти любом переписывании кода будет одна и таже фигня - палево. Копать нужно в сторону антиэмуляции.
|
|
| |
Marra_Kesh | Дата: Суббота, 05.05.2012, 00:10 | Сообщение # 49 |
Постоянный
Зарегистрирован: 19.12.2009
Группа: Модераторы
Сообщений: 182
Статус: Offline
| Меня мучает такой вопрос: ПоЩаму AV программы не ругаются например на Punto Switcher, Daemon tools и прочую зал*пу, которая тоже прописывается в реестре используя теже API ф-ции, что и Я использую в своих, а на мою безобидную, девственно чистую программу ругается???
|
|
| |
Волк-1024 | Дата: Суббота, 05.05.2012, 00:55 | Сообщение # 50 |
Авторитетный
Зарегистрирован: 24.07.2011
Группа: Модераторы
Сообщений: 469
Статус: Offline
| Причин очень много. Эти программы у АВ в вайт листах (типа калькулятора и блокнота), программы имеют собственную эл.подпись, эмулятор видит, что у программ есть работа с GUI и т.д и т.п.
Quote девственно чистую программу ругается
Поэтому и орёт, что кроме записи в реестр больше ничего не делает.
|
|
| |
|