Безопасно ли принимать POST
данные, которые должны быть данными в кодировке base64, и использовать их в качестве атрибута src
img
?
<img src="data:image/png;base64,[data here]" />
Очевидно, что без фильтрации можно легко вырваться из атрибута src
и тега img
и вставить вредоносные <script />
или другие теги, поэтому моя идея состоит в том, чтобы
base64_decode($rawPostData)
проверьте правильность декодирования, а затем
base64_encode($decodedData)
чтобы поместить его в атрибут src
.
Есть ли какие-либо уязвимости (такие как XSS, возможно переполнение буфера?) С таким подходом?
Фон
Мне это нужно для страницы, которая преобразует сторонние svg
в canvas
в base64
кодированные данные, используя JavaScript (точнее, используя «canvg»). Мне нужно передать изображение в сценарии на стороне сервера для выполнения некоторых других задач с использованием изображения, а также для отображения изображения пользователю / клиенту.