Buscar este blog

 DLL Preloading és una tècnica d'atac que es basa en el mateix principi que el DLL Hijacking però amb un enfocament específic en com Windows carrega DLLs abans de buscar-les en els directoris de cerca estàndard. Aquí hi ha una explicació detallada:


Com Funciona el DLL Preloading:
  1. Càrrega de DLLs: Quan una aplicació es llança, Windows intenta carregar les DLLs necessàries per a l'execució. Hi ha una fase inicial on Windows busca DLLs en ubicacions específiques abans de seguir l'ordre de cerca de DLLs estàndard.
  2. Ubicacions de Preferencial: Alguns dels llocs on Windows busca primer inclouen:
    • El mateix directori de l'executable de l'aplicació.
    • El directori des d'on es va iniciar l'aplicació.

    Si troba una DLL amb el nom correcte en aquests llocs, la carregarà sense buscar més lluny.
  3. Explotació: Els atacants poden col·locar una DLL maliciosa en aquestes ubicacions preferencials. Quan l'aplicació s'inicia, carregarà aquesta DLL maliciosa sense adonar-se que no és la versió legítima.

Mètodes Específics:
  • Aprofitament del Directori d'Aplicació: Col·locar una DLL maliciosa en el directori de l'aplicació que s'està executant. Això és especialment efectiu si l'aplicació no verifica la integritat de les DLLs que carrega.
  • Document Directories: Certes aplicacions poden buscar DLLs en el directori de documents de l'usuari abans de buscar en altres llocs, proporcionant així una altra ruta per a l'atac.

Exemples Concrets:
  • Aplicacions de Productivitat: Programari com Microsoft Office ha estat objectiu de DLL preloading, especialment a través de documents maliciosos que es configuren per buscar DLLs en ubicacions específiques.
  • Jocs i Aplicacions de Tercers: Sovint, els jocs o aplicacions de tercers amb configuracions de càrrega de DLL laxes poden ser vulnerables.

Contramesures i Mitigacions:
  • Validació de Rutes: Aplicacions haurien de validar les rutes de les DLLs que carreguen, preferiblement usant rutes absolutes o verificant la integritat de les DLLs.
  • Signatures Digitals: Implementar la comprovació de signatures digitals per assegurar-se que les DLLs carregades són de fonts de confiança.
  • Monitorització de Comportament: Utilitzar eines de seguretat que monitoritzen on i com es carreguen les DLLs per detectar activitats sospitoses.
  • Updater Segur: Assegurar-se que les actualitzacions d'aplicacions siguin segures i no puguin ser manipulades per introduir DLLs malicioses.
  • Principi de Menor Privilegi: Executar aplicacions amb els mínims privilegis necessaris per reduir l'impacte d'un atac exitós.
  • Educació dels Usuaris: Informar els usuaris sobre els riscos de descarregar software de fonts no verificades o obrir documents de fonts desconegudes.

Conclusió:
DLL Preloading és una variant del DLL Hijacking que aprofita especificament la fase inicial de cerca de DLLs per introduir codi maliciós en el sistema. La defensabilitat contra aquests atacs requereix una combinació de bones pràctiques de desenvolupament de software, vigilància activa de la seguretat, i una configuració adequada de les polítiques de seguretat del sistema.

Buscar este blog