需要将内核模块(* .ko)加载到的内存地址,因此访问该地址时,我可以闯入系统。
似乎有很多文章建议如何在事后获得它,例如从/ proc / modules。很好,但这是事实。
即使在运行时加载或卸载模块,也不能保证始终将模块加载到同一地址。 是否有解决方法?我希望insmod有一个地址参数,但似乎我错了。
答案 0 :(得分:0)
我用答案结束了自己的问题。
最佳评论或答案来自上面评论中的@Tsyvarev。注释-请参见register_module_notifier-告诉您如何在运行时使用自己的代码说出地址。 (我没有使用它,因为我不需要它。)
对于我来说,我需要使用它来通过外部硬件监视器进行调试,并且我可以根据需要设置调试器以在module_alloc上中断系统。 (而且我可以控制何时加载特定模块。)
因此,所有这些-上面的两种方式-在此说明了如何在“加载”模块之前获取地址。