Click here to Skip to main content
15,887,683 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello everyone, hope that you are doing well :).
For the problem that am facing is actually that am working on a project which is about checking the integrity of the kernel image "vmlinuz" that is in the hard disk!
To do so, am trying to add a code that will be loaded by grub before the kernel started ! So this code is going to compute the HMAC of the kernel image to see if it's well authenticated or not ! Then load it .
The problem is , i don't know how to charge the image from the hard disk so i can check it ! I looked in the grub manual to see how does grub do things , but i was kinda complicated and i got lost!
So please if you can help i would be so grateful and happy for you help.
Best regards!

What I have tried:

Build the linux kernel ,
Implementing the programme that is going to compute the HMAC of the image.
Posted
Comments
[no name] 9-Mar-19 8:31am    
Yeah, yeah, yeah ... good luck with that. Not.
Member 13603741 9-Mar-19 12:54pm    
Thanks bro
Richard MacCutchan 9-Mar-19 8:37am    
You most likely need to create a new boot image that gets loaded by grub. That image can then read vmlinuz and do the integrity checks before itself booting the kernel. However this is not an afternoon's work. You will need to understand the grub process internals, the microcode, and what happens when an image is booted. Use Google to find documents that explain all these features in detail.
Member 13603741 9-Mar-19 12:57pm    
Yeaah , that's the idea, and as you said the major problem is how my boot image gonna charge and get access to the vmlinuz image on the disk , beacaus am not that acknowledged about the file system's stuffs !
Thank you anyway, as you i need to deeply understand how does grub do it then i try to do the same .

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900