Blog Post

Microsoft Defender for IoT Blog
3 MIN READ

Analyze IoT/OT device firmware with Microsoft Defender for IoT

dericknaef's avatar
dericknaef
Icon for Microsoft rankMicrosoft
Jul 24, 2023

Consider an organization that has thousands of endpoints on their network that are running 10-year old, unpatched SSH servers. Or when a critical vulnerability like log4shell is discovered, having no easy way to know which of those endpoints are exploitable. This is the situation organizations find themselves in when it comes to IoT and OT devices. This problem is so important that the US National Cybersecurity Strategy released a report in March 2023 indicating the IoT security threat as a strategic objective.

 

With modern endpoint solutions, IT and security analysts get visibility into the software inventories and known vulnerabilities for IT devices. But for IoT and OT devices without an agent, organizations don’t get the same level of visibility into the growing number of devices on their network. The devices are basically black boxes – without insight into what software or patch level was used to build the device, known vulnerabilities, or other potential anomalies. To help address this challenge, we are excited to announce the firmware analysis capability in Microsoft Defender for IoT – now available in Public Preview.

 

How firmware analysis works

Firmware analysis takes a binary firmware image that runs on an IoT device and conducts an automated analysis to identify potential security vulnerabilities and weaknesses. This analysis provides insights into the software inventory, weaknesses, and certificates of IoT devices without requiring an endpoint agent to be deployed.

 

 

To use the firmware analysis capability, navigate to the “Firmware analysis (preview)” blade in Defender for IoT and upload an unencrypted Linux-based firmware image directly. The image needs to be acquired from the device vendor. Once the image is unpacked and the embedded file system is identified, a thorough security analysis of the firmware image identifies hidden threat vectors.

 

Identifying software packages and vulnerabilities

Firmware analysis begins by producing an inventory of the open-source packages found in the firmware image, like a Software Bill of Materials (SBOM). This information helps manufacturers track and manage the open-source components in their firmware. Relying on this software inventory, firmware analysis helps security teams identify existing vulnerabilities by scanning the firmware for published Common Vulnerabilities and Exposures (CVEs), bringing them to the attention of device builders and enterprises.

Analyzing binaries

After identifying vulnerabilities, firmware analysis goes a step further by assessing binary hardening. It looks at how the code that runs the device was built, and whether it conforms to security best practices such as Stack Canaries. Binary hardening analysis shows the difficulty or ease of possible binary exploitation and is also a good proxy for the overall security hygiene taken by the manufacturer.

Identifying weak accounts and crypto

Another important threat vector in IoT devices is the use of hardcoded accounts. For example, the Mirai botnet is malware that leverages over 60 default usernames and passwords to take over IoT devices and uses them to conduct mass Distributed Denial of Service (DDoS) attacks. Firmware analysis in Defender for IoT identifies built-in user accounts and the algorithms used to encrypt password hashes of those accounts. Device manufacturers can use this information to make improvements to their firmware, and enterprise operators will be able to identify devices on their network that may pose risk.

Firmware analysis also identifies cryptographic material embedded in the device. Adversaries commonly target these materials as entry points. For example, expired, revoked, or self-signed SSL certificates can compromise communication from a device to a cloud service, potentially leaking organizational data or opening the device up to exploitation. Another potential threat vector are public and private keys that were inadvertently left in the device by the developers and grant attackers access to the device or cloud service.

 

Let us know what you think

Navigating the increasingly complex IoT landscape requires the right set of tools to paint a clearer picture into your IoT environment. The firmware analysis capability in Defender for IoT is enabling security teams to get deeper visibility into these IoT/OT devices by providing better insights into the foundational software they are built on.

 

We are excited to share the firmware analysis capability with you. If you have any feedback, please feel free to let us know in the comments below.

 

To learn more about firmware analysis, click here.

Updated Jul 18, 2023
Version 1.0

6 Comments

  • SocInABox WaleOlas -Prayas thanks for your comments. Today the firmware analysis feature works with unencrypted images running embedded Linux (any distro). So if a particular vendor / device it built with embedded Linux you should get results. Between the Firmware Analysis feature and its predecessor (ReFirm Labs Binwalk Enterprise) we've seen a wide variety of devices / vendors scanned. Other types of firmware that are bare metal microcontroller code, various flavors of RTOS or Windows IoT are not currently supported.

     

    SocInABox to answer your question RTOS and embedded linux are very different from an analysis point of view. For an example image I suggest searching for OpenWRT downloads; you can look at analysis results of older releases vs. newer. If you have questions / feedback please don't hesitate to reach out. 

  • SocInABox's avatar
    SocInABox
    Iron Contributor

    for the few tests I've done it's pretty cool.

     

    For example you can download an image from any linksys router and test it because they seem to be linux based.

     

    I'm curious about -Prayas question about RTOS - many of the RTOS kernels are linux based so does that qualify? Does anyone have a firmware link I can test?

     

    Many vendors aren't friendly about sharing their firmware and others encrypt the image so it can't be tested easily.

  • WaleOlas's avatar
    WaleOlas
    Copper Contributor

    dericknaef , this will be a major improvement to D4IoT, thanks for the great work by Microsoft. Will this firmware analysis feature only work for some vendor's devices' firmware or it will work for some proprietary firmware? I am asking to see if this capability will be useful for some IoT/OT OEMs that develop their products themselves from ground up and use these products themselves to provide services to their customers.

  • -Prayas's avatar
    -Prayas
    Copper Contributor

    Is this only supported for Linux-based firmware images? Will it work for RTOS based images?

  • SocInABox's avatar
    SocInABox
    Iron Contributor

    Hey dericknaef , is there a list of firmware that has already been scanned and the results of those scans?

    That would be a great indicator of the types of vendors/products that are supported by this feature.