Уязвимости безопасности, связанные с URL-адресом в кодировке Base64

У меня есть API, когда я пытаюсь получить к нему доступ через веб-приложение, я делаю запросы ajax get и post.

Поскольку я новичок в этом, мне интересно, какие проблемы безопасности связаны с типом контента.

Прямо сейчас я знаю два типа контента, которые я могу опубликовать как:

  • URL-адрес с кодировкой Base64.

  • JSON

Если я передаю данные как закодированный URL-адрес, данные появятся в строке запроса.

Даже если закодировать Base64, разве это не будет плохим способом передачи конфиденциальной информации?

Я прочитал несколько статей, и в большинстве из них говорилось, что JSON или URL-адрес не имеют большого значения с точки зрения безопасности.

Каковы нарушения безопасности, о которых я должен беспокоиться, глядя на тип контента, используемый для передачи данных между приложением и API?

Действительно ли данные находятся в URL-адресе или это просто данные в кодировке URL-адреса base64 в теле запроса POST?

Patrick Roberts 02.01.2019 05:27

Считайте кодировку / декодирование base64 в значительной степени простым текстом. И то, что вы что-то декодируете / кодируете base64, не означает, что вам нужно передать это через строку запроса. Вы все еще можете отправить его, как и json.

ugh StackExchange 02.01.2019 05:27

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

Ayan_84 02.01.2019 05:30

@Patrick Roberts Тип контента - application / x-www-form-urlencoded, я проверил с помощью инструментов разработчика браузера, и закодированные данные отображаются в URL-адресе, я подумал, что, используя базовую кодировку Base64, было бы очень легко просто декодировать данные с url !!? :)

Abhilash Gopalakrishna 02.01.2019 05:32

Похоже, это X / Y Проблема. Чего вы пытаетесь достичь? Зачем тебе это необходимость?

ugh StackExchange 02.01.2019 05:34

@FrankerZ Привет, это может быть вопрос типа X / Y; я изучаю php путем декодирования кода приложения с открытым исходным кодом. Здесь они использовали application / x-www-form-urlencoded для отправки данных в API. я учусь, мой вопрос, разве это не угроза безопасности !! Я прочитал несколько статей, и везде написано; Отправка в формате JSON или в строке запроса не сильно влияет на безопасность, это совсем другое дело !! Поэтому я обратился к stackoverflow, надеясь, что меня укажут в правильном направлении :)

Abhilash Gopalakrishna 02.01.2019 05:42
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
6
2 940
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Base64Encode/Decode - это нет, разработанный для encrypt & transfer data securely. Можно использовать Base64 для передачи двоичных данных / строка, содержащая специальные символы без, прерывает протокол или функцию как здесь упоминалось

В вашем случае вы должны использовать SSL для создания безопасного и зашифрованного соединения между server & client.

А также вы можете использовать метод RSA Encryption для шифрования ваших данных перед отправкой. (SSL использует этот алгоритм)

Когда вы подходите к API, возникает еще один момент - (Sniffing Security). Вы должны обеспечить уровень безопасности для защиты ваших данных от модификации на полпути. Здесь большинство разработчиков используют JWT Token Authentication. Путем аутентификации JWT вы можете определить, были ли данные изменены или нет.

Это очень распространенные советы по безопасности. Вы можете найти больше, выполнив поиск в Google по следующим ключевым словам. JWT Token, RSA Encryption, SSl Certificate

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