Fixes for memory issues causing crashes #39
Merged
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.
fix: bound cipher memcpy to 5 bytes (4 hex + NUL) to stop overflowing 5-byte pool alloc in ja4->ciphers copy
Previously copied the entire hex stack buffer (longer than dest), corrupting request pools and crashing workers. ----
fix: correct sigalgs iteration bounds in JA4
Call SSL_get_sigalgs starting at index 0 (not -1) and loop i=0..num_sigalgs-1; avoids out-of-bounds write into the sigalgs array.
These fixes are for items that were causing worker crashes with rapid requests. This was tested originally with 200 rapid tests which caused multiple crashes, after these patches it was tested again with 2,000 requests with no crashes.
Verified this locally with no issues after these patches.