Trust Confine Violation durante la combinazione della cache dell'applicazione con i dati di sessione

StackOverflow https://stackoverflow.com/questions/8842708

Domanda

Ho l'obbligo di ottenere oggetto cache dell'applicazione => oggetto sessione, modificarlo e usarlo. Mentre tutto funziona bene, ricevo la minaccia di violazione dei confini della fiducia da Fortify (per maggiori informazioni) https://www.formify.com/vulncat/en/vulncat/sql/trust_boundary_viiolation.html.

Qualche idea su come risolvere questo problema?

È stato utile?

Soluzione

La violazione dei confini della fiducia non è spesso una cosa semplice da risolvere. Per capirlo davvero, devi conferire con il revisore dei conti di sicurezza e il tuo architetto e determinare qual è il confine di fiducia. Per fare ciò, disegna un'architettura logica dell'applicazione, tra cui la cache, l'utente finale e tutti gli altri sistemi con cui l'applicazione ha bisogno di interfacciarsi.

Quindi, disegna una linea tratteggiata attorno alla parte dell'applicazione che deve essere protetta. Tutto all'interno di questa riga è roba che non devi controllare ... sono tutti i dati che, presumibilmente, sono stati creati da te lo sviluppatore, altrimenti è stato cancellato dalla tua funzione di validazione input e sei sicuro che sia solo il tipo di dati ti aspetti. (Vedere https://www.owasp.org/index.php/data_validation)

Ora, dov'è la cache?

  1. Se è all'interno del confine di fiducia, questa violazione del confine di fiducia è un falso positivo e puoi creare un filtro in modo che se la fonte provenga da quel file o da un pacchetto, il problema sarà nascosto. Il tuo filtro sembrerebbe qualcosa di simile:

    Categoria: pacchetto "Trust Boundary Violation": com.example.mycachepackage

    o

    Categoria: File di "violazione dei confini della fiducia": mycacheobject.java

  2. Se la cache è al di fuori del confine della fiducia, l'ipotesi è che l'attaccante può utilizzare la cache come meccanismo per attaccare il tuo programma o gli utenti. Quindi devi controllare tutti i dati ogni volta che si inseriscono i dati nella cache o togli qualcosa dalla cache.

Dopo aver definito le funzioni di convalida per il meccanismo della cache, il revisore dei conti di sicurezza o il consulente Fortify scriveranno una regola di convalida personalizzata che farà scomparire tutti i problemi fissi.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top