• XSS.stack #1 – первый литературный журнал от юзеров форума

скрытый запуск программы

MekJack

RAM
Пользователь
Регистрация
19.10.2005
Сообщения
127
Реакции
0
у меня цель, нужно на удалённом компе запустить программу незаметно(глазам хотя бы), то есть тоже самое что запустить и сразу на неё SW_SPOILER(как-то так). Вот вроде есть функция ShellExecute но толи не до конца разобрался, но получалось через раз. Какой надёжный способ это сделать? (собираюсь сам написать, но неоткажусь от какого-нибудь софта...)

И вопрос вдогонку: как можно расшарить файл( для общего доступа в сети ) максимально незаметно, да и вобще как это программно сделать?

:help: :D
 
1)
Код:
ShellExecute и ShellExecuteEx - эти функции предназначены не только для запуска программ, но и для открытия и печати различных документов, т.е. запуска приложений, сопоставленных определенным типам файлов. Если, например, в качестве имени файла указать mydoc.doc, то будет запущено приложение, сопоставленное файлам с расширением doc (Microsoft Word). Функции ShellExecute и ShellExecuteEx в отличие от CreateProcess производят поиск файла в путях, указанных в переменной PATH.

 
  

  HINSTANCE ShellExecute(
    HWND hwnd, 
    LPCTSTR lpOperation,
    LPCTSTR lpFile, 
    LPCTSTR lpParameters, 
    LPCTSTR lpDirectory,
    INT nShowCmd
);
 

Эта функция возвращает значение >32 в случае успешного выполнения и значение <= 32 в случае ошибки.

Параметры:

hwnd
 дескриптор родительского окна
 
lpOperation
 строка, описывающая операцию: "open" - открытие (запуск), "print" - печать, "explore" - открыть окно с заданной папкой
 
lpFile
 имя файла
 
lpParameters
 параметры командной строки
 
lpDirectory
 текущая директория для запускаемой программы
 
nShowCmd
 параметр, указывающий, как будет показано приложение при открытии. Имеет тот же смысл, что и nCmdShow в WinMain
2)
Код:
Расшарить папку в NT/2000/XP: 

Пользуем NetShareAdd 
Declared in Lmshare.h 
Use Netapi32.lib 

NET_API_STATUS res; 
SHARE_INFO_2 inf; 

memset(&inf, 0, sizeof(inf)); //Обнуляем структуру 
inf.shi2_netname = _T("TEST_TEMP"); // Имя шаринга 
inf.shi2_type = STYPE_DISKTREE; // расшариваем папку 
inf.shi2_remark = _T("TeSt"); //Примечание. Хорошо наблюдается из консоли 'net share' 
inf.shi2_permissions = ACCESS_READ|ACCESS_EXEC; //Доступ на чтение и исполнение 
inf.shi2_max_uses = 4; //Ограничение на макс. кол-во подключеных юзеров 
inf.shi2_path = _T("C:\\temp"); //Собственно папка, которую расшариваем 
inf.shi2_passwd = NULL; // Без пароля 
res=NetShareAdd(NULL, //LocalComputer
                    2, 
                    (LPBYTE) &inf, 
                    NULL); //Не хотим знать доп. инф. об ошибке 

if(res==NERR_Success)     return; //Всё получилось, выходим.
 
АВ очень подозрительно относятся к программам которые были запущены с параметром SW_SPOILER. К тому же я не пойму, у тебя там что окошко есть? Если нет, то зачем SW_SPOILER?
 
окошко есть..

А можно написать путь к файлу? и что тогда поставить в кач-ве дескриптора родительского окна?

Если вот так тихо взять и расшарить файрволл будет ругаться?

ps: спасибо за ответы, с какого сайта русское описание берёшь?
 
это не с сайта. это сборник статей С++ World. сделан по типу Delphi world и Assm World
 
кстати фаеры, например аутпост недоверяет прогам которые запускаются с SM_SPOILER, лучше их не прятать а создать окно где нить за границами экрана ... :)
 
так и антивири палят такой запуск проги.
лучше их не прятать а создать окно где нить за границами экрана
а нахрена прогу с окнами запускать за границами экрана? другая будет ей по кнопкам щелкать?
 
а нахрена прогу с окнами запускать за границами экрана? другая будет ей по кнопкам щелкать?
А зачем тогда прогу с интерфейсом запускать в скрытом режиме?
 
BOOL CreateProcess(
   PCTSTR pszApplicationName,
   PTSTR pszCommandLine,
   PSECURITY_ATTRIBUTES psaProcess,
   PSECURITY_ATTRIBUTES psaThread,
   BOOL bInheritHandles,
   DWORD fdwCreate,
   PVOID pvEnvironment,
   PCTSTR pszCurDir,
   PSTARTUPINFO psiStartInfo,
   PPROCESS_INFORMATION ppiProcInfo);

typedef struct _STARTUPINFO {
   DWORD cb;
   PSTR lpReserved;
   PSTR lpDesktop;
   PSTR lpTitle;
   DWORD dwX; // координата x окна
   DWORD dwY; // координата y окна
   DWORD dwXSize;
   DWORD dwYSize;
   DWORD dwXCountChars;
   DWORD dwYCountChars;
   DWORD dwFillAttribute;
   DWORD dwFlags; // STARTF_USEPOSITION | STARTF_USESHOWWINDOW
   WORD wShowWindow; // SW_SPOILER
   WORD cbReserved2;
   PBYTE lpReserved2;
   HANDLE hStdInput;
   HANDLE hStdOutput;
   HANDLE hStdError;
} STARTUPINFO, *LPSTARTUPINFO;


размышляйте :)
 
Pokoinik
кстати фаеры, например аутпост недоверяет прогам которые запускаются с SM_SPOILER, лучше их не прятать а создать окно где нить за границами экрана ... :)

вот поэтому я написал что нахрен все это делать. вообще прога должна быть без окон если он призводит противоправные действия. помоему Эля немного проглючило
 
Dr0ne
а нахрена прогу с окнами запускать за границами экрана? другая будет ей по кнопкам щелкать?

Например, чтобы обойти "Контроль скрытых процессов" оутпоста.
 
вот поэтому я написал что нахрен все это делать. вообще прога должна быть без окон если он призводит противоправные действия. помоему Эля немного проглючило
вот ты ж простой как пять копеек ... ты знаешь какой нить метод инжекта который не палится фаерами или мб приватные способы скрытия знаешь ?

я думаю что нет ... так что тебе остается инжектится в доверительный процесс который ты запустишь, ( потому как друг мой пи создание процесса в его контекст делается запись и на это фаеры обычно не реагируют ) ... например тот же иэксплорер ... а вот что бы фаеры не орали, что мол ишак создан с флагом SW_SPOILER ... тебе и придется его за границы экрана высунуть ... так что хз кого тут приглючило ...

а чтоб скрыватся без всяких инжектов все таки придется писать драйвер ...
 
а чтоб скрыватся без всяких инжектов все таки придется писать драйвер ...
вы все об этом так говорите, как будто это темный лес какой-то :) Ничего сложного в этом нет. Отладчик в руки и вперед))
 
el-
аа. понял. я забыл что ослик так можно запустить)))))
 
вы все об этом так говорите, как будто это темный лес какой-то Ничего сложного в этом нет. Отладчик в руки и вперед))
чесно сказать никогда не писал дров, но тсраха у меня это не ввызывает ... какая разница что я перехваты на нивных апи пишу, что в драйвер пару строк для его инициализации добавлю и опять теже нативные апи :)

el- аа. понял. я забыл что ослик так можно запустить)))))
эх, ты ((:) а еще пишу ботов(спам, ddos, socks и др.) и spyware ... это же классика :)

впринципе можно особо не морочится ... все можно скрыть и без всяких инжектов, во всяком случае в глаза бросатся не будет ... процесс можно поднять из контекста svchost, правдо dll придется писать ( эээ ... ненавижу все эти библиотеки ) ... например на рабочей машине я до сих пор не знаю сколько у меня этих хостов висит ... хренова туча штук семь ...

файл можно спрятать засунув его в диру типа \??\C:\WINDWOS\..\ и все, хер кто будет юзать спец софт что бы посмотреть чего у него в такого рода дирах лежит ...

ну че осталось реестр ... тут варианты тоже впринципе есть ... главное юзать места автозагрузки в которые не лезут смотреть каждые пять минут ... например из ICQ ... или кстати довольно странный метод видел в сорцах майдума ... хер поймешь че за ключ, куча цифр каких то ...

вобщем для ленивых всегда есть время лишний раз подумать, перед тем как лезть в дебри страшного кода :)
 
довольно странный метод видел в сорцах майдума ... хер поймешь че за ключ, куча цифр каких то ...
ничего странного там нету, просто ключ зашифрован алгоритмом rot13, или как, точно не помню, смысл в том что происходит сдвиг на 13 символов по латинскому алфавиту, это служит для усложнения исследования червя, а путь там самый стандартный
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх