Announcement

Collapse
No announcement yet.

Firmware Reverse-Engineering Using NSA Software Continues

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Firmware Reverse-Engineering Using NSA Software Continues

    Phoronix: Firmware Reverse-Engineering Using NSA Software Continues

    Earlier this month we reported on a new Google Summer of Code project making use of NSA software to help with firmware reverse engineering. So far that effort seems to be paying off of using Ghidra...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    I hope this will result in more robust hardware support.

    Comment


    • #3
      Very cool stuff, vendor's proprietary firmware has always been a pain point. Nice work NSA, open sourcing this handy tool!

      Comment


      • #4
        A bit sad that having to reverse engineering stuff like this is even necessary...

        Comment


        • #5
          Jeez! This is quite a project for student developer! Good choice and good luck to Mr. Alex James 👏

          Comment


          • #6
            Originally posted by torsionbar28 View Post
            Very cool stuff, vendor's proprietary firmware has always been a pain point. Nice work NSA, open sourcing this handy tool!
            just imagine, that tool is several years old judging by some code headers. imagine what they have now....

            Comment


            • #7
              Oh boy, this reminds me of my very first engineering catastrophe.

              I became an embedded systems hardware/firmware/software designer in a very unusual way. To make a long story short, though I'd been told I was very intelligent all my life I didn't feel that way. The problem was I could never learn anything at conventional schools. In fact school literally bored me to tears, and sometimes made me vomit. But if left to my own devices I could learn things that would take a decade of school in only a few short months. So the first time I had six months in a well equipped research and development company (as a low paid technician/gofer) I taught myself firmware programming in pure hexadecimal because I knew nothing of assembler languages, or anything else for that matter. When my boss came in one morning and I flipped on some prototype hardware with partially functioning firmware he was absolutely stunned. He immediately made me a firmware programmer, and hired an expensive consultant to teach me whatever I wanted to know, completely at my command.

              But of course some things can only be learned from experience.

              About six months later I found myself the lead firmware programmer at ARACOR, completely stunned by my success, and just a bit cocky. I'd been given a 75K budget to buy development tools, and was suckered into buying a terrible Tektronix system instead of the vastly superior HP one. But it had a fantastic new thing called a "Winchester Drive", which we now call hard disks, that had a capacity of 10MB! An astounding amount of data for that time.

              So there I was, working 16 hours a day in absolute heaven. Literally sleeping in my car in the parking lot at night because I was homeless, churning out advanced self assembling code in RAM during the day trying to get those old 8085s to do things they were never designed to do. And then it happened. One morning I came in and the Winchester Drive was completely dead, and all my data was lost. I was shocked, as I'd never even known such a thing was possible. And when my boss came in and told me to just restore the code from backups to a new system I was sure I was toast.

              I had to tell him I didn't have any backups, but to my surprise he just laughed. He told me this was going to be my first real life, hard learned, lesson in engineering. And then ordered me to start recreating my code from the last PROM I burned and whatever code listings I'd printed. I was given one month do it.

              And I did, but my goodness this article immediately brought back that experience and made me remember just how difficult it was. I actually started to develop tools to make disassembling, identifying loops, subroutines, etc. easier, but when my boss came in and saw what I was doing he told me there was no time for that, and to just take notes on what I wanted to do for later.

              Man, I sure wish I would have had these tools back then

              "Knowledge is free.

              It’s the certificate that costs."
              SearingTruth
              Last edited by muncrief; 12 June 2019, 01:19 PM.

              Comment

              Working...
              X