|
|
ru.nethack- RU.NETHACK ------------------------------------------------------------------- From : Dmitry Radishev 2:5015/42 02 Aug 2004 22:56:06 To : Alexander Shevchenko Subject : Fido -------------------------------------------------------------------------------- Monday August 02 2004 09:37, Alexander Shevchenko wrote to Dmitry Radishev: AS>>> Hу ты сравнил. Hемного разные принципы работы и вообще... DR>> Да, ты прав. Пожалуй действительно - в силу немного разных DR>> принципов работы (а также "и вообще") - "дырок" в современных DR>> фидошных мэйлерах должно быть на порядок больше, чем в DR>> современных интернет-серверах :-) AS> Это почему еще? Потому, что фидошным мейлерам не устраивали _реальную_ проверку на неломаемость. Сколько человек и сколько времени ищут exploitable дыры в IIS? А сколько - в t-mail? DR>> Сервис принимает коннекшн и читает/пишет в/из сокета, мэйлер - DR>> отвечает на звонок и читает/пишет в/из порта... при этом DR>> обработка ошибок, например, в случае сервиса - лежит на коде ОС DR>> (вылизанном до нитки), мэйлер же занимается этим вручную, AS> Протоколы давольно старая штука и "вылизаны". AS> И принципы, опять же, не те. Какой формат протокола? Два байта туда, AS> три байта означают следующее, потом килобайт даннхы, потом CRC два AS> байта... (образно)... и чего ты тут переполнишь? А как зачастую AS> ломаются сервисы в инете? В строку адреса запроса (на сервере) AS> помещается то что пришло с клиента. Размер не проверяется, но место в AS> буфере выделяется 255 символов. А ушлые хакеры строку адреса бацают в AS> 270 символов и кусок вылазиет. Вот ты сам себе и ответил. Поле "телефон" в EMSI-ответе, к примеру, явно ограничено по длине полутора десятками символов. А хакер "забабахает" туда 200 символов. Ты уверен, что мэйлер это проверяет? Таких мест - _навалом_ и в мейлере и в сервере. Просто в сервере это выискивали тысячи хакеров на протяжении десятков лет, а в мэйлере - один автор на протяжении нескольких месяцев отладкит "чтоб не часто падало". AS> Теперь возьмем тоссер. Инфа приходит в AS> виде pkt. Боольше точек соприкосновения нет. А в пиьсме все очень AS> четко - 70 символов сабж или заверщающий ноль, если меньше. Опять AS> же... переполнить что-нить сложновато - если сабж будет больше, то он AS> в клуджи уйдет. А если тело будет больше сегмента - куда оно уйдет? А почему у меня раз в пару месяцев виснет карбонилка (и только она) - что в ней при этом происходит, и нельзя ли это же припахать для исполнения arbitrary code? AS> А AS> в инетовских сервисах как? http заголовок пока два раза перевода AS> строки не будет. И пока двух \n не будет - все кладется в AS> буфер, имеющий ограничение по размеру. Во-во. _В точности_ те же проблемы. Просто в инете их вынуждены были решать, а в фидо - пока нет. DR>> а мэйлер - должен на ходу определить, EMSI это, FTS-0001, или DR>> кто-то терминалкой на ББС ломится... AS> А это так сложно???? Это лишний кусок кода, работающий со входным потоком и строковыми данными неизвестной заранее длины. А значит - это потенциальное место для ошибок типа переполнения буфера. All the best //DiBR [TEAM ВСЕ МАСТДАЙ] [шестая базовая] [http://dibr.nnov.ru] --- [LPT] LaMerZ PrOfeSsIoNaL TeaM /member/ * Origin: Never do something for the first time! (2:5015/42) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.nethack/1815410ed67a.html, оценка из 5, голосов 10
|