0% found this document useful (0 votes)
21 views

9858744

The document discusses the book 'Platform Embedded Security Technology Revealed' by Xiaoyu Ruan, which focuses on the embedded security and management engine developed by Intel. It highlights the importance of cybersecurity in mobile computing and the role of Intel's technologies in safeguarding user data and privacy. The book covers various aspects of the embedded engine, including its architecture, security models, and the challenges posed by increasing connectivity and mobile threats.

Uploaded by

mitalovidedg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
21 views

9858744

The document discusses the book 'Platform Embedded Security Technology Revealed' by Xiaoyu Ruan, which focuses on the embedded security and management engine developed by Intel. It highlights the importance of cybersecurity in mobile computing and the role of Intel's technologies in safeguarding user data and privacy. The book covers various aspects of the embedded engine, including its architecture, security models, and the challenges posed by increasing connectivity and mobile threats.

Uploaded by

mitalovidedg
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 81

Visit https://ebooknice.

com to download the full version and


explore more ebooks

(Ebook) Platform Embedded Security Technology


Revealed by Xiaoyu Ruan (auth.) ISBN 9781430265719,
9781430265726, 143026571X, 1430265728

_____ Click the link below to download _____


https://ebooknice.com/product/platform-embedded-
security-technology-revealed-4929372

Explore and download more ebooks at ebooknice.com


Here are some recommended products that might interest you.
You can download now and explore!

(Ebook) Platform embedded security technology revealed safeguarding


the future of computing with Intel embedded security and management
engine by Ruan, Xiaoyu ISBN 9781430265719, 9781430265726, 143026571X,
1430265728
https://ebooknice.com/product/platform-embedded-security-technology-
revealed-safeguarding-the-future-of-computing-with-intel-embedded-
security-and-management-engine-11863194
ebooknice.com

(Ebook) Biota Grow 2C gather 2C cook by Loucas, Jason; Viles, James


ISBN 9781459699816, 9781743365571, 9781925268492, 1459699815,
1743365578, 1925268497

https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374

ebooknice.com

(Ebook) Matematik 5000+ Kurs 2c Lärobok by Lena Alfredsson, Hans


Heikne, Sanna Bodemyr ISBN 9789127456600, 9127456609

https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312

ebooknice.com

(Ebook) SAT II Success MATH 1C and 2C 2002 (Peterson's SAT II Success)


by Peterson's ISBN 9780768906677, 0768906679

https://ebooknice.com/product/sat-ii-success-
math-1c-and-2c-2002-peterson-s-sat-ii-success-1722018

ebooknice.com
(Ebook) Master SAT II Math 1c and 2c 4th ed (Arco Master the SAT
Subject Test: Math Levels 1 & 2) by Arco ISBN 9780768923049,
0768923042

https://ebooknice.com/product/master-sat-ii-math-1c-and-2c-4th-ed-
arco-master-the-sat-subject-test-math-levels-1-2-2326094

ebooknice.com

(Ebook) Cambridge IGCSE and O Level History Workbook 2C - Depth Study:


the United States, 1919-41 2nd Edition by Benjamin Harrison ISBN
9781398375147, 9781398375048, 1398375144, 1398375047

https://ebooknice.com/product/cambridge-igcse-and-o-level-history-
workbook-2c-depth-study-the-united-states-1919-41-2nd-edition-53538044

ebooknice.com

(Ebook) Vagabond, Vol. 29 (29) by Inoue, Takehiko ISBN 9781421531489,


1421531488

https://ebooknice.com/product/vagabond-vol-29-29-37511002

ebooknice.com

(Ebook) History of Technology: Volume 29. Technology in China by Ian


Inkster (Editor) ISBN 9781441136114, 1441136118

https://ebooknice.com/product/history-of-technology-
volume-29-technology-in-china-2252790

ebooknice.com

(Ebook) SQL Server 2022 Revealed: A Hybrid Data Platform Powered by


Security, Performance, and Availability by Bob Ward ISBN
9781484288931, 1484288939

https://ebooknice.com/product/sql-server-2022-revealed-a-hybrid-data-
platform-powered-by-security-performance-and-availability-47215668

ebooknice.com
Platform Embedded Security Technology Revealed 1st
Edition Xiaoyu Ruan (Auth.) Digital Instant Download
Author(s): Xiaoyu Ruan (auth.)
ISBN(s): 9781430265726, 1430265728
Edition: 1
File Details: PDF, 4.02 MB
Year: 2014
Language: english
For your convenience Apress has placed some of the front
matter material after the index. Please use the Bookmarks
and Contents at a Glance links to access them.
Contents at a Glance

About the Author���������������������������������������������������������������������������� xvii


About the Technical Reviewer��������������������������������������������������������� xix
Acknowledgments�������������������������������������������������������������������������� xxi
Introduction���������������������������������������������������������������������������������� xxiii

■■Chapter 1: Cyber Security in the Mobile Age���������������������������������� 1


■■Chapter 2: Intel’s Embedded Solutions: from Management
to Security������������������������������������������������������������������������������������ 27
■■Chapter 3: Building Blocks of the Security and Management
Engine������������������������������������������������������������������������������������������� 57
■■Chapter 4: The Engine: Safeguarding Itself before Safeguarding
Others������������������������������������������������������������������������������������������� 89
■■Chapter 5: Privacy at the Next Level: Intel’s Enhanced Privacy
Identification (EPID) Technology������������������������������������������������� 117
■■Chapter 6: Boot with Integrity, or Don’t Boot����������������������������� 143
■■Chapter 7: Trust Computing, Backed by the Intel Platform Trust
Technology��������������������������������������������������������������������������������� 165
■■Chapter 8: Unleashing Premium Entertainment with
Hardware-Based Content Protection Technology����������������������� 181
■■Chapter 9: Breaking the Boundaries with Dynamically Loaded
Applications�������������������������������������������������������������������������������� 199

v
■ Contents AT A glance

■■Chapter 10: Intel Identity Protection Technology: the Robust,


Convenient, and Cost-Effective Way to Deter Identity Theft������� 211
■■Chapter 11: Looking Ahead: Tomorrow’s Innovations Built on
Today’s Foundation �������������������������������������������������������������������� 227

Index���������������������������������������������������������������������������������������������� 239

vi
Introduction

Malware, virus, e-mail scam, identity theft, evil maid, password logger, screen scraper…
Cyber security concerns everyone. Computers can be your trusted friends or traitors.
The Internet is a scary place. Going on the Internet is like walking the streets of a crime-ridden
neighborhood. Cyber criminals work to steal your privacy, money, assets, and even identity.
Cyber-attacks are intangible, invisible, and hard to detect. Due to the increasing popularity of
mobile devices, the danger is several-fold worse today than it was seven years ago.
Technologies that created the security problem as a side effect are supposed to resolve
the problem. Prevention is the key—the potential loss and cost of dealing with incidents is
simply too high to afford.
However, it is more difficult to defend a castle than to build it. The mitigation against
cyber-attacks is complicated and involves multiple layers of building blocks:
• Algorithm: An algorithm is a set of mathematical calculations that
realize a specific cryptographic functionality, such as encryption,
digital signature, hashing, and so forth.
• Protocol: A protocol is a set of rules and messages that govern the
transmission of data between two entities. Security protocols are
always built on cryptographic algorithms.
• Application: An application is a computer program that
accomplishes a specific task, such as authenticating a user to a
protected database. Applications are built with algorithms and
protocols as the backbone.
Algorithms and protocols are often standardized and used across the industry for
compatibility and interoperability. On the other hand, applications may be standardized,
but in most cases they are invented and deployed by individual vendors to distinguish
their products from competitors.
Algorithms, protocols, and applications can be realized in software, hardware, or
combinations of both. Security measures that are rooted in hardware are more robust
than those rooted in software, because attacks against well-designed hardware-based
protections not only require advanced expertise, but also cost significant resources.

xxiii
■ Introduction

Intel is committed to delivering state-of-the-art solutions for supporting a safe


computing environment. The embedded engine built in most Intel platforms today is
a major achievement of that effort. It features hardware implementations for standard
algorithms and protocols, as well as innovative applications that are exclusively available
on Intel products, including:
• Privacy safeguard with EPID (enhanced privacy identification)
• Strong authentication and secure transaction with IPT (identity
protection technology)
• Verified boot process
• . . . and many more
Thanks to these protections, users are largely shielded from dangers when they
are surfing the Web. With peace of mind, people can enjoy all the good things that
technologies have to offer.
This book takes the readers through an extensive tour of the embedded engine,
exploring its internal architecture, security models, threat mitigations, and design details
of algorithms, protocols, and interesting applications.
The journey begins now.

xxiv
Chapter 1

Cyber Security in the


Mobile Age
The number of new security threats identified every month continues
to rise. We have concluded that security has now become the third
pillar of computing, joining energy-efficient performance and Internet
connectivity in importance.
—Paul S. Otellini

This book is an in-depth technical introduction to an embedded system developed


and manufactured by Intel Corporation. The embedded system is not an independent
product; it is a native ingredient inside most of Intel’s computer product portfolio,
which includes servers, desktops, workstations, laptops, tablets, and smartphones.
Although not well known to most end users, the embedded system plays a critical role
in many consumer applications that people use every day. As such, its architecture,
implementation, and security features are worth studying.
Depending on the end product in which the embedded engine resides, the engine is
denominated differently:
• For the embedded system shipped with computing devices
featuring Intel Core family microprocessors, it is called the
management engine.
• For the embedded system shipped with computing devices
featuring the Intel Atom system-on-chip (SoC), it is called the
security engine. Note that not all Atom platforms use the security
engine introduced in this book.
For the sake of convenience, this book refers to it as the security and management
engine, the embedded engine, or simply the engine.

1
Chapter 1 ■ Cyber Security in the Mobile Age

Three Pillars of Mobile Computing


In August 2010, Intel announced the acquisition of security giant McAfee. Paul S. Otellini,
Intel’s president and CEO at the time, emphasized that “security has become the third
pillar of computing” when commenting on the investment. The other two pillars of
computing are energy-efficient performance and Internet connectivity.
The three pillars summarize the core characteristics for computing, especially
mobile computing. Intel’s security and management engine is an embedded component
that serves as the backbone that supports the three pillars for multiple forms of
computers, including mobile endpoints, desktops, workstations, and servers. As its
name indicates, the engine’s main functionalities are security and management. In the
meantime, power efficiency and connectivity are also addressed in its design.

Power Efficiency
Mobile devices distinguish themselves from stationary platforms in mobility and
independence of AC (alternating current) power supply. The battery life is hence an
important factor for evaluating the quality of a mobile product. Before the battery
technology sees a major breakthrough, computer manufacturers have to strive to deliver
hardware and software with low energy consumption.
A number of general strategies can be employed to save power:
• Decrease the processor’s clock frequency, with the potential
tradeoff of performance. For example, the security and
management engine runs at a significantly lower speed than the
platform’s main processor. This is possible without degrading
the user experiences, because the engine is not designed to be
involved in performance-critical paths.
• Dim the display screen and shut down devices that are not being
used or place them in sleep states. For example, after being idle
for a configurable amount of time, like 30 seconds, the security
and management engine may completely power off or run in
a low-power state with very low clock frequency. Events that
may wake up the engine to its full-power state include device
interrupts and messages received from the host operating system.
• Simplify and adjust hardware and software logic. Redundant
routines should be removed. For example, applying blinding to
public key operations is meaningless, because there is no secret
to be secured from side-channel attacks; whenever feasible, favor
performance over memory consumptions for runtime programs.
These are part of the design guidelines for the security and
management engine.

2
Chapter 1 ■ Cyber Security in the Mobile Age

Internet Connectivity
Needless to say, the majority of applications running on a mobile device rely on network
connections to function. Looking into the architecture, there are two models of splitting
the workload between the local device and the cloud:
• The main functionality of the cloud is storage, for contents such
as movies, music, and personal files. The local device carries
out most of computational tasks. This model requires stronger
computing capability of the mobile devices, which may imply
higher prices.
• Besides storage, the cloud also performs a certain amount of
computations for the device. The device is responsible for only
limited computations, and its main tasks are input and output.
This model is advantageous in lowering the cost of the device.
However, it requires high network bandwidth and powerful
servers that are able to support a large number of devices
simultaneously.

Security
Security is not standalone, but closely relevant to the other two pillars. Security is
becoming vitally important for computers, thanks to the increasing connectivity. While
enjoying all the benefits and conveniences the Internet has to offer, connected devices
are also exposed to widespread attackers, viruses, and malware on the open network. The
new challenges of securing mobile platforms are originated from three characteristics of
mobile computing:
• Always connected: Smartphones and tablets may never be turned
off. Attacks can be mounted at any time and take any amount
of time.
• Large data transmission: Because of its convenience, mobile
devices are used more often for operations that involve secure
data transmission with servers, for example, web site logon,
financial transaction, online purchase, and so forth. This makes
attacks that require collecting a large amount of data more likely
to succeed.
• Privacy: Mobile devices hold sensitive data that would not
normally appear on stationary computers. The data includes
but is not limited to phonebook and location information.
A security objective for mobile devices is to protect users’
personal information.
To mitigate these threats, security researchers have invented and deployed various
countermeasures to safeguard computers and prevent leakage and abuse of assets. They
include software-based solutions, like antivirus programs, firewalls, and so on, and
hardware-based solutions, such as secure boot.

3
Chapter 1 ■ Cyber Security in the Mobile Age

Now let’s take a look at the relationship between security and power. Unfortunately,
improvements in security and reduction in energy consumption are largely contradictory.
A security measure, although an essential element, costs power to accomplish its
work that is not functionally beneficial. However, an insecure system is not practically
usable. Well-designed cryptography and security implementations can provide desired
protection strengths with minimum power consumption. The following are some
strategies that can be considered:
• Offload intensive mathematical operations to hardware engines
that operate at lower frequency. Most cryptography algorithms
are built on complex mathematics. The dedicated hardware
should feature specific logic for underlying operations, so the
calculation can be completed faster with lower power, compared
to general-purpose processors.
• Utilize efficient algorithms and parameters; for example, when
designing elliptic curve cryptography, select the curves carefully,
and use the ones that require the fewest operations without
degrading the security strength.
• Avoid overengineering. Choose algorithms and key sizes
that meet, but don’t overwhelmingly exceed, robustness
requirements. For example, using a public key cryptosystem with
security strength of 256 bits to protect a 128-bit symmetric key is a
waste of computing power.
• Store keys and other secrets in secure, nonvolatile memory if
possible and avoid repeated derivations for every power cycle.

BYOD
Bring Your Own Device, or BYOD, is a fast-growing emerging application thanks to the
booming mobile computing development. An increasing number of companies now
support BYOD programs and allow employees to use their personal mobile devices for
work, such as sending and receiving corporate e-mails and accessing work data.
According to a survey1 conducted by Intel, the following are the three top-ranked
benefits voted by corporate IT (information technology) managers across different
continents:
• Improve efficiency and worker productivity
• Increase opportunities for worker mobility
• Save costs by not having to purchase as many devices for
employees to use

4
Chapter 1 ■ Cyber Security in the Mobile Age

Alongside the gains are risks and challenges. Not surprisingly, security is the
number-one rated barrier of deploying BYOD in most countries, especially for heavily
regulated industries. With BYOD, it is increasingly common to see malware that targets
the IT infrastructures of government agencies and industrial companies. The safety level
of a corporate asset is equal to the strength of the weakest link that handles the asset.
Because the employees’ devices are handling confidential business data, they must apply
the required security enforcements per the company’s IT policies.
Here are a few security considerations when converting an employee’s device
for BYOD:
• Secure boot: The system integrity must be guaranteed. Rootkits
and malware that infects the boot flow place the entire operating
environment at risk. It is recommended that rooted mobile
devices should not be permitted for BYOD. Refer to Chapter 6 for
technical insights into Intel’s Boot Guard technology.
• Hard-drive encryption: The whole drive, or at least the partition
that stores business data, should be encrypted with a standard
algorithm. The encryption key may be randomly generated at
the first boot and sealed in a dedicated trusted device, such as a
TPM2 (Trusted Platform Module). The key may also be calculated
from the user’s credentials using a one-way function with a salt
at each boot. Regardless of how the key is generated, it should be
unique per device. Deriving the key solely from a password is not
a good idea, because the employee may use the same password
for multiple purposes.
• Strong authentication: The minimal length and complexity of
the login password should be enforced. A password should be a
combination of characters and cannot be a four-digit number.
The device memory should not contain plaintext secrets before
the device is unlocked by the employee. In addition, some
business applications may warrant additional multifactor
authentication at runtime.
• Isolated execution: Sensitive applications should execute in a
secure mode that is logically separated from the nonsecure mode
and other irrelevant applications. Intel’s proprietary features,
like TXT3 (Trusted Execution Technology) and the upcoming
SGX4 (Software Guard Extensions) technology, have built
infrastructures for isolated execution.
• Employee privacy: Depending on the organization’s BYOD policy,
the employee’s personal data, such as photos, videos, e-mails,
documents, web browse cache, and so on, may need to be
secured from access or abuse by business applications. This can
be achieved by the same isolation technique mentioned earlier.

5
Chapter 1 ■ Cyber Security in the Mobile Age

• Remote wipe capability: Mobile device theft is on the rise, rapidly.


Consumer Reports projects that about 3.1 million American
consumers were victims of smartphone theft in 2013, more than
double the 1.4 million in 2012. Once a BYOD device is reported
stolen, even though the hard drive is encrypted, it is still essential,
for defense in depth, to wipe the hard drive and prevent loss of
business data and personal information. In April 2014, major
industry players, including Apple, Google, Microsoft, Samsung,
Nokia, AT&T, Sprint, and others, signed on to the “Smartphone
Anti-Theft Voluntary Commitment”5 that pledges to implement
a “kill switch” feature by 2015 that can wipe the data of a lost
phone and disallow the phone from being reactivated without an
authorized user’s consent.
While tightening up the security of employees’ mobile equipment and getting ready
for BYOD, an inevitable side effect is the increased power consumption and worsening
battery life. To improve employee satisfaction, the strategies discussed in the previous
section should be taken into account when defining BYOD policies.

Incident Case Study


What’s happening in the area of cyber security? From credit card fraud to identity theft,
from data breach to remote execution, cyber security is being covered increasingly by the
media—not only technical journals but also popular newspapers and magazines—and is
drawing a lot of public attention. The subject of cyber security is no longer an academic
matter that concerns only researchers and computer manufacturers. In the era of mobile
computing, cyber security is a problem that impacts everyone’s life more realistically
than ever.

eBay Data Breach


In a press release from May 21, 2014, the giant Internet auction house eBay said it would
ask its 145 million customers to change their passwords, due to a cyber-attack that
compromised a database containing encrypted passwords and other nonfinancial data.6
How did it happen? According to the press release, the cyber-attack occurred
between February and March of 2014. It comprised a small number of employee login
credentials, allowing unauthorized access to eBay’s corporate network. The company
later clarified that the passwords were not only “encrypted,” but also protected by eBay’s
“sophisticated and proprietary hashing and salting technology,” and there was no
evidence that the stolen data could be used in fraudulent actives.
Despite the fact that the stolen passwords were protected (encrypted and hashed),
there are still a series of implications of the incident:
• Users’ private information—including name, postal and e-mail
addresses, phone number, date of birth, and so forth—was stored
in the clear and leaked.

6
Chapter 1 ■ Cyber Security in the Mobile Age

• Depending on the encryption or hashing algorithms (which


are not disclosed by eBay) that are used to protect passwords,
dedicated attackers may be able to reverse-engineer the
algorithms and retrieve clear passwords.
• Password reuse among multiple sites is a poor but extremely
popular practice. Even if a victim changes her password for eBay.
com, her cyber security is still in danger if she also uses the same
password for other web sites, such as Amazon.com. Therefore, an
eBay user must change passwords for all web sites for which the
compromised password is used, to be safe.

Target Data Breach


On December 19, 2013, Target, the second largest retail store in the United States,
reported a data breach that resulted in approximately 40 million credit and debit card
numbers being stolen.7 Victims were consumers who shopped at Target stores (excluding
Target.com) between November 27 and December 15, 2013 and paid with payment cards.
In January 10, 2014, the company further announced that, in addition to the 40 million
stolen cards, personal information, including names, phone numbers, and postal and
e-mail addresses of approximately 70 million customers, was also compromised due to
the incident. In other words, nearly one-third of the total population of the United States
was impacted.
Following one of the most massive breaches in US history, in February 2014 Target
reported that its net earnings for the holiday season had plunged 46 percent year-to-year.
On March 5, the company’s chief information security officer resigned from the job. Two
months later, Target’s chairman, president, and CEO Gregg Steinhafel also stepped down,
after as many as 35 years of service at the company. The press release described that
Steinhafel “held himself personally accountable” for the breach.
The company explained in January 2014 that the breach was due to login credentials
being stolen from one of its vendors and then used to access Target’s internal network.
The attacker might have exploited vulnerabilities in the management software deployed
in the internal network to access the secret data. Target did not disclose the name of the
vendor or the management software.
From the brief description, one may reasonably deduce what happened: the attacker
logged into Target’s network using the stolen credentials. He then installed malware on
the flawed management software to exploit the vulnerability. The malware scanned in
the host memory for payment card numbers and then secretly uploaded to a remote
server established by the attacker that harvested them. Furthermore, the fact that online
purchases at Target.com were not affected suggested that the malware might have
infected point-of-sale (POS) machines. A research conducted by Intel’s McAfee Labs
following the incident had identified a number of malware that aims at POS endpoints
and transaction verification systems.8

7
Chapter 1 ■ Cyber Security in the Mobile Age

The breach unfolded several problems with Target’s information security


management:
• Vendors’ access to Target’s network was not protected with a
sufficiently strong authentication method. A credential that
can be stolen and used without the victim’s knowledge is
likely a username and password. This old and simple way of
authentication is very vulnerable and too weak to fortify
valuable assets.
• The vendor’s account was allowed to perform privileged
operations after accessing Target’s internal network, and the
operations were not closely monitored and examined. The
principle of least privilege should always be exercised as a best
practice of information security, not only in computer product
designs but also in enterprises’ IT management.
• The third-party management software suffered critical security
flaws. Either the software vendor did not know about the
vulnerability until the breach took place or Target did not apply
patches that fixed the vulnerability in a timely manner.

OpenSSL Heartbleed
The Request for Comments 6520 “Transport Layer Security (TLS) and Datagram
Transport Layer Security (DTLS) Heartbeat Extension,”9 published by the Internet
Engineering Task Force (IETF) in February 2012, introduces and standardizes the
heartbeat extension for the TLS/DTLS protocol. In a nutshell, it is a simple two-way
protocol between a client and a server that have already established a secure TLS/DTLS
session. One party sends a heartbeat request message with an arbitrary payload to its
peer, who in turn sends back a heartbeat response message that echoes the payload
within a certain amount of time. This extension is mainly used for checking the liveliness
of the peer.
The core of the mobile computing is interconnectivity—connections between
a client (laptop, smartphone, tablet, and so forth) and a server, between two servers,
or between two clients. There exist various protocols that offer secure links between
two entities, for example, the SIGMA (SIGn and message authentication) protocol
introduced in Chapter 5 of this book. However, TLS/DTLS is used in the majority of
secure connections over the Internet today. It provides not only one-way or mutual
authentication but also encryption and integrity for messages. Most implementations of
TLS/DTLS take advantage of the open-source OpenSSL cryptography library.
Heartbleed is a severe security bug in OpenSSL.10 The vulnerability was first reported
by Neel Mehta of Google’s security team on April 1, 2014. The Finnish cyber security
company, Codenomicon, found the same issue independently at almost the same time
and named it Heartbleed. The bug was fixed promptly in an OpenSSL release on April 7.

8
Chapter 1 ■ Cyber Security in the Mobile Age

A heartbeat request message consists of four elements:


1. Message type (1 byte)
2. payload_length in bytes (2 bytes)
3. Payload (length is determined by payload_length)
4. Padding (at least 16 bytes)
The total size of a heartbeat request message is transmitted to the receiver in variable
TLSPlaintext.length or DTLSPlaintext.length, whose value must not exceed 16384 according
to the protocol. Notice that the 16-bit integer payload_length can denote up to 65535.
The bug in the vulnerable OpenSSL releases lies in the receiver side of the heartbeat
implementation. The code misses bounds checking and fails to make sure that the
payload_length is such that the total size of the four fields is not greater than the actual
message size indicated by TLSPlaintext.length or DTLSPlaintext.length. The flawed
implementation outputs a response heartbeat message with memory buffer of size
calculated based on payload_length, instead of TLSPlaintext.length or DTLSPlaintext.length.
To exploit the vulnerability, a malicious TLS/DTLS client assigns a small number to
TLSPlaintext.length or DTLSPlaintext.length, manipulates payload_length to its allowed
maximum, 65535, and sends the falsified heartbeat request to a vulnerable server. On
the server side, nearly 64KB of the memory beyond the payload is transmitted back to
the malicious client in the heartbeat response. Although the attacker cannot choose the
memory region at which he can peek, the leaked memory likely contains information
used for the current TLS/DTLS session, including the server’s secrets. And the attacker
can iterate heartbeat requests repeatedly to gather more memory content from the server.
Similar attacks can be launched from a rogue server to attack flawed clients.
Figure 1-1 shows the attack scenario. The attacker’s client first establishes a TLS/DTLS
connection with the target server. The client then sends a manipulated heartbeat
request to the server. The message is only 28 bytes in size, but it specifies, on purpose,
the payload length as 65535—the maximum value that can be represented by a 16-bit
integer—although the actual payload is only 9 bytes long: {ed 15 ed 7c 05 9f 7b 99 62}.
In the OpenSSL implementation, the size of the padding field is fixed at the minimum
allowed by the standard, 16 bytes.

9
Chapter 1 ■ Cyber Security in the Mobile Age

Attacker’s Target
TLS/DTLS client TLS/DTLS server

TLS/DTSL session establishment

Heartbeat request

(D)TLSPlaintext.length = 28 bytes
message_type = REQUEST
payload_length = 65535 bytes
payload = ed15ed7c059f7b9962 (9bytes)
padding =
c1533444c8d1d98b3e3c259f03830072 (16
bytes)

Heartbeat response

(D)TLSPlaintext.length = 65554 bytes


message_type = RESPONSE
payload_length = 65535 bytes
payload =
“ed15ed7c059f7b99629689e307eef2ee2c00
aa3cfde8ed2a79… (65535 bytes)
padding =
c1533444c8d1d98b3e3c259f03830072 (16
bytes)

Figure 1-1. Heartbleed attack

The server with a buggy OpenSSL library calculates the total size of the heartbeat
response buffer by adding the sizes of the message type (1 byte), payload_length field
(2 bytes), payload (payload_length bytes), and padding (16 bytes), which works out to be
1+2+65535+16=65554 bytes in this case. Due to the missing bounds check, the server fails
to realize that the size of its response has exceeded the maximum, 16384 bytes, defined by
the specification. The size of the response also exceeds the size, 28 bytes, of the received
heartbeat request. That is, as many as 65535-9=65526 bytes of the server’s memory
(an illustrative example is underlined in the figure: {96 89 e3 07 ee f2 ee 2c 00 aa
3c fd e8 ed 2a 79 ...}) following the payload is sent to the client in the heartbeat
response. The leaked memory could contain the server’s private key.
The bug had existed in OpenSSL for over two years before it was discovered. The two
most popular open-source web servers, Apache and nginx, both leverage OpenSSL and
are hence vulnerable. Among all active Internet web sites in the world, two out of three
use Apache or nginx, as reported by Netcraft’s April 2014 Web Server Survey.11 Affected
sites include popular ones such as Yahoo! and Flickr. Other than web servers, OpenSSL
is the dominant library embedded in many other types of networked computer products

10
Chapter 1 ■ Cyber Security in the Mobile Age

as well, such as secure teleconferencing devices. Intel’s AMT12 (advanced management


technology) software development kit is also affected. Famous cryptographer Bruce
Schneier described the incident as “catastrophic.”
Unfortunately, fixing the bug on the servers is just the beginning of the firefighting.
The certificates of impacted servers must be revoked by the issuing certification
authorities, and new certificates must be issued for servers’ new key pairs. In the worst
case, if the server’s private key had been stolen before the fix was applied and the
attacker was also able to obtain TLS/DTLS session caches between the server and its
(potentially a large number of ) clients, then secrets transmitted in those sessions were
also compromised. Typically, the secrets transported over TLS/DTLS are end users’
passwords, financial transactions, credit card numbers, e-mails, and other confidential
information. What’s worse, there is no trace of whether Heartbleed exploitations had
happened and when. Therefore, it is almost impossible to accurately assess the total loss
caused by the bug due to its retroactive nature.
When it rains it pours. On June 5, 2014, OpenSSL released another security advisory
for six recently reported and fixed flaws.13 These bugs were more difficult to exploit than
Heartbleed, but still drew significant media attention in the wave of Heartbleed.

Key Takeaways
What can we learn from the repeated cyber security crisis? How does a company fight
against cyber-attacks that make it the headlines? How to protect users’ safety on the
Internet? Following is a postmortem on the recent incidents.

Strong Authentication
Organizations, such as law enforcement agencies, offline and online retailers, financial
institutions, medical facilities, and so on, that possess and process high-value assets
should consider implementing strong authentication for access control. A strong
authentication mechanism would require multiple factors of credentials for logging in.
The second credential factor is usually a physical object—for example, a token—that
belongs to a legitimate user.
Today, multifactor authentication is no longer an expensive investment, thanks to
the emergence of innovative technologies. For many applications, the potential monetary
loss due to identity theft far surpasses the cost of deploying multifactor authentication.
Chapter 10 discusses strong authentication in detail and Intel’s unique and cost-effective
solution to the problem—IPT14 (Identity Protection Technology).

Network Management
Organizations should closely monitor all network activities and flag suspicious
operations. Advanced firewall devices and antivirus programs should be employed to
detect malware and respond correspondingly. Intel’s AMT, a core member of the vPro
technology, provides a hardware-based out-of-band platform management solution that
reduces cost and simplifies network administrators’ work.

11
Chapter 1 ■ Cyber Security in the Mobile Age

Boot Integrity
A platform that has been infected by virus, malware, or rootkits is running in a state that
is different from its trusted and known-good state. Secure boot mechanisms, available
on most new computers, examine the integrity of the platform’s firmware and software
components during power-on. They are designed to detect changes in platform state and
identify malicious programs on the system.
In addition, secure boot can collaborate with other security measures to store secrets
inside hardware, so that the confidential data is available for use only if the platform is
running in a trusted state.

Hardware-Based Protection
Sophisticated viruses are capable of scanning a system’s memory for signatures of
interesting data, such as transactions and payment card numbers. For software-based
protections, sensitive data has to appear in the system’s memory in the clear at some point
to be consumed by software programs. The duration of the exposure may be very short but
still enough for malware to do its work. Even though the data is properly protected during
transmission and at rest, attackers only need to circumvent the weakest point.
The ultimate solution is to depend on hardware for security, in which case the
secrets are never exposed in the system’s memory in the clear. Successful attacks against
hardware launched from a remote location, if not impossible, would require extremely
advanced skills to find and exploit critical hardware vulnerabilities.
State-of-the-art computers are equipped with necessary devices and hardware-based
countermeasures to safeguard users’ confidentiality, at rest and at runtime. For example,
the TPM serves as the hardware root of trust (see Chapter 7 for more information) for a
platform; Intel’s SGX technology allows software programs to create and run in dedicated
enclaves that are inaccessible by other components, including ring 0 drivers.

Open-Source Software Best Practice


Besides open-source operating systems such as Linux, open-source implementations
of standardized protocols and functionalities have become a mainstream. Open-source
software is gaining widespread popularity on endpoint devices and clouds because of
many advantages it fosters: low cost, maturity, allowing faster development cycle and
reduced maintenance effort, and so on. Developers simply port the functional modules
they need and integrate with their products, instead of writing from scratch. They usually
do not have to dig into the internal details of how the libraries structure and function. All
they need is to understand the API (application programming interface) and invoke it.
This practice is good and bad. Although it saves engineering resources, on the other
hand, it also poses risks because engineers are blind to the code that they are responsible
for. One of the major disadvantages of free open-source software is that the volunteering
authors provide the source code as-is and are not liable for consequences of bugs in the
code, therefore the users must exercise caution during integration.
Open-source software, especially those that have been used for a long period of
time by a large number of commercial products, normally enjoys high quality and
performance with regard to functionality. However, the security side is a completely

12
Chapter 1 ■ Cyber Security in the Mobile Age

different story. For software development, writing working code is a relatively easier
job compared to security auditing that requires dedicated resources with specialized
expertise for code review and penetration testing, which, due to funding shortage, is often
inadequate for open-source software.
Many adopters do not exercise comprehensive security validation for open-source
modules of the products like they do for their owned components. This is usually due
to lacking an in-depth understanding of the open-source modules, which renders it
difficult or impossible to come up with effective test cases that are likely to identify critical
vulnerabilities. Another excuse for deprioritizing security validation on open source is
the presumption, and de facto an illusion, that open-source software “must be” mature
because it is open and can be read and reviewed by anyone, plus it has been deployed
by countless other products for so many years. In reality, the openness does not imply
secure code. The security validation gap of using open-source software should be filled by
individual product owners.
Eventually, the amount of resources that should be spent on comprehending and
validating open-source code is a judgment call about opportunity cost. If vulnerabilities
are discovered in released products, will the expense of fixing the issue and deploying
the patch be higher than the investment on validation? Notice that there is an intangible
price of brand name damages that must be taken into consideration as well.
In the security and management engine’s firmware, only a small fraction originates
from open-source domain, and it is only used in modules that do not assume security
responsibilities. For example, the TLS implementation in the AMT firmware application
is not ported from OpenSSL and hence not affected by OpenSSL’s vulnerabilities such as
the Heartbleed. The validation of the engine does not discriminate between open source
and closed source. Thorough testing is performed against open-source software used by
the engine.
As a good general guideline, the technical white paper “Reducing Security Risks from
Open-Source Software”15 proposes five steps that organizations should go through to take
advantage of open source and lower the associative risks:
1. Identify and analyze all usages of open source.
2. Assess open source for vulnerabilities ad resolve issues.
3. Develop open-source usage policies.
4. Develop a patch management process.
5. Create a compliance gate.

Third-Party Software Best Practice


Before purchasing commercial software from for-profit vendors or outsourcing software
development to external parties, buyers should ask the following:
• What is the security development process exercised by the vendor?
• What types of security auditing are preformed? Is it done by the
vendor itself or external consultants?
• What is the vulnerability tracking and response process?

13
Chapter 1 ■ Cyber Security in the Mobile Age

Security validation is a pivotal stage in software development. A vendor with a good


quality control system should apply proven techniques, such as static code analysis,
penetration testing, and so forth, to their product development life cycle.
Even though the third-party software has been tested for security by its vendor,
in many cases it is still worth it for the adopter to conduct independent code review and
end-to-end validations, either in-house or by hiring specialized security auditing firms.
This is necessary especially for modules that process sensitive data.

■■Note Consider performing comprehensive security validation and auditing for open-source
and third-party software.

Security Development Lifecycle


The Security Development Lifecycle, or SDL, is a process consisting of activities and
milestones that attempt to find and fix security problems during the development
of software, firmware, or hardware. The SDL is extensively exercised by technology
companies, for example, Microsoft and Intel. Different companies decide their specific
procedures and requirements for SDL, but they all aim at the same goal: to produce
high-quality products with regard to security and to reduce the cost of handling aftermaths
for vulnerabilities found after release.
Intel is committed to securing its products and customers’ privacy, secrets, and
assets. To build a solid third pillar for computing, a sophisticated SDL procedure of five
stages is implemented at Intel to make security and privacy an integral part of product
definition, design, development, and validation:
• Assessment: Determine what SDL activities are applicable and will
be performed.
• Architecture review: Set security objectives, list a threat analysis,
and design corresponding mitigations.
• Design review: Map security objectives to low-level design
artifacts. Make sure designs meet security requirements.
• Development review: Conduct a comprehensive code review to
eliminate security vulnerabilities, such as buffer overflow.
• Deployment review: Perform security-focus validation and
penetration testing and assure that the product is ready for
release, from both the privacy and security perspectives.
The SDL process applies to hardware, firmware, and software, with small differences
in different stages.
Intel takes users’ privacy seriously. The privacy aspect is called out in the SDL
process and evaluated separately, in parallel with the technical aspect of security,
throughout all the five phases. Figure 1-2 shows the SDL phases and components.
A product may ship only after the deployment privacy and security review has been
accomplished and approved.

14
Chapter 1 ■ Cyber Security in the Mobile Age

Product SDL Privacy Security


milestone phase review review

Definition Assessment

Architecture

Design

Implementation

Deployment

Release

Figure 1-2. SDL phases and components

Assessment
The SDL assessment happens as part of the definition stage of a new product. The privacy
assessment asks whether the product will collect users’ personal information, and if so,
what kinds of information, what it will be used for, and what techniques are employed
to protect it from leakage and misuse. Intel has invented advanced technologies to
safeguard users’ fundamental right to privacy. Chapter 5 of this book is dedicated to
privacy protection and Intel’s EPID (enhanced privacy identification) scheme. The
discussion in this section will focus on the security aspect of SDL.
Based on the nature and properties of the product, the assessment review concludes
the set of SDL activities that must be conducted during the remainder of the product
development life cycle. Generally speaking, a security feature—such as a TPM device
or a cryptography engine—is subject to a complete SDL review, including architecture,
design, implementation, and deployment. On the other hand, only select SDL stages
may be required for those functions that are not sensitive to security per se, for example,
Intel’s Quiet System Technology (QST). Normally, architecture and design reviews may be
skipped if the risk of waiving is deemed low; however, implementation and deployment
reviews are almost always planned for all features.

15
Chapter 1 ■ Cyber Security in the Mobile Age

Architecture
In this phase, the architecture owners of the product put together an intensive
architecture description that presents the following points:
• Security architecture: The architecture includes components of
the products, functionalities of each component, internal and
external interfaces, dependencies, flow diagrams, and so on.
A product’s architecture is driven by its assets and functional
requirements.
• Assets: Assets are valuable data that must be protected by the
product, for confidentiality, integrity, and/or anti-replay. For
example, the endorsement private key is a critical asset for a TPM
and may not be exposed outside of the TPM. Notice that an asset
is not necessarily the product’s native value; it can also be users’
data, such as passwords and credit card numbers. The security
and management engine processes various types of user secrets
and it is responsible for handling them properly per defined
objectives.
• Security objectives: Security objectives are the goals that the
product intends to meet for protection. For example, guarding
the endorsement private key for confidentiality and integrity is
a security objective for a TPM device; whereas thwarting denial
of service (DoS) when an attacker is physically present is a not a
security objective for the security and management engine.
• Threat analysis: Based on the in-scope security objectives, a list
of possible attacker threats to compromise the objectives and
assets are documented and analyzed. For example, in order to
steal TPM’s endorsement private key, an attacker may utilize
side-channel attacks by accurately measuring power and time
consumptions during a large number of the TPM’s endorsement
signing operations.
• Mitigations against threats: The mitigation plans detail how
the architecture is designed to deter threats, protect assets, and
achieve security objectives. In most cases, effective mitigations
are realized through well-known and proven cryptography and
security approaches. Note that security through obscurity is not a
meaningful mitigation approach.
Figure 1-3 illustrates the components of the architecture review and relationships
among them.

16
Chapter 1 ■ Cyber Security in the Mobile Age

Assets

drive protect

Security
Architecture
objectives

defines compromise

Mitigations Threats

thwart

Figure 1-3. Components of the architecture review and their relationships

The architecture with aforementioned content is peer-reviewed and challenged


by a group of architects and engineers with extensive experience and strong expertise
in security. It is possible that a proposed new product be killed because one or more
security objectives that are considered mandatory cannot be satisfied by a feasible and
reasonable architecture. If and once the security architecture is approved, the SDL review
process will move on to the design stage.

Design
During the design phase, high-level requirements are converted to prototypes. The
design work for a software or firmware product contains a wide range of aspects. From
the security perspective, in general, the most interesting ones are internal flows and
external interfaces:
• Internal flows: A few security best practices should be followed in
the flow design. For example: involve as few resources as possible;
minimize dependency on shared objects and other modules; apply
caution when consuming shared objects to prevent racing and
deadlock conditions; avoid using recurrence on embedded systems.
• External interfaces: API must be defined with security in mind.
For example: simplify parameters; do not trust the caller;
always assume the minimum set of privileges that are needed to
complete the tasks; verify the validity of input parameters before
use; handle DoS attacks properly, if required.

17
Chapter 1 ■ Cyber Security in the Mobile Age

Besides generic design principles, every product has its unique set of security
objectives and requirements derived from the architecture review, which must be
reflected in the design. The mitigations against threats and the protection mechanisms
for assets are materialized in the design phase as well.
The design of cryptography should follow latest applicable government and industry
standards. For example, encrypting data with AES16 (advanced encryption standard);
applying blinding to private key operations, if mitigation against timing attacks is an
objective. Proprietary algorithms should be introduced only if absolutely necessary.
Notice that use of nonstandard cryptography may pose difficulty in achieving security
certifications such as the FIPS (federal information processing standard) 140-2 standard.17

Implementation
Engineers who implement the product in hardware or software languages should be
knowledgeable about security coding practices. Members of the development team that is
responsible for the security and management engine are required to complete advanced
security coding classes and a training session on the security properties of the embedded
engine, prior to working on the implementation.
Here are a few sample guidelines for software and firmware development:
• Use secure memory and string functions (for example,
memcpy_s() instead of memcpy()) where applicable. Note that this
recommendation does not apply to certain performance critical
flows, such as paging.
• Comparison of two buffers should be independent of time to
mitigate timing attacks. That is, memcmp() should process every
byte instead of returning nonzero upon the first unmatched byte
among the two buffers.
• Beware of buffer overflows.
• Make sure a pointer is valid before dereferencing it.
• Beware of dangling pointers.
• Beware that sizeof(struct) may result in a greater value than
the total sizes of the structure’s individual components, due to
alignments.
• Set memory that contains secrets to zero immediately after use.
• Beware of integer overflows and underflows, especially in
multiplication, subtraction, and addition operations.
• Remember bounds checks where applicable.
• Do not trust the caller’s input if it is not in the trust boundary.
Perform input parameter validation.

18
Chapter 1 ■ Cyber Security in the Mobile Age

• When comparing the contents of two buffers, first compare their


sizes. Call memcmp() only if their sizes are equal.
• Protect resources that are shared by multiple processes with
mechanisms such as semaphore and mutex.
In addition, the development team that owns the security and management engine
also observes a list of coding BKMs (best known methods) that are specific for the
embedded engine. These BKMs are an executive summary of representative firmware
bugs previously seen on the engine. It is crucial to learn from mistakes.
In practice, production code that is developed from scratch by an engineer with a
secure coding mindset may be less of a problem. The more worrisome code in a product
is usually those taken from nonproduction code. For example, proof-of-concept (POC)
code created for the purpose of functional demonstration is often written with plenty of
shortcuts and workarounds, but without security practice or performance considerations
in mind. It is a bad practice to reuse the POC code in the final product, if and when the
POC hatches to production, because in most cases, it is more difficult and resource
consuming to repair poor code than to rewrite. Another source of possibly low-quality
code similar to POC code is test code.
Following the completion of coding, the implementation review kicks off. The review
is a three-fold effort: static analysis, dynamic analysis, and manual inspection. They may
occur in tandem or in parallel.
The static analysis analyzes a software or firmware program by scanning the source
code for problems without actually executing the program. A number of commercial
static analysis tools are available for use for large-scale projects. If the checkers are
properly configured for a project, then static analysis is often able to catch common
coding errors, such as buffer overflows and memory leaks, and help improve software
quality dramatically. However, despite its convenience, static analysis is not perfect.
Particularly for embedded systems, because the tools in most cases do not fully
comprehend the specific environments and hardware interfaces, a relatively large
number of false positives may be reported. Notice that engineering resources must be
allocated to review every reported issue, including those false positives. For the same
reason, static analysis tools may fail to identify certain types of coding bugs.
In contrast to static analysis, dynamic analysis executes a software or firmware
program on the real or a virtual environment. The analysis tests the system with a
sufficiently large number of input vectors and attempts to exercise all logical paths of
the product. The behavior of the system under test is observed and examined. Security
coding bugs, such as a null pointer dereference, can be revealed when the system crashes
or malfunctions. Such issues can be extremely hard to find without actually running
the program.
The manual inspection is a source code review performed by fellow engineers
that are familiar with the module, but did not write the code. The purpose is to make
sure that the implementation correctly realizes the product’s specific security design
and architecture requirements. For example, an invocation of encryption for a secret
is according to the specified algorithm, mode, and key size. Apparently, these kinds of
issues cannot be found by the automatic tools. In addition, the review also checks that
the generic coding guidelines are followed and tries to capture flaws in the code that were
missed by the static and dynamic analysis.

19
Chapter 1 ■ Cyber Security in the Mobile Age

As depicted in Figure 1-4, the implementation review is an iterative process. After


functional or security bugs are fixed or other changes (like adding a small add-on
feature) are made, the updated implementation must go through the three steps again.
To conserve engineering resources, the manual code review may cover only the changed
portions of the code. The two automatic analysis should be executed regularly, such as on
a weekly basis, until the final product is released.

Code complete

Static analysis Manual review Dynamic analysis

No
Bug count is zero? Bug fixes

Deployment review

Figure 1-4. Iterations of the implementation review. In this figure, static analysis,
dynamic analysis, and manual review are performed in parallel

Deployment
The deployment review is the last checkpoint before shipment. Sophisticated validations
are performed against the product in this stage. The materials to help validation engineers
create a test plan include output of the previous stages, such as security objectives of the
architecture phase and the interface definition of the design phase. Comprehensive test
cases aiming at validating the product’s security behaviors are exercised.

Interface Testing
The first test object is the product’s interface. Figure 1-5 is a graphical illustration of the
interface test case design. Note that the output validation takes security objectives as
input. A bug will be recorded when the behavior of the system under test violates one or
more requirements.

20
Chapter 1 ■ Cyber Security in the Mobile Age

Security objectives
Interface definition
and requirements

Input generator Output validator Test result

Console

System under test

Figure 1-5. Interface test design

There are two categories of interface tests:


• Positive test: A positive test first invokes the product’s interface
with valid input vectors as specified in the design documents, and
then verifies that the output from the system under test is correct
per the security objectives and requirements. In most cases, there
exist an infinite number of valid input value combinations. The
test console may randomly generate valid inputs, but common
cases (most frequently used values) and corner cases (extreme
values) should be covered.
• Negative test: A negative test manipulates the input and invokes
the product’s interface with invalid input. The product is
expected to handle the unexpected input properly and return
an appropriate error code. It requires in-depth knowledge of the
product in order to create good negative test cases that are able to
expose security vulnerabilities.
To emphasize how pivotal the negative tests are, take the Heartbleed for example.
Using the Request for Comments 6520 as the requirement document, a simple negative
test that acts like a malicious client that sends a heartbeat request with an excessive
payload_length to the server under test would have caught the issue, because instead
of notifying the client of an error (expected behavior), the flawed server would happily
respond with its internal memory content of the illegitimate size requested by the client.
In addition to the scenario of “should bailout but does not,” another common failure of
negative tests is system crash, which can be a result of a variety of possibilities, for example,
improper handling of invalid input parameters, buffer overflow, and memory leaks.
Fuzz testing, a kind of the negative testing, has become very popular in the recent
years. The fuzz testing is an automated or semiautomated technique that provides a large
set of invalid inputs to the product under test. The inputs are randomly generated based
on predefined data models that are fine-tuned for the specific interface that will be tested.
By looking for abnormal responses, such as crashing, security vulnerabilities such as
buffer overflow can be uncovered.

21
Chapter 1 ■ Cyber Security in the Mobile Age

Penetration Testing
The second type of tests intends to verify that the implementation is in accordance
with the threat mitigation plan. A test of this type emulates an attack that is in the threat
analysis of the architecture phase, observes the response of the product under test, and
makes sure that it matches the behavior required by the mitigation plan. This type of
testing is known as penetration testing, or pentest for short.
For example, the security and management engine reserves an exclusive region
of the system memory for the purpose of paging. Any entity other than the engine
changing the content of the region is deemed a severe security violation. Such an attack
is considered and documented in the threat analysis, and the corresponding mitigation
required is to trigger an instant power down of the platform as soon as the embedded
engine detects the alteration.
A basic test for this case would flip a random bit in the reserved region of
the host memory using a special tester and see whether the system indeed shuts
down immediately as expected. Passing this basic test proves the correctness of the
implementation at a certain confidence level. However, a more advanced test would
understand the integrity check mechanism used for paging and replace the memory
content with a calculated pattern that may have a higher chance of cheating the
embedded system, and hence bypassing the protection. Obviously, design of such smart
tests requires the knowledge of internal technical information of the product. This is
called white box testing.
Before rolling out the product, a survivability plan should be drafted and archived.
The survivability plan specifies roles, responsibilities, and applicable action items upon
security vulnerabilities are found in the field.

CVSS
Even after going through stringent review and testing, vulnerabilities reported—either
by internal teams or external sources—after the product is released are not uncommon.
It is important to fairly evaluate the severity of escaped defects in order to take the right
actions accordingly. For rating vulnerability, an industry standard used by the National
Institute of Standards and Technology’s National Vulnerability Database (NVD) is the
CVSS18 (Common Vulnerability Scoring System).
The CVSS defines three groups of metrics to describe vulnerability. They are base,
temporal, and environmental, respectively:
• Base group: Represents fundamental characteristics of
vulnerability. Such characteristics do not change over time or
environment.
• Temporal group: Includes characteristics that change over time,
but not environments.
• Environmental group: Covers characteristics that are relevant and
unique to a particular environment.

22
Chapter 1 ■ Cyber Security in the Mobile Age

Each group consists of several factors to be rated by the analysis. Figure 1-6 lists the
factors under each group. The CVSS formula calculates a base score, a temporal score,
and an environment score, respectively, from applicable factors. The calculation yields
a score ranging from 0 to 10 inclusive, where a higher number indicates worse severity.
According to NVD’s standard, vulnerabilities are labeled “low” severity if they have a base
score of 0.0 to 3.9, “medium” for a base score of 4.0 to 6.9, and “high” for 7.0 to 10.0.

Base metric group Temporal metric group Environment metric group

Access vector Exploitability Collateral potential

Access complexity Remediation level Target distribution

Confidentiality
Authentication Report confidence
requirement

Confidentiality impact Integrity requirement

Integrity impact Availability requirement

Availability impact

CVSS

Figure 1-6. CVSS matric groups

Specifically for assessing severity of vulnerabilities of the security and management


engine’s firmware, the CVSS is slightly adjusted to better suit the nature of the engine:
• The access vector options used are network, local, or physical.
Firmware bugs that can be exploited remotely via the network are
more critical. “Local” means that an attacker must access the host
operating system with ring 0 privilege in order to mount an attack.
“Physical” refers to the capability of reading and/or writing the flash
chip that holds the firmware’s binary image and nonvolatile data.
• Authentication refers to authenticating to the embedded engine,
not the host operating system. Some of the firmware applications,
such as AMT, may require user authentication. However,
authentication is not required for invoking most of the engine’s
features from the host operating system.
• Because the engine is a privileged device in the system, the
confidentiality, integrity, and availability requirements are all
rated at high in most cases.

23
Chapter 1 ■ Cyber Security in the Mobile Age

Once a firmware bug is reported, the remediation plan depends on the CVSS score of
the bug. The following are the general guidelines:
• If the defect is of low severity, then do not fix or fix in the next
scheduled release.
• If the defect is of medium severity, then fix it in the next
scheduled release. Prevent firmware downgrade from a firmware
version with the fix to any vulnerable version.
• If the defect is of high or critical severity, then fix it in an ad-hoc
hot-fix release. Prevent firmware downgrade from a firmware
version with the fix to any vulnerable version. If exploitation of the
bug may result in leakage of the chipset key or EPID private key,
then launch the rekey operation with a remote server after the
firmware is updated.
Notice that bug fixes also pose potential risks—they may introduce new functional
bugs or security vulnerability, or break working flows. Therefore, complete functional
testing and select security reviews should be performed against the fixes for quality control.

Limitations
The CVSS is especially useful for rating software vulnerabilities. However, it is not perfect
when used on hardware, in particular because it does not comprehend survivability.
For example, the level of difficulty of patching a hardware bug is not taken into
account. The remediation may include the following:
• Documentation and specification change
• Software workaround by remote update
• Firmware workaround by remote update
• Recall (in the worst case)
Such factors should be weighed when evaluating hardware issues.

References
1. Intel IT Center, “Insights on the Current State of BYOD,” www.intel.com/content/
www/us/en/mobile-computing/consumerization-enterprise-byod-peer-
research-paper.html, accessed on June 10, 2014.
2. Trusted Computing Group, “Trusted Platform Module Library,”
www.trustedcomputinggroup.org, accessed on March 20, 2014.
3. Intel, Trusted Execution Technology, www.intel.com/txt, accessed on January 30, 2014.
4. Intel, “Software Guard Extensions Programming Reference,” https://software.
intel.com/sites/default/files/329298-001.pdf, accessed on May 10, 2014.

24
Chapter 1 ■ Cyber Security in the Mobile Age

5. CTIA: The Wireless Association, “Smartphone Anti-Theft Voluntary Commitment,”


www.ctia.org/policy-initiatives/voluntary-guidelines/smartphone-anti-
theft-voluntary-commitment, accessed on June 10, 2014.
6. eBay Inc., “eBay Inc. to Ask eBay Users to Change Passwords,”
http://announcements.ebay.com/2014/05/ebay-inc-to-ask-ebay-users-to-
change-passwords/, accessed on June 10, 2014.
7. Target Corp., “Target Confirms Unauthorized Access to Payment Card Data in U.S.
Stores,” http://pressroom.target.com/news/target-confirms-unauthorized-
access-to-payment-card-data-in-u-s-stores, accessed on June 10, 2014.
8. McAfee Labs, “Threat Advisory: EPOS Data Theft,” https://kc.mcafee.com/
resources/sites/MCAFEE/content/live/PRODUCT_DOCUMENTATION/24000/PD24927/
en_US/McAfee_Labs_Threat_Advisory_EPOS_Data_Theft.pdf, accessed on
June 10, 2014.
9. Internet Engineering Task Force (IETF), Request for Comments 6520, “Transport Layer
Security (TLS) and Datagram Transport Layer Security (DTLS) Heartbeat Extension,”
http://tools.ietf.org/html/rfc6520, accessed on June 10, 2014.
10. OpenSSL Security Advisory, www.openssl.org/news/secadv_20140407.txt,
accessed on June 10, 2014.
11. Netcraft, “April 2014 Web Server Survey,” http://news.netcraft.com/archives/
2014/04/02/april-2014-web-server-survey.html, accessed on June 10, 2014.
12. Kumar, Arvind, Purushottam Goel, and Ylian Saint-Hilaire, Active Platform Management
Demystified: Unleashing the Power of Intel vPro Technology, Intel Press, 2009.
13. OpenSSL Security Advisory, www.openssl.org/news/secadv_20140605.txt,
accessed on June 10, 2014.
14. Intel, Identity Protection Technology, http://ipt.intel.com/, accessed on
April 20, 2014.
15. Hewlett-Packard Development Co., “Reducing Security Risks from Open Source
Software ,” http://h20195.www2.hp.com/v2/GetPDF.aspx%2F4AA0-8061ENW.pdf,
accessed on June 10, 2014.
16. National Institute of Standards and Technology, “Advanced Encryption Standard
(AES),” http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf,
accessed on November 17, 2013.
17. National Institute of Standards and Technology, “Security Requirements for
Cryptographic Modules,” http://csrc.nist.gov/publications/fips/fips140-2/
fips1402.pdf, accessed on April 15, 2014.
18. National Institute of Standards and Technology, Common Vulnerability Scoring
System (CVSS), http://nvd.nist.gov/cvss.cfm, accessed on December 12, 2013.

25
Chapter 2

Intel’s Embedded Solutions:


from Management to
Security
Security is, I would say, our top priority because for all the exciting things
you will be able to do with computers—organizing your lives, staying
in touch with people, being creative—if we don’t solve these security
problems, then people will hold back.
—Bill Gates

Teflon, the famous chemical, was discovered by Roy Plunkett of E. I. du Pont de Nemours
and Company (commonly shortened to DuPont), in 1938 and trademarked in 1945.
Teflon’s major application today is in manufacturing nonstick cookware. However, it was
not intended for helping grandmas make delicious pancakes when it was first discovered.
For decades, it has been used in artillery shell fuses and the production of nuclear
materials.
Temper foam was invented in 1966 by Chiharu Kubokawa and Charles A. Yost of
NASA’s Ames Research Center to protect astronauts’ bodies when they are hurtling
toward the earth. Today, temper foam is used to make mattresses that people sleep on
every night.
The list of old inventions finding new applications in new domains goes on. The new
applications benefit a much wider population and improve more people’s quality of life.
When Intel’s Active Management Technology (AMT) first appeared in 2005, it was
marketed as an advanced system management feature for Intel 82573E series gigabit
Ethernet controllers. In 2007, a new embedded coprocessor, namely the management
engine, was introduced. Originally, the management engine was designed primarily
for implementing the AMT rather than running security applications. At that time, the
main problem that was supposed to be resolved by the embedded engine and AMT was
the high expense and difficulty of system management by network administrators. The
management engine was a component of Intel chipsets with vPro technology. The Intel
AMT implementation was moved from gigabit Ethernet controllers to the management
engine and became a feature of vPro.

27
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

Intel AMT is not the only application on the management engine. The first security
application on the engine was the integrated TPM (Trusted Platform Module, see
Chapter 7 for details). The number of security applications has been increasing in recent
years with every release of the engine. In the latest releases, most applications running
on the engine are related to security. The applications either realize “pure” security
functionalities, or provide security infrastructures for other consumer features. For
example, TPM and Boot Guard (refer to Chapter 6 of this book for details about Intel’s
Boot Guard technology) are security modules, whereas the dynamic application loader
(DAL, see Chapter 9) is not implemented for security per se, but requires security as a
building block.
In addition to more powerful applications and functionalities, the embedded
engine has also been deployed on more platforms—not only chipsets for traditional
personal computers, laptops, workstations, and servers, but also SoC (System-on-Chip)
products, for example, in-vehicle infotainment, tablets, and smartphones, where security
is becoming a critical infrastructure. The AMT is still widely provisioned on desktop
computers and laptops, but has become an optional add-on for other mobile devices. On
Intel’s SoC platforms, the engine carries only security applications.
Just like Teflon and temper foam, today, the engine is realizing its greater value
in the new usage model—providing robust security solutions and trusted execution
environments to all forms of computer systems. The security and management engine is
contributing to the promotion of people’s computing experience every day and making a
more substantial impact than ever before.
This book is not the first literature on the engine. Back in 2009, Intel Press published
Active Platform Management Demystified: Unleashing the Power of Intel vPro Technology,
authored by Intel’s Arvind Kumar, Purushottam Goel, and Ylian Saint-Hilaire.1 It will be
referred to as the “2009 AMT book” in this chapter.
The 2009 AMT book is a systematic introduction to the management engine and
AMT. It raises the platform management problems to be resolved, evaluates existing
solutions, and then proposes the innovative AMT solution. It covers technical details
of the management engine and the AMT, as well as instructions for setting up and
configuring the AMT.
Although the engine’s design has been improved in many ways since the 2009 AMT
book was published, the fundamental architecture of the engine remains unchanged.
A large portion of the technical descriptions in the 2009 AMT book still applies to today’s
security and management engine. Even after five years, it is still the best reference for
infrastructures of the management engine and the AMT.
The remainder of the chapter is organized as follows. In the next section, we briefly
revisit the 2009 AMT book. We will begin with a review of the hardware and firmware
architectures of the management engine, and then look at the platform management
problems and compare different solutions by analyzing their advantages and
disadvantages. Next, a high-level introduction to the architecture of the AMT is presented.
Finally, select security applications that feature on the security and management engine
today are presented, with reasons for housing the applications in the embedded engine.

28
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

Management Engine vs. Intel AMT


What are the differences between the two terminologies, management engine and AMT?
Do they mean the same thing?
The management engine refers to a computing environment consisting of dedicated
hardware and firmware components. It has its own real-time operating system and
hardware resources such as processor and memory. Just like a computer with Core CPU
(central processing unit), applications can be installed and executed on the management
engine. The applications are not generic software. They are implemented in firmware and
designed specifically for running on the engine.
On the other hand, Intel AMT is a firmware application running on the management
engine. It invokes the infrastructure and kernel application programming interfaces
(APIs) provided by the management engine to build system management functionalities.
When the management engine was first introduced, Intel AMT was the primary
application and it had attracted tremendous media attention. Hence some literatures use
“management engine” and “active management technology” interchangeably. Today,
although Intel AMT is still the most senior member of the application family, many new
applications have joined the family and been deployed on the engine.

Intel AMT vs. Intel vPro Technology


Intel’s vPro technology is a marketing name that covers a wide range of security and
management features that are built in Intel processors and chipsets. The vPro technology
resolves prevailing manageability, security, and energy efficiency problems with
hardware-based protection, which is considered, when compared with software-based
solutions, less vulnerable to threats such as viruses, worms, and hackers.
Many consider the AMT to be the essence of vPro. However, the vPro technology is
comprised of not only AMT, but also other useful ingredients, such as:
• Intel Trusted Execution Technology2 (TXT)
• Intel Virtualization Technology3
• Intel Identity Protection Technology4 (IPT)
• Intel Anti-Theft Technology5 (will be end of life in January 2015)
Besides AMT, some of these vPro ingredients also rely on the embedded engine to
function. For example, IPT (refer to Chapter 10) and Anti-Theft.

Management Engine Overview


The management engine is made up of hardware and firmware. However, outside of its
boundary, appropriate software drivers and applications must be installed on the host
in order for the host to communicate with the embedded system through the dedicated
host-embedded communication interface (HECI).

29
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

Hardware
The hardware is comprised of a processor, code and data caches, DMA (direct memory
access) engines, cryptography engines, read-only memory (ROM), internal memory
(static random-access memory, or SRAM), a timer, and other supporting devices. The
devices are connected through an internal bus that is not exposed to the external world.
This ensures independence, isolation, and security of the engine. The management
engine’s hardware devices are only accessible by the processor, the DMA engines, and the
cryptography engine.
The hardware architecture is illustrated in Figure 2-1.

Code Cache
Internal
Processor SRAM
Data Cache

ROM
Internal bus

Cryptography
engine
Interrupt CLink I/O
controller
DMA engine

High Memory
precision Controllers
and HECI engine
watchdog
timer

Figure 2-1. Hardware architecture of the management engine

Early generations of the management engine used ARC as the central processing
unit. Other processors have replaced ARC in newer generations. The processor model
and frequency in a specific engine depends on the form factor on which the engine is
deployed. The model of the processor does not impact the engine’s high-level firmware
architecture.
There is a small code and data cache to help the processor reduce the number of
accesses to the internal SRAM. The internal SRAM is the memory that stores firmware
code and data at runtime. The capacity of SRAM varies depending on the product, but
generally ranges between 256KB and 1MB.
In addition to the internal SRAM, the management engine also uses a certain
amount of DRAM (dynamic random-access memory) from the main system memory.
Code and data pages that are not recently accessed may be evicted from the SRAM and

30
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

swapped out to the reserved memory. When a page is needed again, it will be swapped
in to the SRAM. During the boot process, the DRAM region that will be used by the
management engine is reserved by the BIOS (basic input/output system) for the engine’s
dedicated access. The reserved region, by design, is not visible to the main host operating
system. That being said, the management engine’s security architecture assumes that the
BIOS may be compromised and the local host may be able to read and write the reserved
memory region. The size of the reserved memory varies from product to product, but
usually in the range between 4MB and 32MB. This is only a small fraction of the DRAM
installed on today’s computing devices, and hence the impact to the main operating
system performance is negligible.
For many embedded applications, it is necessary to transmit bulk data between
the embedded memory and the host memory. However, the engine’s processor cannot
address the host memory. Therefore, dedicated DMA engines are introduced for
moving data between the engine’s memory and the main system’s memory. Notice that
the reserved memory is considered the engine’s memory and not the host memory.
When addressing the host memory, the DMA engines can only understand physical
addresses and not virtual addresses that are specific to operating systems processes.
The DMA engines can only be programmed by the embedded firmware running on the
management engine. The DMA engines can also be used to move a large amount of data
between two buffers of the engine’s internal memory. Experiments show that, when data
is greater than 1KB in size, it is more efficient to invoke a DMA engine for data copying
than calling memcpy() of the processor. The firmware cannot program a DMA engine to
move data between two host memory locations.
The cryptography engine device offloads and accelerates heavily-used cryptography
algorithms so those resource-consuming operations can be performed faster and
they do not occupy the processor’s clock cycles. The algorithms implemented by the
cryptography engine include AES (Advanced Encryption Standard), SHA (Secure Hashing
Algorithm), DRNG (Deterministic Random Number Generator), big number arithmetic,
and so on. See Chapter 3 of this book for a complete list of algorithms and their API
descriptions. The cryptography engine is only accessible by the engine’s firmware. They
are not directly available to the host, although some embedded applications implement
and expose external interfaces for the host applications to take advantage of the
cryptography engine. Notice that the cryptography driver in the firmware kernel not only
abstracts interfaces for the cryptography engine hardware, but also implements other
cryptography algorithms that are not available in the hardware.

Overlapped I/O
As shown in Figure 2-1, there are three master devices—processor, DMA, and
cryptography engine—on the management engine. They all can access the embedded
memory and process data. These devices are independent of each other and therefore
can function at the same time without mutual interference, as long as the assets (for
example, memory and global variables) that are being accessed by more than one
device are properly protected against racing conditions. The protection is usually
realized by employing semaphores or mutexes. By commanding multiple devices to
work simultaneously, firmware applications can be optimized to minimize the system

31
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

resource idle time and boost performance. The mechanism implemented by the security
and management engine is de facto equivalent to overlapped I/O (input/output) or
asynchronous I/O for traditional operating systems.
The idea is straightforward. After process A initializes a long cryptography operation,
such as the exponentiation and modulo of RSA (a popular asymmetric-key cryptosystem
invented by Ron Rivest, Adi Shamir, and Leonard Adleman) decryption, instead of
sitting idle and waiting for its completion, the processor may switch to process B and
perform operations that do not require the cryptography engine. In the meantime, the
processor may either periodically inquire about the status register for completion of the
RSA operation or watch for an interrupt signaled by the cryptography engine. Similarly,
the DMA engines can also participate in the synchronization to further expedite the
operations.
An interesting example of the overlapped I/O design is the flow for decrypting and
parsing an H.264 video frame during movie playback. For this application, the player
running on the host receives encrypted video frames from a remote content server, but
the player as user-mode software is not allowed to access the content key or the clear
content. The wrapped content key is sent to the security and management engine, which
in turn uses its device private key to unwrap and retrieve the plaintext content key. The
engine then decrypts the encrypted frames, performs slice header parsing, and sends
back the resulting headers to the host. Finally, the player submits the encrypted frames
and parsed headers to the GPU (graphics processing unit) through the graphics driver for
playback.
Because of the limited memory capacity of the embedded memory, a large frame has
to be split into chunks before it is processed. The optimal size of a chunk depends on how
much embedded memory is available.
The firmware has three tasks in this usage:
1. Copy a chunk of an encrypted video frame from the host
memory to the internal memory. This step is carried out by a
DMA engine.
2. Decrypt the encrypted frame. For most cases, it is an AES
decryption, offloaded to the cryptography engine.
3. Parse the clear frame. This step is conducted by the
embedded processor.
The firmware runs the three steps repeatedly on all chunks of the frame, until the
entire frame is processed.
A sequential approach would be to repeatedly exercise steps 1 to 3 for all chunks of a
frame, respectively. The advantage is obviously simple firmware control logic. Figure 2-2
depicts an example of a frame that consists of four chunks. For simplicity, assume that the
three tasks for a chunk— DMA copy, decryption, and parsing— take the same amount
of time (denoted as one time slot in the figure). The number of time slots needed for
processing a frame of n chunks is 3 × n. Processing all four chunks of the frame takes as
many as 12 time slots.

32
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

Time Step 1: DMA engine Step 2: Cryptoengine Step 3: Processor


bringing in encrypted decrypting encrypted parsing decrypted
frame frame frame

1 Chunk 1 Idle Idle

2 Idle Chunk 1 Idle

3 Idle Idle Chunk 1

4 Chunk 2 Idle Idle

5 Idle Chunk 2 Idle

6 Idle Idle Chunk 2

7 Chunk 3 Idle Idle

8 Idle Chunk 3 Idle

9 Idle Idle Chunk 3

10 Chunk 4 Idle Idle

11 Idle Chunk 4 Idle

12 Idle Idle Chunk 4

Figure 2-2. Frame parsing flow without using overlapped I/O

Obviously, the sequential approach lacks efficiency. In this design, when step 1 is
running, the DMA engine is busy; however, the cryptography engine and the processor
are both idle. Similarly, in step 2 and step 3, only one device is working at any moment
and the other two are not being used.
To implement an overlapped I/O optimization, the firmware must simultaneously
manage three chunks of the frame (namely: previous chunk, current chunk, and next
chunk) of the same size in three distinct memory buffers.
The firmware first initializes DMA for the next chunk of frame, then triggers the
AES decryption for the current chunk (the current chunk has been DMA’ed into the
embedded memory in the previous iteration), and finally parses the previous (decrypted)
chunk of the frame (the previous chunk has been DMA’ed into the embedded memory
and decrypted in the previous two iterations). When the parsing is finished, the
processor waits for the completion of the AES and the DMA. Figure 2-3 explains the flow
graphically.

33
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

Time Step 1: DMA engine Step 2: Crypto engine Step 3: Processor


bringing in encrypted decrypting encrypted parsing decrypted
frame frame frame

1 Chunk 1 Idle Idle

2 Chunk 2 Chunk 1 Idle

3 Chunk 3 Chunk 2 Chunk 1

4 Chunk 4 Chunk 3 Chunk 2

5 Idle Chunk 4 Chunk 3

6 Idle Idle Chunk 4

Figure 2-3. Frame parsing flow using overlapped I/O

It is easy to see from Figure 2-3 that processing four chunks takes only six time slots
thanks to the overlapped I/O optimization. In general, the number of time slots taken for
processing a frame of n chunks is n + 2.
Note that for the security and management engine, the processor, the DMA engines,
and the cryptography engine all operate at the same speed. The exact frequency
varies among different products. This is the major difference between the embedded
overlapped I/O and its counterparts for the host operating systems, where the I/O
devices, that is, hard drive, keyboard, and so forth, are usually operating at significantly
slower speed than the main processor.
Admittedly, managing three masters may result in fairly complex firmware logic.
The best practice for software engineering tells us that complicated code is more prone
to bugs and errors. Therefore, such optimization strategies should be exercised with extra
care. And the implementation must go through thorough testing and validation to cover
all corner cases. For certain use cases, such as video frame parsing, as the throughput
requirement is extremely high to guarantee smooth playback, utilizing the overlapped
I/O trick is necessary.

■■Note If multiple master devices are available on the embedded system, consider
overlapped I/O to improve performance.

Firmware
The security and management engine’s embedded firmware implements the runtime
operating system, kernel, and applications.

34
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

There are numerous products and form factors of the engine. A specific version of
firmware is intended for running on the corresponding engine hardware only, and a
specific engine is intended for running the corresponding version of the firmware; for
example:
• Intel series 5 chipset (codename IbexPeak) can load only security
and management engine firmware version 6.x. It cannot load
version 5.x or other firmware. It cannot load firmware from a third
party or a hacker.
• Security and management engine firmware version 6.x can
only execute on the Intel series 5 chipset. It cannot be executed
on series 6 or other chipset generations. It cannot be executed
on SoC products, nor can it run on a third-party’s or a hacker’s
hardware platforms.
• Security and management engine firmware designed for the Bay
Trail tablets cannot execute on Intel chipsets or other generations
of Intel tablets.
The hardware and firmware mapping is enforced by different image signing keys.
The hash values of the signing public keys are hardcoded in the ROM on different
products.
Figure 2-4 shows the high-level architecture of the management engine firmware.

Privileged-nonprivileged
interface
Privileged firmware (kernel) Nonprivileged firmware

ROM Extended kernel

Embedded operating system Host interface

Bringup Flash driver


…...
Loader

Applications
Storage
AMT
Drivers

…... Firmware-based TPM


…...

Management engine

Figure 2-4. Firmware architecture of the management engine

35
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

There are two storage media—ROM and flash nonvolatile memory—that store the
firmware’s binary data and executable code. The ROM inside the management engine
stores the boot loader. The code in ROM cannot be modified once manufactured. Thanks
to this property, ROM is used as the root of trust of the engine. The boot loader code is
usually smaller than 256KB.
The rest of the firmware is stored in flash. The flash is divided into multiple regions,
for security and management engine firmware, BIOS, network controller, and so forth,
respectively. Depending on which embedded applications are chosen to be included,
the management engine firmware can consume from a few hundred kilobytes to 1.5
megabytes of flash space. The region for firmware is further divided into regions for
executable code, configuration data, embedded applications’ variable storage, and so
on. The OEMs (original equipment manufacturers) are mandated to lock down the
flash so it cannot be altered after the manufacturing process is completed. However,
the management engine does not depend on the flash lockdown for security. The threat
analysis assumes the flash can be replaced or reprogrammed by an attacker as he wishes.
As shown in Figure 2-4, firmware modules are logically divided into two categories:
privileged and nonprivileged. The privileged firmware boots the engine, loads other
modules, abstracts hardware devices (such as DMA engines and cryptography engines),
schedules threads, manages synchronization objects (such as semaphores, timers,
and mutex), and coordinates communications between embedded applications. The
privileged firmware is the kernel and it implements only infrastructure for internal
applications. It usually does not contain applications or expose external interfaces that
are visible to the host.
The nonprivileged firmware is made up of one or more applications that realize
their designed functionalities. The management engine firmware must contain at least
one nonprivileged application. The Intel AMT, a nonprivileged module, is one of such
applications. One notable difference that distinguishes the AMT from other applications
is that the AMT also includes network stacks. Although most applications leverage the
kernel for external communication, the AMT uses firmware wired and wireless network
stacks for communicating with the remote managing console. As will be described
later in this chapter, the firmware shares the same network devices with the host. The
nonprivileged modules are further separated from each other by task isolation. The
boundary between the privileged and nonprivileged domains is safeguarded by hardware
and the privileged, to prevent privilege escalation attacks from the nonprivileged code.
Chapter 4 of this book provides a detailed introduction about the firmware
architecture.

Software
Two classes of software programs run alongside the engine: drivers and user-mode
applications.
The HECI is intended for transmitting a small amount of data between the host
and the management engine firmware. The HECI is implemented as a circular buffer
with limited bandwidth; therefore, the size of the data in general should be smaller than
10KB. The data transmitted through HECI can be commands for the firmware and the
firmware’s responses, but not massive data. The DMA engines should be used to move
large amounts of data between host and firmware.

36
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

During the boot process, the BIOS can exchange messages with the firmware through
HECI. On the host operating system, only ring 0 drivers may access the HECI device to
send and receive messages. Together with the management engine firmware, Intel also
releases HECI driver software for the HECI communication for various operating systems.
The HECI driver is also called the management engine interface (MEI) driver. On Linux
and Android, it is a device driver that supports the main kernel-based distributions.
Most firmware applications serve the role of trusted execution environments for
the corresponding host applications. The firmware applications are typically used for
handling sensitive secrets that must not be visible to the host and for offloading critical
operations that involve the secrets. The software and firmware together realize specific
functionalities. The software agents communicate with firmware applications through the
HECI interface and DMA.
For example, a movie player application sends a 128-bit or 256-bit encrypted content
key to firmware in a HECI message, and then the firmware uses the unique device key
stored in the engine to decrypt the content key. Then the player sends another HECI
command to initialize playback. Note that the device key must be securely provisioned to
the engine beforehand and the device key must never be exposed to the host.
The software may also place bulk data, such as an encrypted video frame of over
1MB in size, in the host memory and notifies the firmware of the data size and the
physical address thorough a HECI command. Upon receiving the HECI command, the
firmware invokes its DMA engine to bring in the video frame from the host. Note that
the embedded engine’s DMA devices understand physical memory address only. Virtual
memory must be converted to physical memory by a ring 0 driver before delivering to
the firmware.

Platform and System Management


As defined in the 2009 AMT book, a platform is a computer system and all of its hardware
components: motherboard, disk storage, network interface, and attached device, that is,
everything that makes up the computer’s hardware, including BIOS. On the other
hand, a system has a broader definition. It includes both the software and the hardware
of a computer.
Today, the concept of a “platform” for mobile devices should be extended to cover
hardware that is not present in traditional computer systems. There is a long list of
hardware that is commonly embedded in mobile platforms: GPS (global positioning
system), cameras, sensors, fingerprint reader, and so forth.
The network administrator’s responsibility is to make sure all computers in an
enterprise are up and running normally. Even before the Intel AMT was invented,
there were numerous manageability solutions available in the market to help network
administrators do their jobs.

Software Solutions
There are several categories of manageability software. For example, firewalls analyze
network data packets and determine whether they should be allowed or blocked, based
on the rules and policies configured by network administrators. Antivirus software

37
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

detects and removes malicious software programs from the system. Remote desktop
control agents such as VNC (virtual network computing) and SSH (secure shell)
enable IT support technicians to remotely manage a system to perform diagnosis and
resolve problems.
Although very convenient and useful in daily system management, software
solutions also suffer from obvious limitations:
• Dependability: Manageability software runs in the operating
environment that they are attempting to monitor, manage,
and repair. When the operating system is not booting or not
configured correctly, the software manageability solutions may
fail to function.
• Availability: Manageability software is not able to perform
management tasks when the system is in low-power states
(sleeping or hibernating).
• Reliability: Manageability software is usually launched during
boot and runs quietly in the background. However, it may be
accidentally or intentionally turned off by end users or other
system “clean-up” utilities.
• Security: Software solutions are naturally less trustworthy than
hardware solutions. They are vulnerable to denial of service (DoS)
attacks, may be compromised to report bogus information, or
may even be hijacked and become a threat to other computers in
the same network.

Hardware Solutions
In contrast to software solutions, hardware solutions for manageability do not depend on
the operating system or software programs; hardware solutions can be functioning when
the computer is in a low-power state; and hardware-based security measures can be
applied if desired.
The KVM (keyboard, video, and mouse) is a representative hardware approach. In a
typical KVM setup, the computer being managed is locally connected to a network KVM
device, which connects the computer’s I/O devices to a remote management console over
the network. A network administrator can manage numerous computers from a single
console simultaneously. Sitting in his office, the administrator can see the display of the
computer being serviced and control its keyboard and mouse, as if he is sitting in front
of the managed computer. Figure 2-5 is a symbolic representation of the management
solution based on network KVM.

38
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

Network VGA

KVM
USB

Managedd
M
Managementt
M Computer
Console
Figure 2-5. Network KVM connected to a managed computer

The equipment cost is the main factor that prevents the network KVM solution from
being deployed on every computer. As can be seen in Figure 2-5, the KVM stands on
the side of the computer; there must be a KVM device to support a computer (multiple
computers physically located in the same location can share a multiport network KVM).
The retail price of a 16-port network KVM ranges from a few hundred to over a thousand
US dollars. This significantly raises the cost of network and system administration.
A more advanced hardware management solution is the baseboard management
control (BMC). The BMC is a specialized embedded system that monitors various
physical states, including, but not limited to, the temperature, humidity, or voltage of a
computer or server. If a reported value strays out of the normal range, the administrator
will be notified. A BMC combined with network KVM can realize very powerful
management functionalities, including remotely power cycling, seeing displays, and
controlling the keyboard and mouse. See Figure 2-6 for a symbolic representation
of the BMC.

BMC
Management
Console

Figure 2-6. Baseboard management controller

The powerful capability and convenience of BMC comes with a price. Due to the
cost, BMC is usually only justifiable for deploying on large servers that carry critical tasks.

39
Chapter 2 ■ Intel’s Embedded Solutions: from Management to Security

In-Band Solutions
An important component of any management methodology is how the data of the
managed machine is transmitted to the managing console for diagnosis and analyzed.
The communication link determines the security and reliability of the communication.
An in-band solution leverages the communication and network stacks of the
underlying operating system and is often utilized by software management solutions,
such as VNC, SSH, and so on. The in-band communication suffers the same limitations of
software management, that is, dependability, availability, reliability, and security.

Out-of-Band Solutions
In contrast to in-band, an out-of-band solution employs dedicated channels for
communicating with the console. Generally speaking, out-of-band solutions are more
robust and secure than in-band solutions, thanks to the isolation from the host being
managed.
For example, a network KVM device implements a network interface separated from
the network stack of the managed computer’s operating system. The connections of KVM
and the computer run side by side and are independent of each other.
The 2009 AMT book extends the definition of “out-of-band” for a special case,
where the wired or wireless network adaptor is shared by both the operating system
and an isolated management device. In this case, although the management device is
located inside the chassis of the computer and it is not equipped with dedicated network
hardware, it is still considered out-of-band because the management does not depend on
the operating system. Figure 2-7 illustrates the sharing of a network card.

Operating System

File OS OS Network
System Apps. Agent Stack

Hardware
Management

In-band
Out-of-band
Figure 2-7. Out-of-band management: both the operating system and the hardware
management traffic can use the same network hardware

Sharing a network device such as a NIC (network interface card) certainly reduces
the bill of material (BOM) cost, but this slightly compromises functionality and security
compared to using a dedicated network device. Functionality-wise, if the network card
itself is malfunctioning and requires troubleshooting, then the communication channel
between the computer and the managing console is essentially broken. Because no data

40
Discovering Diverse Content Through
Random Scribd Documents
A herczegi pár összenézett: ez nobel ember, nem hiába, hogy
magyar ember! Ezt fejezte ki a nézésük. Az asszony azonban
nyomban megérezte, hogy ez a nagylelkűség, ez a gavallér ajándék
neki szól. A grand seigneur ellenben az iránta való hódolat szép jelét
látta, azonfelül a jó és előnyös üzletet. A jó üzletet mindenki szereti,
bármily gazdag és előkelő legyen is. Ramzestől kezdve egész a
herczegig ebben senki sem kivétel. Viszonozni, visszautasítani, el
nem fogadni, vagy kárpótolni aztán, – az más. Az elv, a gyönyör
azonban marad.
– Bízza csak rám! – mondá a herczeg.
Az alkalmi művész ujra bókolt a fejével és hogy fölszabadult az
elfogultságtól, ugyancsak szenvedélyesen rajzolt. Látván, hogy ő
fensége igen jó, egyszerű férfiú, a mint modeljét nézte, tekintete
bókot-bókra halmozott. A festők különös kézmozdulatával már azt is
merte jelezni, hogy a hölgy nehány művészi vonala őt elragadja és
egyszersmind elbusítja, mert nem bír vele. Egyébként a fiatal ember
ismerte művészete határait és tudta, hogy nem szabad
experimentálnia, sietve fejezte be krétarajzát, a melyben volt némi
külső hasonlatosság és formai csinosság. Nem volt ugyan Juli,
hanem egy szép fiatal hölgy, az, a melyet kapott minta után már
sokszor lerajzolt. Asztalos mester, mint a legtöbb dilettáns
voltaképpen csak egy női fejet tudott rajzolni, ama bizonyos
akademikus fejet.
A nő fölsikoltott örömében, a herczeg is meg volt elégedve.
Az ujságíró másnap két arany inggombot és brilliántos melltűt
kapott, sőt egy arczképet is férfi részről. Aláirás még nem volt alatta,
ellenben az emlékezetes kirándulási hely neve.
Jelentkeznie kellett audiencziára, hogy megköszönhesse. A
kertben fogadták; megmutatták neki a lakás régi képeit. A herczeg
kiosztotta neki a a munkát, sőt pár nap mulván magán a telepen,
nyilvános nappal végig ment vele és kijelölte, hogy melyik részlet az,
a mely neki tetszik.
Az ujságíró szinte egyszerre egészséges lett, nem is fürdött
többé. A feje nem zsibbadt, a lába nem csetlett-botlott. A
nagykereskedőt, a ki azon melegiben megkérte, hogy az udvari
szállítóságot szerezné meg neki, lerázta a nyakáról. Maga sem tudta,
hogy, – egyszerre az egész fürdőteleppel ismeretségben állott. A
magyar társaság úgyszólván veszkődött érte. Agg politikusok
érkeztek a hazából, – leöcsémezték. Egy jelentékeny
részvénytársaság elnöke minden átmenet nélkül lap-alapításról
kezdett vele tárgyalni.
Kis mágnáslányok jöttek a nagyszülőikkel. Hogy, hogy nem, az
ujságíró azon vette észre magát, hogy mindennap tenniszezik velük.
Sőt azon, hogy az egyik, a középső kurizál is neki. A kicsi bűbájos
teremtés volt, rózsa és aranyszin, gyöngéd, mégis teli, verekedett
mint egy fiú és holdas éjjeken franczia verseket írt. Egyike ama
mágnásleányoknak, a kik bár sajnálják, de helyeslik a Marie
Antoinette kivégeztetését. Az arisztokráczia hölgyei között vannak
ilyen kis forradalmárok, a kik ideálnak egy csupa haj költőt, festőt
vagy muzsikust választanak; de rendszerint egy kopasz mágnáshoz
mennek nőül. Az ujságíró ismerte ez esetet és lovagias
tartózkodással viselte magát: nem látta meg a legnyilvánvalóbb agit,
a legvaskosabb bókot sem hallotta meg. Egyébként is a herczeggel
volt tele.
A herczeg pedig véle. A fiatalember határozottan tetszett neki.
Legelsőbben is tiszta, rendkivül tiszta volt. Mindkettő ama pedáns
fajtából való, mely nem tűr ruháján egy türemlést, a czipőjén egy
porszemet. És ezt kívánja embertársaitól is; e szerint ítéli meg őket.
A nagy elvekben is tökéletesen megegyeztek:
– A vallás-erkölcsi alap a fő, ha nem volna isten, akkor is hinni
kellene benne. Vallás nélkül az emberiség folyton Kaint és Abelt
játszana.
– Úri embernek kell lenni, mindenkinek úri embernek. A mit
kimondunk, annak úgy kell lenni. A következetesség a fő. Az ember
egyenesen tartsa magát.
– A szegények jórészt tolakodók és hazudnak, de azért nem kell
velük rosszul bánni. A cseléddel azonban fraternizálni nem szabad.
Ha nem fogják őket szigorúan, akkor csalnak és lopnak.
– Mindenkinek szabad akarata van, tehát mindig a jót és
tisztességeset kell akarni.
– A politika voltaképpen a császár dolga és a hadseregé, övék a
felelősség. Azt nem lehet kívánni, hogy a más ostobaságaiért esetleg
a felség szenvedjen területe épségében, a mitől isten ments. A
haszon – esetleg – legyen a másé, a kár pedig az övé? Ez nem
megy!
– Nem kell reformálni. A reformerek svindlerek. Kálvinisták és
zsidó ujságírók mindenféle bolondokat akarnak, a mit ők mindenféle
szép neveken neveznek el. Nem kell más, mint mérsékelt
előrehaladás.
Aurél nem tetette magát, nem szolgai hajlandóságból, de
őszintén osztotta ő fensége meggyőződéseit. A gazdag bourgeoisie,
az eladósodott úri osztály, a herczeg erkölcstana és világnézlete:
voltaképpen ugyanegy. Hogy egy, sőt több, esetleg nagyon sok
magyar ujságíróban rezonál: ez csudálatos és még a regényíró
fantáziája előtt is fölöttébb szövevényes. Nincs is mit bontogatni.
Elég az hozzá, hogy Aurél nem értette, hogyan élhetett, a míg a
herczeget nem ismerte és boldogságát csak az rontotta meg, hogy
folyton rettegett:
– Egyszer csak kitesznek! Otthonról megírják ki vagyok, kinek
tartozom. Csaknem az összes belvárosi szabóknak. Egy
gorombáskodott is velem. Miket mondott! Esetleg azt is megtudják,
hogy az apám papszabó volt és predikátumom, sőt pecsétgyűrüm is
inkább anyai ágamat illeti egy papbácsi révén!
A ki azonban egy valóságos herczeg közelébe jut, azt még a
gondviselés is kedveli. Azok a magyarországi nagy urak, a kiknek
némi – hihetetlenül alázatos – érintkezésük volt a herczeggel,
dicsekedtek az ujságíró ismeretségével, jókat beszéltek róla a háta
mögött, nehogy az viszont róluk beszéljen rosszat. Nem tudták
mennyire ül benne a nyeregben. Talán egészen?!
Ő maga nem tudta, hogy áll. Julit mulattatta, felüdítette, az
bizonyos. De a férfi nem tudja, hogy áll egy asszonynyal, a míg az
neki meg nem mondja. Ostobák és gyávák vagyunk jórészt és nem
hódítunk úgyszólván soha. Csak behódolunk!
A fiatalember próbálta kémlelni a helyzetet. De két álló hétig
semmi pozitivum, kivévén két igen jelentéktelen szimptomát. Az
egyik az, hogy Juli az ujságíró keskeny és kövérasszonyos kezét
nézte, ráütött:
– Hogy tarthat egy férfi ilyen kezet! Ez csúf. Keményíteni kell,
vívni!
A másik jelenség valamivel súlyosabb, négyszem közt történt. Az
asszony meglehetősen ridegen kérdezte:
– Van önnek készpénze? Nem szűkölködik?
A fiatalember elvörösödött, a pénzkérdés váratlan és brüszk
fölvetése megalázta. Ám a következő pillanatban már tudta, hogy e
sértés ránézve értékes, ha ki tudja használni. Felugrott, vette a
kalapját és az ajtónál mondá:
– Ezt a kérdést senkinek, sem másnak bárkinek is, nincs joga
hozzám intézni.
Juli megsajnálta a mit mondott, de igen okos nő volt. A
fiatalember után ment, megfogta a kezét:
– Na, na, csak nem kell heveskedni, megsértődni. Én tudom,
maguk írók kik? Én színésznő voltam, egy ménageon éltem
magukkal. Önök között még a legjelesebbek is megszorulnak tíz
forint erejéig – olykor. Ismertem egy akadémikust, minden évben
éhezett egy-két napot. Nem tudják a jövedelmüket beosztani. És
hogy a szinészek mindent elköltenek a hasukra, maguk meg
kidobálják a pénzt, hogy úrnak látszassanak. Maguk olyanok, mint
egy-egy rossz asszony. Na, na, haragudni azért nem kell! Aztán
maga még nagyon is fiatal. Hány esztendős?
– Huszonhét.
– Én is annyi. De én sokkal többet láttam, éltem. Én tőlem
semmit rossz néven nem szabad venni. Én vagyok a jó Juli. Azt hiszi,
hogy a herczeg azért szeret engem, mert csinos vagyok? Azért mert
jó vagyok. Hozzám bizalommal lehet. Tudom én, hogy mit jelent az,
a mikor nincs készpénz; eleget nem volt nekem is. Akkor
dobálództam a banknótával, most élére rakom a nikkelpénzt is.
Tudja-e Asztalos, mennyi van a könyvecskében? megmondom
magának: egy félmilló. Ha egy kis pénz állandóan együtt van,
nagyszerűen fiadzik, azt mondhatom magának. A herczeg nekem
születésnapomra is pénzt ad, csakhogy ő fenségének fogalma sincs
az értékről. Multkor egy százast kaptam tőle a születésnapomra és
nagyra volt vele, hogy ő milyen nobilis. Máskor meg kisebb
fehérneműre tízezer forintot ad. A fenség nem jár mi közöttünk,
emberek között a földön; ő egy katona és egy angyal. Egy angyal a
katonában!
Juli roppant jóízűen nevetett, boldog volt, hogy közönséges és
régi dolgokról beszélhetett. Elvette Auréltól a kalapját, leültette,
kérlelte, mulattatta:
– Tudja-e, hogy magát a herczeg nagyon megszerette és tudja-e
miért? Mert látta, hogy irántam nagyon figyelmes és lovagias.
Szereti, ha tisztelnek. Már többször férjhez akart adni. Folytak is ez
iránt tárgyalások, de a vőlegényektől azt kívánta, hogy az esküvő
után nála hagyjanak. Csak egy báró akadt, a ki ebbe beleegyezett. A
fenségnek egyszerre eszébe jutott, hogy a ki erre képes, nem
tisztességes férfiú, nem úri ember. Kiutasította.
Ezen már az ujságíró is elnevette magát. De még mindig
megmaradt sértődött álláspontjánál, sőt elvi kijelentéseket is tett:
– Az a férfi, a ki nőtől pénzt fogad el, gazember.
– Akkor az a nő, a ki pénzt vállal el férfitól, szintén az? Én is az
vagyok? A kinek van, az ad a másiknak, ha akar. Kell? Adjak? Majd
megadja, ha miniszter lesz. Ojjé, láttam már én sokkal tökkel
ütöttebb minisztereket, mint maga. Előszobázott nálunk Bécsben
nem egy. Különben nem erőltetem, maga egy affektáns. Vagy egy
ravasz. Mit akar maga itt? A herczegtől akar valamit. Mondja mit?
Az ujságíró elhalványodott: most mindjárt megtörténik a
leleplezés! De az asszony inkább jóakaratúnak mutatkozott:
– Mondja meg, én keresztül viszem.
A fiatalembert kezdetben zavarba hozta a Juli elfogulatlansága,
de a tiszta helyzetben visszanyerte nyugodtságát és jó svádájára
méltó határozottsággal szólott:
– Nem akarok semmit. Szeretem a pályámat és azon sem ő
fensége, sem ön nem használhatnak semmit. Az önök társaságába
jutottam, tudom, mint pótművész és nem mint férfi. De nekem
tetszik a társaságuk. Ez fürdői ismeretség és tudom, vége, ha vége a
fürdőzésnek. Ő fensége bölcs ember és nekem igen tanulságos,
hogy közelében lehetek. Ez élvezetes nekem. Ha valaha drámát irok
egy herczegről, legalább tudom, milyen. Pénzem, a mennyi nekem
kell, van. A mi pedig a főokot illeti, hogy itt settenkedem, azt nem
mondom meg.
Ez utolsó mondatot remegő hangon mondotta. Nem tettetésből,
hanem mert érezte, hogy ebben van a koczkázat, a merészség, a mi
miatt esetleg nyomban kidobják. Ámde Juli egyike volt a
legegyszerűbb asszonyoknak, egyenes, csaknem katonás, a
temperamentumában a legőszintébb. A férfi két halvány arczát az
erős kezei közé fogta és kedveskedve szólt:
– Maga szerelmes belém. Ezt értem. Erről lehet beszélni; de nem
most!

A férfi két halvány arczát az erős kezei közé fogta.


A pillanat, a melyben a herczeg délutáni álmából – immár
harmincz éve rendesen – fel szokott ébredni, közeledett. Az ifju
embert az asszony ezúttal elküldte. Ám az a tekintet, a melylyel
utánanézett, jóakaratú, sőt gyöngéd volt, ha nem is szerelmes.
Viszont az ujságíró, a mint kikerült a palotából, úgy érezte, hogy a
kelleténél jobban kedveli ezt az asszonyt.
«Csak most, csak most ne csináljak valami bolondot!» – gondolta
magában. Pedig csaknem rá volt szorúlva, hogy az ügyhöz, magához
méltatlan dolgot cselekedjék; az utolsó forintját előlegkérő sörgönyre
költötte el és ha estefeléig nem jön meg a kért, nem nagy összeg:
ma nem vacsorál. És ha nem jön meg holnap reggel, sőt délben
sem, azután sem? A hoteljában étkezni nem lehetett, a vendéglőben
adós nem maradhatott. Hogy magasrangú ismerőseitől kérjen
kölcsön, erre olyan ijedten gondolt, mint valami perverzitásra, a
melybe iszonyatos volna beleesnie. Ha a portástól, pinczértől kér,
mindenki megtudja és vége mindennek. Iszonyú képzelődései
voltak: a lap, a hol dolgozott, hirtelen megbukott, vagy elcsapták a
távollétében. Valami pletyka támadt. Egyszerűen nem adnak
előleget, mint a hogy odahaza már akárhányszor megcselekedték.
Igen, de az otthon volt! A távolban csak nem hagyják el? Épen a
távollevőket szokták elhagyni.
Nem volt Budapesten senkije sem, a kitől ötven forintot kérhetett
volna kölcsön. Csak hogy ezt az ügyet tisztességgel megúszsza,
rabolni tudott volna. És erkölcsi magaláztatása mellett fizikai
gyötrelmei is voltak: éhezett a szó szoros értelmében. És délfelé,
frissen vasalt lawn-tennis ruhában tenniszeznie kellett a kis mágnás
lányokkal. Ügyetlen volt, szórakozott volt. Az öregebb comtesse
leszidta, a kisebb kicsufolta, a középső megkérdezte:
– Mi baja magának?
– Egy álló napja nem ettem egy falatot.
– Miért?
– Nem volt.
– Nem volt mit ennie? Hogyan érti? – kérdezte a lány.
– Egyszerűen. Nem volt pénzem. Nincs egy krajczárom sem. És
talán nem lesz holnap sem. Úgy, hogy én egy koldus vagyok. Nem
vagyok egy comme ill faut ember, én egy koldus vagyok. És maga
egy koldussal tenniszezik. Egy csavargóval, a ki talán már holnap
kérni fog, kérnie kell, mert éhen nem halhat. A comtesse azt hiszi,
tréfálok, vagy megbolondultam. Nem, csak annyira elgyengültem,
hogy nem birom többé fentartani a tisztes látszatot. A konvencziót.
Nem tudok hazudni, valakinek meg kell mondanom az igazat. Hogy
beleloptam magam a társaságukba. Nincs rá jogom. És ezt mondja
meg a papának és a nagypapának. Az angol kisasszonynak is, a ki
méltán gyanakodott rám…
A lányok a beszélgetőkre kiáltottak, angol játékszavakkal hivták
őket, de látva, hogy mennyire el vannak merülve a diskurzusban:
mindkettőt kihagyták a játékból. Egyébként is fürdőn voltak, a hol
nem jelent semmit egy kis geniális társasági szabálytalanság. És azt
sem vették észre, hogy a comtesse kiejti kezéből a lapdaverőt, a
fiatalember halotthalványan, kék ajkakkal mindegyre lázasabban
beszél:
– Szélhámos azért nem vagyok, csak éhes. Semmit, a mi nem
fair, nem tettem, de még tehetek. Talán gyalog fogok innen
hazamenni.
A táplálkozás hiánya, ez a kis hirtelen támadt vérszegénység, az
emberi testnek ki tudja micsoda romantikája kergette bele ez oktalan
és czéltalan vallomásba? Raison szerint mindenkinek vallhatott volna,
csak ennek a leánynak nem, a kiről tudta, hogy az lassan, de
biztosan kezd beléje szeretni. De az élet ideális jelenségei és azok
felfogása ellen valami brutális düh fogta el éppen azért, mert az
éhezésben erkölcsi megaláztatást is érzett: még egy nagyobb
megaláztatásra törekedett. Lehet különben, hogy tudtán kívül a
számítás ösztöne is benne volt az őrület e megnyilatkozásában. Az
valószínű, hogy biztosra nem vehette a leány megundorodását.
Egyelőre az nem is érzett iránta mást, mint heves, fájdalmas
szánalmat; a benső sírástól elfulladó hangon kérdezte:
– Nincs pénze? Elköltötte? Mért nem kér újat? Az apjától, a
bankárától, – a nagypapától. Ilyen könnyelműséget! Mért nem
hozott magával eleget!?
Az ujságíró fölnevetett és a nevetésben fölfrissült, magához tért:
– Nuszika, el ne áruljon, nem volt igaz az egész. Az igaz annyi,
hogy én nagyon szegény ember vagyok, nem tudok annyi pénzt
keresni, a mennyi nekem kell, mégis az urat adom, maguk közé
járok és meg merem fogni a maga kezét. A maga szép, fehér szent
kezét. Sohsem teszem többé, csak ma utoljára.
A leány fölállott és rajongás nélkül, szinte szárazon mondá:
– Én pedig ma reggeli imádságom előtt megesküdtem, hogy az
én kezem senki másé nem lesz, csak a magáé! Akarja?
Nem nézett a férfiúra. Úgy is aligha azt látta volna, a ki előtte űl.
A kinek esküdött, a kihez kivánkozott: az úgy is benne élt mint
képzeletének alkotása, vagy előtte úszott mint látomás, a
kékhegyekben hömpölygő ezüst felhőkön járó. Ő maga sem látszott
földi lénynek, arczából – a melyre rásütött a teljes nap – mintha
valamely tüzes, de enyhe világosság áradna szét. Szemei szikráztak,
szőke haja szálanként égett. Rendes körülmények között a
szembenülő szerencsés fiatalember valamely égi csudát látott volna,
de most csak egy exczentrikus mágnáskisasszonyt látott sárga
tónusban.
– Mind a ketten elvesztettük az eszünket. Ilyent nem szabad
beszélni Nuszika! – mondá igen halkan, aztán fölkelt. Az ajkán volt,
alig tudta visszafojtani, majd kimondta:
«Kedves kis rajongó comtessem! Azonfelül nem vagyok én egy
szegény nemes. A kornak egy piszkos kis hőse vagyok, egy rossz
lábú ember, a ki futni akar a gyors futókkal. Az apám pedig papszabó
volt!»
Önuralma visszatért, szó nélkül elfordult a leánytól s odament a
társasághoz:
– Szégyenlem magamat, de a fejem nagyon megfájdult. Nuszi
comtesse is rosszúl bánt velem, ép most fejtette ki, hogy az ülő
életmód miatt tulajdonképen minden író szamár!
Az ujságíró, a ki helyén volt, mert már szépen hazudni is tudott,
köszönt és a leányok vidám kaczagása között megindult a telep felé
egyenesen egy ismerős kávéházba, ahol egy nagy csokoládét
rendelt. Hősiessége ilyen módon elhagyta és nem bánta már: lesz a
mi lesz! Biztatta ugyan magát, hogy a pénzes postás már utban van
és megkeresi itt, éppen itten. Ez a bizodalom éppen csak addig
tartott, a míg felüdült a kisebbrendű evésben. A szivar azonban már
semmi mód nem ízlett, félig elszítta és aztán letette, hogy egy
pillanatra kimenjen az utczára és ha lehet – fizetés nélkül – elmenjen
haza a hotelbe. A mikor pénze volt, bátran és vidáman tett meg
ilyesmit, másnap aztán ő figyelmeztette a fizetőpinczért, hogy
tartozik neki. Most azonban oly ügyetlen, oly gyanús volt, hogy
szinte megállították, a mint elrohant, csak annyit mondva egy
pinczérnek:
– Ha keresnek, mindjárt jövök!
Hazaszaladt, hogy levághassa magát az ágyára, sírhasson kedve
szerint. A pénze azonban a portásnál várta már, rossz czímen
küldték, azért késett. De többet küldtek, mint a mennyit várt.
Megfogta a rongyos, haszontalan papirost – az utalványt és
megcsókolta. Aztán elordította magát dühösen:
– A pénz, a büdös, a nyomorult pénz!
Nem birt magával, annyira elöntötte a harag és a boldogság. A
mint meghiggadt, végképen meghiggadt benne az itélet: a pénz
minden. És ebben a pillanatban rossz ember lett. Két pillanat
megcsinálta életének egész programmját.
«Az asszony a kedvesem lesz; a lány a feleségem lesz!»
Ez volt az ujságíró életprogrammjának végső következése. Most
már vacsorázott, most már pénze volt, erősnek és határozottnak
érezte magát. Sőt az életkedvnek olyan bősége támadt föl benne,
hogy rendes időben, tíz órakor le sem tudott feküdni. Különben
egyébkor is, ha több pénze volt, mint a mennyi néhány napra elég:
úgy felizgatódott, hogy nem aludt féléjszakán át.
A hotelek és minden nyilvános helyiség csukva; tiz órakor itt már
minden meghalt egy éjszakára.
Egyedül járt az óriási gasteini völgyben, melyet a természet
éjszakának idején mindég visszapörölt a kulturától. A sziklák, a fák, a
rengeteg volt az úr megint és az óriási öt-hat emeletes emberi
lakások is valami fantasztikus természeti alakulásoknak látszottak.
Az újságiró kénytelen volt némiképen átalakulni költővé. A
rejtelmes és nagyszerű hangulat hatása alatt elment a Nusziék külön
kis villája elé és ott föl és alá járt. Az egyik ablak zsalugátere között
fénysávok: a kicsike bizonyosan még ébren van, talán sír és
gyötrődik miatta:
«Szegény jó leány, megérdemelné, hogy nagyon szeressem!» –
gondolta Asztalos Aurél és csókokat hintett az ablak szárnyában.
Aztán szépen elgyalogolt a herczeg palotája elé. Ott sötét volt
minden, annak az ablakaira nem hányt föl eszményi csókokat.
Ellenkezőleg: még az járt az eszébe, hogy mennyire
nyugtalankodhatik miatta Nuszi. Úgy vélte, hangos zokogását hallja
az éjszakában és szíve emiatt izgatott boldogsággal tölt el.
«Vagyok valaki, leszek valaki! És mától fogva újra kezdem az
életet. Testileg gyenge vagyok, a munka, a nyomorult piszkos munka
kipumpolt, tőkém nincs, – nem vagyok arra kötelezve, hogy bárki
iránt is elnéző legyek. Semmi erkölcs, semmi gyengeség, semmi
buta jóság és kényeskedő lelkiismeret! Ha élni akarok, ezekkel nem
szabad törődnöm. Már pedig élni akarok. Öreg ember akarok lenni,
mint a kik itt sétálnak, az öregség nem is oly csunya. Aztán addig
még szédítően és kiszámíthatatlanul sok idő telik, millió meg millió
percz. Mind öntudatosan akarom kiélni és mind boldogan. Szenvedni,
megaláztatni nem akarok többé. Sőt a mi a meghalást illeti…»
Elkaczagta magát. Eszébe jutott, hogy gyerek korában, a mikor
az első nagy halálfélelem rájött, azzal vigasztalta magát, hogy a
mikorra ő öreg lesz: már más természeti rend lesz, a halált meg
tudják gyógyítani, vagy az egyszerüen magától beszünik!
Véletlenül – bizonyára, akaratán kivül – a szerény gasteini temető
mellett vitt el az utja. Félelemmel és undorral fordította el a fejét.
Hanem a hogy a szerpentin fordult, megint csak a czínteremre esett
a tekintete. A márványkeresztek, mint megannyi immenzis ujjak,
hivták, invitálták.
«Ezek engem marasztanak. Érdekes volna, ha ide vinnének, ha itt
halnék meg!»
Adta önmaga előtt a bátrat; de menekült föl a telepre, hátha
emberi, helyesebben asszonyi lényre akadna. Ez utóbbira
hihetetlenül vágyott, ha csak egy golyvás parasztnő akadna, akár
csak egy kis közömbös beszélgetésre. Senki, sehol, a hegyről lefelé
törő vizerek csacsogtak és a nagy vizesés bömbölt mindenféle
bolondságot össze-vissza. A rejtelmes gasteini víz, a melynek
gyógyító tartalmát nem birja kimutatni senki. A tudomány azt
mondja, nincs benne semmi és közömbös meleg viznek nevezi, és
mégis bizonyos, hogy a kifáradt szervezetet fölizgatja, sőt némely
mértékig föl is újítja. Az újságíró melléje állott egy ilyen meleg érnek,
nézte, majd lehajolt hozzá és arczát – szinte szimbolikusan –
megmosta benne:
«Ezzel lemostam magamról a régi életet és ezennel új életet
kezdek!» – mondá és csakugyan meg is kezdte az új életet, hogy
letiltotta magát arról a heves vágyakozásról, a mely egy bármilyen
asszony-ember felkutatására üzte. Alkudozott a vérével, látott is
valami macskajárásu szobaleányt tovasurranni egy hotel előtt, de
nem nézett utána.
«Fegyelmeznem kell magamat, ez az első!»
Most nem került ez még nagy erejébe. Azért nehezen ment haza.
Legalább ha egy pohár cognacot ihatott volna valahol. Csak egy
kevés pénzt költhetne el bármire. Elment a czukrászda ajtaja előtt és
tréfából megkopogtatta.
– Azt ugyan verheti! – szólalt meg valaki a háta mögött,
magyarul. Egy rongyos, de igen nagy télikabátba burkolt, nagy
fekete kalap alól szólalt meg egy árnyék, a kiben a fiatalember egy
félismerősére, valami ötödrangú újságiróra talált. Izetlen,
összeférhetetlen, mord fiura, a kivel otthon nem igen barátkozott. A
holtbeteg emberke olyan volt mindég, mint a megfagyott epe: mart,
keserített mindenkit. Keresetének javát patikára és párbajozásra
költötte. Most azért volt itt, hogy halálos betegségeiből kigyógyítsa
magát alaposan, mert szintén új életbe akart kezdeni: meg akart
menteni az erkölcsnek egy erkölcstelen leányt. Ha meggyógyult, erős
lett, magához akarta venni.
Kezet fogtak, Asztalos Aurél nagyon örvendett, friss hireket hall
otthonról. Azonban erősen barátkozni nem akart vele még a
fürdőhelyen sem. Megveregette a vállát:
– Maga az igazi lump. Itt a bezárt czukrászda és kávéház előtt ül
egyedül, csak hogy része legyen valamely éjszakai kávéházazásban.
– Jó, jó! – felelt a rongyos kartárs és felszedelődzött.
– Hová megy, én miattam megy el? Mikor jött? Semmi újság?
– Jó éjszakát. Semmi.
Visszafordult és hogy egy kis distanczia volt közöttük, jó
hangosan szólott:
– A herczeg a birtokai után három képviselőt küld a házba. Ez a
magyar alkotmány. Ez a magyar parlamentárizmus. Az egyik
meghalt. Még a halál is kedvébe jár annak, a ki egy herczeghez
tudott dörgölődzni! Ha kegyed szemes! Miért ne kegyed? Bele való!
– Még valamit morgott, aztán eltünt az éjszakában.
Tüzes taplóval a fülében – a rendes magyar karrierre, a
képviselőségre gondolva – hajnalban aludt el. Korán reggel
felköltötték: a comtesse angol misse lehivatta a társalgóba. A rendes
körülmények között végképen czitromszínű hölgy vérvörösre változva
előadta, hogy a Nuszi küldetésében jön. Előadta továbbá, hogy az
ideális szerelemnek nagyobb pártfogója nála nincsen és szivesen
meghal az eszményi érzések szolgálatában és érdekében. Ő boldog,
hogy bizalmasuk lehet, hallgatni fog mint a sír, de egyszersmind
vigyázni fog. Igen sokat beszélt magáról – akárha Dickensből
mondana föl néhány levelet. Végre csakugyan rátért Nuszira, a ki az
éjjel részint sírt, részint a spiritus-masinán egy önkészítette tortát
sütött. A masina csak reggeli főzésre volt predestinálva,
következésképen a csokoládé-torta részint nyers, részint cseppfolyós
lett. Ámde virágokkal teli dobozba volt pakolva és melléje téve a
következő tartalmu kis levél:
«Küzdjön, én vele vagyok! Annie.»
A fiatalember nem nevette el magát, ellenkezőleg, könnyezett.
– Mondja meg – mondá a missnek – Annie comtessenek, hogy
ön sírni látott. És mondja meg neki, hogy a küldeménye hatott meg.
És sugja meg neki, hogy egyébként már minden rendben van.
– Mondja meg, hogy a küldeménye hatott
meg.

– Minden rendben van! – ismételte az angol hölgy fontoskodva és


titokzatosan.
– Mondja meg Nuszikának – ha olyan jó akar lenni, ha megteszi –
hogy a szárnyaim újra megnőttek és nincs oly boldog ember a
világon, mint én. És talán szerencsés és erős is leszek.
– Erős, az a fő! Az erő, csak ez az egy a mi a tény! – prédikálta a
miss és olyan erősen megrázta az Aurél kezét, mint egy férfi. Egyéb
szónoklatot is tartott volna még, de a fiatal embert a herczeghez
hívták sürgősen.
«Valami baj lesz» – gondolta az újságíró, babonából, épen azért,
hogy baj ne legyen. Nem is volt, sőt inkább öröm, a lehető
legnagyobb: a mit a nyomorék újságíró, mint kikaparásra érdemest
kitűzött neki, ott állt előtte készen. A mandátum úgyszólván ott
feküdt a kerti asztalon, a Juli főzelékes tála mellett. A herczeg
rendkívül jókedvű volt, még szóvicczeket is akart csinálni ez
alkalomból, hogy megkérdezte tőle: volna-e kedve képviselő lenni.
– Képfestő és képviselő, mindegy! – mondá érthető, de hiányos
magyarsággal. Ő fensége nevetett ez élczen, Juli is, Aurél is. De a
herczeg komoly férfiú volt és komolyan fogta fel a dolgot:
– A maga tisztességes gondolkodása tetszik nekem. A
kormányzóm kérdezi, kit akarok, mivel az öreg Majeczky Pesten
ellumpolta magát és meghalt. (Mindössze hatvankilencz esztendős
volt. A korától még élhetett volna!) Négy jelöltet is ajánl, válaszszak
közüle. Ki tudja miféle tüzfejek, én nem mehetek oda. Hogy
megvizsgáztassam őket. A barátném kérdezősködött önre
magyarországi ismerőseinknél és onnan a legkitünőbb konduit-lista
érkezett.
Juli, a barátné oda se figyelt a beszélgetésre, mint a kit az ügy
nem illet. Az újságiró glédában állott, mint a katona, a herczeg pedig
jókedvűen kommandirozott tovább:
– Oda maga le fog menni. Ott néhány igazán szép gobelin van a
kastélyban. Husz éve nem voltam ott. A jószágkormányzó egy nagy
zsivány, de tisztességes rendes ember. Mindent rendbe fog hozni.
Azaz, hogy ott magának beszélni kell. Az szép, a ki beszélni tud. A
hadsereget ne említse, tegye meg nekem azt a szivességet. Maguk
mindjárt az adóval kezdenek és hanyagságra ösztökélik a szegény
népet. A papoknál jó koszt van, ott enni kell. A korcsmába a népet a
tisztek összehivják és ott maga szavalatot mond. Persze: Rákóczi,
Kossuth, Petőfi…
A főmagasságu herczeg tréfálni méltóztatott e komoly nevekkel,
a melyek az ő számára sem voltak komolyság nélkül valók. De atyai
és valóban őszinte jóindulatában ugratta a fiatalembert:
– Maga persze szeretne ellenzéki lenni, kellene, mi?!
– Én meggyőződésből kormánypárti vagyok. Az édes atyám is az
volt – mondá a fiatalember.
– Elég baj! – mókázott tovább ő fensége. Majd igen komolyan
hozzátette: – A kormányok mind rosszabbak és rosszabbak. Igen
hiuk. Nagyon szeretik magukat megerősíteni. Ha ez így folyik,
önöknek még olyan kormányuk lesz, a mely mindazt megcsinálja, a
mit az ellenzék akar. De én katona vagyok, nem törődöm a
politikával. Egy szivességre azonban kérem önt, ha jónak látja,
megteheti: hirdesse, ha már képviselő lesz, hogy fő a férfias jellem,
az engedelmesség és izgágáskodni nem kell, nem szabad, nem
lehet.
– A hirtelen haladásnak, polgári dolgokban a gyors attaknak én is
ellensége vagyok! – mondá az újságíró némileg elfogódva, mert nem
tudta biztosan, vajjon ez a pont tökéletesen beleillik-e a herczeg
kissé egyenetlen politikai programmjába. De beleillett, rendben volt
ez is, a többi is. Sőt Juli a jószágkormányzónak a levelet már is irta
és délebédre az újságírót ott marasztották. A herczeg nem az
egyedül evő főmagasságok fajtájához tartozott, sőt ebben rendkivül
polgárias hajlandóságai voltak: szerette, ha volt valaki az asztalnál, a
ki az úgynevezett «elő-evés» művészetét értette és az ételeket
dicsérte. Mindkettőt könnyű volt bárkinek is megtenni, mert a milyen
rossz, száraz és erőtlen volt a herczeg konyhája Bécsben, olyan jó,
izes és erős itt. Délután háromig is eledegélték a második reggelit. A
herczeg szolid katonatörténeteket beszélt el, barátnéja pedig
némileg vastag bécsi anekdotákat adott elé. Egész családiasan
voltak, a mikor vendéget jelentettek.
Karlsbadból átjött alázatos vizitre egy valódi, cselekvő magyar
miniszter. Egy hangos szavu mágnás, a kinek szemei úgy hatottak,
mintha be volnának téve, még pedig nem valami előkelő optikus
műtermében. Ám az egymástól divergáló kék üvegek ugyancsak jól
láttak és a báró – bárha a lábai is vékony vendéglábaknak látszottak
– ugyancsak elevenen mozgott. A haja mintha bádogból lenne, a
hangjából mintha károgó mikrofon szólana és mintha mindég leczkét
mondana föl, valamint egy férfiura változott Alesia, Coppelius mester
legszebb műve. Csupa valószinütlenség volt ez az ember, a kinek
látszólag közömbös volt, hogy e világon él. És ehhez képest kora
sem haladt előre; ifjuságától kezdve aggastyán koráig megmaradt
állandóan ötven évesnek. Különben a politikát legfőképen a benne
rejlő ravasz elementumért üzte, – csökönyösen, kiirthatatlan
előszeretettel.
A herczeghez Karlsbadból rendszeresen el szokott látogatni.
Nyiltan azért, hogy tőle – mint praktikus és nagy tapasztalatú
férfiútól – tanácsokat kérjen igen komplikált dolgokban. Tényleg
azért, hogy a fenségen át kontaktust tartson fönn a legmagasabb
körökkel és hogy egy-egy – a távolban – elsülő pletykabombát
röpíthessen fel valamelyik kollegája ellen. A herczeg rendszerint nem
unta; pletykát hordott neki a másik világfürdőből. De most nem volt
kedve fogadni. Juli beszélte rá.
Asztalos Aurél készülődött, hogy szerényen visszavonuljon.
– Maradjon csak. Ettől lehet hunczutságot tanulni – mondá a
herczeg.
A miniszter kezdetben nem vette észre az újságirót, egyszerűen
körösztül nézett rajta. De a mikor látta, hogy itt kitüntető
melegséggel bánnak vele, neki is udvarolt, őt is «alázatos
kéremszépen»-ezte. És gép-beszédét nem egyszer megállította,
hogy megkérdezze:
– Nos, mit mondsz hozzá te, a ki a magyar viszonyokat ismered?
Az újságiró nem mondott semmit, lesett, kéjjel figyelt és
szerelmesen élvezte a helyzetet. És közben-közben lopva
szerelmesen nézett Julira, a ki őt e szituáczióba beállította. Az
asszony hasonlóképen nem nézett rá haragosan. A fiatalember finom
rajzú teljesen borotvált képe, sűrű és kemény szőke haja, keskeny,
kissé állatias, ám teljesen fiatalos homloka, szóval az egész ember
rendkivül sokat nyert a két öreg ember mellett. Ha nem tetszett
volna Julinak, még akkor is kellett, hogy hozzá tartson, mert bármit
beszéljen a tudomány, a tekintély, sőt maga az asszony is – a mi az
asszonynak legjobban imponál, az a fiatalság. A férfi az nincs így és
korunknak szóbanforgó küzködő hőse, kinek ime sült galambok
szállnak a szájába: igazában szerelmesebb volt itt e magas
uraságokba, bárha azok kisebb rendű földi teremtmények, mint a
herczegi kedvesbe, a kinek humora, józansága, jósága és kétségkívül
csókra berendezett szája van. Ez érzületekben a fiatalember ezuttal
megkülönböztetéseket nem tett, mohón szivta be azt a beszélgetést,
a melyet a herczeg, a miniszter és Juli, a nép leánya rendeztek
különféle tárgyakról, férjhez menendő herczegnőkről, megveendő
ellenzéki férfiakról, intriguans udvarhölgyekről, freskókról, kutyákról,
valláserkölcsi alapról, magas állásu rossz asszonyokról,
lóversenyekről és a házassági törvények reformjáról.
Az újságirónak feltünt, hogy a miniszter sohasem mond semmit,
a miről nem biztos, hogy kellemes a herczegnek. És bármit mond,
abból az alattvalói devoczió érzik ki. Valami katonai alárendeltség,
mintha az államférfiú a herczeget magánál több csillagos
miniszternek tartaná, bárha annak a magyar államhoz, rengeteg
nagy magyarországi birtokain kívül csak igen csekély alkotmányjogi
köze van. A rang teszi ezt, vagy a tapasztalatok következése, sok
százados erőpróbák tanulsága és eredménye. Oly óriási fensőbbsége
van egy nem magyar herczegnek egy magyar mágnás fölött? Miért?
Talán azért, hogy a multban valahányszor akarta, ez a fensőbbség
elismertette magát és sokszor a maga lakáj szineibe öltöztette az
urakat?
Az újságiró jó, sőt nemzeti hazafi volt, mégis a distingválás
közben a herczeg pártjára állott:
– Ezek férfiak, ezek konzekvensek, akarnak valamit és a mit
akarnak, a mellett megállanak hatszáz esztendeig! Ezek meg puhák
mint a viasz, századról századra, sőt évtizedenként más figurát lehet
belőlük és rajtok kinyomkodni! – így gondolkodott magában és ha
csak lehetett, kissé gunyoros volt a miniszterrel szemben. Szerényen,
mert hősünk a fehér papoknál tanult és bizonyos alázatosság nem
hiányzott a beszédéből soha.
Egyszer azonban kitört. Arról volt szó, hogy milyen most a
hadsereg és polgárság viszonya odahaza.
– Na, na! – mondá az exczellencziás mikrofon. Majd – mintha
rosszul volna beigazítva, hozzá berregte ezt e félmondatot: a
hadsereg természetesen nem hibás, de mégis a
büntetőtörvénykönyv reformja…
A fiatalember alkalmasnak vélte a pillanatot, hogy egyetlen
politikai gondolatát, melyet kiirnia sohasem lehetett, kezdetben
csendesen, de mind nagyobb hévvel előadja.
– Ugyan kegyelmes uram, ne tessék rossz néven venni, de
odahaza még a miniszterek is felülnek az oktalan chauvinségnek, az
évszázados és ostoba félreértéseknek. Magyarországon a czivil
társadalom össze-vissza, hiányos, részben rossz törvények alatt él.
Ott nincs meg még semminek a végső formája. Félkemény minden,
mint a félig megfagyott kocsonya. Ha helylyel-közzel erős is, nem
megbizható az egész. Az egész monarchiában csak egy van a mi
megbizható, szilárd és egységes és ez a hadsereg. Ennek a
szervezete: nagyszerű és minden izében ép. Vannak tradicziói, van
erkölcse, van czélja, kijelölt utja, igazsága és becsülete. Absolut
igazságot én sehol sem találtam, csak a hadseregben. Ha életem,
becsületem koczkán van, a hadsereg akármelyik két tisztjére könnyü
szivvel rábizom mind a kettőt. Ott van egy konstant közérzés.
Konstant. Még a kultura érdekében is többet tesz, mint az egész
polgári kultura. Ott nevelik a népet és nem a népiskolában. Ott
marad meg az egészséges emberanyag és pusztul el a gyenge. A
kinek egyenlőség kell, a hadseregben azt is megtalálja. Egy kárpitos
legény, ha tiszt lesz, bejuthat a király báljába. És a polgári elem, az
egész ország még mindég nem áll el ostoba antipatiájától. Ha a
hadsereget nem szereti, magát nem szereti, a mi benne jó és kiváló.
Fuj, micsoda állapotok! Az az ország, a mely a hadseregét nem
imádja, veszedelmes trottli és megérdemli az ostromállapotot. De az
ország, maga a nép jó, csak félre van vezetve. Önök kegyelmes
uram, bocsánatot – önök az államférfiak a hibásak. Önök nem
dolgoznak a mellett, hogy a nemzet megértse a nagy ügyet. Önök –
a kegyelmes úr bizonyára nem – azon munkálkodnak, hogy örökké
megmaradjon valami feszültség, legyen mit tagadni, mit
kiegyenlíteni, elmérgesíteni, komplikálni és kiegyenlíteni. Önök az
iróikat arra használják fel, hogy önöket dicsőitsék és megerősítsék. A
helyett, hogy megnyernék őket a hadsereg népszerűsítése nemzeti
nagy feladatának. Hogy erre nem kaphatók? Parancsszóra, jószóért,
pénzért mind, még a koszorúsok is. Én tudom. A mennyi pénzért
palotát építenek valamely segédhivatalnak: nyélbe lehet ütni az
egész dolgot. És ez az ország életének kérdése. A hadsereg az úgy is
megél. Az megél!
Juli nem birta magát türtőztetni, tapsolt! A herczeg nyitott
ajkakkal, mintha kéjgázt szivott volna be, úgy hallgatott. A betett
szemű államférfiú olyan lett, mint a főtt rák.
A miniszter géplelkében soha még nem támadt egy politikai
konczepczió. Inczidensekből élt, a mit ő – mint sok más társa – így
nevezett: úrnak lenni a viszonyok fölött és a viszonyok által. És ime,
egy ismeretlen fiatalember kipattant előtte egy nagyszabású
konczepcziót, a melynek még az a pikanteriája is megvan, hogy igen
közel evez a hazaárulás partja mellett. De neki ép az ilyenek
tetszettek, benne megvolt a nagy urak sportösztöne: olyasmit
erőszakolni a sokaságra, a mi annak sehogysem kell. Ő is a «csak
azért is!» magyar államférfiak csoportjába tartozott, azok közé, a kik
úgy fogják föl a mesterségüket, mint a közérzéssel való birkózást.
Szerették és szeretik ezek azért a hazát, hanem úgy gondolkodnak
róla, mint a paraszt az asszonyról: verve jó, kinozva boldog,
lenyügözve virágzik!
Fölizgatva és elvörösödve gratulált a miniszter:
– Arany igazságok. Gratulálok. Erről nem egyszer tanácskoztunk
a minisztertanácsban, én előterjesztettem, hanem…
A herczeg gunyosan nézett a miniszterre és mint egy
katonabajtárs a másiknak, a kezével üdvözletet intett a fiatalember
felé.
– Ez már beszéd! – mondá – ennek a legmagasabb helyen is
örvendenének. Én csak utálom a sok beszédet, de ezt szivesen
hallottam. Körner, a ki meghalt, így beszélt. Egy könyvet kellene
erről írni.
– Iratok.
– Fogok írni!
– Latinul, hogy mindenki olvashassa, mint régen. A régi
embereknek több eszük volt!
Az ötlet meglepte a két magyart, de honorálták. A fenség
azonban nem állott velük többé szóba, a délutáni alvás percze
elkövetkezett, elvonult. Az ajtóban azonban visszafordult és megint
üdvözletet intett a kezével egyenest és kizárólag az ujságirónak:
– Ez férfias volt! Ez csinos volt? Önre szép pálya vár. Egy
szivességet azonban megtehetne nekem. A haját – hosszú – a haját
levágathatná. Rövidre, az férfias. Nyilt homlok határozott koponya…
Az ujságiró meghajtotta magát, a miniszter is, de mélyebben.
Egymásra néztek és nem mosolyogtak.
A fenség ásított, szalutált és elment. A két férfi tele volt
tisztelettel, de nem egymás iránt. Juli azonban okos asszony volt és
nem engedte, hogy összekülönbözzenek, vagy a mi még rosszabb –
összebarátkozzanak. Kitessékelte az államférfiut, a ki különben is
belátta, hogy a mandátum, a miért valaki számára ide fáradt, máris
biztos kezekben van. Még egy végsőt «kéremszépen»-ezett az
ujságiróval – miközben arra gondolt, hogy a budapesti állami
rendőrfőtől megtudja, ki ez – és sietve elberegett.
Egyedül maradtak. Juli olyant nevetett, hogy a parókája is
megmozdult bele:
– Na, de maga egy nagy ravasz! – mondá és csaknem megölelte.
– Én? – szólt a fiatalember, és elvörösödött, mint a ki
rosszhiszeműségen kapta magát.
Az asszony a vállára ütött:
– Maga mindjobban tetszik nekem, maga ravaszabb még, mint
én. Ha a herczeg meghal – isten ments – hozzá megyek feleségül!
És hogy állunk azzal a szerelemmel.
A fiatalember nem felelt, lehajtotta a fejét, a melyben az a
bizonyos erkölcsi motosz egyszerre, talán utoljára – megmozdult.
Most kövesse el a herczeg ellen a legnagyobb bűnt, a melyet egy
férfi elkövethet a másik ellen! Most, a mikor még a fenségnek
hozzávaló jósága meleg, a mikor hozzájuttatja egy kincshez, a nép
bizalmához. A mikor egy kerületet kap tőle ajándékba, valóra váltva
életének legszebb és legvalószinütlenebb álmát! A szerelmi
nyilatkozat a torkán akadt egy pillanatig. Az asszony lehajolt, úgy
nézett – és nevetett – a szemébe:
– Te félsz barátom! Nekem úgy tetszik, hogy maga fél. Én meg
attól tartok, hogy maga buta és a herczeget szereti és nem engem!
Fuj, ilyen egy magyar gavallér! Kedvesem, itt olyan biztonságban
vagyunk, hogy no! A cselédség jól van nevelve, a herczegnek pedig
végképen nincs tehetsége a féltékenységre. (Olyan jó és becsületes
ember nem volt még a világon.) Ő fensége úgy képzeli, hogy más
férfi nincs is a világon, mint ő. És ez bizonyos mértékig igaz is. A
mikor először csókolt meg, így szólt: «Gondold meg, hogy én adom
neked csókomat!» Már a barátnéja voltam és még otthagyott a
külvárosi szinházban. Ha a más karjaiban látna, azt mondaná: «Ez
nem igaz, ez álom, sok stájer-tésztát ettem vacsorára, rosszat
álmodom!»
Juli nem nevetett többé. Komoly volt és nyilt, de nem kihivó:
– Nem tagadom, a fenség mellett nekem már tetszettek férfiak. A
fenség mindegyikéből embert csinált. Neki megvan az isteni
szenvedélye, hogy semmiből valami igen nagyot csináljon. Egy
orvost, a ki igen egyszerű kurával engem hat kilóval lefogyasztott,
kineveztetett egyetemi tanárnak, épen magukhoz Magyarországba. A
kis Bonifáczból ő csinált püspököt. Ő fensége képes volna – ha én
alkalmat adnék rá – az összes hivatalokat megtölteni a
monarchiában. A szíve gyémántból is van, vajból is van. A külseje
szigorú, de a jóság úgy sugárzik belőle. Már ma estve – meglássa,
sajátkezüleg fog írni a jószágkormányzójának a maga érdekében. Ezt
fogja írni:
«Kedves Birhala: Aurél Asztalos az én emberem. Nyilt jellem.
Férfi szív!»
– Ha maga akarja, – vetette közbe az ujságiró és mindenféle
érzelmektől eltelve a szeme megtelt könynyel.
Juli fogta a herczegi koronával kistikkelt zsebkendőt – ezt a
koronát csakugyan nem tagadhatta meg magától – megtörülte a
fiatalember szemét:
– Ne legyen bolond. Mi mind a ketten a nép emberei vagyunk!
Mi? A nép emberei és szeretjük egymást! Mi?
Ez asszony nem sok teketóriát csinált, kicsiny volt a fantáziája,
hazudni nem szeretett.
– Nagyon szerelmes nem vagyok én magába – mondá – hanem
igen tetszik nekem. Aztán nekem kell valaki… (Olyan valaki – a kinek
– nem kell szinházat játszania. A ki előtt vállfűző és paróka nélkül is
mutatkozhatik.) Egy férfi, a kivel bizalmas lehetek, a kivel sétálhat az
ember, mert barátnőket a herczeg miatt nem tarthatok, azt nem türi.
«Az rosszra vezet!» – mondja. Jó, hát nem barátkozom velük,
valamire való úgy sem barátkoznék velem. Már gondoltam, hogy
pénzért vállalok egy grófnét, mint a hogy a zsidók szokták. De
utálom a nyafkákat; a ki közöttük szegény, az folyton sír. Maradok én
maga mellett. Mi? Eljön velem sétálni, ha a herczeg nem jöhet.
Nagyon gyakran nem jöhet, például a mikor katonásdit játszik. Néha,
ha Bécsben van is, nem mer velem az utczán mutatkozni. Nem
tudom, ki tiltja le? A felesége nem. Az szeret engem. Valóban előkelő
asszony; másoknak mindig dicsér: Juli jó lélek, konzerválja a
herczeget, az ő helyén más többet «tenne»! Eljön-e velem maga a
szinházakba? Nem szeretek egyedül lenni a páholyban. Olykor
csendesen elvacsorázgatunk. Én imádom az irókat, bárha könnyelmű
fráterek! Maga ne legyen, én magát rendbe hozom.
A míg Juli előadta – kissé ugráló – programmbeszédét, az
ebédlőben lakájok, inasok jártak-keltek, elszedték az asztalt
nesztelenül, mintha valakit temettek volna. Az ujságiró többször
figyelmeztette az asszonyt:
– Pszt, csendesebben!
A herczeg barátnőjének azonban nem volt sugdosó hangja és az
erőteljes alt hangját inkább a természet, az értelmes szókimondásra
rendezte be.
– Nekem kell valaki, a ki olyan nekem mint én a herczegnek! –
mondá a rendesnél is emeltebb és értelmesebb hangon.
Az ujságiró nem veresedett el többé és nem utálta meg magát,
sőt a szemben álló hölgyet sem. A helyzet izgatta, csakhogy nem
értette eléggé, az irodalom neki is elrontotta – mint annyi más
társának – a világos, korrekt látását. Nem látta tisztán ez asszonyt, a
ki a józan nők ama fajtájához tartozott, a melyekhez képest a
legridegebb üzletember is poetikus hajlandóságokkal teli. A számító
férfinak fogalma sem volt arról, hogy vannak asszonyok, a kik a
legszövevényesebb helyzetekkel is oly egyszerűen számolnak, mint a
vásárcsarnokból hazatérő szakácsnéval: Hús, zöldség, főzelék,
krumpli, fél-velő, champignon, tejfel és virág…
A virágot nem hagyta ki Juli a számításból.
– Különben – mondá hirtelen – ne beszélgessünk itt tovább. A
maflák – az üvegajtón át látható inasokra mutatott – úgy látom,
zavarják. Menjen maga csak haza; egy negyedóra mulva magánál
leszek! Ne féljen, nem fogom kompromittálni, nem fogja megtudni
senki. Művésznő vagyok, vagy mi?!
Az ujságiró vágyott e vizitre, de egyszersmind szerette volna, ha
elmarad. Félt, de bátornak kellett mutatkoznia, különben mindent
elveszthet. Látta, hogy ennek az asszonynak a kezében van és ez
voltaképen tetszett is neki.
Hazament, hogy várja. A Nuszika levele, virágja és valamivel
jobban sütött mogyorótortája ott volt az asztalon. A levél csak ez egy
sor:
«Hősiessége aggaszt, kétségbeesve várom a tennis-pályán!»
«Hősiessége aggaszt»…

You might also like