Process Whitelisting And Resource
Access Control For ICS Computers
Kuniyasu Suzaki
National Institute of Advanced Industrial
Science and Technology (AIST)
&
Control System Security Center (CSSC)
At S4x14 SCADA Security Scientific Symposium
OTDay 14/Jan/2014
Who am I?
• Kuniyasu Suzaki is a researcher of
– National Institute of Advanced Industrial Science and
Technology (AIST)
– Control System Security Center (CSSC)

Entrance of
Tohoku Tagajo
Headquarters
(TTHQ) of CSSC
What is CSSC?
■Outline

http://www.css-center.or.jp/
Total 23 corporations (As of Dec, 2013)

Control System Security Center

•
•
•
•
•

(Abbreviation) CSSC

Name

Established

※A corporation authorized by the
Minister of Economics, Trade and
Industry
March 6, 2012 (The registration date)

[Tohoku Tagajo Headquarters
(TTHQ)]
Tagajo City, Miyagi, Japan

Location

[Tokyo Research Center (TRC)]
National Institute of Advanced Industrial
Science and Technology Waterfront,
Tokyo, Japan

Association
members
(In
alphabetical
order)

•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•

*8 starting member corporations
Azbil Corporation *
Fuji Electric Co., Ltd.
FUJITSU LIMITED
Hitachi, Ltd.*
Information-technology Promotion Agency, Japan
(IPA)
Japan Quality Assurance Organization(JQA)
LAC Co., Ltd.
McAfee Co.,Ltd.
Mitsubishi Electric Corporation
Mitsubishi Heavy Industries Ltd.*
Mitsubishi Research Institute Inc.*
Mori Building Co., Ltd.*
National Institute of Advanced Industrial Science
and Technology (AIST) *
NEC Corporation
NRI Secure Technologies Ltd.
NTT Corporation
OMRON Corporation
The University of Electro-Communications,
Tohoku Information Systems
Company, Incorporated
Toshiba Corporation*
Toyota InfoTechnology Center Co., Ltd.
Trend Micro Incorporated
Yokogawa Electric Corporation*
Organization and Activity
• Under the supervision of the
Steering Committee, 4 task
committees were established.
• Certification Laboratory (CSSC-CL)
has also launched since
01/08/2013.
Task Committee

Activities

R&D and Testbed Task Committee

It sets the direction of R&D regarding control system security as well as the
construction of testbeds and promotes R&D and leverages the testbeds.

Certification and Standardization
Task Committee

It examines evaluation certification regarding control system security and strategies
and policies of standardization. It leverages the testbeds for evaluation certification
and standardization.

Incident Handling Task Committee

It prepares for security incidents in control systems and examines the directions of
technical development needed for incident handling including the countermeasures of
security incidents.

Promotion and Human Resource
Development Task Committee

It sets the direction of awareness and human resource development for control
system security as a technical research association. It enhances situational
awareness and promotes human resource development, making the use of the
testbeds.

CL
CSSC-CL

Activities
It promotes International standard compliance certification. Especially it conducts
evaluation/certification of ICS and “Communication Robustness Test” defined in
EDSA.
Testbed of CSSC
Process automation systems

Factory automation
Today’s Topic
Why white list control is used on ICS?
• Contents
– Background
– OS lockdown by white list control
– Implementation detail
– Case study on SCADA System
Background to introduce
white list (1/3)
• OSes on ICS were changed from Special to Commodity.
– Commodity OS is cheap. It has plenty of functions, developers,
users and vulnerabilities.
– Example: Many SCADA systems on Windows
Special OS

Commodity OS

Functions
Few

Many

Vulnerabilities
Few

Many

Apply White List
Technology
(Lockdown)
inactivate necessary
functions

Reduce vulnerabilities
Background to introduce
white list (2/3)
• Best Effort vs.. Quality Control (Taguchi Method)
– Quality Control is not real time processing.
• Dispersion of overhead (time delay) must be controlled.

– Commodity OS has many security tools(Anti-Virus tools), but
they are based on best effort.
• There is no guarantee for delay, because the black list must be updated
periodically.

• ICS systems require predictable delay.
– The delay caused by security tools should be predictable.
Background to introduce
white list (3/3)
• White list control
– The overhead is predictable.
– It can add on an existing OS of ICS.

• ICS does not need to run many applications.
– E.g., SCADA system requires few applications.

• White list control orders a lockdown of OS.
OS Lockdown

• Lockdown for malware.
• Legitimate applications work well, if necessary
computing resources are registered.
(1) Process Creation
(2) Computing Resources Access from a process
Function of OS Lockdown
(1) Limit the process creation
– Parent-child relation
• Necessary applications must register its parent applications
on a process white list.

– Integrity check for binary
• SHA-1 of binaries must register to process white list.

– [Useful Option] Conflict of interest
• If an application must run exclusively with another
application, they cannot run at the same time.
• It can prevent TOCTOU attack (Time of check to time of use)
• False operation is also prevented.
– For example, administrator cannot run office applications during
SCADA.
Function of OS Lockdown
(2) Limit computing resource access from a process
– The computing resources are file, device, and network
(IP address and port).
• If a relation between a resource and processes is registered to the
white list, the resource is accessed from the processes only.

– “don’t care” setting
• If a resource is not registered, all process can access to it.
• It is a request from ICS developers!
• Traditional access control is too strict and difficult to make
white list (e.g., SELinux). Furthermore, many elements of
white list cause access delay.
• Availability is important on ICS.
Example of OS Lockdown
Normal OS on HMI

Lockdown OS on HMI
 Process White List
(1) A creates B,D, and G. (2) D creates E.
(3) E and G cannot run at same time.
 Resource Access Control

Applications have vulnerabilities, and
resources have no limitation to use.

is opened by A and B.

Attack creates malicious C process.

A

B

C

creates G
process to
access the
disk.

Attack creates malicious C process.

A

Attack

is opened by E

and G

B

C

D

E

No rule for the process
creation

Attack

D

E

Attack
accesses the green
file.

G

creates G
process to
access the
disk.

No rule to access the file

Attack
accesses the green
file.

G

G can be created by A and can access
to the disk. However, G cannot run
along with E at the same time to
protect same resource access.
Related Works
SE Linux

Tomoyo
Linux

Commercial white list
(Win)

Our method
(Win)

Parent-Child
relation

✔

✔

―

✔

Conflict of Interest

―

―

―

✔

SHA1 Integrity
Check

―

―

―

✔

Access Control

✔

✔

partially

✔

Log based List
Creation

―

✔

✔

✔
Current Implementation
• Process creation is implemented by a hook function
– PsSetCreateProcessNotifyRoutineEX()

• Resource Access control is implemented by Filter Manager
PWC and RAC are implemented
on Windows OS as device
driver.
User Space

Parent
Process
Request to create process
(system Call)

Kernel Space

White

Child
(SHA1)―Parent

Request to access resources
(system Call)

Executive API

Hook create process system call by
PsSetCreateProcessNotifyRoutine
Process
List

Child
Process

Process
white list
module

…

Executive API
Access Control List
I/O Manger

Process Manger
File
Creation is
denied if no
statement on
Process White
List.

Network
Device

File System
Return “CreationStatus”
to allow or disallow

If process creation is allowed,
a child process is created.

Filter Manager
(Resource Access
Control)
Device Driver

Resource

Access is denied
if target resource is
listed and the access
is not allowed.
How to create white list
• 4 types of white list are created.
P: Process creation F: File access
N: Network Access D: Device Access

• Most parts are created by logs of trials.
– The logs are formatted and refined by editing tool.
Log
gathering

Application

P

F

Driver for Log
gathering

Windows 7

N D

Application

Application

Editing tool
Controlled

Controlled

Process White
List

P

Access
Control

F
Windows 7

N D
Sample: Process White List
Child process

SHA-1 of child process binary

Parent process

C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,System
C:WindowsSystem32autochk.exe,1bd90caff9f3ab1d3cb7136ce9146c1c2e69368b,C:WindowsSystem32smss.exe
C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe
C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe
C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe
C:WindowsSystem32wininit.exe,c7bba9840c44e7739fb314b7a3efe30e6b25cc48,C:WindowsSystem32smss.exe
C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe
C:WindowsSystem32services.exe,54a90c371155985420f455361a5b3ac897e6c96e,C:WindowsSystem32wininit.exe
C:WindowsSystem32lsass.exe,d49245356dd4dc5e8f64037e4dc385355882a340,C:WindowsSystem32wininit.exe
C:WindowsSystem32lsm.exe,e16beae2233832547bac23fbd82d5321cfc5d645,C:WindowsSystem32wininit.exe
C:WindowsSystem32winlogon.exe,b8561be07a37c7414d6e059046ab0ad2c24bd2ad,C:WindowsSystem32smss.exe

Parent-Child relation
Sample: Process White List
Child process

SHA-1 of child process binary

Parent process

C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,System
C:WindowsSystem32autochk.exe,1bd90caff9f3ab1d3cb7136ce9146c1c2e69368b,C:WindowsSystem32smss.exe
C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe
C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe
C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe
C:WindowsSystem32wininit.exe,c7bba9840c44e7739fb314b7a3efe30e6b25cc48,C:WindowsSystem32smss.exe
C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe
C:WindowsSystem32services.exe,54a90c371155985420f455361a5b3ac897e6c96e,C:WindowsSystem32wininit.exe
C:WindowsSystem32lsass.exe,d49245356dd4dc5e8f64037e4dc385355882a340,C:WindowsSystem32wininit.exe
C:WindowsSystem32lsm.exe,e16beae2233832547bac23fbd82d5321cfc5d645,C:WindowsSystem32wininit.exe
C:WindowsSystem32winlogon.exe,b8561be07a37c7414d6e059046ab0ad2c24bd2ad,C:WindowsSystem32smss.exe

Parent-Child relation

SHA-1 of binary is used for
the integrity check.
– It works as integrity
check.
Sample: Resource Access Control
• File Access Control
File
processes
C:optSCADAlog.txt, C:optSCADASACA.exe,C:Windowsexplorer.exe
C:optSCADAconfig, C:optSCADASACA.exe,C:Windowsexplorer.exe
C:optOPCconfig, C:optOPCOPC.exe,C:Windowsexplorer.exe

• Network Access Control
IP Address, Port, Applications
192.168.0.12,80,C:Program FilesInternet Exploreriexplore.exe
192.168.0.11,80,C:UserstestGoogleChromeApplicationchrome.exe
192.168.0.10,0,C:optnetperfnetperf.exe,C:optnetperfnetserver.exe
Optimization for ICS
• Small white list
– “don’t care” setting allows small white list.

• White list mechanism for file is applied on open()
function only. It does not care for read()and write().
– String match takes much time. It takes about 200-300 μ-sec
on current CPU.

• White list mechanism for IP address and port takes less
than 20 μ-sec, because it is achieved by arithmetic
operations.
Case study on SCADA system
• White List Control is applied on a SCADA system
PLC Emulator
PLC Emulator
PLC Emulator
PLC Emulator
PLC Emulator

PLC Emulator
PLC Emulator
PLC Emulator
PLC Emulator
PLC Emulator

SCADA
Config
file

Log
file

OPC
Config
file

• SCADA and OPC get information
from PLC every 1 second.

NIC

Modbus/TCP

PLC Emulator
PLC Emulator
PLC Emulator
PLC Emulator
PLC Emulator
Detail of SCADA System
• Server (Windows7 32bit)
– SCADA (3 types are tested) PA-Panel, Winlog, OpenSCADA http://openscada.org/
– OPC DeviceExplore

• PLC
– Modbus PLC emulator http://www.plcsimulator.org/
• 5 emulators run on 3 PCs (Total 15).
OS Lockdown
• Limit Process creation
– About 100 parent-child relations

• IP addresses and ports
– 5 networks for SCADA, 10 networks for OPC

• Configure and Log files are limited
– 2 files for SCADA, 1 files for OPC
Red line indicates access limitation for SCADA
Green line indicates access limitation for OPC

Each overhead is estimated less than
200 usec.
Attack on the SCADA system
• IE’en [BlackHat’02] attacks on DCOM (port 135) which is
used by OPC.
– http://www.securityfriday.com/tools/IEen.html

• The attack is prevented by white list control, because the
attack requires process creation which is not registered
on the white list.
Limitation of Current White List
• Current White List control cannot reduce vulnerabilities.
– Malware can exploit, but the activity is limited.

• It is not easy to make perfect white list automatically.
– Current white list is made from several trials. It is
also refined by hand.
– A method to create white list from a specification is
needed. [future work]
Conclusions
• OS Lockdown (White List Control) for Industrial
Control Systems
– ICS does not need to run many applications.
– The white list control offers predictable time delay.
– Some techniques for optimization reduce the
overhead.

• White List Control is applied on SCADA systems
and confirmed its feasibility. It will be applied
on testbed systems of CSSC.

More Related Content

PPT
Detecting Problems in Industrial Networks Through Continuous Monitoring, Leve...
PDF
Monitoring ICS Communications
PDF
S4xJapan Closing Keynote
PDF
Attacking and Defending Autos Via OBD-II from escar Asia
PPTX
ICS Security from the Plant Floor Up - A Controls Engineers Approach to Secur...
PDF
Should I Patch My ICS?
PPTX
Vulnerability Inheritance in ICS (English)
PDF
API Training 10 Nov 2014
Detecting Problems in Industrial Networks Through Continuous Monitoring, Leve...
Monitoring ICS Communications
S4xJapan Closing Keynote
Attacking and Defending Autos Via OBD-II from escar Asia
ICS Security from the Plant Floor Up - A Controls Engineers Approach to Secur...
Should I Patch My ICS?
Vulnerability Inheritance in ICS (English)
API Training 10 Nov 2014

What's hot (20)

PPTX
Using Cyber-Vulnerability Assessment (CVA) to Optimize Control System Upgrade...
PDF
Accelerating OT - A Case Study
PPTX
Using Assessment Tools on ICS (English)
PDF
ICS Network Security Monitoring (NSM)
PDF
Unidirectional Security, Andrew Ginter of Waterfall Security
PPTX
Case Study: Running a DCS in a Highly Virtualized Environment, Chris Hughes o...
PDF
Cybersecurity for modern industrial systems
PDF
Active Directory in ICS: Lessons Learned From The Field
PPTX
Network Reliability Monitoring for ICS: Going Beyond NSM and SIEM
PPTX
Cyber & Process Attack Scenarios for ICS
PDF
Unidirectional Network Architectures
PPTX
The Future of ICS Security Products
PDF
Securing SCADA
PDF
The journey to ICS - Extended
PDF
Nist 800 82 ICS Security Auditing Framework
PPTX
Sharing Plant Data with Phones, Tablets and the Cloud (Englsh)
PPTX
SCADA Security Webinar
PDF
RSAC 2016: How to Get into ICS Security
PDF
DTS Solution - Crypto Flow Segmentation addressing NESA IAF and ISO27001 comp...
PPTX
Critical Infrastructure Security by Subodh Belgi
Using Cyber-Vulnerability Assessment (CVA) to Optimize Control System Upgrade...
Accelerating OT - A Case Study
Using Assessment Tools on ICS (English)
ICS Network Security Monitoring (NSM)
Unidirectional Security, Andrew Ginter of Waterfall Security
Case Study: Running a DCS in a Highly Virtualized Environment, Chris Hughes o...
Cybersecurity for modern industrial systems
Active Directory in ICS: Lessons Learned From The Field
Network Reliability Monitoring for ICS: Going Beyond NSM and SIEM
Cyber & Process Attack Scenarios for ICS
Unidirectional Network Architectures
The Future of ICS Security Products
Securing SCADA
The journey to ICS - Extended
Nist 800 82 ICS Security Auditing Framework
Sharing Plant Data with Phones, Tablets and the Cloud (Englsh)
SCADA Security Webinar
RSAC 2016: How to Get into ICS Security
DTS Solution - Crypto Flow Segmentation addressing NESA IAF and ISO27001 comp...
Critical Infrastructure Security by Subodh Belgi
Ad

Similar to Process Whitelisting and Resource Access Control For ICS Computers, Kuniyasu Suzaki of National Institute of AIST and CSSC (20)

PPT
Industrial control systems cybersecurity.ppt
PPT
Control system including PLC cybersecurity
PPTX
Industrial Cyber Security: What is Application Whitelisting?
PDF
2014-12-16 defense news - shutdown the hackers
PPT
Power Grid Communications & Control Systems
PDF
Industrial Control Systems 101 - Why Hack The Network If You Can Shut Down Th...
DOCX
Tonight, March 5th – Class 7 (last class) your test” on ICS.docx
PDF
ICS security
PDF
Guide to industrial control systems (ics) security
PPTX
Ics presentation
PDF
Industrial Control Cyber Security Europe 2015
PPS
Developing an Effective
PDF
Build A Solid Foundation For Industrial Network Security - Cybersecurity Webi...
PPTX
Hacker Halted 2016 - How to get into ICS security
PDF
How to Get into ICS Security byChris Sistrunk
PDF
Cyber security colombo meetup
PPTX
Understanding Cyber Industrial Controls in the Manufacturing and Utilities En...
PDF
Nist 800 82
PDF
115.pdf
PDF
Nist.sp.800 82r2
Industrial control systems cybersecurity.ppt
Control system including PLC cybersecurity
Industrial Cyber Security: What is Application Whitelisting?
2014-12-16 defense news - shutdown the hackers
Power Grid Communications & Control Systems
Industrial Control Systems 101 - Why Hack The Network If You Can Shut Down Th...
Tonight, March 5th – Class 7 (last class) your test” on ICS.docx
ICS security
Guide to industrial control systems (ics) security
Ics presentation
Industrial Control Cyber Security Europe 2015
Developing an Effective
Build A Solid Foundation For Industrial Network Security - Cybersecurity Webi...
Hacker Halted 2016 - How to get into ICS security
How to Get into ICS Security byChris Sistrunk
Cyber security colombo meetup
Understanding Cyber Industrial Controls in the Manufacturing and Utilities En...
Nist 800 82
115.pdf
Nist.sp.800 82r2
Ad

More from Digital Bond (18)

PDF
Remote Control Automobiles at ESCAR US 2015
PPTX
The RIPE Experience
PDF
Windows Service Hardening
PDF
Lessons Learned from the NIST CSF
PDF
Assessing the Security of Cloud SaaS Solutions
PDF
Unidirectional Security Appliances to Secure ICS
PPTX
Internet Accessible ICS in Japan (English)
PPTX
Survey and Analysis of ICS Vulnerabilities (Japanese)
PPTX
ICS Security Training ... What Works and What Is Needed (Japanese)
PPTX
Incubation of ICS Malware (English)
PPTX
Dynamic Zoning Based On Situational Activity in ICS (Japanese)
PPTX
Havex Deep Dive (English)
PPTX
Unsolicited Response - Getting BACnet Off of the Internet (Japanese)
PPTX
Application Whitelisting and DPI in ICS (English)
PDF
Industrial Wireless Security (Japanese)
PDF
S4x14 Session: You Name It; We Analyze It
PDF
Writing ICS Vulnerability Analysis
PDF
HART as an Attack Vector
Remote Control Automobiles at ESCAR US 2015
The RIPE Experience
Windows Service Hardening
Lessons Learned from the NIST CSF
Assessing the Security of Cloud SaaS Solutions
Unidirectional Security Appliances to Secure ICS
Internet Accessible ICS in Japan (English)
Survey and Analysis of ICS Vulnerabilities (Japanese)
ICS Security Training ... What Works and What Is Needed (Japanese)
Incubation of ICS Malware (English)
Dynamic Zoning Based On Situational Activity in ICS (Japanese)
Havex Deep Dive (English)
Unsolicited Response - Getting BACnet Off of the Internet (Japanese)
Application Whitelisting and DPI in ICS (English)
Industrial Wireless Security (Japanese)
S4x14 Session: You Name It; We Analyze It
Writing ICS Vulnerability Analysis
HART as an Attack Vector

Recently uploaded (20)

PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PDF
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
PDF
Connector Corner: Transform Unstructured Documents with Agentic Automation
PDF
Auditboard EB SOX Playbook 2023 edition.
PDF
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
PDF
4 layer Arch & Reference Arch of IoT.pdf
PDF
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
PDF
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
PDF
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf
PDF
Electrocardiogram sequences data analytics and classification using unsupervi...
PPTX
Presentation - Principles of Instructional Design.pptx
PPTX
SGT Report The Beast Plan and Cyberphysical Systems of Control
PDF
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
PDF
Build Real-Time ML Apps with Python, Feast & NoSQL
PDF
Early detection and classification of bone marrow changes in lumbar vertebrae...
PDF
A symptom-driven medical diagnosis support model based on machine learning te...
PDF
A hybrid framework for wild animal classification using fine-tuned DenseNet12...
PDF
Aug23rd - Mulesoft Community Workshop - Hyd, India.pdf
PPTX
Internet of Everything -Basic concepts details
PPTX
MuleSoft-Compete-Deck for midddleware integrations
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
The-Future-of-Automotive-Quality-is-Here-AI-Driven-Engineering.pdf
Connector Corner: Transform Unstructured Documents with Agentic Automation
Auditboard EB SOX Playbook 2023 edition.
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
4 layer Arch & Reference Arch of IoT.pdf
IT-ITes Industry bjjbnkmkhkhknbmhkhmjhjkhj
5-Ways-AI-is-Revolutionizing-Telecom-Quality-Engineering.pdf
Planning-an-Audit-A-How-To-Guide-Checklist-WP.pdf
Electrocardiogram sequences data analytics and classification using unsupervi...
Presentation - Principles of Instructional Design.pptx
SGT Report The Beast Plan and Cyberphysical Systems of Control
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
Build Real-Time ML Apps with Python, Feast & NoSQL
Early detection and classification of bone marrow changes in lumbar vertebrae...
A symptom-driven medical diagnosis support model based on machine learning te...
A hybrid framework for wild animal classification using fine-tuned DenseNet12...
Aug23rd - Mulesoft Community Workshop - Hyd, India.pdf
Internet of Everything -Basic concepts details
MuleSoft-Compete-Deck for midddleware integrations

Process Whitelisting and Resource Access Control For ICS Computers, Kuniyasu Suzaki of National Institute of AIST and CSSC

  • 1. Process Whitelisting And Resource Access Control For ICS Computers Kuniyasu Suzaki National Institute of Advanced Industrial Science and Technology (AIST) & Control System Security Center (CSSC) At S4x14 SCADA Security Scientific Symposium OTDay 14/Jan/2014
  • 2. Who am I? • Kuniyasu Suzaki is a researcher of – National Institute of Advanced Industrial Science and Technology (AIST) – Control System Security Center (CSSC) Entrance of Tohoku Tagajo Headquarters (TTHQ) of CSSC
  • 3. What is CSSC? ■Outline http://www.css-center.or.jp/ Total 23 corporations (As of Dec, 2013) Control System Security Center • • • • • (Abbreviation) CSSC Name Established ※A corporation authorized by the Minister of Economics, Trade and Industry March 6, 2012 (The registration date) [Tohoku Tagajo Headquarters (TTHQ)] Tagajo City, Miyagi, Japan Location [Tokyo Research Center (TRC)] National Institute of Advanced Industrial Science and Technology Waterfront, Tokyo, Japan Association members (In alphabetical order) • • • • • • • • • • • • • • • • • • *8 starting member corporations Azbil Corporation * Fuji Electric Co., Ltd. FUJITSU LIMITED Hitachi, Ltd.* Information-technology Promotion Agency, Japan (IPA) Japan Quality Assurance Organization(JQA) LAC Co., Ltd. McAfee Co.,Ltd. Mitsubishi Electric Corporation Mitsubishi Heavy Industries Ltd.* Mitsubishi Research Institute Inc.* Mori Building Co., Ltd.* National Institute of Advanced Industrial Science and Technology (AIST) * NEC Corporation NRI Secure Technologies Ltd. NTT Corporation OMRON Corporation The University of Electro-Communications, Tohoku Information Systems Company, Incorporated Toshiba Corporation* Toyota InfoTechnology Center Co., Ltd. Trend Micro Incorporated Yokogawa Electric Corporation*
  • 4. Organization and Activity • Under the supervision of the Steering Committee, 4 task committees were established. • Certification Laboratory (CSSC-CL) has also launched since 01/08/2013. Task Committee Activities R&D and Testbed Task Committee It sets the direction of R&D regarding control system security as well as the construction of testbeds and promotes R&D and leverages the testbeds. Certification and Standardization Task Committee It examines evaluation certification regarding control system security and strategies and policies of standardization. It leverages the testbeds for evaluation certification and standardization. Incident Handling Task Committee It prepares for security incidents in control systems and examines the directions of technical development needed for incident handling including the countermeasures of security incidents. Promotion and Human Resource Development Task Committee It sets the direction of awareness and human resource development for control system security as a technical research association. It enhances situational awareness and promotes human resource development, making the use of the testbeds. CL CSSC-CL Activities It promotes International standard compliance certification. Especially it conducts evaluation/certification of ICS and “Communication Robustness Test” defined in EDSA.
  • 5. Testbed of CSSC Process automation systems Factory automation
  • 6. Today’s Topic Why white list control is used on ICS? • Contents – Background – OS lockdown by white list control – Implementation detail – Case study on SCADA System
  • 7. Background to introduce white list (1/3) • OSes on ICS were changed from Special to Commodity. – Commodity OS is cheap. It has plenty of functions, developers, users and vulnerabilities. – Example: Many SCADA systems on Windows Special OS Commodity OS Functions Few Many Vulnerabilities Few Many Apply White List Technology (Lockdown) inactivate necessary functions Reduce vulnerabilities
  • 8. Background to introduce white list (2/3) • Best Effort vs.. Quality Control (Taguchi Method) – Quality Control is not real time processing. • Dispersion of overhead (time delay) must be controlled. – Commodity OS has many security tools(Anti-Virus tools), but they are based on best effort. • There is no guarantee for delay, because the black list must be updated periodically. • ICS systems require predictable delay. – The delay caused by security tools should be predictable.
  • 9. Background to introduce white list (3/3) • White list control – The overhead is predictable. – It can add on an existing OS of ICS. • ICS does not need to run many applications. – E.g., SCADA system requires few applications. • White list control orders a lockdown of OS.
  • 10. OS Lockdown • Lockdown for malware. • Legitimate applications work well, if necessary computing resources are registered. (1) Process Creation (2) Computing Resources Access from a process
  • 11. Function of OS Lockdown (1) Limit the process creation – Parent-child relation • Necessary applications must register its parent applications on a process white list. – Integrity check for binary • SHA-1 of binaries must register to process white list. – [Useful Option] Conflict of interest • If an application must run exclusively with another application, they cannot run at the same time. • It can prevent TOCTOU attack (Time of check to time of use) • False operation is also prevented. – For example, administrator cannot run office applications during SCADA.
  • 12. Function of OS Lockdown (2) Limit computing resource access from a process – The computing resources are file, device, and network (IP address and port). • If a relation between a resource and processes is registered to the white list, the resource is accessed from the processes only. – “don’t care” setting • If a resource is not registered, all process can access to it. • It is a request from ICS developers! • Traditional access control is too strict and difficult to make white list (e.g., SELinux). Furthermore, many elements of white list cause access delay. • Availability is important on ICS.
  • 13. Example of OS Lockdown Normal OS on HMI Lockdown OS on HMI  Process White List (1) A creates B,D, and G. (2) D creates E. (3) E and G cannot run at same time.  Resource Access Control Applications have vulnerabilities, and resources have no limitation to use. is opened by A and B. Attack creates malicious C process. A B C creates G process to access the disk. Attack creates malicious C process. A Attack is opened by E and G B C D E No rule for the process creation Attack D E Attack accesses the green file. G creates G process to access the disk. No rule to access the file Attack accesses the green file. G G can be created by A and can access to the disk. However, G cannot run along with E at the same time to protect same resource access.
  • 14. Related Works SE Linux Tomoyo Linux Commercial white list (Win) Our method (Win) Parent-Child relation ✔ ✔ ― ✔ Conflict of Interest ― ― ― ✔ SHA1 Integrity Check ― ― ― ✔ Access Control ✔ ✔ partially ✔ Log based List Creation ― ✔ ✔ ✔
  • 15. Current Implementation • Process creation is implemented by a hook function – PsSetCreateProcessNotifyRoutineEX() • Resource Access control is implemented by Filter Manager PWC and RAC are implemented on Windows OS as device driver. User Space Parent Process Request to create process (system Call) Kernel Space White Child (SHA1)―Parent Request to access resources (system Call) Executive API Hook create process system call by PsSetCreateProcessNotifyRoutine Process List Child Process Process white list module … Executive API Access Control List I/O Manger Process Manger File Creation is denied if no statement on Process White List. Network Device File System Return “CreationStatus” to allow or disallow If process creation is allowed, a child process is created. Filter Manager (Resource Access Control) Device Driver Resource Access is denied if target resource is listed and the access is not allowed.
  • 16. How to create white list • 4 types of white list are created. P: Process creation F: File access N: Network Access D: Device Access • Most parts are created by logs of trials. – The logs are formatted and refined by editing tool. Log gathering Application P F Driver for Log gathering Windows 7 N D Application Application Editing tool Controlled Controlled Process White List P Access Control F Windows 7 N D
  • 17. Sample: Process White List Child process SHA-1 of child process binary Parent process C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,System C:WindowsSystem32autochk.exe,1bd90caff9f3ab1d3cb7136ce9146c1c2e69368b,C:WindowsSystem32smss.exe C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe C:WindowsSystem32wininit.exe,c7bba9840c44e7739fb314b7a3efe30e6b25cc48,C:WindowsSystem32smss.exe C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe C:WindowsSystem32services.exe,54a90c371155985420f455361a5b3ac897e6c96e,C:WindowsSystem32wininit.exe C:WindowsSystem32lsass.exe,d49245356dd4dc5e8f64037e4dc385355882a340,C:WindowsSystem32wininit.exe C:WindowsSystem32lsm.exe,e16beae2233832547bac23fbd82d5321cfc5d645,C:WindowsSystem32wininit.exe C:WindowsSystem32winlogon.exe,b8561be07a37c7414d6e059046ab0ad2c24bd2ad,C:WindowsSystem32smss.exe Parent-Child relation
  • 18. Sample: Process White List Child process SHA-1 of child process binary Parent process C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,System C:WindowsSystem32autochk.exe,1bd90caff9f3ab1d3cb7136ce9146c1c2e69368b,C:WindowsSystem32smss.exe C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe C:WindowsSystem32smss.exe,ad34f33130393425d3d4ce671e0d4488ed8d1b6c,C:WindowsSystem32smss.exe C:WindowsSystem32wininit.exe,c7bba9840c44e7739fb314b7a3efe30e6b25cc48,C:WindowsSystem32smss.exe C:WindowsSystem32csrss.exe,53bc9b2ae89fcad6197ec519ae588f926c88e460,C:WindowsSystem32smss.exe C:WindowsSystem32services.exe,54a90c371155985420f455361a5b3ac897e6c96e,C:WindowsSystem32wininit.exe C:WindowsSystem32lsass.exe,d49245356dd4dc5e8f64037e4dc385355882a340,C:WindowsSystem32wininit.exe C:WindowsSystem32lsm.exe,e16beae2233832547bac23fbd82d5321cfc5d645,C:WindowsSystem32wininit.exe C:WindowsSystem32winlogon.exe,b8561be07a37c7414d6e059046ab0ad2c24bd2ad,C:WindowsSystem32smss.exe Parent-Child relation SHA-1 of binary is used for the integrity check. – It works as integrity check.
  • 19. Sample: Resource Access Control • File Access Control File processes C:optSCADAlog.txt, C:optSCADASACA.exe,C:Windowsexplorer.exe C:optSCADAconfig, C:optSCADASACA.exe,C:Windowsexplorer.exe C:optOPCconfig, C:optOPCOPC.exe,C:Windowsexplorer.exe • Network Access Control IP Address, Port, Applications 192.168.0.12,80,C:Program FilesInternet Exploreriexplore.exe 192.168.0.11,80,C:UserstestGoogleChromeApplicationchrome.exe 192.168.0.10,0,C:optnetperfnetperf.exe,C:optnetperfnetserver.exe
  • 20. Optimization for ICS • Small white list – “don’t care” setting allows small white list. • White list mechanism for file is applied on open() function only. It does not care for read()and write(). – String match takes much time. It takes about 200-300 μ-sec on current CPU. • White list mechanism for IP address and port takes less than 20 μ-sec, because it is achieved by arithmetic operations.
  • 21. Case study on SCADA system • White List Control is applied on a SCADA system PLC Emulator PLC Emulator PLC Emulator PLC Emulator PLC Emulator PLC Emulator PLC Emulator PLC Emulator PLC Emulator PLC Emulator SCADA Config file Log file OPC Config file • SCADA and OPC get information from PLC every 1 second. NIC Modbus/TCP PLC Emulator PLC Emulator PLC Emulator PLC Emulator PLC Emulator
  • 22. Detail of SCADA System • Server (Windows7 32bit) – SCADA (3 types are tested) PA-Panel, Winlog, OpenSCADA http://openscada.org/ – OPC DeviceExplore • PLC – Modbus PLC emulator http://www.plcsimulator.org/ • 5 emulators run on 3 PCs (Total 15).
  • 23. OS Lockdown • Limit Process creation – About 100 parent-child relations • IP addresses and ports – 5 networks for SCADA, 10 networks for OPC • Configure and Log files are limited – 2 files for SCADA, 1 files for OPC Red line indicates access limitation for SCADA Green line indicates access limitation for OPC Each overhead is estimated less than 200 usec.
  • 24. Attack on the SCADA system • IE’en [BlackHat’02] attacks on DCOM (port 135) which is used by OPC. – http://www.securityfriday.com/tools/IEen.html • The attack is prevented by white list control, because the attack requires process creation which is not registered on the white list.
  • 25. Limitation of Current White List • Current White List control cannot reduce vulnerabilities. – Malware can exploit, but the activity is limited. • It is not easy to make perfect white list automatically. – Current white list is made from several trials. It is also refined by hand. – A method to create white list from a specification is needed. [future work]
  • 26. Conclusions • OS Lockdown (White List Control) for Industrial Control Systems – ICS does not need to run many applications. – The white list control offers predictable time delay. – Some techniques for optimization reduce the overhead. • White List Control is applied on SCADA systems and confirmed its feasibility. It will be applied on testbed systems of CSSC.