Я думаю, если он честно сознаётся что парсит весь HTTP с нуля, то его интересует и производительность и качество реализации. Тогда фаззер в дополнение к httperf.
Ну вообще качество реализации протокола фаззерами тестируют.
На живую, на сети. И не обязательно http(s). Так можно любой протокол прочесать на вшивость. В принципе, для поиска места приложения эксплоита, можно совместить фаззер и посмотреть под отладчиком где софтина рухнет. Впрочем, это всё легко гуглится.
Я бы со своей колокольни, если честно, то до греха бы не доводил и прогнал бы свой код через тот же splint для начала. Это secure programming lint. Поделие не самое новое, но как бесплатный статический анализатор кода показывает достаточно в сишном коде. Как с плюсами — не знаю, не пробовал. А вот с С постоянно.
В коде особое внимание обратить следует на работу с сетевыми буферами и стеком. Т.е., там, где софт «соприкасается» с сетью. Если есть косяк глубже, то это плохо, но менее смертельно, т.к. в начале до глубин надо ещё и дорубиться. А remote exploit будут в начале к сетевой части применять, а не к работе с диском, это уже потом.
Правда, не понял, как парсер может быть stateless. И как парсер на C может быть тормозным тоже (по сути там простой конечный автомат, который особо не оптимизируешь и не пессимизируешь)...
Правда, не понял, как парсер может быть stateless. И как парсер на C может быть тормозным тоже (по сути там простой конечный автомат, который особо не оптимизируешь и не пессимизируешь)...
SIMD, всякие zero copy итд. Это все надо под профайлером смотреть. Я у нас находил код, замена копирования на enum давала довольно хороший буст. Вырожденный пример: копирование метода POST/GET вместо enum при парсинге.
Да когда вы перестанете уже путать хакеров и крякеров? Из за вас линуксы до сих пор за 1% перешагнуть не могут. Потому, что только начинает что-то создаваться, так сразу же начинается: «Ой, а что это у вас там хакеры упоминаются? Давайте срочно переименовывайте!». А хакеры ничего не переименовывают, а просто удаляют. Так всё и удаляется.
Это бы означало признание того, что какие-то журналисты (а теперь к ним ещё присоединились всякие блоггеры и прочие) могут и должны влиять на жизни людей. Мало ли что они могут сообщать другим людям. Хоть, что «2 * 2 = 5», а материков на планете восемь. И что, после этого нужно будет переделывать математику и географию? Это абсурд.
Если журналист ошибся¸ то нужно признавать, что журналист ошибся. А вся эта путаница началась именно с ошибки журналиста, который открыл сообщество хакеров, и неправильно сообщил другим людям кто они такие.
Заниматься делением на hack, crack и прочее такое - это не про Россию. Не такая богатая страна, чтобы заниматься такими зажравшимися категоризациями и замечать существование групп хакеров, которые «добрые». В России 99% взломов будет сопровождаться кражой гусей, хотя-бы для прикола. Таковы национальные особенности - пословицу про корову соседа все знают - ну вот, если уж что-то взломал, то зачем два раза вставать: раз проник в систему «с целью изучения и добрыми намерениями», так укради сразу всех гусей и поставь сотни ботнетов.
В России 99% взломов будет сопровождаться кражой гусей, хотя-бы для прикола.
Это не так. Причём, далеко не так. То, что действительно имело бы смысл ломать находится в изолированных сегментах и туда ни роута не ведёт. Даже не пингануть.
А то, что можно поломать, там максимально что есть ценного, это база от 1С. Кому и как я не знаю, но это «развлечение» надоедает очень быстро. Приедается. То ли дело... Хе-хе... =)
так укради сразу всех гусей и поставь сотни ботнетов.
Не. А вот тут одно из двух. Либо-либо. Обычно, если уж ботнеты, то как минимум не нужно напрягать одминоф кражей гусей.
Развлечься можно поконфигуриповав сетевое оборудование (например) или ещё чем столь же невинным. Но гусей-то зачем? =)))
Хакеры 70-х называли себя хакерами в нескольких смыслах, где нет ни одной буквы про взлом:
хакер - это тот, кто любит программировать, и получает от этого удовольствие;
хакер - это тот, кому нравится игривое остроумие;
Что касается первого значения, то слова «программист» недостаточно потому, что «программист» - это прежде всего работа, которую человек не обязан любить. В свою очередь программирование может любить человек, который не работает программистом, а работает, например, хирургом или сантехником. Тогда он по работе или хирург или сантехник, а в программировании - хакер. При этом, да, человек также может работать программистом и быть хакером. Но это разные термины.
Что касается второго значения, то тут вообще широкий спектр возможных вариантов. В этом значении даже Леди Гага, по словам Столлмана, является хакером. Не говоря уже о том, что, по его же словам, хакерством является, например, есть китайскую еду итальянскими хлебными палочками.