Transparent cryptographic embedded computer system



Similar documents
How To Understand And Understand The Security Of A Key Infrastructure

OVERVIEW OF TYPICAL WINDOWS SERVER ROLES

A Noval Approach for S/MIME

Secure web transactions system

Unifying Information Security. Implementing Encryption on the CLEARSWIFT SECURE Gateway

Internet Security. Contents. ITS335: IT Security. Internet Security. Secure . Summary

Firewalls. ITS335: IT Security. Sirindhorn International Institute of Technology Thammasat University ITS335. Firewalls. Characteristics.

Firewalls. Contents. ITS335: IT Security. Firewall Characteristics. Types of Firewalls. Firewall Locations. Summary

Encryption of Traffic

Chapter 6 Electronic Mail Security

Load Balance Router R258V

CS 356 Lecture 27 Internet Security Protocols. Spring 2013

Implementing Cisco IOS Network Security

Cornerstones of Security

Security Policy Revision Date: 23 April 2009

Network Security - Secure upper layer protocols - Background. Security. Question from last lecture: What s a birthday attack? Dr.

The basic groups of components are described below. Fig X- 1 shows the relationship between components on a network.

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

What is VLAN Routing?

GENERIC SECURITY FRAMEWORK FOR CLOUD COMPUTING USING CRYPTONET

Case Study for Layer 3 Authentication and Encryption

7 Network Security. 7.1 Introduction 7.2 Improving the Security 7.3 Internet Security Framework. 7.5 Absolute Security?

What is a Firewall? Computer Security. Firewalls. What is a Firewall? What is a Firewall?

Firewall, Mail and File server solution

Gigabit Multi-Homing VPN Security Router

IPv6 SECURITY. May The Government of the Hong Kong Special Administrative Region

NATIONAL SECURITY AGENCY Ft. George G. Meade, MD

ALL-AIO-2321P ZERO CLIENT

IINS Implementing Cisco Network Security 3.0 (IINS)

Chapter 32 Internet Security

Electronic Mail Security. Security. is one of the most widely used and regarded network services currently message contents are not secure

VPN Solutions SECURITY SOFTWARE. Product Information

Considerations In Developing Firewall Selection Criteria. Adeptech Systems, Inc.

Chapter 10. Network Security

Security (II) ISO : Security Architecture of OSI Reference Model. Outline. Course Outline: Fundamental Topics. EE5723/EE4723 Spring 2012

How To Pass A Credit Course At Florida State College At Jacksonville

A Heterogeneous Internetworking Model with Enhanced Management and Security Functions

CS 393 Network Security. Nasir Memon Polytechnic University Module 11 Secure

Networking Devices. Lesson 6

Overview. SSL Cryptography Overview CHAPTER 1

Overview of CSS SSL. SSL Cryptography Overview CHAPTER

Gigabit Content Security Router

Remote Connectivity for mysap.com Solutions over the Internet Technical Specification

Securing Networks with PIX and ASA

NETASQ & PCI DSS. Is NETASQ compatible with PCI DSS? NG Firewall version 9

Table of Contents. 1 Overview 1-1 Introduction 1-1 Product Design 1-1 Appearance 1-2

Yealink Technical White Paper. Contents. About VPN Types of VPN Access VPN Technology... 3 Example Use of a VPN Tunnel...

Layer 3 Network + Dedicated Internet Connectivity

NETWORK ACCESS CONTROL AND CLOUD SECURITY. Tran Song Dat Phuc SeoulTech 2015

Ethernet. Ethernet. Network Devices

Break Internet Bandwidth Limits Higher Speed. Extreme Reliability. Reduced Cost.

Associate in Science Degree in Computer Network Systems Engineering

Customized Data Exchange Gateway (DEG) for Automated File Exchange across Networks

Protecting and controlling Virtual LANs by Linux router-firewall

Network Security Fundamentals

RouterBOARD product overview. September, Gon Tel: +44 (0) Fax: +44 (0)

THE BCS PROFESSIONAL EXAMINATIONS BCS Level 6 Professional Graduate Diploma in IT. April 2009 EXAMINERS' REPORT. Network Information Systems

Cryptography and Network Security Chapter 15

Implementing Cisco IOS Network Security v2.0 (IINS)

Chapter 17. Transport-Level Security

Computer Security CS 426 Lecture 36. CS426 Fall 2010/Lecture 36 1

APNIC elearning: Network Security Fundamentals. 20 March :30 pm Brisbane Time (GMT+10)

Availability Digest. Redundant Load Balancing for High Availability July 2013

Entrust Managed Services PKI. Getting started with digital certificates and Entrust Managed Services PKI. Document issue: 1.0

A host-based firewall can be used in addition to a network-based firewall to provide multiple layers of protection.

Overview of Computer Networks

Chapter 7 Transport-Level Security

ALL-ZC-2140P-DVI PCoIP Zero Client Overview

APNIC elearning: IPSec Basics. Contact: esec03_v1.0

Secure Network Communications FIPS Non Proprietary Security Policy

z/os Firewall Technology Overview

Computer System Management: Hosting Servers, Miscellaneous

QoS VPN Router.

Network Security Protocols

Chapter 7. Address Translation

Chapter 9 Firewalls and Intrusion Prevention Systems

A Model Design of Network Security for Private and Public Data Transmission

How To Protect Your Firewall From Attack From A Malicious Computer Or Network Device

INF3510 Information Security University of Oslo Spring Lecture 9 Communication Security. Audun Jøsang

Chapter 12 Supporting Network Address Translation (NAT)

How To Secure Mail Delivery

Firewalls and VPNs. Principles of Information Security, 5th Edition 1

UPPER LAYER SWITCHING

Chapter 9. IP Secure

Chapter 5. Data Communication And Internet Technology

Standards and Products. Computer Security. Kerberos. Kerberos

CS 356 Lecture 19 and 20 Firewalls and Intrusion Prevention. Spring 2013

IP Security. IPSec, PPTP, OpenVPN. Pawel Cieplinski, AkademiaWIFI.pl. MUM Wroclaw

Savitribai Phule Pune University

How To Encrypt Data With Encryption

Deep-Secure Mail Guard Feature Guide

Lecture Objectives. Lecture 8 Mobile Networks: Security in Wireless LANs and Mobile Networks. Agenda. References

What communication protocols are used to discover Tesira servers on a network?

Telematics. 14th Tutorial - Proxies, Firewalls, P2P

ALL-ZC-2321P-PoE PCoIP PoE Zero Client Overview

Internet Privacy Options

Transcription:

Transparent cryptographic embedded computer system Juraj Michalák* Slovak University of Technology Faculty of Informatics and Information Technologies Ilkovičova 3, 842 16 Bratislava, Slovakia juraj.michalak@gmail.com Abstract. The paper deals with the security of application layer protocols and their data. The security functions are implemented by an embedded computer system. We mean security mostly in terms of public key encryption and signing of transported data. The aim is to design and implement software for that security including its monitoring and administration and of encryption keys administration as well. In particular, we focus on automatized public key on-the-fly encryption and signing of electronic mail messages according to S/MIME standard through embedded computer system, of which function can be shortly described as brouter with transparent SMTP proxy. 1 Introduction Nowadays we live in world where an enormous number of common people with only pseudo-understanding of technical details are fairishly using personal computers and the Internet in a large extent. It was difficult task for IT personel to achieve this goal. If we lived in utopian world, there would be no danger of using all those new technologies. But empathy is exception rather than the rule. Therefore, security has been developing all the time. Security as the result of humanity or bestiality? Security is source of the complicacy for common users. There are two basic types of security settings, simplified (mainly for common users) and professional security settings, which have impact on quality of security. Finally the acquired security depends also on end-user interaction. Solutions without end-user interaction like * Supervisor: Assoc. Professor Dr. Ing. Ladislav Hudec CSc., Institute of Computer Systems and Networks, Faculty of Informatics and Information Technologies STU in Bratislava. IIT.SRC 2009, Bratislava, April 29, 2009, pp. 1 8.

2 Juraj Michalák IPsec 1, VPN 2 and TLS/SSL 3 are preferred because of common users, who don t like to interact too much and they are origin of considerable number of security incidents too. Solutions mentioned above provide security for transfer between communication endpoints and are insufficient for type of communication like SMTP (Simple Mail Transfer Protocol [6]), where messages travels from the node where message was created to the destination node potentially via several nodes. S/MIME is appropriate standard for secure electronic mail messaging [10], [4]. In this paper, S/MIME is employed to provide automatized secure electronic mail messaging between organization boundaries without common user interaction needed and without necessity of extensive configuration changes to existing infrastructure. The proposed embedded computer system was implemented in GNU/Linux environment with use of linux bridge, ebtables, netfilter, iptables, advanced routing and tproxy patch to achieve brouter with transparent SMTP proxy functionality (see 4.1). In order to get the S/MIME and X.509 [5] certification functionality, cryptlib [5] was chosen as basic cryptographic library. 2 Embedded computer system Alix system board from PC Engines as embedded computer system was chosen. It contains 5x86 compatible CPU and used operating system is Voyage Linux (Debian derivative) which has been developing directly for this platform. This environment is very similar to standard GNU/Linux PC. 2.1 Technical details Most interesting technical details [7]: 500 MHz AMD Geode LX800 CPU 256 MB DDR DRAM Storage: CompactFlash socket Power: DC jack or passive POE, min. 7V to max. 20V, peak power consumption is about 6W without minipci cards and USB devices Three front panel LEDs, one pushbutton Expansion: 1 minipci slot, LPC bus Connectivity: 3x 100Mbit Ethernet channels (Via VT6105M 10/100) I/O: DB9 serial port, dual USB 2.0 port Board size: 6 x 6" (152.4 x 152.4 mm) 1 IPsec (Internet Protocol Security) is suite of protocols for securing IP (Internet Protocols) communication in network layer of the OSI (Open Systems Interconnection) reference model. 2 VPN (Virtual Private Network) has many applications. One common is authentication and content encryption. 3 TLS (Transport Layer Security)/SSL (Secure Socket Layer) are cryptographic protocols for security and integrity of communication over TCP/IP.

Transparent cryptographic embedded computer system 3 Firmware: tinybios 3 Designed software overview Presented embedded computer system provides automatized security for the messages transported between organization boundaries. More accurately, it provides transparent SMTP proxy [13] for communication between local and remote SMTP server and according to designed logic it is able to encrypt and sign or decrypt and verify the authenticity of transported messages by S/MIME standard. The benefit of this transparent solution is that there is no need to change local SMTP server configuration. Figure 1. Network environment overview. Our application is represented by local process on the embedded system. SMTP communication passing over embedded system has to be redirected into TCP/IP stack 4 of Linux kernel in order to be delivered to that local process and the rest of communication is bridged 5. Therefore, the embedded system is considered a brouter 6. The local process performs on-the-fly processing of SMTP communication because it has to be transparent and also the storage resources of embedded system are limited. Two email cryptographic standards were analysed, OpenPGP [10] and S/MIME. Only the latter was adopted because electronic signature is placed after signed data in its message format, what is inevitable for on-the-fly signing (signature can be computed after all of message data are known [10]). 4 TCP/IP stack or Internet protocol Suite is set of communication protocols and may be viewed as set of layers. 5 Network bridge connects multiple network segments at data link layer according to the IEEE 802.1D standard 6 Brouter or Bridge Router works as network bridge and as router at the same time.

4 Juraj Michalák As S/MIME was adopted, PKI based on X.509 is used for certificate creation, registration, verification, revocation and other handling. Central management server is used for certificate distribution in community of our embedded systems but also local administration web interface can be used to manage local certificate database of one embedded system. Community of embedded systems is set of embedded systems which are intended to secure the email messages transferred with one another. 4 Details of concept In previous section we have described the basic concept of our solution. More details are mentioned in this section. 4.1 Brouter with transparent SMTP proxy All communication is bridged except SMTP which is redirected to kernel s routing process what is implemented by Linux bridge [12] and ebtables [3], [9]. SMTP communication is then in routing process redirected to our local process which finally establishes connection with SMTP client (initiator of connection) and server. Both are in assumption that they are communicating directly. This is achieved by TProxy patch for netfilter and iptables and by Linux advanced routing [1]. Local process provides mentioned automatized on-the-fly encryption and signing. Figure 2. Detailed view of brouter with transparent proxy Two modes of bridge interface are implemented:

Transparent cryptographic embedded computer system 5 Bridge interface has assigned local IP address (statically or dynamically by local DHCP 7 server). So the embedded system is reachable from local network. Bridge interface has assigned special IP address (only for internal usage) and has disabled use of ARP 8 protocol. ARP table is managed by self implemented ARP manager tool which inspects SMTP packets in order to insert address mapping records into ARP table. This mode of operation is unconventional but provides fully transparent and plug-and-play solution with administration through central management server. 4.2 On-the-fly S/MIME Our local application must understand SMTP and MIME [4] in order to collect enough information to make message encryption or decryption decision. For S/MIME enveloping and signing we have used cryptlib cryptographic library [5]. For example we look at S/MIME enveloping process [10]: 1. Generate pseudorandom session key for symmetric encryption algorithm. 2. For each recipient, encrypt the session key with his public key. 3. For each recipient, prepare a block RecipientInfo that contains an identifier of the recipient s public key certificate, an identifier of the session key encryption algorithm, and the encrypted session key. 4. Encrypt the MIME entity content with the session key the CMS object was created which consists of RecipientInfo block and encrypted MIME entity. 5. Create new MIME entity from that CMS object which has to be encoded into textual form (e.g. by Base64 encoding). 4.3 Message securing logic Firstly we divide community of users into two sets called local and remote users. Local users own e-mail accounts on local SMTP server and by contrast remote users own e- mail accounts on remote SMTP server. Every embedded system has its own private key and certificate (key pair). For advanced security users also can have their own private key and certificate. Basic premise is that our application on embedded system has available local private key database of local users and certificate database of remote embedded systems, local users and remote users. The latter one contains certificates of all remote embedded systems and users for which will be messages secured (also as premise). These databases are managed locally by web interface administrator or in automatized fashion by central management server. Messages can be signed with use of embedded system s private key or even local user s private key but message authenticity is 7 DHCP (Dynamic Host Configuration Protocol) is network application protocol used by devices in order to obtain configuration for its operation in an Internet Protocol network environment. 8 ARP (Address Resolution Protocol) is protocol for building table which is used for translation of network layer address into data link layer address.

6 Juraj Michalák always considered in regard to embedded system, because the system signs messages not user s workstation. Basic rules for message securing: Encrypt outbound message if the recipient s certificate (or only remote embedded system s certificate) is available. Then sign the message with private key of sender or embedded system. If recipient s certificate is not available, outbound message is not encrypted. Optionally sign the message with use of sender s private key, but create detached S/MIME signature because it is probable that recipient has no S/MIME capable tool. This can lead to expansion of S/MIME because recipient can be interested by presence of that digital signature in received message. Inbound encrypted message is decrypted if the corresponding private key is available. If inbound message is signed and corresponding certificate is available in local database the signature is verified. If that certificate is not available, it is added into database and process of its validity checking is started. After the validity has been checked, certificate can be used for signature verification. Question is what to do with messages for mixed recipients who are recipients with and without certificate in local database. There are two policies for this situation, the first one is restrictive where message is encrypted and sent only to recipients with available certificate. Second is liberal, message is handled as with the first policy and in addition it is sent unaltered to recipients without certificate in local database. Problem is that message sending has to be divided in encrypted message sending and unaltered message sending. It has two solutions: Second concurrent connection to original destination SMTP server is created for unaltered message delivery. Some SMTP servers prohibit multiple concurrent connections from one source, what means that this solution is not usable every time. Second concurrent connection to dedicated SMTP Relay server is created for unaltered message delivery. That server then delivers unaltered message to original destination SMTP server. Our embedded system attempts to apply the first solution and the result of this effort is stored into database for given destination SMTP server. If result is negative second solution is used. 4.4 Concurrent server design Our embedded system has to handle many hundreds or thousands of concurrent connections between SMTP clients and server. Nowadays the huge volume of spam is also considerable. So there is a need to have good concurrent server design. Thread pool design pattern was used in form of pre-threaded server with per thread connection accept [11]. One connection thread is in fact represented by two threads, one for client-server direction and another for server-client direction of

Transparent cryptographic embedded computer system 7 communication. As a defense against spam the application layer SMTP tar-pitting was implemented. 5 Conclusion Our embedded computer system provides confidentiality, integrity and authenticity for electronic messages transferred between organization boundaries according to S/MIME standard. Network transparency and minimal requirements for changes in existing infrastructure and configuration are its worthwile features. For administration local web interface and central management server can be used. Central management server is also responsible for automatized distribution of certificates in community of embedded systems. It can be done manually too, by local web interface. At least one certification and registration authority is required because of PKI and one SMTP Relay server is required because of mentioned solution for delivery of messages with mixed recipients. Design of some application parts is modular what affords opportunity to easily implement for example new cryptographic module with use of another cryptographic library (e.g. openssl). Our transparent SMTP proxy also allows combating spam in real time by tarpitting and also by possible spam detection plug-ins. This real time technique is popular because of early spam elimination which does not pose claims on organization s storage and bandwidth. This paper was worked out in frame of Diploma thesis Embedded systems for encryption of application protocols and in frame of the VEGA project No. 1/0649/09 entitled Security and reliability in distributed computer systems and mobile computer networks. References [1] Balazs, S.: Introduction to TProxy and its features. [Online; accessed December 2nd, 2008]. Available at: http://www.balabit.com/downloads/files/tproxy/readme.txt [2] Cooper, D., Santesson, S., Farrell, S. et al.: Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile. [Online]. May 2008. RFC (Request for Comments) series 5280. Available at: http://tools.ietf.org/html/rfc5280 [3] Ebtables: Ethernet bridge frame table administration. [Online; accessed December 2nd, 2008]. May 2007. Available at: http://ebtables.sourceforge.net/ebtables-man.html [4] Freed, N., Borenstein, N.: Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies. [Online]. November 1996. RFC (Request for Comments) series 2045. Available at: http://tools.ietf.org/html/rfc2045

8 Juraj Michalák [5] Gutmann, P.: Cryptlib Security Toolkit [Online]. Version 3.3.2. July 2008. Available at: ftp://ftp.franken.de/pub/crypt/cryptlib/manual.pdf [6] Klensin, J.: Simple Mail Transfer Protocol. [Online]. October 2008. RFC (Request for Comments) series 5321. Available at: http://tools.ietf.org/html/rfc5321 [7] PC Engines GmbH: Alix.2 / Alix.3 / Alix.6 series system boards. [Online; accessed February 16th, 2009]. Available at: http://www.pcengines.ch/pdf/alix2.pdf [8] Ramsdell, S.: Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 3.1 Message Specification. [Online]. July 2004. RFC (Request for Comments) series 3851. Available at: http://tools.ietf.org/html/rfc3851 [9] Schuymer, B., Fedchick, N.: Ebtables/Iptables interaction on a Linux-based bridge. [Online; accessed December 2nd, 2008]. Available at: http://ebtables.sourceforge.net/br_fw_ia/br_fw_ia.pdf [10] Stallings, W.: Cryptography and Network Security Principles and Practices. 4th ed. Prentice Hall, 2005. 592 p. ISBN 0-13-187316-4. Chapter 15. Electronic Mail Security [11] Stevens, W.R., Fenner, B., Rudoff, A.M.: UNIX Network Programming: The Sockets Networking API. 3rd ed. Vol. 1. Addison Wesley, 2003. ISBN 0-13- 141155-1. Chapter 30. Client/Server Design Alternatives. [12] The Linux Foundation: Net: Bridge. [Online; accessed December 2nd, 2008]. Available at: http://www.linuxfoundation.org/en/net:bridge [13] Transparent SMTP proxy. In Wikipedia: the free encyclopedia [Online]. St. Petersburg (Florida): Wikimedia Foundation, 2001-, last modified on 24 January 2009. Available at: http://en.wikipedia.org/wiki/transparent_smtp_proxy