[ C / C++ ] — начинающим: задаем вопросы (архивная - 2015)

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. z01b

    z01b Муджахид

    Joined:
    5 Jan 2007
    Messages:
    494
    Likes Received:
    382
    Reputations:
    22
    Код в студию, никто здесь не телепат =\
     
  2. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    Sorry :)
    Code:
    char buf[100] = " ";
    ...
    pcap_remoteact_close("192.168.0.1", buf);
    
     
  3. z01b

    z01b Муджахид

    Joined:
    5 Jan 2007
    Messages:
    494
    Likes Received:
    382
    Reputations:
    22
    А соединение, открывается без ошибок?
     
  4. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    т.е.? Я сначала отлавливаю сниффером ИП, потом вызываю pcap_remoteact_close().
    Вот весь сорец(это первый вариант, некрасивый):
    Code:
    #include <conio.h>
    #include <stdio.h>
    #include <winsock2.h>
    
    #include "head.h"
    #include "inc/pcap.h"
    #include "inc/remote-ext.h"
    
    #pragma comment(lib, "ws2_32.lib")
    #pragma comment(lib, "wpcap.lib")
    
    #define MAX_PACKET_SIZE    0x10000
    #define SIO_RCVALL         0x98000001
    // Буфер для приёма данных
    char Buffer[MAX_PACKET_SIZE]; // 64 Kb
    
    //Структура заголовка IP-пакета
    
    typedef struct IPHeader {
      UCHAR   iph_verlen;   // версия и длина заголовка
      UCHAR   iph_tos;      // тип сервиса
      USHORT  iph_length;   // длина всего пакета
      USHORT  iph_id;       // Идентификация
      USHORT  iph_offset;   // флаги и смещения
      UCHAR   iph_ttl;      // время жизни пакета
      UCHAR   iph_protocol; // протокол
      USHORT  iph_xsum;     // контрольная сумма
      ULONG   iph_src;      // IP-адрес отправителя
      ULONG   iph_dest;     // IP-адрес назначения
    } IPHeader;
    
    SOCKET      s;         // Cлущающий сокет.
    struct sockaddr_in dst;        // Адрес хоста
    
    char src[10];
    char dest[10];
    char ds[15];
    unsigned short lowbyte;
    unsigned short hibyte;
    
    void main()
    {
      WSADATA     wsadata; 
    
      HOSTENT*    phe; 
      IN_ADDR sa1;        //
      DWORD opt = 1;
    
      char buf[100] = " ";
    
      char        name[128]; 
      unsigned long        flag = 1;
    
      WSAStartup(MAKEWORD(2,2), &wsadata);
      s = socket( AF_INET, SOCK_RAW, 0);
     
      gethostname(name, sizeof(name));
      phe = gethostbyname( name );
      
      ZeroMemory(&dst, sizeof(dst));
      
      dst.sin_family = AF_INET;
      dst.sin_addr.s_addr = ((struct in_addr *)phe->h_addr_list[0])->s_addr;
      
      bind(s, (SOCKADDR *)&dst, sizeof(SOCKADDR));
      
      ioctlsocket(s, SIO_RCVALL, &flag);
    
      while( !_kbhit() )
      {
        int count;
        count = recv( s, Buffer, sizeof(Buffer), 0 );
    
        if( count >= sizeof(IPHeader) )
        {
          IPHeader* hdr = (IPHeader *)Buffer;
    	sa1.s_addr = hdr->iph_src;
    	sa1.s_addr = hdr->iph_dest;
    	
    	printf(inet_ntoa(sa1));
    
    	if(strcmp(inet_ntoa(sa1), "192.168.0.1") == 0)
    	{
    		pcap_remoteact_close("192.168.0.1", buf);
    		printf("\n%s\n", buf);
    	}
    
    	printf("\n");
    
        }
      }
    
      closesocket(s);
      WSACleanup();
    }
    
     
  5. P(i)n*Fl0p1

    P(i)n*Fl0p1 Elder - Старейшина

    Joined:
    19 Dec 2006
    Messages:
    157
    Likes Received:
    35
    Reputations:
    9
    Подскажие плиз адреса кнопок Подключения (соеденить) и отключения интернета)
    хочу прогу написать которая сама будет через заданное время отключатьи подключать к инету
     
  6. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    какие адреса? между 0x00000000 и 0x80000000...
     
  7. P(i)n*Fl0p1

    P(i)n*Fl0p1 Elder - Старейшина

    Joined:
    19 Dec 2006
    Messages:
    157
    Likes Received:
    35
    Reputations:
    9
    угу :rolleyes:
     
  8. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    Как разорвать tcp-соединение? :)
    З.Ы. перелопатил почти весь гугол, ничего конкретного не нашел :(
    З.З.Ы. помогите, оччень надо :rolleyes:
     
  9. krypt3r

    krypt3r Elder - Старейшина

    Joined:
    27 Apr 2007
    Messages:
    1,507
    Likes Received:
    389
    Reputations:
    101
    отошли Tcp-пакет с флагом Rst
     
  10. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    вот, что получается:
    Code:
    	struct tcp_header *tcp_hd;
    	struct IPHeader *ip_hd;
    
    	unsigned short int tcp_win; 
    	unsigned long int tcp_ack;
    
    	int packet_len = ETH_HDRSIZE + IP_HDRSIZE + TCP_HDRSIZE;
    	
    	unsigned char *packet = (unsigned char *)malloc(packet_len);
    
    	tcp_hd = (struct tcp_header *)(packet + ETH_HDRSIZE + IP_HDRSIZE);
    	ip_hd = (struct ip_hd *)(packet + ETH_HDRSIZE + IP_HDRSIZE);
    
    
    	ip_hd->iph_verlen = 4;
    	ip_hd->iph_tos	= 0;
    	ip_hd->iph_id	= htons(55555);
    	ip_hd->iph_offset = htons(0x4000);
    	ip_hd->iph_ttl	=	128;
    	ip_hd->iph_protocol		=	6;
    	ip_hd->iph_xsum	=	0;
    	ip_hd->iph_dest	=	inet_addr("192.168.0.1");
    
    	  /* Set tcp header */
    
    	tcp_hd->tcp_src = htons(80);
    	tcp_hd->tcp_dst = htons(80);
    	tcp_hd->tcp_seq = htonl(tcp_ack + tcp_win);
    	tcp_hd->tcp_ack = 0;
    	tcp_hd->tcp_res = 0;
    	tcp_hd->tcp_off = 5;  
    	tcp_hd->tcp_flags = TCP_RST;
    	tcp_hd->tcp_win = 0;
    	tcp_hd->tcp_sum = 0;
    	tcp_hd->tcp_urp = 0;
    
    потом делаю sendto на нужный ИП
     
    1 person likes this.
  11. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    Кто подскажет где ошибка, тому дам плюсег :)
     
  12. brasco2k

    brasco2k Elder - Старейшина

    Joined:
    23 Nov 2007
    Messages:
    258
    Likes Received:
    91
    Reputations:
    0
    Как в C# определить является ли чисо четным?
     
  13. z01b

    z01b Муджахид

    Joined:
    5 Jan 2007
    Messages:
    494
    Likes Received:
    382
    Reputations:
    22
    if (number%2==0){ номер четный}
     
    #1073 z01b, 29 Apr 2008
    Last edited: 29 Apr 2008
    1 person likes this.
  14. brasco2k

    brasco2k Elder - Старейшина

    Joined:
    23 Nov 2007
    Messages:
    258
    Likes Received:
    91
    Reputations:
    0
    Все спасибо не надо разобрался сам :

    if (i % 2 == 0)
     
    1 person likes this.
  15. desTiny

    desTiny Elder - Старейшина

    Joined:
    4 Feb 2007
    Messages:
    1,006
    Likes Received:
    444
    Reputations:
    94
    Не помню как, но как-то так вроде быстрее...
    if (i >> 1 << 1 = i)

    а на асме так точно:
    //число в еаксе
    shr eax
    jc _чётное...

    De-visible: а на DELPHI >>If (i mod 2)=0 then<< + ;)
     
    #1075 desTiny, 29 Apr 2008
    Last edited by a moderator: 29 Apr 2008
  16. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    Товарищи, как мне закрыть/сбросить tcp-соединение??? У меня ни с роу-сокетами, ни с winpcap'ом не получается =((
    З.Ы. Я наверно получу сейчас либо предупреждение, либо сразу бан... :)
     
  17. z01b

    z01b Муджахид

    Joined:
    5 Jan 2007
    Messages:
    494
    Likes Received:
    382
    Reputations:
    22
    http://www.nestor.minsk.by/sr/2004/01/40114.html
     
  18. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    Так, задам иначе вопрос:
    Юзер соединяется к серверу. Я знаю ИП этого серва и хочу сбросить/завершить это tcp-соединение. как?
     
  19. Delimiter

    Delimiter Banned

    Joined:
    8 Apr 2005
    Messages:
    317
    Likes Received:
    173
    Reputations:
    12
    criz ну я тебя же посылал на xakep.ru ..... почему я должен искать за тебя?
    держи!
    http://www.xakep.ru/post/22248/exploit.txt

    и еще
    http://www.xakep.ru/post/16680/default.asp

    De-visible:Два поста подряд не есть хорошо!
     
    #1079 Delimiter, 30 Apr 2008
    Last edited by a moderator: 30 Apr 2008
    1 person likes this.
  20. criz

    criz Elder - Старейшина

    Joined:
    4 Nov 2007
    Messages:
    293
    Likes Received:
    40
    Reputations:
    6
    спасибо. Я был на хакере, но этого не нашел :)
     
Thread Status:
Not open for further replies.