Apakah HTTPS cukup untuk menghindari serangan replay?


10

Saya memaparkan beberapa metode REST di server untuk aplikasi seluler.

Saya ingin menghindari bahwa pengguna dapat mengendus bagaimana metode HTTP dibangun (dari aplikasi seluler) dan kemudian mengirimnya lagi ke server. Contoh:

  • Aplikasi seluler mengirim permintaan
  • Pengguna menggunakan proxy dan dapat memeriksa apa yang terjadi di jaringan
  • Pengguna melihat dan menyimpan permintaan yang baru saja dikirim oleh ponsel
  • => Sekarang saya tidak ingin pengguna dapat mengirim secara manual permintaan itu

Apakah cukup untuk mengamankan server melalui HTTPS?

Jawaban:


7

HTTPS dapat mencukupi untuk mengamankan server dari serangan replay (pesan yang sama dikirim dua kali) jika server dikonfigurasikan untuk hanya mengizinkan protokol TLS sesuai rfc2246 bagian F.2.

Data keluar dilindungi dengan MAC sebelum pengiriman. Untuk mencegah serangan replay atau modifikasi pesan, MAC dihitung dari rahasia MAC, nomor urut [...]


1
Ini tidak lagi berlaku dengan (draft) TLS 1.3 jika tiket 0-RTT diaktifkan. Juga — meski tidak sepenuhnya dalam cakupan pertanyaan — serangan replay masih dapat dipasang bahkan dengan versi TLS saat ini jika menggunakan browser web .
Alex Shpilkin

9

HTTPS berarti bahwa data yang diangkut dienkripsi sehingga hanya klien dan server yang dapat mendekripsi (dalam dunia yang ideal, tidak berbicara tentang serangan MITM dll).

Dengan demikian, tidak ada dalam protokol akan menghentikan serangan replay terjadi.

Anda perlu membangun semacam mekanisme penghindaran serangan replay (seperti token yang kedaluwarsa, atau token yang batal setelah proses selesai) untuk memastikan bahwa aplikasi Anda tidak rentan terhadap serangan replay. Mekanisme ini dapat digunakan dengan HTTP normal.


8
Jawaban ini tampaknya menyarankan yang sebaliknya: stackoverflow.com/questions/2769992 /... Adakah yang tahu bedanya?
Brian Armstrong

1
@BrianArmstrong Saya pikir masalahnya adalah HTTPS memiliki implementasi yang berbeda seperti yang disebutkan oleh jawaban Emirikol. Beberapa protokol mencegah serangan replay, sementara beberapa tidak. (Ini terjadi ketika melakukan pertukaran kunci, pertukaran kunci RSA mencegah tetapi pertukaran kunci Anonim tidak. Ref: tools.ietf.org/html/draft-ietf-tls-ssl-version3-00#appendix-F ) Jadi itu sebabnya token ( seperti csrf) penting (skenario referensi ada di sini: stackoverflow.com/a/2770135/4206925 )
MewX
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.