Quiero asegurarme de que las bibliotecas de enlaces dinámicos utilizadas por mi aplicación no puedan ser reemplazadas por otras bibliotecas del mismo nombre para inyectar código malicioso. Por lo tanto, pensé en crear una huella digital de las DLL antes de lanzar nuevas versiones de aplicaciones.
La aplicación validaría la huella dactilar antes de que se cargue la DLL. ¿Proporcionaría esto una buena protección en el escenario anterior?
Con respecto a la función hash: no estoy seguro de si usar MD5 o uno de los algoritmos SHA. Sé que MD5 no es seguro para los ataques de colisión, pero es seguro contra los ataques de preimagen.
¿Contra qué ataques debo proteger las bibliotecas (usando huellas digitales)?