Directions in SELinux Networking


    Linux Kernel Networking Summit
           Montréal, Canada
               July 2005

     James Morris <jmorris@redhat.com>
SELinux
●
    SELinux provides fine­grained, flexible MAC.
●
    Subjects and objects are labeled with security 
    contexts, policy determines interactions.
●
    Type Enforcement (TE) model provides an 
    expressive abstraction of security classes and 
    their interactions.
Current Status
●
    SELinux provides broad coverage across the 
    kernel (140 hooks).
●
    All socketcalls are mediated, provides high level 
    control over local networking.
●
    Protocol specific controls for Netlink, Unix, some 
    IP (name_bind, name_connect, rudimentary 
    packet filter).
Networking Directions
●
    Performance of IP network controls needs to be 
    improved.
●
    Hit by per­packet lookups for security context of 
    port and IP addresses.
●
    IBM did some work on an RCU cache, needs 
    further investigation.
●
    May be replacing IP packet hooks anyway.
Netfilter/iptables
●
    Possibly replace existing IP packet controls with 
    Netfilter/iptables integration (selipt).
●
    More flexible & expressive, makes use of 
    conntrack, matches, targets etc.
●
    Need receiving socket: current code uses 
    ipt_owner patch.
●
    Better to use socket hook work from Patrick 
    McHardy.
Distributed MAC
●
    MAC is currently limited to the local machine.
●
    Historically used with Multi­Level Security 
    (MLS).
●
    Typically, each packet is labeled via IP options 
    (CIPSO, FIPS­188).
●
    Selopt implemented, dropped for upstream 
    merge.
Leveraging IPsec
●
    Trent Jaeger's implicit labeling work (IBM).
●
    Label SAs instead of packets.
●
    Draws on previous Flask work.
●
    Not MLS or even SELinux specific.
●
    Utilizes IPsec services: confidentiality; 
    authentication; negotiation; automation.
Leveraging IPsec II
●
    Hooks into xfrm subsystem.
●
    IPsec policies are labeled: only authorized 
    policies may be used, controlled via SELinux.
●
    SA labels must match (existing SA or triggered 
    negotiation with IKE).
●
    Matching packets considered labeled.
●
    Policy for unlabeled packets (e.g. ISAKMP).
Leveraging IPsec III
●
    Useful for MLS networking, suitable for LSPP 
    (B1) and beyond.
●
    Not compatible with IP options schemes.
●
    More generally useful for extending SELinux 
    across the network.
●
    Control communication between processes on 
    different systems.
Networked Filesystems
●
    NSA developed support for NFSv3.
●
    Future is NFSv4 with named attributes.
●
    SMB desired by some parties.
●
    Cluster Filesystems (some OCFS2 work).
Remote Attestation
●
    Use of TPM and associated hardware to 
    cryptographically verify system from boot.
●
    IBM Integrity Measurement Architecture (IMA).
●
    Requires protocol which queries TPM with 
    nonce; TPM signs measurement list and nonce.
●
    SELinux policy could be used to require that the 
    remote system is attested before some other 
    communication.
Cryptographic Policy
●
    SELinux policy could be extended to express 
    more general cryptographic policy.
●
    e.g. foo_t file must be stored with X encryption, 
    and only transmitted by local admin_t to remote 
    admin_t on trusted hosts with Y encryption and Z 
    authentication on the wire.
●
    May also require use of specific crypto device or 
    software.
Distributed Policy
●
    Mechanism for distributing and synchronizing 
    policy within a security realm may be useful 
    when using distributed MAC.
Longer Term
●
    General trend toward increasingly high assurance 
    distributed computing.
●
    Inter­realm communication.  Establishing trust 
    between different “domains of interpretation” is 
    very difficult.
●
    SE aware firewalling, complicated by Ipsec.
Resources
●
    SELinux Enhanced IPTables
    http://people.redhat.com/jmorris/selinux/selipt/

●
    “Architecture of SELinux Network Access Controls”
    http://www.selinux­symposium.org/2005/presentations/session2/2­2­morris.pdf

●
    “Leveraging IPSec for network access control for SELinux”
    http://www.selinux­symposium.org/2005/presentations/session2/2­3­jaeger.pdf

●
    Full IBM research report on the above (and more generalized).
    Not yet published

●
    Ajaya Chitturi's Flask Thesis
    http://www.cs.utah.edu/flux/papers/ajay­thesis­abs.html

More Related Content

PDF
How Many Linux Security Layers Are Enough?
PDF
Have You Driven an SELinux Lately? - An Update on the SELinux Project - OLS ...
PDF
Adding Extended Attribute Support to NFS
PDF
Linux Kernel Security Overview - KCA 2009
PDF
Linux Kernel Security: Adapting 1960s Technology to Meet 21st Century Threats
PDF
Secure and Simple Sandboxing in SELinux
PDF
Kernel Recipes 2013 - Linux Security Modules: different formal concepts
PDF
Mandatory Access Control Networking Update - Netonf 2006 Tokyo
How Many Linux Security Layers Are Enough?
Have You Driven an SELinux Lately? - An Update on the SELinux Project - OLS ...
Adding Extended Attribute Support to NFS
Linux Kernel Security Overview - KCA 2009
Linux Kernel Security: Adapting 1960s Technology to Meet 21st Century Threats
Secure and Simple Sandboxing in SELinux
Kernel Recipes 2013 - Linux Security Modules: different formal concepts
Mandatory Access Control Networking Update - Netonf 2006 Tokyo

What's hot (20)

PPTX
Linux Security Overview
PPT
Threats, Vulnerabilities & Security measures in Linux
PDF
2009-08-11 IBM Teach the Teachers (IBM T3), Linux Security Overview
PPT
Linux Security
PPT
Security and Linux Security
PPTX
Linux security
PPT
Basic Linux Security
PPT
Linux Operating System Vulnerabilities
PDF
Security of Linux containers in the cloud
PDF
XPDS16: XSM-Flask, current limitations and Ongoing work. - Anshul Makkar, Ct...
PPTX
File System Implementation & Linux Security
PDF
Futex Scaling for Multi-core Systems
ODP
Introduction To Linux Security
ODP
Security, Hack1ng and Hardening on Linux - an Overview
ODP
Linux Network Security
PDF
SELinux basics
PDF
Linux Security, from Concept to Tooling
PPT
Introduction To SELinux
PPT
Unix Security
ODP
SELinux Basic Usage
Linux Security Overview
Threats, Vulnerabilities & Security measures in Linux
2009-08-11 IBM Teach the Teachers (IBM T3), Linux Security Overview
Linux Security
Security and Linux Security
Linux security
Basic Linux Security
Linux Operating System Vulnerabilities
Security of Linux containers in the cloud
XPDS16: XSM-Flask, current limitations and Ongoing work. - Anshul Makkar, Ct...
File System Implementation & Linux Security
Futex Scaling for Multi-core Systems
Introduction To Linux Security
Security, Hack1ng and Hardening on Linux - an Overview
Linux Network Security
SELinux basics
Linux Security, from Concept to Tooling
Introduction To SELinux
Unix Security
SELinux Basic Usage
Ad

Similar to Directions in SELinux Networking (20)

PDF
The State of Security Enhanced Linux - FOSS.IN/2007
PDF
2008-03-06 Harris Corp Security Seminar
PDF
Overview of NSA Security Enhanced Linux - FOSS.IN/2005
PDF
SELinux Project Overview - Linux Foundation Japan Symposium 2008
PDF
2008-09-09 IBM Interaction Conference, Red Hat Update for System z
PPT
Operating System Fingerprinting Prevention
PDF
SELinux Johannesburg Linux User Group (JoziJUg)
PDF
Remote security with Red Hat Enterprise Linux
PDF
Flask: Flux Advanced Security Kernel
PDF
Infrastructure Security
PDF
2008-01-22 Red Hat (Security) Roadmap Presentation
PPTX
Linux 开源操作系统发展新趋势
PDF
Your First Guide to "secure Linux"
PPT
Chapter 11
PDF
DOST: Ceph in a security critical OpenStack cloud
PDF
unit 2 confinement techniques.pdf
PDF
SELinux Kernel Internals and Architecture - FOSS.IN/2005
PDF
Dssh @ Confidence, Prague 2010
The State of Security Enhanced Linux - FOSS.IN/2007
2008-03-06 Harris Corp Security Seminar
Overview of NSA Security Enhanced Linux - FOSS.IN/2005
SELinux Project Overview - Linux Foundation Japan Symposium 2008
2008-09-09 IBM Interaction Conference, Red Hat Update for System z
Operating System Fingerprinting Prevention
SELinux Johannesburg Linux User Group (JoziJUg)
Remote security with Red Hat Enterprise Linux
Flask: Flux Advanced Security Kernel
Infrastructure Security
2008-01-22 Red Hat (Security) Roadmap Presentation
Linux 开源操作系统发展新趋势
Your First Guide to "secure Linux"
Chapter 11
DOST: Ceph in a security critical OpenStack cloud
unit 2 confinement techniques.pdf
SELinux Kernel Internals and Architecture - FOSS.IN/2005
Dssh @ Confidence, Prague 2010
Ad

More from James Morris (7)

PDF
sVirt: Hardening Linux Virtualization with Mandatory Access Control
PDF
OLPC Networking Overview
PDF
Cryptographic Hardware Support for the Linux Kernel - Netconf 2004
PDF
Kernel Security for 2.8 - Kernel Summit 2004
PDF
Better IPSec Security Association Resolution - Netconf 2006 Tokyo
PDF
How and Why You Should Become a Kernel Hacker - FOSS.IN/2007
PDF
Anatomy of Fedora Kiosk Mode (FOSS.MY/2008)
sVirt: Hardening Linux Virtualization with Mandatory Access Control
OLPC Networking Overview
Cryptographic Hardware Support for the Linux Kernel - Netconf 2004
Kernel Security for 2.8 - Kernel Summit 2004
Better IPSec Security Association Resolution - Netconf 2006 Tokyo
How and Why You Should Become a Kernel Hacker - FOSS.IN/2007
Anatomy of Fedora Kiosk Mode (FOSS.MY/2008)

Recently uploaded (20)

PPTX
Chapter 5: Probability Theory and Statistics
PPT
Geologic Time for studying geology for geologist
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PPTX
Web Crawler for Trend Tracking Gen Z Insights.pptx
PPTX
Benefits of Physical activity for teenagers.pptx
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PDF
Unlock new opportunities with location data.pdf
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PDF
Taming the Chaos: How to Turn Unstructured Data into Decisions
PDF
Five Habits of High-Impact Board Members
PDF
Enhancing emotion recognition model for a student engagement use case through...
PPT
What is a Computer? Input Devices /output devices
PPTX
Modernising the Digital Integration Hub
PDF
Zenith AI: Advanced Artificial Intelligence
PPTX
O2C Customer Invoices to Receipt V15A.pptx
PDF
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
PDF
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
Getting Started with Data Integration: FME Form 101
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
Chapter 5: Probability Theory and Statistics
Geologic Time for studying geology for geologist
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Web Crawler for Trend Tracking Gen Z Insights.pptx
Benefits of Physical activity for teenagers.pptx
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
Unlock new opportunities with location data.pdf
NewMind AI Weekly Chronicles – August ’25 Week III
Taming the Chaos: How to Turn Unstructured Data into Decisions
Five Habits of High-Impact Board Members
Enhancing emotion recognition model for a student engagement use case through...
What is a Computer? Input Devices /output devices
Modernising the Digital Integration Hub
Zenith AI: Advanced Artificial Intelligence
O2C Customer Invoices to Receipt V15A.pptx
How ambidextrous entrepreneurial leaders react to the artificial intelligence...
Video forgery: An extensive analysis of inter-and intra-frame manipulation al...
Developing a website for English-speaking practice to English as a foreign la...
Getting Started with Data Integration: FME Form 101
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf

Directions in SELinux Networking

  • 1. Directions in SELinux Networking Linux Kernel Networking Summit Montréal, Canada July 2005 James Morris <jmorris@redhat.com>
  • 2. SELinux ● SELinux provides fine­grained, flexible MAC. ● Subjects and objects are labeled with security  contexts, policy determines interactions. ● Type Enforcement (TE) model provides an  expressive abstraction of security classes and  their interactions.
  • 3. Current Status ● SELinux provides broad coverage across the  kernel (140 hooks). ● All socketcalls are mediated, provides high level  control over local networking. ● Protocol specific controls for Netlink, Unix, some  IP (name_bind, name_connect, rudimentary  packet filter).
  • 4. Networking Directions ● Performance of IP network controls needs to be  improved. ● Hit by per­packet lookups for security context of  port and IP addresses. ● IBM did some work on an RCU cache, needs  further investigation. ● May be replacing IP packet hooks anyway.
  • 5. Netfilter/iptables ● Possibly replace existing IP packet controls with  Netfilter/iptables integration (selipt). ● More flexible & expressive, makes use of  conntrack, matches, targets etc. ● Need receiving socket: current code uses  ipt_owner patch. ● Better to use socket hook work from Patrick  McHardy.
  • 6. Distributed MAC ● MAC is currently limited to the local machine. ● Historically used with Multi­Level Security  (MLS). ● Typically, each packet is labeled via IP options  (CIPSO, FIPS­188). ● Selopt implemented, dropped for upstream  merge.
  • 7. Leveraging IPsec ● Trent Jaeger's implicit labeling work (IBM). ● Label SAs instead of packets. ● Draws on previous Flask work. ● Not MLS or even SELinux specific. ● Utilizes IPsec services: confidentiality;  authentication; negotiation; automation.
  • 8. Leveraging IPsec II ● Hooks into xfrm subsystem. ● IPsec policies are labeled: only authorized  policies may be used, controlled via SELinux. ● SA labels must match (existing SA or triggered  negotiation with IKE). ● Matching packets considered labeled. ● Policy for unlabeled packets (e.g. ISAKMP).
  • 9. Leveraging IPsec III ● Useful for MLS networking, suitable for LSPP  (B1) and beyond. ● Not compatible with IP options schemes. ● More generally useful for extending SELinux  across the network. ● Control communication between processes on  different systems.
  • 10. Networked Filesystems ● NSA developed support for NFSv3. ● Future is NFSv4 with named attributes. ● SMB desired by some parties. ● Cluster Filesystems (some OCFS2 work).
  • 11. Remote Attestation ● Use of TPM and associated hardware to  cryptographically verify system from boot. ● IBM Integrity Measurement Architecture (IMA). ● Requires protocol which queries TPM with  nonce; TPM signs measurement list and nonce. ● SELinux policy could be used to require that the  remote system is attested before some other  communication.
  • 12. Cryptographic Policy ● SELinux policy could be extended to express  more general cryptographic policy. ● e.g. foo_t file must be stored with X encryption,  and only transmitted by local admin_t to remote  admin_t on trusted hosts with Y encryption and Z  authentication on the wire. ● May also require use of specific crypto device or  software.
  • 13. Distributed Policy ● Mechanism for distributing and synchronizing  policy within a security realm may be useful  when using distributed MAC.
  • 14. Longer Term ● General trend toward increasingly high assurance  distributed computing. ● Inter­realm communication.  Establishing trust  between different “domains of interpretation” is  very difficult. ● SE aware firewalling, complicated by Ipsec.
  • 15. Resources ● SELinux Enhanced IPTables http://people.redhat.com/jmorris/selinux/selipt/ ● “Architecture of SELinux Network Access Controls” http://www.selinux­symposium.org/2005/presentations/session2/2­2­morris.pdf ● “Leveraging IPSec for network access control for SELinux” http://www.selinux­symposium.org/2005/presentations/session2/2­3­jaeger.pdf ● Full IBM research report on the above (and more generalized). Not yet published ● Ajaya Chitturi's Flask Thesis http://www.cs.utah.edu/flux/papers/ajay­thesis­abs.html