Microsoft releases new Open-Source tool for OT security and investigating Industrial Control Systems (ICS) : Introducing ICSpector

Larbi OUIYZME
2 min readApr 28, 2024

--

Source : Microsoft Github

Introduction

In the dynamic landscape of industrial control systems (ICS), security remains a paramount concern. As industries increasingly rely on interconnected devices and networks, safeguarding critical infrastructure becomes essential. To address this challenge, Microsoft has introduced ICSpector, an open-source forensics framework tailored for analyzing Industrial PLC (Programmable Logic Controller) metadata and project files.

What Is ICSpector?

ICSpector is a powerful toolkit that empowers investigators, industrial engineers, and cybersecurity analysts to delve into the intricacies of ICS environments. Let’s explore its key features :

Scanning for Programmable Logic Controllers (PLCs) :

  • ICSpector allows you to scan your network for PLCs. These devices play a crucial role in industrial automation and control systems.
  • By identifying PLCs, you gain insights into the devices responsible for managing critical processes.

Extracting Project Configuration and Code :

  • Extracting configuration details and code from controllers is essential for understanding how an ICS operates.
  • ICSpector simplifies this process, enabling investigators to analyze PLC project files efficiently.

Detecting Anomalous Components :

  • Anomalies within ICS environments can signal potential security threats.
  • ICSpector helps you identify suspicious artifacts, which can be used for manual checks, automated monitoring, or incident response operations.

Getting Started with ICSpector

Installation :

  • To get started, clone the ICSpector repository from GitHub: ICSpector GitHub Repo
  • Ensure you have Python 3.9 or later installed (Download Python).
  • Install Microsoft Visual C++ 14.0 (available via “Build Tools for Visual Studio”) : Visual Studio Build Tools

Usage :
ICSpector provides several command-line arguments for customization :

  • h, — help: Show help messages.
  • s, — save-config: Save a config file for future use.
  • c, — config: Specify a config file (default is config.json).
  • o, — output-dir: Set the output directory (default is output).
  • v, — verbose: Log output to a file and console.
  • p, — multiprocess: Run in multiprocess mode (useful for multiple plugins/analyzers).

Supported OT Protocols :
ICSpector currently supports three OT protocols :

  • Siemens S7Comm : Compatible with the S7–300/400 series.
  • Rockwell RSLogix : Utilizes the Common Industrial Protocol.
  • Codesys V3 : A widely used SDK implemented by various vendors.

Enhancing OT Security

By embracing ICSpector, the OT cybersecurity community can bolster both reactive and proactive incident response capabilities. Additionally, ICSpector seamlessly integrates with Microsoft Defender for IoT, a comprehensive solution for safeguarding IoT and ICS/OT devices. Together, they form a robust defense against malicious activity within your OT network.

Remember, security is a collective effort. Let’s advance our vision of better security practices in the OT field by leveraging tools like ICSpector.

Source :

https://github.com/microsoft/ics-forensics-tools

--

--

Larbi OUIYZME

I'm Larbi, from Morocco. IT trainer and Chief Information Security Officer (CISO), I'm committed to share knowledge. Also, Ham Radio CN8FF passionate about RF