Use constant time comparisons for client nonce

This commit is contained in:
vishalnayak 2016-09-13 20:12:43 -04:00
parent 74a0bfadb8
commit b1392567d1
1 changed files with 2 additions and 1 deletions

View File

@ -1,6 +1,7 @@
package awsec2
import (
"crypto/subtle"
"encoding/pem"
"fmt"
"time"
@ -126,7 +127,7 @@ func validateMetadata(clientNonce, pendingTime string, storedIdentity *whitelist
//
// This is a weak criterion and hence the `allow_instance_migration` option
// should be used with caution.
if clientNonce != storedIdentity.ClientNonce {
if subtle.ConstantTimeCompare([]byte(clientNonce), []byte(storedIdentity.ClientNonce)) == 0 {
if !roleEntry.AllowInstanceMigration {
return fmt.Errorf("client nonce mismatch")
}