Code, Data e Passwd crittografati? sqlplus $ USER / $ PASSWORD @ $ ORACLE_REMOTE_SID

3

Molti dei nostri * script NIX usano "sqlplus $ USER / $ PASSWORD @ $ ORACLE_REMOTE_SID"

So che non è bello avere una password di testo in chiaro negli script (al momento non ci sono alternative). Ma domanda

  • il nome utente e la password trasmessi sulla rete sono crittografati in modo sicuro?
  • il codice SQL trasmesso sulla rete è crittografato in modo sicuro?
  • i dati trasmessi sulla rete sono crittografati in modo sicuro?
posta Ivanov 01.12.2012 - 20:03
fonte

4 risposte

1

Dipende dalla tua configurazione. Oracle supporta TLS come parte del protocollo e dei driver di dati, quindi può autenticare e comunicare interamente su TLS (SSL).

Se questo è abilitato o meno per impostazione predefinita dipende da:

  • Quale versione di Oracle DBMS stai utilizzando.
  • Quale driver di dati stai utilizzando.
  • La versione del driver di dati.

Non sono sicuro se sia possibile autenticarsi tramite TLS e fare il resto della comunicazione in chiaro, ma ne dubito - non sarebbe molto sicuro.

    
risposta data 01.12.2012 - 23:33
fonte
1

Le risposte sono

  1. No (il nome utente è visibile) / sì (principalmente la password è nascosta)
  2. e 3 Normalmente, a meno che non si paghi un extra e si implementino le Opzioni di sicurezza avanzate.

Da compilare (1). Il database Oracle ha un hash della password, non la password effettiva. Quando ci si connette, Oracle preleva un valore e lo invia al client. Il client esegue l'hash della password immessa dall'utente per ottenere lo stesso hash di quello che il database sta archiviando, quindi lo utilizza per eseguire l'hash del valore inviato dal database. Lo rimanda al database. Nel frattempo, il database ha anche cancellato quel valore con la stessa password con hash.

Se il client ha lo stesso valore del database, si presume che sia arrivato dallo stesso punto di partenza (cioè la password dell'utente). Spiegazione completa

L' algoritmo 11g è un po 'diverso ma l'idea fondamentale è che la password non sia passata in testo chiaro o hash banale. Ci vorrebbe un aggressore serio.

Se lo script è posizionato sul server del database, è possibile utilizzare l'autenticazione del sistema operativo anziché una password. Ci sono altri trucchi che puoi fare (come avere il database a determinare da quale indirizzo IP proviene e whitelist / blackist di conseguenza).

    
risposta data 04.12.2012 - 10:49
fonte
0

Da quello che so direi:

  • No
  • No
  • No

E sarà abbastanza riassumibile :) Se vuoi qualche configurazione di sicurezza da VPN a DB (la connessione dedicata è meglio). E utilizzare l'autenticazione del certificato (poco spese generali).

    
risposta data 01.12.2012 - 22:13
fonte
0

controlla TNSALIAS che nasconde la password nel Portafoglio Oracle. Certo, non è nascosto a tutti ma ti consente di imporre una separazione tra gli amministratori di database e l'amministratore dello script per dare una occhiata alle password e alle stringhe TNS.

    
risposta data 04.12.2012 - 13:32
fonte

Leggi altre domande sui tag