Precautions for restricting externals from sniffing firmware while flashing using JTAG interface

Dear Concern,

We are currently planning a mass production of a product that uses nrf52840 USB dongle as a component. We are thinking of using JTAG debugger to flash the firmware. The flashing will be done in one of our OEMs production facility. I'll need some suggestions.   

1. Can the firmware be sniffed from JTAG interface while flashing?

2. If the first question is yes, Is there any debugger that can detect sniffing?

3. What are some precautions that can be taken in hardware, firmware and flashing software?

4. How will raspberry pi be as a flashing tool and what are some alternatives?

Thanks in Advance.

Best Regards,

Sumit

  • Sorry for the late response.

    1. Can the firmware be sniffed from JTAG interface while flashing?

    No, you can only use the SWD interface as exposed on the layout descriptions here

    3. What are some precautions that can be taken in hardware, firmware and flashing software?

    Everything you need to consider regarding precautions are mentioned here. Most relevant part for your question would be the part explaining "Using an external debugger". 

    4. How will raspberry pi be as a flashing tool and what are some alternatives?

    Anything that supports SWD interface as debug connect interface can be used flash the dongle. You might need a SWD wire needle adapter so that you can push the interface on the exposed pins in the dongle. The other way is to use the nRF programming tool as mentioned in the tutorials in the link given for point 3)

    Thanks again  for your patience and sorry for late response.

  • I think your question was more about the ability for someone to electrically monitor the JTAG interface, and extract the firmware. Yes, that is definitely a potential security risk. Someone could extract your firmware by monitoring the JTAG interface.

    To overcome that security risk, a solution as described below would have to be deployed:

    https://blog.stratifylabs.co/stratifylabs/2019-05-09-End-to-End-Firmware-Security/

    See section called: Securing the Flash Loader

Related