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

Dereferencing an unaligned pointer is UB and leads to unaligned SSE read crashes #2

Closed
0vercl0k opened this issue May 1, 2024 · 0 comments · Fixed by #3
Closed

Comments

@0vercl0k
Copy link
Owner

0vercl0k commented May 1, 2024

We have no guarantee that the threads context are stored at an aligned offsets in the dmp file, as a result those are UBs:

  1. https://github.com/0vercl0k/udmp-parser-rs/blob/main/src/udmp_parser.rs#L642
  2. https://github.com/0vercl0k/udmp-parser-rs/blob/main/src/udmp_parser.rs#L658

I've seen this leads to crashes in an application using udmp-parser-rs when the compiler reads from the context using SSEs instructions:

(4ed8.2b6c): Access violation - code c0000005 (!!! second chance !!!)
p2o_miami22_finders!ZN5rp_bf7explore17h9ea7b88746d86be0E+0x580:
00007ff6`a65a5a60 440f28b880000000 movaps  xmm15,xmmword ptr [rax+80h] ds:0000019e`3c1985a8=00000000000000000000000019720330
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

Successfully merging a pull request may close this issue.

1 participant