Legal notices
Legal notices
For legal notices, see http://help.adobe.com/en_US/legalnotices/index.html.
Last updated 10/14/2011
Contents
AIR Security Overview
Installing and updating desktop applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Installing and updating mobile applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Adobe AIR updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Code Signing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Security sandboxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Accessing the file system . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Communicating with native processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Working securely with untrusted content . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Security on Android devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Security on iOS devices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
HTML security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Other security considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
iii
Last updated 10/14/2011
AIR Security Overview
Security is a key concern of Adobe, users, system administrators, and application developers. For this reason, Adobe®
AIR® includes a set of security rules and controls to safeguard the user and application developer. This white paper
presents the security considerations in using and developing applications for Adobe AIR.
Although the AIR security model is an evolution of the security model for SWF content running in Flash® Player and
HTML content running in the browser, the security contract is different from the security contract applied to content
in a browser. This contract offers developers a secure means of broader functionality for rich experiences with
freedoms that would be inappropriate for a browser-based application.
AIR applications run under the same operating system security constraints of other, native applications on a given
computing device. In general, these constraints allow for broad access to operating system capabilities such as reading
and writing files, drawing to the screen, and communicating with the network. Operating system restrictions that
apply to native applications, such as user-specific privileges, equally apply to AIR applications.
AIR applications are written using either compiled bytecode (SWF content) or interpreted script (JavaScript, HTML)
so that memory management is provided by the runtime. This minimizes the chances of AIR applications being
affected by vulnerabilities related to memory management, such as buffer overflows and memory corruption. These
are some of the most common vulnerabilities affecting desktop applications written in native code.
1
Note: This white paper discusses security-related issues in Adobe AIR. The following developer documentation provides
technical details on developing secure AIR applications and considerations in using the AIR APIs:
• For ActionScript (Flash and Flex) developers, see AIR Security in the ActionScript 3.0 Developer’s Guide
• For Ajax developers, see AIR Security in the HTML Developer’s Guide for Adobe AIR
Installing and updating desktop applications
Desktop AIR applications can be distributed via AIR installer files which use the air extension. When Adobe AIR is
installed and an AIR file is opened, the runtime administers and manages the application installation process.
Note: Developers can specify a version, and application name, and a publisher source, but the initial application
installation workflow itself cannot be modified. This restriction is advantageous for users because all AIR applications
share a secure, streamlined, and consistent installation procedure administered by Adobe AIR. If application
customization is necessary, it can be provided when the application is first executed.
Last updated 10/14/2011
ADOBE AIR SECURITY
AIR Security Overview
The default application installer provides the user with security-related information. AIR displays the publisher name
during installation when the AIR application has been signed with a certificate that is trusted, or which chains to a
certificate that is trusted on the installation computer. Otherwise the publisher name is displayed as “Unknown.” This
lets the user make an informed decision whether to install the application or not:
2
AIR applications first require the runtime to be installed on a user’s computer, just as SWF files first require the Flash
Player browser plug-in to be installed.
The runtime can be installed in two ways: using the seamless install feature or via a manual installation.
• The seamless install feature provides developers with a streamlined installation experience for users who do not
have Adobe AIR installed yet. In the seamless install method, the developer embeds a SWF file in a web page, and
that SWF file presents the name of the AIR application for installation. When a user clicks in the SWF file to install
the application, the SWF file checks for the presence of the runtime. If the runtime cannot be detected it is installed,
and the runtime is activated immediately with the installation process for the developer's application. The user is
provided with the option to cancel installation.
• Alternatively, the user can manually download and install the runtime before installing an AIR file. The developer
can then distribute an AIR file by different means (for example, via e-mail or an HTML link on a web site). When
the AIR file is opened, the runtime is activated and begins to process the application installation.
The AIR security model allows users to decide whether to install an AIR application. The AIR installer provides several
improvements over native application install technologies that make this trust decision easier for users:
• The runtime provides a consistent installation experience on all operating systems, even when an AIR application
is installed from a link in a web browser. Most native application install experiences depend upon the browser or
other application to provide security information, if it is provided at all.
• The AIR application installer identifies the source of the application (or, if the source cannot be verified, the
installer makes this clear) and it provides information about the privileges that are available to the application if the
user allows the installation to proceed.
• The runtime administers the installation process of an AIR application. An AIR application cannot manipulate the
installation process the runtime uses.
In general, users should not install any application (including an AIR application) that comes from a source that they
do not trust, or that cannot be verified. The burden of proof on security for native applications is equally true for AIR
applications as it is for other installable applications.
Last updated 10/14/2011