heygrc
PCI DSS Req 8 nel codice

Sapere chi, e dimostrarlo.

Il Requisito 8 riguarda l'identificazione degli utenti e l'autenticazione dell'accesso: ogni utente ha un ID univoco, l'accesso è autenticato e l'autenticazione a più fattori è obbligatoria per l'accesso all'ambiente dei dati dei titolari di carta. L'obiettivo è collegare un'azione a una persona e garantire che una password rubata da sola non sia sufficiente per accedere. Gran parte di questo viene decisa nel codice e nella configurazione dell'autenticazione.

How it shows up in a diff

The shapes the same control failure takes.

Il Requisito 8 si indebolisce quando una modifica rende più facile l'accesso o più difficile attribuire chi l'ha eseguito. Le forme ricorrenti:

  • MFA rimosso o reso opzionale

    Un controllo a più fattori per l'accesso all'ambiente dei dati dei titolari di carta viene rimosso o reso opzionale tramite una flag, quindi una password da sola è di nuovo sufficiente.

  • Compare un account condiviso o generico

    Viene introdotto un accesso condiviso o un account di servizio generico dove è richiesta l'identificazione individuale, quindi le azioni non possono più essere collegate a una persona.

  • Autenticazione forte indebolita

    Un percorso che richiedeva autenticazione a più fattori o forte viene modificato per accettare solo una password o un fattore più debole.

  • Un passaggio di autenticazione viene bypassato

    Un percorso di codice (una route interna, un'automazione, una scorciatoia di debug) raggiunge funzionalità sensibili senza passare attraverso l'autenticazione.

  • Credenziali predefinite o statiche rimangono

    Una credenziale predefinita, hardcoded o mai ruotata rimane al suo posto, che in pratica è una porta non autenticata.

Worked example

MFA rimosso dall'accesso admin.

Il passaggio a più fattori sta rallentando gli admin, quindi una modifica rimuove il controllo del secondo fattore sul login admin che accede ai sistemi che gestiscono i dati dei titolari di carta. Gli accessi diventano più veloci, e ora una password da sola permette a un admin di accedere all'ambiente dei dati dei titolari di carta.

auth/admin.ts+0 -1
async function adminLogin(user, password, otp) {  if (!verifyPassword(user, password)) return deny()-  if (!verifyOtp(user, otp)) return deny()  return grantAdmin(user)}
heygrcPCI DSS Req 8

Rimuovere il controllo del secondo fattore significa che l'accesso admin all'ambiente dei dati dei titolari di carta ora richiede solo una password, mentre il Requisito 8 prevede che l'autenticazione a più fattori lo protegga. Mantenere il fattore; se è troppo lento, migliorare l'esperienza del secondo fattore invece di rimuoverlo.

What an auditor does with this

L'autenticazione viene verificata nei percorsi di accesso che contano.

Un assessment PCI verifica come l'accesso viene identificato e autenticato, soprattutto verso l'ambiente dei dati dei titolari di carta: ID univoci, autenticazione a più fattori dove richiesta, nessun account condiviso, nessuna credenziale predefinita. Una modifica che ha rimosso un controllo MFA, aggiunto un account condiviso o bypassato l'autenticazione è il divario concreto dietro questo, e risulta visibile nel diff del codice o della policy di autenticazione.

What this is, and is not

Una revisione, non il tuo provider di identità.

heygrc segnalerà le modifiche che interessano il Requisito 8 e citerà il requisito in modo che la correzione avvenga nella pull request. Non esegue l'autenticazione né gestisce le identità. Rileva il momento in cui una modifica indebolisce il modo in cui l'accesso viene autenticato, nel diff.