moralismercatus / crete

Open source concolic testing tool for binaries
1 stars 1 forks source link

glibc's strtol causes symbolic address #101

Open moralismercatus opened 9 years ago

moralismercatus commented 9 years ago

(At least as it's used in eval.c)

Why is this?

I'm making this ticket because even if the concretization workaround is forthcoming, I'm still curious to know why this is happening.

moralismercatus commented 9 years ago

I should note that atoi and company suffer from the same problem.

moralismercatus commented 9 years ago

One reason that similar functions such as atoi also suffer from this problem is that they internally call strol.

It's very likely that the reason this is happening is not due to a true symbolic address, but is rather caused by an erroneous side effect of QEMU's translation of the testb instruction. If memory serves, the testb instruction, after translation, causes erroneous concretization because of the parity table. A known issue.