-
Notifications
You must be signed in to change notification settings - Fork 86
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Local deployment of magma experiment environment problems. #143
Comments
By the way, I can understand that the maintainers of magma will question why I didn't follow the official magma deployment tutorial to complete my experiment after seeing the questions I raised these days. But I think I'm not the only one with similar problems. I think 99% of the people who use MAGMA are security researchers who contribute to Usenix, okland, NDSS or CCS (because other conferences do not have such strict requirements for fuzzing evaluation). There are many people who can only choose to deploy MAGMA locally due to technical problems (such as using hardware to assist fuzzing, modifying the instrumentation) or some other irresistible factors (such as a poor fuzzing researcher from China) to complete their experiments. At this time, it may be less than 30 days before the minor revision or the next ddl of the top conference. In order to make his or her fuzzer run smoothly on MAGMA, he or she have to spend 5~7 days to study MAGMA's code, referring to problems encountered by others before he or she can successfully run the fuzzer on MAGMA. Unfortunately, he or she found that there was no way to use official scripts to automate the analysis of crashes, so they had to manually use gdb to analyze hundreds of crash-triggering inputs and compare them with the CVE given in MAGMA. It was such a pain. |
Hi @ramerzase, I understand your point on needing to run the experiments outside of Docker. We will happily consider PRs that provide this capability. However, we do not have the time/resources to do this ourselves (for the same reasons you noted, i.e., that we are also grad students focusing on completing our research). |
I recently had an e-mail exchange inquiring about this issue. While there is currently no OOTB solution to running Magma locally, I can echo the instructions I had provided earlier, to ensure that a local setup satisfies the assumptions and produces the files required for Magma scripts. To recreate the environment settings expected by Magma, you would need to:
This would allow you to reproduce much of the time-based evaluation of Magma outside its Docker images. Alternatively, if you're only interested in post-processing/deduplicating your crashes directory (as you've described in your post), you can disregard all Magma customizations for your fuzzing campaigns (i.e. just compile the original target without patches or runtime support). I hope these tips somewhat help guide you towards a more complete evaluation! |
Hi, I encountered a problem similar to this issue and I couldn't build magma according to the official manual (move all the experimental environments to docker). Therefore, I can only refer to the build.sh provided by magma on the local server to compile the program in magma. However, after a series of experiments using AFL, I found that the following information cannot be easily obtained:
I referred to the official technical referrence and used
exp2json.py
to obtain the above three types of information, but the following error is reported:My workdir folder structure is as follows:
In fact, I want to know:
monitor
?)The text was updated successfully, but these errors were encountered: