It Auditing: Using Controls to Protect Information Assets [IT AUDITING -OS N/D]
Application Best Practices
Checklist for Best Practices
-
qApply defense-in-depth.
-
qUse a positive security model.
-
qFail safely.
-
qRun with least privilege.
-
qAvoid security by obscurity.
-
qKeep security simple.
-
qDetect intrusions and keep logs.
-
qNever trust infrastructure and services.
-
qEstablish secure defaults.
-
qUse open standards.
Auditing Applications
Checklist for Auditing Applications
-
qReview and evaluate data input controls.
-
qDetermine the need for error/exception reports related to data integrity, and evaluate whether this need has been fulfilled.
-
qReview and evaluate the controls in place over data feeds to and from interfacing systems.
-
qIn cases where the same data are kept in multiple databases and/or systems, periodic ‘sync’ processes should be executed to detect any inconsistencies in the data.
-
qReview and evaluate the audit trails present in the system and the controls over those audit trails.
-
qThe system should provide a means to trace a transaction or piece of data from the beginning to the end of the process enabled by the system.
-
qThe application should provide a mechanism that authenticates users based, at a minimum, on a unique identifier for each user and a confidential password.
-
qReview and evaluate the application's authorization mechanism to ensure that users are not allowed to access any sensitive transactions or data without first being authorized by the system's security mechanism.
-
qEnsure that the system's security/authorization mechanism has an administrator function with appropriate controls and functionality.
-
qDetermine whether the security mechanism enables any applicable approval processes.
-
qEnsure that a mechanism or process has been put in place that suspends user access on termination from the company or on a change of jobs within the company.
-
qVerify that the application has appropriate password controls.
-
qReview and evaluate processes for granting access to users. Ensure that access is granted only when there is a legitimate business need.
-
qEnsure that users are automatically logged off from the application after a certain period of inactivity.
-
qEvaluate the use of encryption techniques to protect application data.
-
qEvaluate application developer access to alter production data.
-
qEnsure that the application software cannot be changed without going through a standard checkout/staging/testing/approval process after it is placed into production.
-
qEvaluate controls around code checkout, modification, and versioning.
-
qEvaluate controls around the testing of application code before it is placed into a production environment.
-
qEnsure that appropriate backup controls are in place.
-
qEnsure that appropriate recovery controls are in place.
-
qEvaluate controls around the application's data retention.
-
qEvaluate controls around data classification within the application.