Skip to content
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

Error in interpreting the packed binary data in ExecutionTracer.dat #475

Open
Jizhou-Chen opened this issue Aug 13, 2022 · 3 comments
Open

Comments

@Jizhou-Chen
Copy link

Jizhou-Chen commented Aug 13, 2022

Hi, I have been strictly following the guide to get familiar with recording basic traces. http://s2e.systems/docs/Howtos/ExecutionTracers.html

As I ran s2e execution_trace test on the code given by the guide, I got the following:

WARNING: [execution_trace] Could not parse entry 38 in file /mnt/data/user/s2e/projects/test/s2e-last/ExecutionTracer.dat (unpack requires a buffer of 8 bytes)

WARNING: [analyzer] Section already loaded: name: rt_base=0x7fdae0a0f000 size=0x1b50 - module Module name:ld-linux-x86-64.so.2 (/lib64/ld-linux-x86-64.so.2) pid:2053

WARNING: [analyzer] Section already loaded: name: rt_base=0x7fdae0a11000 size=0x29335 - module Module name:ld-linux-x86-64.so.2 (/lib64/ld-linux-x86-64.so.2) pid:2053

WARNING: [analyzer] Section already loaded: name: rt_base=0x7fdae0a3b000 size=0xaee4 - module Module name:ld-linux-x86-64.so.2 (/lib64/ld-linux-x86-64.so.2) pid:2053

WARNING: [analyzer] Section already loaded: name: rt_base=0x7fdae0a47620 size=0x2af0 - module Module name:ld-linux-x86-64.so.2 (/lib64/ld-linux-x86-64.so.2) pid:2053

SUCCESS: [execution_trace] Execution trace saved to /mnt/data/user/s2e/projects/test/s2e-last/execution_trace.json

I tried the same procedures on another program written by myself and got the same "unpack requires a buffer of 8 bytes" error too.

As I looked up online, the issue seems to be caused by buggy implementation in interpreting the packed binary data in ExecutionTracer.dat

I'm currently looking into s2e-env/build/lib/s2e_env/commands/execution_trace.py and trying to find the root cause.

If anyone is familiar with this part, please feel free to shed a light on the issue. Thank you in advance.

@vitalych
Copy link
Member

Please attach your trace file.

@vitalych
Copy link
Member

Also, did S2E terminate properly or was it killed? In the latter case, it won't get a chance to flush the trace so you might have corrupted entries.

@Jizhou-Chen
Copy link
Author

Jizhou-Chen commented Aug 13, 2022

@vitalych

Here is the trace file.
ExecutionTracer.tar.gz

And S2E terminated properly with a success message in the end. I have updated the post to include all the output to the terminal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants