Является ли это уязвимым для ASP Padding оракула

  1. Когда я открываю chat.mysite.com/WebResource.axd?d=jzjghMVYzFihd9Uhe_arpA2, я получаю следующее: Padding недействителен и не может быть удален.

  2. Когда я открываю chat.mysite.com/WebResource.axd?d=acunetix, я получаю: Неверное состояние просмотра.

  3. Когда я открываю chat.mysite.com/WebResource.axd?d=, я получаю: ресурс не найден.

Однако, когда я открываю любой из этих /WebResource.axd на моем главном сайте www.mysite.com, никаких ошибок не происходит....

Мой вопрос: мой сайт уязвим для заполнения оракулом, и если да, какие данные могут быть украдены? Другое дело, что, как только я открываю "источник просмотра" www.mysite.com, не возникает такой вещи, как script=webresource.axd или что-то в этом роде... Я в замешательстве, если злоумышленник хочет получить контроль над сайт, что он может сделать? Как он будет выполнять свою атаку? Может ли злоумышленник получить доступ к привилегии администратора?

2 ответа

С небольшой информацией, представленной, я бы сказал, что, вероятно, это уязвимо для отступления оракула. Оракул заполнения может использоваться для расшифровки зашифрованного текста, по одному байту за раз, начиная с самого конца сообщения, работая в обратном направлении.

Весь зашифрованный текст должен быть защищен MAC.

Ответ основан на комментариях к вопросу.

Да, вы в настоящее время уязвимы для атаки оракула.

Это означает, что они могут загружать такие вещи, как ваш конфигурационный файл и расшифровывать ваше представление и файлы cookie.

Что касается доступа к "привилегии администратора", может быть. Зависит от того, что найдено. Например, если у вас есть строка подключения к базе данных в файле web.config И этот сервер базы данных доступен в Интернете, то злоумышленник может просто полностью обойти приложение и перейти прямо к базе данных. Здесь, безусловно, существует множество факторов, которые могут ограничить ущерб от раскрытия информации web.config, но, к сожалению, многие разработчики не знают, что они делают. Они склонны не думать об этом.

Итак, что вы можете сделать по этому поводу?

Прежде всего, обновляйте свои серверы с их исправлениями. У Windows есть способы автоматизировать это через автоматическое обновление. Что я очень рекомендую для веб-серверов. MS имеет тенденцию исправлять вещи довольно быстро. Более того, за более чем 10 лет работы Windows-серверов с исправлениями я никогда не сталкивался с проблемой. Я хотел бы сказать то же самое для патчей БД, но даже они начинают становиться вещами, которые вы просто должны делать.

Во-вторых, посмотрите на само приложение. Есть ли что-то в файле web.config, которое может привести к компрометации данных. Такие вещи, как ссылки на серверы баз данных, пароли к другим системам и т. Д. Если это так, то я бы посоветовал сразу после исправления изменить все эти пароли. Для доступа к БД я стремлюсь к тому, чтобы даже приложение не имело прямых прав на таблицы запросов. Но это совершенно отдельная дискуссия.

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

В-четвертых, выставляйте ТОЛЬКО то, что необходимо для Интернета. Это требует много обучения и тестирования, чтобы убедиться, что ваши маршрутизаторы / брандмауэры / и т. Д. Правильно настроены. К сожалению, разработчики, как правило, снижают уровень защиты, как только это становится неудобным. Например, установка средств отладки на сервере или подключение базы данных к Интернету для получения доступа к ней из дома... Это соответствует пункту 3 выше.

В-пятых, исследовательские исследования. Потратьте время, чтобы узнать, как все скомпрометировано и что это значит. Защитить код гораздо проще, когда вы знаете, что защищаете и от чего защищаете. Существует огромное количество недостоверной информации, и знание того, как работают атаки, облегчит вам ее фильтрацию. Простым примером являются сайты, показывающие, как динамически создавать оператор SQL. Подавляющее большинство из них не используют параметры; и те, которые полностью игнорируют идею, что само веб-приложение может быть обойдено.

Это еще не все, но этого достаточно, чтобы пережевать.

Другие вопросы по тегам