S2E kprobe support + alternative image generation #510
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit adds to s2e new_project the option --debootstrap flag.
The main job of this flag is to default to the generic debootstrap image description in images.json database independently from the name of the image passed through -i option. For debootstrap-based images, the folder name is set by the script as ${distro_name}-${kernel_version} to being able to express all possible combinations distro/kernel which was not a supported possibility by s2e new_project. Another change integrated by --debootstrap is to generate a different boostrap.sh script to insert the kprobe based kernel module to add s2e support to the untouched kernel. The s2e-kprobe kernel module sits in
/root/s2e-kprobe/s2e-
uname -r
/s2e-kprobe.ko. If changes to the kernel module are necessary (e.g., to add some s2e callbacks at the beginning of the analysis to share some kernel info), it is possible to override the current installed module through s2ecmd get without rebuilding the image.