вопросы... вопросы... сокеты... ping
От: mityaika  
Дата: 16.06.04 16:03
Оценка: :))) :)
В общем загрузился я на славу сокетами, интересно и все такое
перечитал кучу литературы, закопался в MSDN, но вязну то тут то там, один человек посоветовал взять исходник ping'а и разобраться в нем для начала. лучше от какого-нибудь юниха (уж не знаю почему, пишу я под виндами).
поискал на форуме, нашел одну ссылку, но ссылка мертвая
не закинет ли в меня кто-нить исходник?
плз
r5[at]pisem.net

дальше глупый вопрос:
послушал я снифером как общается клиентская чать софта с серверной, и хочу "закосить" под клиента, вручную аутентифицироваться. ни протоколов ничего не знаю. только айпишник и порт. (если кто заподозрит меня в нечистых намерениях маленькое пояснение — работаю я тестером и параллельно основной таске, хочу пробить сервер _нашей_ софтины, никому ничего плохого не замысливается, а то уже раз подозревали) подумал прицепиться к нему как клиентской частью, переполнить ему буфер где-нибудь как-нибудь, а там вернуть управление уже на себя и опаньки, мы в дамках. криса касперски обчитался до посиненения но никогда такими делами не занимался...
хм... до вопроса я так и не дошел еще...
короче.
первый запрос от клиента выглядит примерно так(в реконструкции снифера):
........P...l...........^…,}†fC¶.O>?? ?p8±«ru?€Ek·?Uv............”??0oo;lk...
точки это \x0
внимание глупый вопрос!
так я пытаюсь задать строку для send'а
char sendbuf[100] = "\x0\x0\x0\x0\x0\x0bla-bla-bla";


и фиг
если бы что-то было до \x0, то только оно бы и ушло.. так как \x0 первый то ничего не идет
явно я что-то не так делаю..
даже printf отказался ее печатать
не бейте сильно, лучше объясните, а то я совсем в затупе...

а еще ужаснее то что строки типа выше при каждой новой сесси снифер разные отхватывает, типа:
........P...l...........^…,}†fC¶.O>?? ?p8±«ru?€Ek·?Uv............”??0oo;lk...

........P...?...........?.AI­V4d›°/­—???.l?*.9Y?S?v.?0°„............eoAm|?E?‡...

........P...?...........cixw??o$?.u.ciNec’®Ouz#+o+.†6oU............’`?e?·Uk±...
налицо шифруется, может что-то зависящее от времени
короче поболтать мне с сервером пока не удается никак, не говря уж о том чтобы победить.
но я все равно победю!
есть наверняка возможность добыть исходники его, но это будет совсем нечестно, я же вроде злобный хацкер, чистота исследования попортится, да и интересу меньше

заранее спасибо
мдя.. ну и хакеры пошли..
От: butcher Россия http://bu7cher.blogspot.com
Дата: 16.06.04 17:26
Оценка:
Здравствуйте, mityaika, Вы писали:

M>не закинет ли в меня кто-нить исходник?

Я конечно не хакер , а всё лишь админ, но пользоваться интернетом умею..
Гугл лучший товарищ для тех кто интересуется и ищет, http://www.google.com

M>дальше глупый вопрос:

M>послушал я снифером как общается клиентская чать софта с серверной, и хочу "закосить" под клиента, вручную аутентифицироваться. ни протоколов ничего не знаю. только айпишник и порт. (если кто заподозрит меня в нечистых намерениях маленькое пояснение — работаю я тестером и параллельно основной таске, хочу пробить сервер _нашей_ софтины, никому ничего плохого не замысливается, а то уже раз подозревали) подумал прицепиться к нему как клиентской частью, переполнить ему буфер где-нибудь как-нибудь, а там вернуть управление уже на себя и опаньки, мы в дамках. криса касперски обчитался до посиненения но никогда такими делами не занимался...
Почитайте ещё Олифера, TCP/IP Крупным планом, и ещё, ещё, ещё..

M>первый запрос от клиента выглядит примерно так(в реконструкции снифера):

M>........P...l...........^…,}†fC¶.O>?? ?p8±«ru?€Ek·?Uv............”??0oo;lk...

Извините, тоже глупый вопрос, вы снифером пользоваться умеете?

M>
M>char sendbuf[100] = "\x0\x0\x0\x0\x0\x0bla-bla-bla";
M>


M>и фиг

M>если бы что-то было до \x0, то только оно бы и ушло.. так как \x0 первый то ничего не идет

А вы чем собственно посылаете, и куда?

M>явно я что-то не так делаю..

M>даже printf отказался ее печатать
Даа.. он такой

M>а еще ужаснее то что строки типа выше при каждой новой сесси снифер разные отхватывает, типа:

M>налицо шифруется, может что-то зависящее от времени
Точно Крис Касперски сказывается...

M>короче поболтать мне с сервером пока не удается никак, не говря уж о том чтобы победить.

M>но я все равно победю!
Правильно! Надежда умирает последней!

M>есть наверняка возможность добыть исходники его, но это будет совсем нечестно, я же вроде злобный хацкер, чистота исследования попортится, да и интересу меньше

Ну исходники тоже бывают интересными
На первый раз можно и исходники почитать

Нет ничего невозможного..
Re: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: BerSerKerIII Россия  
Дата: 16.06.04 20:22
Оценка: :))
Здравствуйте, butcher, Вы писали:

M>>
M>>char sendbuf[100] = "\x0\x0\x0\x0\x0\x0bla-bla-bla";
M>>

M>>и фиг
M>>если бы что-то было до \x0, то только оно бы и ушло.. так как \x0 первый то ничего не идет
B>А вы чем собственно посылаете, и куда?
Побробуй освоить виндовые сокеты (socket)

M>>явно я что-то не так делаю..

M>>даже printf отказался ее печатать
B>Даа.. он такой
Мдяяяя ... ... ...
это не строка, это массив байт , а в данном случае пакет (сырой пакет (raw))...

M>>а еще ужаснее то что строки типа выше при каждой новой сесси снифер разные отхватывает, типа:

M>>налицо шифруется, может что-то зависящее от времени
B>Точно Крис Касперски сказывается...
шифрование и хеширование в инете используется редко...смотри лучше...


Двигай в системное программирование, и станешь хаккракером.
Resist or Die [Master of Magic]
Re[2]: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: Flamer Кипр http://users.livejournal.com/_flamer_/
Дата: 16.06.04 20:57
Оценка: :)
Здравствуйте, BerSerKerIII, Вы писали:

[]

BSK>шифрование и хеширование в инете используется редко...смотри лучше...


Да ну? Вообще-то это дело чести любой мало-мальски серьезной программы — защищать свои данные... У нас, например, схема такая (щас раскрою секрет ): данные зажимаются bzip'ом, шифруются по 3DES, плюс в запросе присутствует верификационный хэш MD5. И это еще так — муть
Re[3]: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: aka50 Россия  
Дата: 17.06.04 06:27
Оценка:
Здравствуйте, Flamer, Вы писали:

F>Здравствуйте, BerSerKerIII, Вы писали:


F>[]


BSK>>шифрование и хеширование в инете используется редко...смотри лучше...


F>Да ну? Вообще-то это дело чести любой мало-мальски серьезной программы — защищать свои данные... У нас, например, схема такая (щас раскрою секрет ): данные зажимаются bzip'ом, шифруются по 3DES, плюс в запросе присутствует верификационный хэш MD5. И это еще так — муть


ааа.... лисапед . А чем SSL плох... делает то же самое... только не убогий и торозной DES а нормальный AES . Да и подлюбой осью имеется (даже на мобилах).
Re[3]: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: aka50 Россия  
Дата: 17.06.04 06:34
Оценка:
Здравствуйте, Flamer, Вы писали:

F>Здравствуйте, BerSerKerIII, Вы писали:


F>[]


BSK>>шифрование и хеширование в инете используется редко...смотри лучше...


F>Да ну? Вообще-то это дело чести любой мало-мальски серьезной программы — защищать свои данные... У нас, например, схема такая (щас раскрою секрет ): данные зажимаются bzip'ом, шифруются по 3DES, плюс в запросе присутствует верификационный хэш MD5. И это еще так — муть



(шепотом) Хотя я и сам такое писал... и даже проект на этом жил... но когда возникла необходимость портирования, понял, нет ниче лучче стандартов
Re[2]: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: Vamp Россия  
Дата: 17.06.04 07:27
Оценка:
Вы хотели нас повеселить?
Да здравствует мыло душистое и веревка пушистая.
Re: думаю обидиться что ли... на хакера :)
От: mityaika  
Дата: 17.06.04 09:17
Оценка: :)
Здравствуйте, butcher, Вы писали:

я ж грил, я не волшебник, я тока учусь, даже учусь учится
фигли стебаться?
а ладно
будем ответы читать

B>Я конечно не хакер

я кстати тоже
B>а всё лишь админ,
был и я когда-то
B>но пользоваться интернетом умею..
да и я не из деревни
B>Гугл лучший товарищ для тех кто интересуется и ищет, http://www.google.com
я потому и спросил, что час по нету рылся, нашел всякого разного
а тут вопрос задать тоже не помешает
и потом я ж спросил исходники от юниха

B>Почитайте ещё Олифера, TCP/IP Крупным планом, и ещё, ещё, ещё..

спасибо
почитаю


B>Извините, тоже глупый вопрос, вы снифером пользоваться умеете?

теперь не знаю...
запустил commview
указал айпишник и порт
включаю прослушивание
коннекчусь
в снифере делаю "реконструкция tcp сессии"
смотрю чего куда и как ходило
что неправильно?



B>А вы чем собственно посылаете, и куда?

ну дык пример из msdn'a немного переделанный

m_socket = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP );
...
char sendbuf[100] = "bla-bla-bla";
...
bytesSent = send( m_socket, sendbuf, strlen(sendbuf), 0 );

ну и так далее...

M>>даже printf отказался ее печатать

B>Даа.. он такой
спасибо
оч. конструктивно
сказали бы чего не так
он такой...
а почему он такой? или я такой? почему после символа \x0 он обрывает строку?

B>Точно Крис Касперски сказывается...


неделя перечитывания всего подряд
в голове мега-каша

M>>но я все равно победю!

B>Правильно! Надежда умирает последней!
нифига, либо я... либоя какую-нить другую заморочку себе придумаю

B>Ну исходники тоже бывают интересными

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

вот
Re[2]: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: mityaika  
Дата: 17.06.04 09:20
Оценка:
Здравствуйте, BerSerKerIII, Вы писали:

BSK>Здравствуйте, butcher, Вы писали:


B>>А вы чем собственно посылаете, и куда?

BSK>Побробуй освоить виндовые сокеты (socket)
их и пробую как раз


M>>>явно я что-то не так делаю..

M>>>даже printf отказался ее печатать
B>>Даа.. он такой
BSK>Мдяяяя ... ... ...
BSK>это не строка, это массив байт , а в данном случае пакет (сырой пакет (raw))...
а можно поподробнее?
а то я пока не шибко шустро во всем этом разбираюсь
или ткните пальцем куда читать думать
плз

M>>>а еще ужаснее то что строки типа выше при каждой новой сесси снифер разные отхватывает, типа:

M>>>налицо шифруется, может что-то зависящее от времени
B>>Точно Крис Касперски сказывается...
BSK>шифрование и хеширование в инете используется редко...смотри лучше...
а почему тогда одна и та же операция по-разному выглядит?

BSK>Двигай в системное программирование, и станешь хаккракером.

уф...
да не надо мне этого
нет у меня таких комплексов "всех заломать"
просто захотелось сделать такую вещь
два плюса — и софтина наша крпче станет и я много нового узнаю

вот
Re[3]: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: mityaika  
Дата: 17.06.04 09:21
Оценка:
Здравствуйте, Flamer, Вы писали:

F>Здравствуйте, BerSerKerIII, Вы писали:


F>[]


BSK>>шифрование и хеширование в инете используется редко...смотри лучше...


F>Да ну? Вообще-то это дело чести любой мало-мальски серьезной программы — защищать свои данные... У нас, например, схема такая (щас раскрою секрет ): данные зажимаются bzip'ом, шифруются по 3DES, плюс в запросе присутствует верификационный хэш MD5. И это еще так — муть

мдя...
а как нибудь внешне можно это опознать...
хотя толку
если в хэш все равно уже ничего не разберешь потом обратно...
Re[3]: мдя.. ну и хакеры пошли..(в сисадминах осели)
От: mityaika  
Дата: 17.06.04 09:22
Оценка:
Здравствуйте, Vamp, Вы писали:

V>Вы хотели нас повеселить?


если вопорс мне, то ничуть!
Re[2]: думаю обидиться что ли... на хакера :)
От: butcher Россия http://bu7cher.blogspot.com
Дата: 17.06.04 09:41
Оценка:
Здравствуйте, mityaika, Вы писали:

B>>Гугл лучший товарищ для тех кто интересуется и ищет, http://www.google.com
M>я потому и спросил, что час по нету рылся, нашел всякого разного
M>а тут вопрос задать тоже не помешает
M>и потом я ж спросил исходники от юниха
http://www.google.com

Только зачем они вам? Если учесть:
  • А я ни в зуб ногой
  • На сях писал тыщу лет назад, еще в школе, что-то помню, что-то нет
  • Скорее всего все с нуля придется.
  • Уж не знаю почему, пишу я под виндами
    то вам наверняка даже откомпилить их не удастся..

    M>
    M>m_socket = socket( AF_INET, SOCK_STREAM, IPPROTO_TCP );
    M>...
    M>char sendbuf[100] = "bla-bla-bla";
    M>...
    M>bytesSent = send( m_socket, sendbuf, strlen(sendbuf), 0 );
    M>

    В C строки оканчиваются символом '\0', и когда вы пытаетесь определить длинну строки, которая начинается с '\0', то функция strlen вам возвращает 0, соответсвенно, никакой буфер у вас и не посылается..

    M>спасибо

    M>оч. конструктивно
    M>сказали бы чего не так
    M>он такой...
    M>а почему он такой? или я такой? почему после символа \x0 он обрывает строку?
    Потому что это конец строки

    B>>Ну исходники тоже бывают интересными

    B>>На первый раз можно и исходники почитать
    M>понятно что интересные...
    M>но в данном случае читота эксперимента попортится, я лучше другие исхождники посмотрю, как другие люди это делают...
    поищите, посмотрите www.google.com

  • Нет ничего невозможного..
    Re[3]: думаю обидиться что ли... на хакера :)
    От: mityaika  
    Дата: 17.06.04 10:03
    Оценка:
    Здравствуйте, butcher, Вы писали:

    B>Здравствуйте, mityaika, Вы писали:


    M>>и потом я ж спросил исходники от юниха

    B>http://www.google.com

    B>Только зачем они вам? Если учесть:

    посмотреть
    понять как и что люди делают
    разобраться
    B>
  • А я ни в зуб ногой
    B>
  • На сях писал тыщу лет назад, еще в школе, что-то помню, что-то нет
    B>
  • Скорее всего все с нуля придется.
    B>
  • Уж не знаю почему, пишу я под виндами
    B>то вам наверняка даже откомпилить их не удастся..
    тоже интересно, переделать чтоб под винды работало — как раз и разберусь что там и зачем и куда

    B>В C строки оканчиваются символом '\0', и когда вы пытаетесь определить длинну строки, которая начинается с '\0', то функция strlen вам возвращает 0, соответсвенно, никакой буфер у вас и не посылается..

    я вот также и думал, тока непонятно а как же мне тогда это отослать?
    или если это слать вовсе не надо, то почему сниффер пишет их в лог сессии?

    B>Потому что это конец строки

    да понял я уже
    см. выше

    B>поищите, посмотрите www.google.com

    ищу
    смотрю
    читаю
    ни хрена непонятно
    но это временное явление
  • Re[4]: думаю обидиться что ли... на хакера :)
    От: butcher Россия http://bu7cher.blogspot.com
    Дата: 17.06.04 10:05
    Оценка:
    Здравствуйте, mityaika, Вы писали:

    B>>В C строки оканчиваются символом '\0', и когда вы пытаетесь определить длинну строки, которая начинается с '\0', то функция strlen вам возвращает 0, соответсвенно, никакой буфер у вас и не посылается..

    M>я вот также и думал, тока непонятно а как же мне тогда это отослать?

     nRet = send(m_socket, buf, buf_len, 0);

    где buf_len — размер буфера..

    Нет ничего невозможного..
    Re[5]: думаю обидиться что ли... на хакера :)
    От: mityaika  
    Дата: 17.06.04 10:12
    Оценка:
    Здравствуйте, butcher, Вы писали:

    B>Здравствуйте, mityaika, Вы писали:



    B>
    B> nRet = send(m_socket, buf, buf_len, 0);
    B>

    B>где buf_len — размер буфера..
    ух ты...
    сработало
    если вручную задать длину
    ладно, теперь сам поищу альтернативу strlen, чтоб можной было автомато определять длину

    спасибо
    все как всегда просто, если знать
    Re[6]: думаю обидиться что ли... на хакера :)
    От: Kalinsky V. http://www.promzona.design.ru
    Дата: 17.06.04 10:23
    Оценка:
    Здравствуйте, mityaika, Вы писали:

    M>если вручную задать длину

    M>ладно, теперь сам поищу альтернативу strlen, чтоб можной было автомато определять длину

    По каким признакам эта альтернатива будет её (длину) определять ?
    Цель деятельности всех программистов – чтобы их деятельность стала не нужна.
    Re[7]: думаю обидиться что ли... на хакера :)
    От: mityaika  
    Дата: 17.06.04 10:29
    Оценка:
    Здравствуйте, Kalinsky V., Вы писали:

    KV>Здравствуйте, mityaika, Вы писали:


    M>>если вручную задать длину

    M>>ладно, теперь сам поищу альтернативу strlen, чтоб можной было автомато определять длину

    KV>По каким признакам эта альтернатива будет её (длину) определять ?


    хотел бы я знать...
    щас одну статью дочитаю
    сяду думать дальше

    чем дальше погружаюсь, тем сильнее понимаю как многого я не знаю
    Re[3]: думаю обидиться что ли... на хакера :)
    От: wert  
    Дата: 17.06.04 10:55
    Оценка:
    Здравствуйте, butcher, Вы писали:

    B>Здравствуйте, mityaika, Вы писали:


    B>В C строки оканчиваются символом '\0', и когда вы пытаетесь определить длинну строки, которая начинается с '\0', то функция strlen вам возвращает 0, соответсвенно, никакой буфер у вас и не посылается..


    Во во я так как то с таким подходом долго с strcat и strspy мучался пока не надошло
    и все строчные функции на этом строются похоже
    так что memset и еже сними %))
    Re[4]: думаю обидиться что ли... на хакера :)
    От: mityaika  
    Дата: 17.06.04 11:38
    Оценка:
    Здравствуйте, wert, Вы писали:

    W>Здравствуйте, butcher, Вы писали:


    B>>Здравствуйте, mityaika, Вы писали:


    B>>В C строки оканчиваются символом '\0', и когда вы пытаетесь определить длинну строки, которая начинается с '\0', то функция strlen вам возвращает 0, соответсвенно, никакой буфер у вас и не посылается..


    W>Во во я так как то с таким подходом долго с strcat и strspy мучался пока не надошло

    W>и все строчные функции на этом строются похоже
    W>так что memset и еже сними %))

    спасибо
    лишний раз на месте не протопчусь
    Re: вопросы... вопросы... сокеты... ping
    От: achmed Удмуртия https://www.linkedin.com/in/nail-achmedzhanov-9907188/
    Дата: 17.06.04 14:42
    Оценка:
    Здравствуйте, mityaika, Вы писали:

    M>В общем загрузился я на славу сокетами, интересно и все такое

    M>перечитал кучу литературы, закопался в MSDN, но вязну то тут то там, один человек посоветовал взять исходник ping'а и разобраться в нем для начала. лучше от какого-нибудь юниха (уж не знаю почему, пишу я под виндами).
    M>поискал на форуме, нашел одну ссылку, но ссылка мертвая
    M>не закинет ли в меня кто-нить исходник?
    M>плз
    M>r5[at]pisem.net

    M>дальше глупый вопрос:

    M>послушал я снифером как общается клиентская чать софта с серверной, и хочу "закосить" под клиента, вручную аутентифицироваться. ни протоколов ничего не знаю. только айпишник и порт. (если кто заподозрит меня в нечистых намерениях маленькое пояснение — работаю я тестером и параллельно основной таске, хочу пробить сервер _нашей_ софтины, никому ничего плохого не замысливается, а то уже раз подозревали) подумал прицепиться к нему как клиентской частью, переполнить ему буфер где-нибудь как-нибудь, а там вернуть управление уже на себя и опаньки, мы в дамках. криса касперски обчитался до посиненения но никогда такими делами не занимался...
    M>хм... до вопроса я так и не дошел еще...
    M>короче.
    M>первый запрос от клиента выглядит примерно так(в реконструкции снифера):
    M>........P...l...........^…,}†fC¶.O>?? ?p8±«ru?€Ek·?Uv............”??0oo;lk...
    M>точки это \x0
    M>внимание глупый вопрос!
    M>так я пытаюсь задать строку для send'а
    M>
    M>char sendbuf[100] = "\x0\x0\x0\x0\x0\x0bla-bla-bla";
    M>


    M>и фиг

    M>если бы что-то было до \x0, то только оно бы и ушло.. так как \x0 первый то ничего не идет
    M>явно я что-то не так делаю..
    M>даже printf отказался ее печатать
    M>не бейте сильно, лучше объясните, а то я совсем в затупе...

    M>а еще ужаснее то что строки типа выше при каждой новой сесси снифер разные отхватывает, типа:

    M>........P...l...........^…,}†fC¶.O>?? ?p8±«ru?€Ek·?Uv............”??0oo;lk...

    M>........P...?...........?.AIV4d›°/—???.l?*.9Y?S?v.?0°„............eoAm|?E?‡...


    M>........P...?...........cixw??o$?.u.ciNec’®Ouz#+o+.†6oU............’`?e?·Uk±...

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

    M>заранее спасибо


    ftp://debian.udsu.ru/debian/main/pool/n/netkits-base/

    там найдешь исходный код ping.
    Подождите ...
    Wait...
    Пока на собственное сообщение не было ответов, его можно удалить.