Я раскрываю несколько методов REST на сервере для мобильного приложения.
Я хотел бы избежать того, чтобы пользователи могли анализировать, как создаются методы HTTP (из мобильного приложения), а затем снова отправлять их на сервер. Пример :
- Мобильное приложение отправляет запрос
- Пользователь использует прокси и может проверить, что происходит в сети
- Пользователь видит и сохраняет запрос, только что отправленный мобильным телефоном.
- => Теперь я не хочу, чтобы пользователь мог вручную отправить этот запрос
Достаточно ли защищать сервер через HTTPS?
HTTPS просто означает, что передаваемые данные зашифрованы, так что только клиент и сервер могут дешифровать их (в идеальном мире, не говоря о атаках MITM и т. Д.).
Таким образом, ничто в протоколе не остановит повторные атаки.
Вам нужно будет встроить некоторый механизм предотвращения атак повторного воспроизведения (что-то вроде маркеров с истекающим сроком действия или маркеров, которые становятся недействительными после завершения процесса), чтобы гарантировать, что ваше приложение не уязвимо для атак воспроизведения. Этот механизм можно использовать с обычным HTTP.
источник