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
Missing Architecture QCOM DSP6 #395
Comments
This would be great to integrate into EMBA. Looks like objdump does not support it by default. Could you do a double check on this?
I can give further support on every step. |
Will have a look at it, no unfortunately I cannot share this firmware, but all mobile phone android systems for Qualcomm should have this, will also look if I find some freely available firmware. |
Keep us updated and if you need some help ping me |
I have introduced a basic detection in #399 |
Seems to work so far: [[0;33m*[0m] Architecture auto detection (could take some time)
|
@m-1-k-3 : I wanted to add the QCOM6 to the radare2 analysis, I have two questions about this:
|
Hi @jblu42, thank you for your effort. I will try to answer your questions:
looks like this is a typo. Could you fix this in your upcoming PR
There are some little differences: PPC32:
vs x86: But as far as I can see it looks like as we are able to create a function for populating the NETWORKING variable.
The r2 command is much slower compared to objdump. This is the reason we are primarly using objdump and just in case objdump is not able to handle a binary we bring r2 in place.
This
and this
should ensure that module s12 and s13 should run before s14. Proably the
To do this in a consistent way I will create helper function to handle this always the same way. |
This issue is stale because it has been open for 28 days with no activity. |
While reading an article for a different topic I have seen that Qemu supports this architecture with the |
Is your feature request related to a problem? Please describe.
When analyzing Android images that run on Qualcomm CPUs there might be libraries and code that run on the Qualcomm Hexagon DSP. https://en.wikipedia.org/wiki/Qualcomm_Hexagon
Currently this architecture is not supported, so emba returns error messages for these files:
Something went wrong ... no supported architecture available
[-] Tested binary: /logs/firmware/patool_extraction/lib/
[-] Please open an issue at https://github.com/e-m-b-a/emba/issues
File output:
ELF 32-bit LSB shared object, QUALCOMM DSP6, version 1 (SYSV), dynamically linked, no section header
Describe the solution you'd like
Support to analyze Hexagon files, which would mean to introduce an additional architecture in emba. objdump probably does not support the hexagon architecture so far I only found references to the Qualcomm SDK which is not freely available, but radare2 should support it.
Additional context
I can put some work into this, if this is of interest for the emba project. In case there is interest an idea where to start would be great.
The text was updated successfully, but these errors were encountered: