Générer une Master Key TDE avec Key Vault

Comment avec Key Vault enrôlé un endpoint Oracle database puis générer une master key 12.1 (ou 11.2) et l’y stocker ? Si c’est la question que vous posez cet article est fait pour vous.

Tout d’abord il y a deux façons d’enrôler un endpoint, par une initiative venant d’un administrateur système de Key Vault qui envoie à un administrateur du serveur endpoint un token, ou bien par auto-enrôlement du endpoint si Key Vault est configuré pour le permettre. Ici c’est la première solution qui sera présentée.

Lire la suite : Générer une Master Key TDE avec Key Vault

Activation, Configuration et Lecture de l'Audit Standard et Fin

Cet article a pour but d’expliquer ce qu’est l’audit sous notre SGBD préféré. Il s’applique donc aux bases Oracle de la version 10g à 11gR2 et à la 12cR1 dans le cas de la non activation de la nouveauté : audit unifié.

Il est important de comprendre comment l’audit s’active, et surtout comment on peut le configurer pour obtenir ce que l’on souhaite auditer. Bien souvent la mise en place de l’audit est un prérequis demandé par un client, par un projet mais bien souvent personne ne sait vraiment ce que l’on peut obtenir et ce que l’on veut obtenir. L’erreur serait d’ouvrir toute les vannes, d’activer l’audit tout azimut, cela génèrerait un flux important d’audit qui noierait l’information pertinente, générerait aussi peut être des problèmes de volumétrie d’audit, voire de performance. Il faut donc définir une stratégie d’audit avant le mettre en place et pour cela comprendre comment s’articule l’audit.

Remarque : Cet article ne traite que de l’audit dit Standard et Fin, c’est-à-dire celui fournit de base dans Oracle et expliqué dans la documentation Oracle Security. Il ne traite pas de l’audit provenant d’option Oracle : Oracle Database Vault, Oracle Label Security…

 

Lire la suite : Activation, Configuration et Lecture de l'Audit Standard et Fin

Comment casser un mot de passe sans connexion à la base

(Titre un peu racoleur pour attirer le clic Wink)

[MAJ 20/11/2015: correctif sur la force des mot de passe 10g et 11g]

Cet article fait suite à La sécurité des mots de passe dans lequel je récupérais le mot de passe crypté grâce à une connexion dans la base. Puis par brute force je décryptais le mot de passe.  Puis j’écrivais alors :

Cependant il ne faut pas oublier qu’il [le mot de passe] est stocké dans une table, donc dans un datafile,  qui plus est, appartenant au tablespace SYSTEM, ce qui signifie un fichier pas trop volumineux et dont le nom est très certainement de la forme system.dbf, en un mot, dans un fichier facilement identifiable. Il suffit à un administrateur qui a accès au compte root par exemple,  de le copier et de chez lui, tranquillement, le décortiquer pour trouver le mot de passe chiffré. Ensuite il ne reste plus qu’à le déchiffrer par attaque au dictionnaire ou par force brute.

Je vous propose cette fois-ci de passer par la copie du datafile du tablespace SYSTEM, comme cité ci-dessus.

Lire la suite : Comment casser un mot de passe sans connexion à la base

Sqlnet Encryption Demystified

Avec la 12c, l’encryption sqlnet est devenue gratuite… ou plutôt inclus dans la licence Oracle database SE2 ou EE. Avant en 11g et version antérieure il fallait payer l’option Advanced Security et donc avoir une licence EE.

L’encryption sqlnet permet de chiffrer les échanges réseaux entre le client et la base de données dans le flux sqlnet. Il faut savoir que par défaut que tous les échanges sont en clair à l’exception de certaines commandes comme « password » qui est une rare commande qui crypte le passage du mot de passe dans le flux sqlnet.  Cela signifie, que si on fait à partir d’un client « select nom,cb from client where nom='WINROC'; » sur le réseau on pourra lire en claire « select nom,cb from client where nom='WINROC' » mais surtout quand la base répondra « 2050804010306050» cela apparaitra en clair et lisible avec un simple tcpdump ou un client en mode trace.

Les données peuvent être interceptées très simplement en mettant en trace la couche sqlnet ou bien avec un dump sur le client ou le serveur.  

Lire la suite : Sqlnet Encryption Demystified

TDE wallet in multi database environment

 

Dans l’article TDE (Part I) nous avions configuré TDE pour la base de données ARKONA en RAC. Une wallet  contenant la mastrer key, avait été générée. L’emplacement de la wallet est configuré dans le fichier sqlnet.ora se trouvant dans le répertoire TNS_ADMIN par défaut ($ORACLE_HOME/network/admin).

[oracle@racdb1 admin]$ cat sqlnet.ora

ENCRYPTION_WALLET_LOCATION = (SOURCE =(METHOD = FILE) (METHOD_DATA =(DIRECTORY =/oracle/oraBase/wallet)))

Mais voilà, maintenant il nous faut gérer sur ce même cluster le chiffrage par tablespace d’une deuxième base de données. Comment faire sachant qu’une wallet ne peut appartenir qu’à une seule base de données ?  Et en plus il faudra configurer des connexions par SSL pour chacune des bases et donc gérer de nouvelles wallet. (la mise en place SSL sera fait dans un prochain article).

Lire la suite : TDE wallet in multi database environment