13.08.2012 Views

ACTIONSCRIPT 3 Developer’s Guide en

ACTIONSCRIPT 3 Developer’s Guide en

ACTIONSCRIPT 3 Developer’s Guide en

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>ACTIONSCRIPT</strong> 3.0 DEVELOPER’S GUIDE<br />

Security<br />

Risk from a downgrade attack<br />

Adobe AIR 1.0 and later<br />

During application install, the runtime checks to <strong>en</strong>sure that a version of the application is not curr<strong>en</strong>tly installed. If<br />

an application is already installed, the runtime compares the version string against the version that is being installed.<br />

If this string is differ<strong>en</strong>t, the user can choose to upgrade their installation. The runtime does not guarantee that the<br />

newly installed version is newer than the older version, only that it is differ<strong>en</strong>t. An attacker can distribute an older<br />

version to the user to circumv<strong>en</strong>t a security weakness. For this reason, the developer is advised to make version checks<br />

wh<strong>en</strong> the application is run. It is a good idea to have applications check the network for required updates. That way,<br />

ev<strong>en</strong> if an attacker gets the user to run an old version, that old version will recognize that it needs to be updated. Also,<br />

using a clear versioning scheme for your application makes it more difficult to trick users into installing a downgraded<br />

version.<br />

Code signing<br />

Adobe AIR 1.0 and later<br />

All AIR installer files are required to be code signed. Code signing is a cryptographic process of confirming that the<br />

specified origin of software is accurate. AIR applications can be signed using either by a certificate issued by an external<br />

certificate authority (CA) or by a self-signed certificate you create yourself. A commercial certificate from a wellknown<br />

CA is strongly recomm<strong>en</strong>ded and provides assurance to your users that they are installing your application,<br />

not a forgery. However, self-signed certificates can be created using adt from the SDK or using either Flash, Flash<br />

Builder, or another application that uses adt for certificate g<strong>en</strong>eration. Self-signed certificates do not provide any<br />

assurance that the application being installed is g<strong>en</strong>uine and should only be used for testing an application prior to<br />

public release.<br />

Security on Android devices<br />

Adobe AIR 2.5 and later<br />

On Android, as on all computing devices, AIR conforms to the native security model. At the same time, AIR maintains<br />

its own security rules, which are int<strong>en</strong>ded to make it easy for developers to write secure, Internet-connected<br />

applications.<br />

Since AIR applications on Android use the Android package format, installation falls under the Android security<br />

model. The AIR application installer is not used.<br />

The Android security model has three primary aspects:<br />

Permissions<br />

Application signatures<br />

Application user IDs<br />

Android permissions<br />

Many features of Android are protected by the operating system permission mechanism. In order to use a protected<br />

feature, the AIR application descriptor must declare that the application requires the necessary permission. Wh<strong>en</strong> a<br />

user attempts to install the app, the Android operating system displays all requested permissions to the user before the<br />

installation proceeds.<br />

Last updated 6/6/2012<br />

1082

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!