Как мне предотвратить добавление SoapExtensions в мое приложение веб-службы?

StackOverflow https://stackoverflow.com/questions/119018

  •  02-07-2019
  •  | 
  •  

Вопрос

Кажется, что любой может отслеживать входящие / исходящие.Сообщения SOAP веб-службы NET, просто поместив простой SoapExtension в папку bin, а затем подключив его с помощью:

<soapExtensionTypes>
  <add type="MyLoggingSoapExtension, SoapLoggingTools" priority="0" group="High" />
<soapExtensionTypes>

Есть ли способ предотвратить загрузку расширений SOAP или получить запрос в моем приложении (через событие или какой-либо подобный механизм), можно ли загружать?

@Херст:спасибо за ответ.Я знаю о шифровании на уровне сообщений / WS-Security и надеялся, что мне не придется идти по этому пути.У нас есть классические клиенты ASP, пользующиеся сервисом, и это открывает маленький мир боли.На сайте, на котором запущен веб-сервис, есть SSL-сертификаты, но я вроде как надеялся, что смогу отговорить клиента возиться с расширениями soap, поскольку у них есть разработчики, у которых есть некоторая способность "играть".

Это было полезно?

Решение

Я не уверен, что вы подразумеваете под расширениями и папками bin (я бы предположил, что вы используете .NET), поэтому я не могу ответить о том, что они загружены и т.д.

Однако обратите внимание, что SOAP разработан таким образом, чтобы позволить посредникам читать заголовки и даже изменять их.(Выполните поиск по запросу "Активные посредники SOAP"). Судя по этому, я ожидаю, что у технологии не будет причин избегать отслеживания, запрещая коду считывать SOAP.

Правильный способ защитить себя - это использовать "безопасность на уровне сообщений".(Это в отличие от безопасность на транспортном уровне, например, SSL, который не защищает от посредников). Другими словами, зашифруйте свои собственные сообщения перед отправкой.

Одним из доступных стандартов, используемых для реализации механизмов безопасности на уровне сообщений, является WS-Безопасность протокол.Это позволяет вам настроить таргетинг шифрования на полезную нагрузку и соответствующие заголовки независимо от транспорта.Это сложнее, но именно так вы бы ограничили доступ.

Другие советы

Полностью согласен с @Hurst - если вы хотите, чтобы другие не читали ваши сообщения, вам нужно использовать шифрование на уровне сообщений.В противном случае даже простой NetMon может взломать проводной трафик.

Конечно, если у кого-то есть доступ к компьютеру (учитывая доступ к /bin и т.д.), Даже криптографии может быть недостаточно для предотвращения слежки с использованием отладчиков, напримердля чтения представлений сообщения в памяти после расшифровки.

При физическом доступе к автомату - все ставки отменяются.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top