Skip to main content

An embedded security research tool for unlocking and reading memory from Nordic nRF51 SoCs

Project description

nrfsec

nrfsec is security research tool used for unlocking and reading memory on nrf51 series SoCs from Nordic Semiconductor.

  • Read all target memory, bypassing the Memory Protection Unit (MPU) settings with integrated read gadget searching
  • Automated unlock feature: read all program and UICR memory, erase all memory, patch UICR image, reflash target into unlocked state
  • boot delay command flag for interacting with target prior to performing memory read, allow for RAM dumps
  • All firmware images are saved for importing into your favorite disassembler

Installation

nrfsec is built on the pyswd library and currently only works with the ST-Link debugging interface.

nrfsec requires python 3.7+ to run and can be installed with pip

pip3 install nrfsec

Usage

 nrfsec -h
usage: nrfsec <command> [<args>]

perform security related tasks on nRF51 targets through SWD interface

optional arguments:
  -h, --help            show this help message and exit
  -f FREQUENCY, --frequency FREQUENCY
                        frequency to run the SWD interface (default 4 MHz)
  -v, --verbose         increase output verobsity

supported subcommands:
  {info,erase,restore,read,unlock,lock}
    info                display chip information
    erase               perform a complete erase
    restore             restore specific images to an unlocked chip
    read                read memory contents to outfile
    unlock              unlock the device if locked
    lock                lock the device if unlocked

Todos

  • Test on moar targets

License

GNU GPLv3

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nrfsec-0.1.7.tar.gz (11.1 kB view details)

Uploaded Source

File details

Details for the file nrfsec-0.1.7.tar.gz.

File metadata

  • Download URL: nrfsec-0.1.7.tar.gz
  • Upload date:
  • Size: 11.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/45.2.0 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.5

File hashes

Hashes for nrfsec-0.1.7.tar.gz
Algorithm Hash digest
SHA256 0a47ee19c1aceba79899024a9412e16901c104413642ab8b76440baf3c311727
MD5 49400f29474d5375e283793181d94652
BLAKE2b-256 c970b2082e3f23bc05a15361f1292d7fc8927c80db6a4cc86223122243cd0bf1

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page