Мне было интересно, есть ли проблемы с безопасностью при добавлении crossdomain.xml в корень сервера приложений? Можно ли добавить его в какие-либо другие части сервера, и знаете ли вы о каких-либо способах обхода, которые не требуют наличия этого файла на сервере?
Спасибо Дэмиен





При добавлении crossdomain.xml основная проблема безопасности заключается в том, что теперь флеш-приложения могут подключаться к вашему серверу. Поэтому, если кто-то входит на ваш сайт, а затем переходит на другой веб-сайт с вредоносным флэш-приложением, это флэш-приложение может подключиться обратно к вашему сайту. Поскольку файлы cookie находятся в браузере, они передаются во флеш-приложение. Это позволяет флеш-приложению перехватить сеанс пользователя, чтобы сделать то, что делает ваш веб-сайт, без ведома пользователя.
Если ваше гибкое приложение обслуживается с того же сервера, вам не нужен crossdomain.xml.
Вы можете поместить его в подкаталог своего сайта и использовать System.security.loadSecurityPolicy ()
http://livedocs.adobe.com/flex/2/langref/flash/system/Security.html
Тогда приложения будут ограничены этим деревом вашей структуры каталогов.
Это «потенциальная» угроза по замыслу, иногда вы необходимость, чтобы иметь возможность осуществлять междоменное взаимодействие, поэтому вам необходимо явно разрешить соединения с использованием этого файла.
Я не совсем понимаю этот риск. Если вы поместите «разрешить все» crossdomain.xml в корень вашего сервера, разве это не даст Flash-приложениям такой же доступ, какой уже есть у браузеров? Javascript на веб-странице xxx.com не может видеть файлы cookie на yyy.com, потому что браузер и безопасность Javascript не позволяют этого. Может ли флэш-файл на xxx.com действительно получить доступ к файлам cookie на yyy.com (если yyy.com crossdomain.xml настроен так, чтобы разрешить все)?
Damo - Crossdomain.xml - это исправление потенциальной угрозы. Не устанавливайте его, если вы не хотите, чтобы приложения из других доменов попадали на ваш сервер.
Скиппи - Допустим, у BANK.COM есть страница, на которой можно переводить деньги между счетами. Допустим, у него есть открытый файл crossdomain.xml. Теперь предположим, что пользователь BOB входит в BANK.COM как обычно. Затем BOB покидает BANK.COM и переходит на EVIL.COM. На EVIL.COM есть вредоносное флеш-приложение. Это приложение может отправлять запросы в BANK.COM. Этот запрос будет поступать из браузера, как и любой другой запрос. Это означает, что приложение может незаметно перейти на эту страницу передачи. BANK.COM увидит, что пользователь уже вошел в систему, потому что запрос пришел из браузера, который правильно прошел аутентификацию, и с радостью разрешит ему продолжить.
Комментарий Марка по существу. У вас не должно быть неограниченного crossdomain.xml, если все ваши данные не являются общедоступными. Недавнее сообщение в блоге по этой теме: erlend.oftedal.no/blog/?blogid=101
Вы можете настроить виртуальный хост для своего приложения. Таким образом, файл crossdomain.xml может находиться в корне вашего приложения, но не обязательно в корне сервера.
crossdomain.xml - это просто файл, имеющий значение для среды выполнения Flash; вы можете ограничить, какие HTTP-запросы будут видеть его. Вы можете использовать управление конфигурацией веб-сервера (например, Apache), чтобы разрешить доступ для чтения к нему (и только к нему) из «корневого» каталога (см. Предыдущие ответы).
Вы можете фильтровать запросы по другим заголовкам и т. д.
Ваше здоровье
Для междоменного файла нет обходного пути, он необходим для поддержки междоменного доступа к данным или кросс-доменного скриптинга. В случае любого междоменного запроса Flash будет искать файл crossdomain.xml в корне домена. Например, если вы запрашиваете XML-файл у:
http://mysubdomain.mydomain.com/fu/bar/
Flash проверит, существует ли файл crossdomain.xml по адресу:
http://mysubdomin.mydomain.com/crossdomain.xml
Вы можете разместить файл crossdomain.xml в другом месте. Однако, когда вам когда-либо понадобится загрузить файл crossdomain.xml из другого места, вы должны сделать это через Security.loadPolicyFile. Имейте в виду, что расположение этого междоменного домена имеет какое-либо влияние на ваш безопасный доступ. Flash предоставит доступ только к папке, содержащей перекрестный домен и его дочерние папки.
Вы также можете прочитать изменения безопасности в Flash Player 10.
Это не совсем так; обходной путь для междоменного файла - проксировать весь сетевой трафик через тот же сервер, на котором размещено ваше Flash-приложение.
Да. Будьте очень осторожны с файлами междоменной политики:
http://www.jamesward.com/2009/11/08/how-bad-crossdomain-policies-expose-protected-data-to-malicious-applications/
Мои два основных правила:
Привет, Марк, спасибо за ваши комментарии. Подобные вещи вызывают беспокойство. Знаете ли вы, работает ли Adobe над этим или придумывает ли еще какие-либо функции безопасности для устранения этой потенциальной угрозы? Спасибо Дэмиен