Работа с сырыми пакетами

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by fire64, 15 Mar 2011.

  1. fire64

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

    Joined:
    1 Apr 2008
    Messages:
    251
    Likes Received:
    22
    Reputations:
    5
    Здравствуйте, я сейчас пишу программу анализатор сырых пакетов.

    Не мог бы кто-нибудь поделиться кодом структур заголовков пакетов.

    На данный момент я сделал анализатор IP пакетов.
    теперь меня интересуют заголовки TCP и UDP пакетов, а так же общую иерархию заголовков пакетов.

    PHP:
    struct IP
    {    unsigned char    ihl:4;        // header length
        
    unsigned char    version:4;    // IP version 4 or 6
        
    unsigned char    tos;        // type of service (see stevens fig 7.12)
        
    unsigned short    tot_len;    // total lenght including Payload
        
    unsigned short    id;            // identification, used for reassembly
        
    unsigned short    frag_off;    // whether to fragment and the offset
        
    unsigned char    ttl;        // time to live decremented at routers
        
    unsigned char    protocol;    // protocol 6=tcp 17=udp
        
    unsigned short    check;        // 16 bit header checksum
        
    unsigned long    saddr;        // IvP4 source address
        
    unsigned long    daddr;        // IvP4 dest address
    };
     
  2. tim-oleksii

    tim-oleksii Member

    Joined:
    14 Mar 2011
    Messages:
    199
    Likes Received:
    10
    Reputations:
    0
    http://www.rsdn.ru/article/unix/sockets.xml

    Там должны быть хидеры, которые тебе нужны.
     
  3. slesh

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

    Joined:
    5 Mar 2007
    Messages:
    2,702
    Likes Received:
    1,224
    Reputations:
    455
    бери пингвина за хвост и тащи хидеры из него. В частности всякие там netinet/tcp.h
     
  4. fire64

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

    Joined:
    1 Apr 2008
    Messages:
    251
    Likes Received:
    22
    Reputations:
    5
    Всем спасибо, нашел нужные заголовки и сделал дампер пакетов.
    Теперь думаю, для чего их можно использовать.
     
  5. Gar|k

    Gar|k Moderator

    Joined:
    20 Mar 2009
    Messages:
    1,166
    Likes Received:
    266
    Reputations:
    82
    сделай активный снифер для кук контакта mail.ru, gmail.com например.
    переписку секи im... пароли снифай на pop, smpt, ftp... http запросы с полями username, login, password, pass, user...

    много че можно придумать
     
    _________________________