FuzzingLabs / thoth

Cairo/Starknet security toolkit (bytecode analyzer, disassembler, decompiler, symbolic execution, SBMC)
https://fuzzinglabs.com/
GNU Affero General Public License v3.0
247 stars 21 forks source link

SSA with wrong variables #128

Open 0xcompiler opened 1 year ago

0xcompiler commented 1 year ago

Hey! I believe your SSA has a problem when fetching variables. I think it is because you are not incrementing the AP when you have a variable declaration. Because of that, my SSA is using variables such as v0_callers_function_frame, and v1_return_instruction in places that they are not supposed to be used.

Am I wrong? This is the simple I'm running:

Screenshot 2023-03-29 at 15 39 35

With your SSA version:

Screenshot 2023-03-29 at 15 37 56

With my tweak (simply incrementing the AP when I see a declaration):

Screenshot 2023-03-29 at 15 40 31

Thank you very much!