Aunque el almacenamiento de contraseñas en texto claro es algo malo, algunos tipos de "ofuscación reversible" (por ejemplo, la codificación Base64 o el "cifrado ROT13") no son mucho mejores, y deberían detectarse también.
La forma correcta de auditar el almacenamiento de contraseña y el método de verificación es mirar la especificación , es decir, el documento que indica qué algoritmo se utiliza y con qué parámetros. Si ese documento existe, simplemente léelo. Si ese documento no existe, asuma lo peor; Desde el punto de vista de la auditoría, el comportamiento no especificado es tan malo como el comportamiento débil.
Mirar la base de datos es similar a la ingeniería inversa: mientras que tiende a funcionar (de hecho, se puede aprender muchas cosas a través de la ingeniería inversa), también indica que los diseñadores del producto no están colaborando con los auditores, y eso hará que la auditoría sin sentido.
(En un apuro, como auditor, podría arreglárselas con una copia del código fuente y ver cómo el código procesa las contraseñas. El código fuente no es un buen sustituto para la documentación adecuada, pero aún es mucho mejor que la inferencia de una mirada superficial a una base de datos.)