nus-apr / CrashRepair

Security Vulnerability Repair via Concolic Execution and Code Mutations
17 stars 1 forks source link

CVE-2016-1839: Add support for complex crepair_base #149

Closed rshariffdeen closed 1 year ago

rshariffdeen commented 1 year ago

Linter removes the correct constraint from localization.json

[2023-04-09 05:27:40.493] [info] parsing expression: (@var(pointer, crepair_base(ctxt->input->cur - len)) <= (@var(pointer, ctxt->input->cur) - @var(pointer, len)))
WARNING: unable to parse constraint string: (@var(pointer, crepair_base(ctxt->input->cur - len)) <= (@var(pointer, ctxt->input->cur) - @var(pointer, len)))
[2023-04-09 05:27:40.494] [warning] skipping fix location: unable to parse constraint: (@var(pointer, crepair_base(ctxt->input->cur - len)) <= (@var(pointer, ctxt->input->cur) - @var(pointer, len)))
ChrisTimperley commented 1 year ago

This part of the constraint breaks our assumptions: crepair_base(ctxt->input->cur - len). Specifically that crepair_base should be applied to a single variable rather than an expression (a subtraction in this case).