¿Cómo podría un cracker forzar la carga de un rootkit del núcleo en el arranque? ¿Hay alguna forma de vincular el módulo malicioso con otro módulo para que se cargue automáticamente sin ningún comando insmod?
Suponiendo que tiene acceso privilegiado completo al sistema de archivos en una computadora con Linux, puede cargar módulos de kernel arbitrarios. Hay varias técnicas que puedes usar:
modprobe.d(5)
para cargar automáticamente su rootkit siempre que haya un módulo normalmente cargas. modules.dep(5)
para especificar su módulo como una dependencia de otro módulo. La técnica final es probablemente la más sigilosa, ya que no implica ningún cambio en el archivo de configuración y requiere ingeniería inversa o un seguimiento de la integridad del archivo para detectar. Sin embargo, tenga en cuenta que firma del módulo del kernel puede anular esto al imponer un Firma válida en cualquier módulo a cargar. Si el módulo se compiló y firmó en el mismo sistema en el que se está utilizando, existe la posibilidad de que pueda encontrar la clave de firma en el espacio no asignado del sistema de archivos (ya que se crea en tiempo de compilación y luego simplemente se desvincula) , pero es una posibilidad muy remota. Si la firma del módulo del kernel está en su lugar y no puede obtener la clave de firma, tendrá que encontrar otros métodos para obtener acceso al kernel.
Si simplemente desea cargar automáticamente un módulo en el arranque sin la interacción del usuario, puede hacerlo, haciendo que su deseo de evitar insmod
sea superfluo. Varios scripts initramfs-generation como dracut , genkernel , y mkinitcpio se pueden usar para incluir módulos en el initramfs, y proporcionar enlaces para scripts personalizados. Puedes cargar el módulo allí.