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

AvatarGDBConcreteTarget for arm #23

Closed
SteinsGatep001 opened this issue Apr 28, 2022 · 4 comments
Closed

AvatarGDBConcreteTarget for arm #23

SteinsGatep001 opened this issue Apr 28, 2022 · 4 comments
Assignees

Comments

@SteinsGatep001
Copy link

Trying to create a gdb concrete target using AvatarGDBConcreteTarget(avatar2.archs.arm.ARM, 'localhost', port).

avatar_gdb = AvatarGDBConcreteTarget(avatar2.archs.arm.ARM, 'localhost', port)
p = angr.Project(target, concrete_target=avatar_gdb, use_sim_procedures=True)

But it shows that:

angr.project.CRITICAL | Concrete execution does not support yet the selected architecture. Aborting.

Should I add the concrete for this architecture myself or is there already another branch that supports this arch?

@degrigis
Copy link
Member

degrigis commented May 14, 2022

@SteinsGatep001 sorry for the late response, this sled under my radar.
It seems that there is a mismatch between the string ID used by Avatar2 for ARM and the one we are expecting when creating a concrete target? See here https://github.com/angr/angr/blob/master/angr/project.py#L170
Can you see what's the ID of the reported ARCH when you declare the avatar_gdb object?

@SteinsGatep001
Copy link
Author

the binary archis : Arch ARMEL (LE)

@SteinsGatep001
Copy link
Author

SteinsGatep001 commented Jul 12, 2022

I add "ARMEL" to ['X86', 'AMD64', 'ARMHF', 'MIPS32']: https://github.com/angr/angr/blob/master/angr/project.py#L170 , it works but it is a trick.
Any other methods?

@degrigis
Copy link
Member

Providing that you know how to synchronize the concrete state of a program running on ARMEL (the best case scenario is that under the hood is the same as ARMHF), you should be good with that simple modification.

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

No branches or pull requests

2 participants