Ders 2.13: HMAC ve mesaj doğrulama
Düz bir özet verinin kazara değişmediğini kanıtlar, ama herkes bir tane hesaplayabilir; dolayısıyla bir mesajı değiştiren saldırgan onun özetini de yeniden hesaplayabilir. HMAC özete gizli bir anahtar karıştırır: yalnızca anahtara sahip biri geçerli bir etiket oluşturabilir. Ödeme sağlayıcıları web kancalarını, API'ler istekleri böyle imzalar ve çerezler kurcalamaya karşı böyle korunur. Laboratuvarda iki 'ödeme başarılı' web kancasını openssl ve paylaşılan sırla doğruluyor, tutarı değiştirilmiş olanı yakalıyor ve kontrolü mağazanın PHP kodunun yapması gerektiği şekilde, hash_hmac ve hash_equals ile yazıyorsun.
17 dk
Bu derste öğreneceklerin
- Düz bir özetin neden kimlik doğrulamayı kanıtlamadığını açıklamak
- HMAC'i ve mesaj doğrulama kodlarını açıklamak
- Bir HMAC'i openssl dgst -hmac ile doğrulamak
- PHP'de hash_hmac ve hash_equals ile doğrulamak
- Yeniden oynatılan mesajlara karşı savunmaları saymak
Temel terimler
- MAC (mesaj doğrulama kodu)
- Message Authentication Code: bir mesajdan ve gizli bir anahtardan hesaplanan kısa bir etiket; bütünlüğü ve gönderenin anahtarı bildiğini kanıtlar.
- HMAC
- Bir özet fonksiyonundan ve bir anahtardan MAC oluşturmanın standart yolu (RFC 2104).
- Paylaşılan sır
- Bir iletişimin iki tarafının da bildiği ve başka kimsenin bilmediği anahtar.
- Web kancası
- Bir hizmetin, bir ödeme gibi bir şey olduğunda sunucuna gönderdiği HTTP isteği.
- Yeniden oynatma saldırısı
- Geçerli, ele geçirilmiş bir mesajı etkisini tekrarlamak için yeniden göndermek.
← Güvenlik başlıkları · Tüm dersler · Tehdit aktörleri ve motivasyonları →