I am trying to disassemble a firmware binary which I am interested in. Yet I don't have much experience in this field, which is why I would like some input from you guys.

My current state is that I was able to obtain the *.bin file of the firmware and analyze it using binwalk. The standard analysis did not find anything, but trying the --opcodes option revealed some further information.

According to the opcodes it seems to contain a mix of different instruction sets using ARM, Ubicom32 and ARMEB instructions. Therefore, there is probably no file system to recover, but if I understand it right I may be able to disassemble the binary using something like objdump?

1406157       0x1574CD        ARM instructions, function prologue
12575041      0xBFE141        ARM instructions, function prologue
14942348      0xE4008C        ARM instructions, function prologue
16502970      0xFBD0BA        Ubicom32 instructions, function epilogue
28109096      0x1ACE928       ARM instructions, function prologue
29833956      0x1C73AE4       ARMEB instructions, function prologue
39390093      0x2590B8D       ARMEB instructions, function prologue
  • 2
    Install the multiarch version of the binutils package and you will get objdump to work for ARM binaries as well.
    – perror
    Jun 7, 2019 at 12:59
  • I tried disassembling it but it seems like the opcodes were false positives. The entropy of the binary is near 1 throughout the whole file. So I am not sure if there is more to uncover here, since there is no real structure in the bytes.
    – openloop
    Jun 13, 2019 at 7:55
  • So, this was probably a false positive. If the data are random enough, you may end up with some data which looks similar to any asm at some point. Unfortunately, it may happen!
    – perror
    Jun 14, 2019 at 14:04


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.