2012-02-26 13 views
9

Sto progettando un'API che interagisce con MongoDB.ObjectID Mongo: sicuro da usare in natura?

Ora la domanda è, se è sicura per usare l'ObjectID grezzo per interrogare per gli oggetti ecc Potrebbe sorgere problemi di sicurezza quando si utilizzano gli OID direttamente (ad esempio nelle query), o dovrei cifrare/decifrare loro prima lasciano il mio ambiente server?

risposta

10

Guarda la specifica ID dell'oggetto BSON here e saprai se è sicuro per l'utilizzo di.

Se si tenta di proteggere dagli utenti che inviano URL diversi da script (fuskator), allora mi sembra che abbia una sicurezza debole. Non ci saranno troppe combinazioni di parti "machine", "pid". la parte 'tempo' può essere calcolata se l'attaccante può avere un'idea di come sono stati inseriti i dati (specialmente se si usa batch). 'inc' - molto debole.

Non mi fiderò degli ObjectID come unica sicurezza.

Si prega di notare che non ci può essere una risposta corretta alla domanda "è sicuro" in generale. Devi decidere da solo.

PS. Ma tieni presente che una tale sicurezza basata su URL si impoverirà quando gli utenti condivideranno gli URL che hanno visitato. Anche la migliore crittografia non sarà di aiuto.

2

Penso che non sia molto più sicuro, se non si condividono gli ID oggetto, perché un possibile utente malintenzionato, che potrebbe conoscere un possibile problema di sicurezza, potrebbe anche utilizzare un attacco di forza bruta o qualcos'altro per ottenere il ID oggetto.

Eventualmente this question può essere di aiuto anche.

Problemi correlati