Я занимаюсь атаками MITM в приложении Silverlight, которое я пишу. Сайт будет работать через SSL. Если мой сайт является жертвой атаки MITM, насколько мне известно, моя единственная защита сейчас - это страница предупреждения, отображаемая браузером, когда сертификат сайта не доверен. Так как это только браузер, то лучше всего это просто предупредить пользователя, а затем разрешить им все равно. Пользователь может быть счастлив и, как правило, не читает. Поэтому есть вероятность, что они прочтут это предупреждение, поцарапают голову и перейдут на сайт. Моя мысль заключалась в том, что, поскольку я пишу надежное приложение Silverlight, я должен быть в состоянии либо обнаружить, что браузер видит ошибку сертификата, либо выполнить ту же проверку, что и браузер. Тогда, если я определяю, что есть проблема, я могу просто заблокировать все мое приложение, чтобы пользователь не выдавал критическую информацию MITM. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу найти подходящие классы в ограниченном подмножестве Silverlight .NET для выполнения того, что мне нужно делать. Кто-нибудь знает, как я могу достичь этой цели или по-другому по этой проблеме?Как проверить сертификат хост-сервера в Silverlight?
ответ
Это невозможно, насколько я знаю - Silverlight использует сетевой стек браузера и, как результат, опирается на свои сетевые предупреждения и инфраструктуру безопасности.
Silverlight 3 добавил новый сетевой стек, но я считаю, что в целом то же самое: сертификат вашего хост-сервера проверяется, когда приложение .xap (приложение Silverlight) загружается браузером, а не то, что вы можете проверить или взаимодействовать с кодом.
IMHO Вы можете проверить сертификат, который хранится локально, так как браузер сохранит его копию после запроса SSL. Оформить заявку this. Надеюсь, это даст вам несколько советов.
Этот ответ не работает или не применяется к Silverlight, поскольку ссылка на статью относится к полной платформе .NET; Песочница Silverlight исключает такой доступ. –
Итак, я нахожусь в стороне от проверки браузера. Вы видите какой-либо способ по существу выполнить ту же цель (предотвращение MITM) с использованием другого метода? – Hydroslide