|
1 <?xml version="1.0" encoding="utf-8"?> |
|
2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
|
3 <!-- This component and the accompanying materials are made available under the terms of the License |
|
4 "Eclipse Public License v1.0" which accompanies this distribution, |
|
5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
|
6 <!-- Initial Contributors: |
|
7 Nokia Corporation - initial contribution. |
|
8 Contributors: |
|
9 --> |
|
10 <!DOCTYPE concept |
|
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
|
12 <concept id="GUID-CC8EA664-FF2E-40FB-BC1C-89FB1255A9C9" xml:lang="en"><title>General |
|
13 protection principles</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
14 <p>Paying attention to the general protection principles below increases |
|
15 security in mobile software.</p> |
|
16 <section id="GUID-221C271B-4E13-4666-803C-6BCB7BDD8C1E"><title>Prevention</title> |
|
17 <p><i>Prevention</i> is the key component in security threat management. |
|
18 Over the past few years, the approach to security has shifted from <i>reactive</i> to <i>proactive</i>, |
|
19 meaning that prevention is increasingly important. However, the reactive component |
|
20 is still necessary because security levels degrade over time due to information |
|
21 corruption, new attack methods and viruses, etc.</p> |
|
22 <p>By intercepting security breaches before they even happen you can create |
|
23 potentially safe applications and systems. However, even the most secure solutions |
|
24 may have weaknesses, so you should never place your trust in only one method.</p> |
|
25 </section> |
|
26 <section id="GUID-78A8158D-1F67-46BE-91AD-8227200B46D6"><title>Control</title> |
|
27 <p>If a security incident is about to happen, it is still possible to minimize |
|
28 and isolate damage with <i>control of events</i> and strong <i>internal borders</i>. |
|
29 By dividing the system or software into sufficiently small units, it is easier |
|
30 to control and manage security features. Division also helps to isolate infections |
|
31 within a single unit.</p> |
|
32 <p>Another useful control feature is the <i>minimum rights principle</i>, |
|
33 wherein each unit is given only the minimum rights to complete its tasks. |
|
34 Controls can be imposed by <i>authenticating</i> and <i>authoring</i> all |
|
35 traffic between units, and by limiting access rights of unidentified parties. |
|
36 These techniques can be applied from a single software component to an entire |
|
37 business system.</p> |
|
38 <p>From Symbian OS v9.1 onwards, <xref href="jar:GUID-35228542-8C95-4849-A73F-2B4F082F0C44.jar!/sdk/doc_source/guide/platsecsdk/index.html" format="application/java-archive">platform security</xref> implements |
|
39 control of events inside the operating system and creates borders for different |
|
40 security areas (for example, by means of <xref href="GUID-ACDED56F-38FE-491D-B019-BE2C53A75D28.dita">data |
|
41 caging</xref> and server protection). Platform security also implements the |
|
42 minimum rights principle.</p> |
|
43 <p>Additionally, there are <xref href="GUID-9058F379-C495-4B22-B270-FF6A80E450B8.dita#GUID-9058F379-C495-4B22-B270-FF6A80E450B8/GUID-9058F379-C495-4B22-B270-FF6A80E450B9">third-party |
|
44 security applications</xref> such as <i>antivirus software</i>, <i>firewalls,</i> and <i>intrusion |
|
45 detection systems</i> that provide good protection against hostile attacks |
|
46 when combined with strict <i>policies</i>.</p> |
|
47 </section> |
|
48 <section id="GUID-13186350-A3DC-4793-8D7A-7832086083AD"><title>Testing and validation</title> |
|
49 <p>Even the strongest security systems may have vulnerabilities which are |
|
50 not apparent until the application or product is in use. Software complexity |
|
51 and combinations of different technologies are known to increase the chance |
|
52 of software flaws. Software usually functions properly even when it is not |
|
53 secure. This is why extensive <i>testing and validation</i> are needed during |
|
54 development. The purpose of security testing is to find errors and flaws that |
|
55 may jeopardize the security and integrity of information stored in the mobile |
|
56 device.</p> |
|
57 <p>Traditional testing validates software against specifications, but security |
|
58 testing studies behavior and possible side effects in different environments. |
|
59 For example, <i>white hat hacking</i> attempts to identify vulnerabilities |
|
60 before malicious (black hat) hackers do. Common areas for security testing |
|
61 include user interfaces, information storage, communications, and the software's |
|
62 internal security (for example, algorithms, robustness, recovery).</p> |
|
63 <p>To have a complete evaluation of security features and risks, it is |
|
64 important to perform a full security analysis for every published version |
|
65 of an application.</p> |
|
66 </section> |
|
67 </conbody></concept> |