Немного неортодоксальные вопрос здесь:HTTP запросы и модули Apache: Творческие векторы атаки
В настоящее время я пытаюсь разбить Apache с несколькими пользовательскими модулями.
Что порождает тестирование, так это то, что Apache внутренне пересылает запросы, которые он считает слишком большими (например, мусор 1 МБ), к соответствующим образом подключенным к ним модулям, заставляя их работать с данными мусора - и отсутствие обработки в пользовательских модулях вызвало Apache в полном объеме, чтобы подняться в огне. Ой, ой, ой.
Эта конкретная проблема, к счастью, исправлена, но возникает вопрос, могут ли быть другие подобные уязвимости.
Сейчас у меня есть инструмент, который позволяет мне отправлять необработанный HTTP-запрос на сервер (точнее, необработанные данные через установленное TCP-соединение, которое может быть интерпретировано как HTTP-запрос, если оно следует за формой одного , например «GET ...»), и я пытаюсь придумать другие идеи. (Атаки TCP уровня, как Slowloris и Nkiller2 являются не моего внимания на данный момент.)
Кто-нибудь есть несколько хороших идей, как запутать пользовательские модули сервера к точке сервера самосожжения?
- Разбитый UTF-8? (Хотя я сомневаюсь, что Apache заботится о кодировании - я предполагаю, что он просто жонглирует сырыми байтами.)
- Материал, который только слишком длинный, за которым следует 0-байтовый, за которым следует барахло?
- и так далее
Я не считаю себя очень хороший тестер (я делаю это по необходимости и недостаток рабочей силы, я, к сожалению, не имеют даже более, чем основное схватывание Apache внутренностей, что помог бы мне), поэтому я надеюсь на проницательный ответ или два или три. Может быть, некоторые из вас сделали некоторые аналогичные тесты для ваших собственных проектов?
(Если StackOverflow не является правильным местом для этого вопроса, я извиняюсь. Не уверен, что где-то поставить его.)
Спасибо за ваш ответ! Это звучит * отлично * полезно. Что касается ваших последних двух моментов: мы изучаем возможность получить кого-то, кто может просмотреть код, но, увы, это месяц, до сих пор и без везения. Вы думаете, что найти C-код Auditer будет проще, чем это. :) И пентестинг будет сделан, только выемка позже; разработка/тестирование - это немного водопад-y в этом, поэтому разработка пытается подтолкнуть себя к тестированию самостоятельно, прежде чем что-то пройдет, чтобы проверить. – pinkgothic
re waterfall/pentest, вероятно, вы, вероятно, сможете настроить сервер dev, даже для запуска ограниченного начального пентэста/fuzzing. Возможно, это будет немного дублирование усилий, но я обнаружил, что часто стоит делать это на раннем этапе, насколько это возможно, - если нет политики вокруг владения и т. Д. В любом случае, если вы планируете просмотр кода в любом случае, его штраф, чтобы оттолкнуть пентеста до тех пор, пока это все равно. – AviD
Понял, что я принимаю ваш ответ, потому что это больше * ответ *, чем The Rook's (хотелось бы, чтобы был способ расщепления щедрости). :) (PS Я свяжусь с вами через linkedin (по крайней мере, чтобы разблокировать комментарии stackoverflow), но я не использую этот сайт и, видимо, мне нужно заплатить за это, что кажется чрезмерным для сайта I, ну, Не используйте.) – pinkgothic