ISO IEC 17799 2000TRANSLATED INTO PLAIN ENGLISHSection 10: Systems Development and MaintenanceDETAILED STANDARD |
||
ISO IEC 17799 2000 is OBSOLETE. See ISO IEC 27002 2013. |
10.1 IDENTIFY SYSTEM SECURITY REQUIREMENTS |
|
|
Identify the security requirements that your
information systems
|
|
Identify the security requirements that
infrastructure applications
|
|
Identify the security requirements that
business applications
|
|
Identify the security requirements that
user‑developed applications
|
|
Document the security requirements that
|
|
Make sure that your documentation justifies
and |
10.1.1 SPECIFY SECURITY CONTROLS AND REQUIREMENTS |
|
|
Specify the security requirements that
|
|
Specify the security requirements that
|
|
Specify the security requirements that all |
|
Specify the security controls that new
|
|
Specify the security controls that
|
|
Specify the controls that enhancements to
|
|
Make sure that your security specifications
identify the |
|
Make sure that your security specifications
identify |
|
Make sure that your security controls and
requirements |
10.2 BUILD SECURITY INTO APPLICATION SYSTEMS |
|
|
Prevent the loss of user data in your application systems. |
|
Prevent the misuse of user data in application systems. |
|
Prevent the modification of user data in application systems. |
|
Design security controls into your application systems. |
|
Design security controls into user‑written application systems. |
|
Design audit trails or activity logs into application systems. |
|
Design audit trails or activity logs into user‑written systems. |
|
Design additional security controls into
systems that |
|
Design additional security controls into
systems that |
|
Use risk assessments to select controls
|
10.2.1 BUILD INPUT DATA VALIDATION INTO YOUR SYSTEMS |
|
|
Build input data validation controls into application systems. |
|
Make sure that your validation controls are
able to |
|
Make sure that validation controls are used to
verify that the |
|
Make sure that validation controls are used to
verify |
|
Use input validation controls to detect out‑of‑range values. |
|
Use input validation controls to detect missing or incomplete data. |
|
Use input validation controls to detect invalid characters in data fields. |
|
Use input validation controls to detect when
upper |
|
Review periodically the content of key fields
|
|
Review periodically the content of data files
|
|
Inspect hardcopy input documents in order
|
|
Develop procedures to respond to data validation errors. |
|
Develop procedures to test the plausibility of input data. |
|
Define the responsibilities of all data input personnel. |
10.2.2 BUILD PROCESSING CONTROLS INTO YOUR SYSTEMS |
|
10.2.2.1 DESIGN PROCESSING CONTROLS TO MINIMIZE RISK |
|
|
Build internal processing controls into application systems. |
|
Make sure that processing controls can detect data corruption. |
|
Make sure that restrictions are built into
your applications |
|
Make sure that add‑and‑delete functions in
programs are
|
|
Make sure that procedures are built into your
applications |
|
Make sure that procedures are built into your
applications
|
|
Make sure that
you ensure
that the correct programs |
10.2.2.2 INCORPORATE PROCESSING CHECKS AND CONTROLS |
|
|
Detect and prevent data corruption by
incorporating |
|
Detect corrupt data by using session
or batch
controls
|
|
Detect corrupt data by using
balancing controls to
check
|
|
Detect data corruption by using run‑to‑run controls. |
|
Detect data corruption by using file update totals. |
|
Detect corruption by using program‑to‑program controls. |
|
Detect corruption by using system‑generated validation data. |
|
Detect corruption by using hash totals of records and files. |
|
Detect corruption by checking the integrity
|
|
Detect corruption by checking the integrity
|
|
Prevent data corruption by ensuring that all |
|
Prevent corruption by ensuring that
application |
|
Prevent corruption by ensuring that
application |
|
Prevent corruption by ensuring that
application |
10.2.3 BUILD MESSAGE AUTHENTICATION INTO YOUR SYSTEMS |
|
|
Protect the integrity of electronic messages
by building |
|
Protect the integrity of electronic messages
by building |
|
Assess your security risks before you decide
how |
|
Use message authentication to detect
unauthorized
changes |
|
Use message authentication to detect the
|
|
Use message authentication techniques
|
|
Use message authentication techniques to
|
|
Use message authentication techniques to
protect the |
|
Use message authentication techniques to
protect |
|
Use message authentication techniques to
protect |
10.2.4 BUILD OUTPUT DATA VALIDATION INTO YOUR SYSTEMS |
|
|
Ensure that output data is correct by building
|
|
Validate your output by performing
plausibility checks |
|
Validate your output by performing
reconciliation control |
|
Validate your output by providing information
that allows |
|
Validate your output by providing information
that allows |
|
Develop procedures that describe how people
should |
|
Define the duties and responsibilities of the
people |
10.3 USE CRYPTOGRAPHY TO PROTECT INFORMATION |
|
|
Use
cryptographic systems and techniques to
protect |
|
Use
cryptographic systems and
techniques |
|
Do a risk assessment to determine whether
|
|
Use your risk assessment to determine what
|
|
Use your risk assessment to determine what
level |
|
Use your risk assessment to help determine
what |
|
Use your risk assessment to help determine
what |
|
Use cryptographic systems and techniques to
protect |
10.3.1 DEVELOP A POLICY ON THE USE OF CRYPTOGRAPHY |
|
|
Develop a policy on the use of cryptography. |
|
Make sure that your cryptography policy helps
you to maximize |
|
Make sure that your cryptography policy helps
you to avoid the incorrect |
|
Make sure that your cryptography policy
describes the approach |
|
Make sure that your cryptography policy
describes the |
|
Make sure that your cryptography policy
describes |
|
Make sure that your key management approach
describes methods |
|
Make sure that your cryptography policy
describes |
|
Make sure that your cryptography policy
specifies who |
|
Make sure that your cryptography policy
specifies |
|
Make sure that your cryptography policy
specifies who |
|
Make sure that your cryptography policy
specifies who |
|
Make sure that your cryptography policy
respects the |
|
Make sure that
your cryptography
policy addresses |
|
Make sure that your cryptography
policy discusses |
10.3.2 ENCRYPT SENSITIVE OR CRITICAL INFORMATION |
|
|
Encrypt your sensitive or critical information. |
|
Do a risk assessment to identify the
level of
protection |
|
Make sure that your risk assessment considers
|
|
Make sure that your risk assessment considers |
|
Use cryptography specialists to help you
identify the |
|
Use cryptography specialists to help you
|
|
Use cryptography specialists to help you
|
|
Use legal experts to help you to identify and
evaluate |
10.3.3 PROTECT DOCUMENTS WITH DIGITAL SIGNATURES |
|
|
Use digital signatures to protect the
integrity |
|
Make sure that your digital signature
algorithm |
|
Use digital signature technology to verify
|
|
Use digital signature technology to verify
that the |
|
Use digital signatures to protect electronic payments. |
|
Use digital signatures to protect funds transfers. |
|
Use digital signatures to protect contracts. |
|
Use
uniquely related pairs of
keys to |
|
Use private keys to create digital signatures. |
|
Use public keys to verify digital signatures. |
|
Make sure that people cannot forge electronic
|
|
Protect the integrity of public keys
|
|
Use keys to create and verify digital
signatures |
|
Make sure that you are clear about when
digital |
|
Make sure that you are familiar with the
legislation |
|
Use legal experts to help you to identify and
evaluate |
|
Use contracts to support digital signatures
whenever the |
10.3.4 USE NON‑REPUDIATION SERVICES TO RESOLVE DISPUTES |
|
|
Use non‑repudiation services to prove whether
|
|
Use non‑repudiation services to protect
against |
|
Use non‑repudiation services to resolve
disagreements |
|
Use non‑repudiation services to resolve
disagreements |
|
Use non‑repudiation services to resolve
disagreements |
10.3.5 ESTABLISH A KEY MANAGEMENT SYSTEM |
|
10.3.5.1 PROTECT YOUR CRYPTOGRAPHIC KEYS |
|
|
Establish a management system
|
|
Make sure that your key management system
|
|
Make sure that your key management system
allows you to |
|
Make sure that your key management system
|
|
Make sure that your key management system
allows |
|
Make sure that your key management system
allows |
|
Protect all cryptographic keys against
|
|
Protect all private and secret keys against unauthorized disclosure. |
|
Use cryptographic techniques to protect your cryptographic keys. |
|
Use physical techniques to protect the
equipment |
10.3.5.2 USE SECURE METHODS TO MANAGE KEYS |
|
|
Make sure that your key management system
|
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system
ensures that |
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system uses
|
|
Make sure that your key management system uses
|
|
Make sure that
your key management system |
|
Make sure that your key management system uses
|
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system uses
secure |
|
Make sure that your key management system use
secure |
|
Make sure that your key management system uses
|
|
Make sure that your key management system uses
secure |
|
Make sure that
your key management system |
|
Develop procedures to handle legal requests
|
|
Make sure that
your procedures describe how
|
|
Protect your organization's public keys. |
|
Prevent people from forging users' digital
signatures by |
|
Use public key certificates to prevent someone
|
|
Make sure that
your public key certificates are |
|
Make sure that your public key certificates
are generated |
|
Make sure that your certification authority
has |
|
Establish formal service contracts with your
|
|
Make sure that your cryptographic service
|
|
Make sure that your cryptographic service
|
|
Make sure that your cryptographic service
|
10.4 PROTECT YOUR ORGANIZATION’S SYSTEM FILES |
|
|
Make sure that IT projects and activities do
not |
|
Control the access that IT project personnel
|
|
Make system owners responsible for system integrity. |
10.4.1 CONTROL THE IMPLEMENTATION OF SOFTWARE |
|
|
Establish controls to manage the
implementation |
|
Make sure that your controls are designed to
minimize the |
|
Make sure that
only authorized librarians are allowed
|
|
Make sure that your operational systems
|
|
Make sure that executable code is not
|
|
Make sure that executable code is not |
|
Make sure that executable code is not
implemented |
|
Maintain an audit log of all updates |
|
Retain previous versions of all updated software. |
|
Ensure that all vendor supplied software used
in your |
|
Evaluate the security strengths and weaknesses
of all |
|
Apply software patches whenever they are
likely to |
|
Make sure that management approval is required
|
|
Monitor the activities of your software suppliers. |
10.4.2 CONTROL THE USE OF SYSTEM DATA FOR TESTING |
|
|
Control the use of your operational data
|
|
Protect operational data while it is being
used |
|
Avoid using personal information for testing
|
|
Use access control procedures to restrict
|
|
Make sure that authorization is required
before operational |
|
Make sure that operational information is
immediately erased |
|
Make sure that a log and audit trail is
established |
10.4.3 CONTROL ACCESS TO PROGRAM SOURCE LIBRARY |
|
|
Prevent the corruption of computer programs
by |
|
Avoid holding your program source
|
|
Appoint a program librarian for each
|
|
Make sure that updates to program
source libraries are carried
|
|
Make sure that program source library updates
are authorized by the IT |
|
Make sure that your program source librarians
control the |
|
Make sure that your librarians receive formal
authorization |
|
Make sure that you control the access that
your IT |
|
Make sure that an audit log is maintained that
tracks |
|
Avoid holding programs that are under
development
|
|
Avoid holding programs that are under
maintenance |
|
Hold program listings in a secure environment. |
|
Archive old versions of source programs. |
|
Make sure that your source program archives
specify |
|
Make sure that
your source program archives include |
|
Establish change control procedures to manage
the |
10.5 CONTROL DEVELOPMENT AND SUPPORT |
|
|
Control your information system development
|
|
Make sure that application system managers are
|
|
Make sure that application system managers are
responsible |
|
Make sure that application system managers are
responsible for |
10.5.1 ESTABLISH CHANGE CONTROL PROCEDURES |
|
|
Establish formal procedures to control changes to information systems. |
|
Make sure that change control procedures are
used to ensure that |
|
Make sure that your change control procedures
are used to ensure |
|
Make sure that your change control procedures
ensure that |
|
Make sure that your change control procedures
are used to ensure |
|
Make sure that your change control procedures
are used to ensure |
|
Make sure that your change control procedures
ensure |
|
Make sure that your change control procedures
ensure |
|
Make sure that your change control procedures
ensure |
|
Make sure that your change control procedures
ensure that |
|
Make sure that your change control procedures
ensure |
|
Make sure that your change control procedures
ensure that changes are |
|
Make sure that your change control procedures
ensure that system |
|
Make sure that your change control procedures
ensure that operating |
|
Make sure that change control procedures
ensure that |
|
Make sure that change control procedures
ensure that |
|
Make sure that your change control procedures
ensure |
|
Segregate your software testing environment
from |
10.5.2 REVIEW CHANGES TO OPERATING SYSTEM |
|
|
Review and test application systems whenever
|
|
Make sure that your application
system reviews ensure that
|
|
Make sure that your application system reviews
ensure that |
|
Make sure that your application system reviews
ensure that |
|
Make sure that your annual support plan and
budget will |
|
Make sure that you notify people about
operating system |
|
Make sure that business continuity plans are
updated |
10.5.3 RESTRICT CHANGES TO SOFTWARE PACKAGES |
|
|
Maintain the security of vendor‑supplied
software by |
|
Determine whether or not built‑in controls
will be compromised |
|
Determine whether or not integrity processes
will be compromised |
|
Determine whether or not the consent of the
vendor is required |
|
Determine whether or not the required changes
will be provided |
|
Determine whether or not you will be
responsible for future software |
|
Make sure that you apply software
modifications to a clearly |
|
Test all changes to vendor‑supplied software
|
|
Document all changes to vendor‑supplied
|
10.5.4 SAFEGUARD AGAINST COVERT CHANNELS AND TROJANS |
|
|
Safeguard your computing systems
|
|
Protect yourself against Trojan code and
covert channels |
|
Protect yourself against Trojan code and
covert channels |
|
Protect yourself against Trojan code and
covert channels |
|
Protected yourself against Trojan code and
covert |
|
Protect yourself against Trojan code and
covert |
|
Protect yourself against Trojan code and
covert |
|
Protect yourself against Trojan code and
covert channels |
10.5.5 CONTROL OUTSOURCED SOFTWARE DEVELOPMENT |
|
|
Manage and control your outsourced software development projects. |
|
Clarify intellectual
property rights including who owns
|
|
Clarify software licensing arrangements before
|
|
Expect your suppliers to certify the quality
and the accuracy of the |
|
Establish the right to audit the quality and
accuracy of |
|
Protect yourself against poor quality code by specifying
|
|
Protect yourself against failure by
establishing escrow arrangements |
|
Protect yourself against Trojan code by
testing |
Also see our extensive INFORMATION SECURITY LIBRARY |
Praxiom Research Group Limited help@praxiom.com 780-461-4514 |
|||
Updated on March 27, 2014. First published on October 28, 2004. |
|||
Legal
Restrictions on the Use of this Page
Copyright © 2004 - 2014 by Praxiom Research Group Limited. All Rights Reserved. |