Microsoft SQL Server Database Audit Assurance Program - Icq - Eng - 0711
Microsoft SQL Server Database Audit Assurance Program - Icq - Eng - 0711
Audit/Assurance Program
Microsoft® SQL Server® Database Audit/Assurance Program
ISACA®
With 95,000 constituents in 160 countries, ISACA (www.isaca.org) is a leading global provider of knowledge,
certifications, community, advocacy and education on information systems (IS) assurance and security, enterprise
governance and management of IT, and IT-related risk and compliance. Founded in 1969, the nonprofit, independent
ISACA hosts international conferences, publishes the ISACA® Journal, and develops international IS auditing and
control standards, which help its constituents ensure trust in, and value from, information systems. It also advances
and attests IT skills and knowledge through the globally respected Certified Information Systems Auditor ® (CISA®),
Certified Information Security Manager® (CISM®), Certified in the Governance of Enterprise IT® (CGEIT®) and
Certified in Risk and Information Systems Control™ (CRISC™) designations. ISACA continually updates COBIT ®,
which helps IT professionals and enterprise leaders fulfill their IT governance and management responsibilities,
particularly in the areas of assurance, security, risk and control, and deliver value to the business.
Disclaimer
ISACA has designed and created Microsoft ® SQL Server ® Database Audit/Assurance Program (the “Work”) primarily
as an informational resource for audit and assurance professionals. ISACA makes no claim that use of any of the Work will
assure a successful outcome. The Work should not be considered inclusive of all proper information, procedures and tests
or exclusive of other information, procedures and tests that are reasonably directed to obtaining the same results. In
determining the propriety of any specific information, procedure or test, audit and assurance professionals should apply
their own professional judgment to the specific circumstances presented by the particular systems or IT environment.
Reservation of Rights
© 2011 ISACA. All rights reserved. No part of this publication may be used, copied, reproduced, modified,
distributed, displayed, stored in a retrieval system or transmitted in any form by any means (electronic, mechanical,
photocopying, recording or otherwise) without the prior written authorization of ISACA. Reproduction and use of
all or portions of this publication are permitted solely for academic, internal and noncommercial use and for
consulting/advisory engagements, and must include full attribution of the material’s source. No other right or
permission is granted with respect to this work.
ISACA
3701 Algonquin Road, Suite 1010
Rolling Meadows, IL 60008 USA
Phone: +1.847.253.1545
Fax: +1.847.253.1443
E-mail: [email protected]
Web site: www.isaca.org
ISBN 978-1-60420-184-0
Microsoft ® SQL Server ® Database Audit/Assurance Program
CRISC is a trademark/service mark of ISACA. The mark has been applied for or registered in countries throughout
the world.
Microsoft ® SQL Server ® Database Audit/Assurance Program is an independent publication and is not affiliated
with, nor has it been authorized, sponsored or otherwise approved by, Microsoft Corp.
Researchers
Rene Aguero, CISSP, MCSE, Foothill FCU, USA
Christopher Bolton, CISA, CISSP, GSEC, Newegg Inc., USA
Dave Jones, CISA, CIA, Independent, USA
Ray Parrish, InSight Consulting Partners, USA
Tony Partida, GSG Associates Inc., USA
Cheryl Santor, CISA, CISM, CGEIT, CISSP, Los Angeles Metropolitan Water District, USA
Christina Tsang-Reveche, CISA, CISM, PMP, The Capital Group Companies, USA
Mike Villegas, CISA, CISSP, GSEC, Newegg Inc., USA
Expert Reviewers
Anjay Agarwal, CISA, CGEIT, CRISC, AAA Technologies P. Ltd., India
Shawna M. Bang, CGEIT, CRISC, Smart Business Information Technology, USA
Madhav Chablani, CISA, CISM, TippingPoint Consulting, India
Milthon J. Chavez, Ph.D., CISA, CISM, CGEIT, Integral Centre of Organizational Resilience, Venezuela
Yves M. Dorleans, CISA, Charles River Laboratories, USA
Luis Fuente, CGEIT, Junta de Castilla y Leon, Spain
Gbadamosi Folakemi Toyin, CGEIT, APDM, CGRC-IT, CICA, CIPM, IT Governance Consult, Nigeria
Curt Hartinger, CISA, CISM, CPA, GSNA, MSIA, Office of the State Treasurer, USA
Abdus Sami Khan, Sami Associates, Pakistan
Prashant A. Khopkar, CISA, CA, Grant Thornton, LLP, USA
Stephen C. Lau, CISA, CISSP, PricewaterhouseCoopers, USA
Lucio Molina Focazzio, CISA, CISM, ITIL, Colombia
Philippe Rivest, CISA, CEH, CISSP, TransForce, Canada
Megah Santio, CISA, Australia
Vipin Sehgal, CISA, Sun Life Financial, Canada
Vinoth Sivasubramanian, ABRCCI, CEH, ISO 27001 LA, ITIL V3, UAE Exchange Center LLC, UAE
John G. Tannahill, CISM, CGEIT, CA, J. Tannahill & Associates, Canada
Knowledge Board
Gregory T. Grocholski, CISA, The Dow Chemical Co., USA, Chair
Michael Berardi Jr., CISA, CGEIT, Nestle USA, USA
John Ho Chi, CISA, CISM, CBCP, CFE, Ernst & Young LLP, Singapore
Jose Angel Pena Ibarra, CGEIT, Alintec S.A., Mexico
Jo Stewart-Rattray, CISA, CISM, CGEIT, CSEPS, RSM Bird Cameron, Australia
Jon Singleton, CISA, FCA, Auditor General of Manitoba (retired), Canada
Patrick Stachtchenko, CISA, CGEIT, CA, Stachtchenko & Associates SAS, France
Kenneth L. Vander Wal, CISA, CPA, Ernst & Young LLP (retired), USA
The ISACA Los Angeles (CA, USA) Chapter for its support
I. Introduction 5
II. Using This Document 6
III. Controls Maturity Analysis 8
IV. Assurance and Control Framework 10
V. Executive Summary of Audit/Assurance Focus 11
VI. Audit/Assurance Program 13
1. Planning and Scoping 13
2. Preparatory Steps 17
3. Access and Authorization 18
4. Security Processes and Monitoring 21
5. Backup and Recovery 23
6. Encryption 24
7. Trusted Relationships 25
8. Network Security 26
VII. Maturity Assessment 28
VIII. Assessment Maturity vs. Target Maturity 32
IX. References and Resources 33
X. Technical Appendix 33
I. Introduction
Overview
ISACA has developed the IT Assurance Framework™ (ITAF™) as a comprehensive and good-practice-
setting model. ITAF provides standards that are designed to be mandatory and that are the guiding
principles under which the IT audit and assurance profession operates. The guidelines provide
information and direction for the practice of IT audit and assurance. The tools and techniques provide
methodologies, tools and templates to provide direction in the application of IT audit and assurance
processes.
Purpose
The audit/assurance program is a tool and template to be used as a road map for the completion of a
specific assurance process. ISACA has commissioned audit/assurance programs to be developed for use
by IT audit and assurance practitioners. This audit/assurance program is intended to be utilized by IT
audit and assurance professionals with the requisite knowledge of the subject matter under review, as
described in ITAF section 2200—General Standards. The audit/assurance programs are part of ITAF
section 4000—IT Assurance Tools and Techniques.
Control Framework
The audit/assurance programs have been developed in alignment with the ISACA COBIT ® framework—
specifically COBIT 4.1—using generally applicable and accepted good practices. They reflect ITAF
sections 3400—IT Management Processes, 3600—IT Audit and Assurance Processes, and 3800—IT
Audit and Assurance Management.
Many organizations have embraced several frameworks at an enterprise level, including the Committee of
Sponsoring Organizations of the Treadway Commission (COSO) Internal Control Framework. The
importance of the control framework has been enhanced due to regulatory requirements by the US
Securities and Exchange Commission (SEC) as directed by the US Sarbanes-Oxley Act of 2002 and
similar legislation in other countries. They seek to integrate control framework elements used by the
general audit/assurance team into the IT audit and assurance framework. Since COSO is widely used, it
has been selected for inclusion in this audit/assurance program. The reviewer may delete or rename these
columns to align with the enterprise’s control framework.
Step 1 is part of the fact-gathering and pre-fieldwork preparation. Because the pre-fieldwork is essential
to a successful and professional review, the steps, or audit procedures, have been itemized in this plan.
The first level steps, e.g., 1.1, are in bold type and provide the reviewer with a scope or high-level
explanation of the purpose for the substeps. In addition, some program steps require the performance of
several audit procedures, identification of several specific points, issues, etc. (For an example, see step
3.9.) The document breaks down this kind of lengthy process into individual points to ease referencing
the individual audit procedures or other work papers. The audit/assurance professional should treat the
parent step, e.g., 3.9, as a “roll up” that includes the set of subordinate steps.
Beginning in step 2, the steps associated with the work program are itemized. To clarify purpose, the
audit/assurance program describes the audit/assurance objective—the reason for performing the steps—in
the topic area; the specific audit steps then follow in substeps. Each review step is listed after the control.
These steps may include assessing the control design by walking through a process, interviewing,
observing or otherwise verifying the process and the controls that address that process. In many cases,
once the control design has been verified, specific tests need to be performed to provide assurance that the
process associated with the control is being followed.
The maturity assessment, which is described in more detail later in this document, makes up the last
section of the program.
The audit/assurance program does not include typical audit wrap-up steps, including, but not necessarily
limited to those processes associated with completing and reviewing work papers, preparing issues and
recommendations, and writing and clearing reports. The Research Team presumes that each
audit/assurance function will have identified and defined standards that address each of these processes in
accordance with the needs and standards its individual enterprise.
COBIT Cross-reference
The COBIT cross-reference provides the audit and assurance professional with the ability to refer to the
specific COBIT control objective that the audit/assurance step addresses. The COBIT control objective
should be identified for each audit/assurance step in the section. Multiple cross-references are not
uncommon. Some subprocesses in the work program address the same COBIT standards identified in the
parent rollup step; or the subprocesses are too granular to cross-reference to specific COBIT steps. The
audit/assurance program is organized in a manner to facilitate an evaluation through a structure parallel to
the development process. COBIT provides in-depth control objectives and suggested control practices at
each level. As the professional reviews each control, he/she should refer to COBIT 4.1 or the IT
Assurance Guide: Using COBIT for good-practice control guidance.
COSO Components
As noted in the introduction, COSO and similar frameworks have become increasingly popular among
audit and assurance professionals. This ties the assurance work to the enterprise’s control framework.
While the IT audit/assurance function uses COBIT as a framework, operational audit and assurance
professionals use the framework established by the enterprise. Since COSO is the most prevalent internal
control framework, it has been included in this document and is a bridge to align IT audit/assurance with
the rest of the audit/assurance function. Many audit/assurance organizations include the COSO control
components within their reports, and summarize assurance activities to the audit committee of the board
of directors.
For each control, the audit and assurance professional should indicate the COSO component(s) addressed.
It is possible, but generally not necessary, to extend this analysis to the specific audit step level.
The original COSO internal control framework contained five components. In 2004, COSO was revised
as Enterprise Risk Management—Integrated Framework and extended to eight components. The primary
difference between the two frameworks is the additional focus on ERM and integration into the business
decision model. Large enterprises are in the process of adopting ERM. The two frameworks are compared
in figure 1.
The original COSO internal control framework addresses the needs of the IT audit and assurance
professional: control environment, risk assessment, control activities, information and communication,
and monitoring. As such, ISACA has elected to utilize the five-component model for its audit/assurance
programs. As more enterprises implement the ERM model, the additional three columns can be added, if
relevant. When completing the COSO component columns, consider the definitions of the components as
described in figure 1.
Reference/Hyperlink
Good practices require the audit and assurance professional to create a work paper that describes the work
performed, issues identified and conclusions for each line item. The reference/hyperlink is to be used to
cross-reference the audit/assurance step to the work paper that supports it. The numbering system of this
document provides a ready numbering scheme for the work papers. If desired, a link to the work paper
can be pasted into this column.
Issue Cross-reference
This column can be used to flag a finding/issue that the IT audit and assurance professional wants to
further investigate or establish as a potential finding. The potential findings should be documented in a
work paper that indicates the disposition of the findings (formally reported, reported as a memo or verbal
finding, or waived).
Comments
The comments column can be used to indicate the waiving of a step or other notations. It is not to be used
in place of a work paper that describes the work performed.
IT Assurance Guide Using COBIT Appendix VII—Maturity Model for Internal Control (figure 2)
provides a generic maturity model that shows the status of the internal control environment and the
establishment of internal controls in an enterprise. It shows how the management of internal control, and
an awareness of the need to establish better internal controls, typically develops from an ad hoc to an
optimized level. The model provides a high-level guide to help COBIT users appreciate what is required
for effective internal controls in IT and to help position their enterprise on the maturity scale.
1 Initial/ad hoc There is some recognition of the need for internal control. There is no awareness of the need for assessment of what is
The approach to risk and control requirements is ad hoc and needed in terms of IT controls. When performed, it is only on
disorganized, without communication or monitoring. an ad hoc basis, at a high level and in reaction to significant
Deficiencies are not identified. Employees are not aware of incidents. Assessment addresses only the actual incident.
their responsibilities.
2 Repeatable but Controls are in place but are not documented. Their operation Assessment of control needs occurs only when needed for
Intuitive is dependent on the knowledge and motivation of individuals. selected IT processes to determine the current level of control
Effectiveness is not adequately evaluated. Many control maturity, the target level that should be reached and the gaps
weaknesses exist and are not adequately addressed; the that exist. An informal workshop approach, involving IT
impact can be severe. Management actions to resolve control managers and the team involved in the process, is used to
issues are not prioritized or consistent. Employees may not define an adequate approach to controls for the process and to
be aware of their responsibilities. motivate an agreed-upon action plan.
3 Defined Controls are in place and adequately documented. Operating Critical IT processes are identified based on value and risk
effectiveness is evaluated on a periodic basis and there is an drivers. A detailed analysis is performed to identify control
average number of issues. However, the evaluation process is requirements and the root cause of gaps and to develop
not documented. While management is able to deal improvement opportunities. In addition to facilitated
predictably with most control issues, some control workshops, tools are used and interviews are performed to
weaknesses persist and impacts could still be severe. support the analysis and ensure that an IT process owner owns
Employees are aware of their responsibilities for control. and drives the assessment and improvement process.
4 Managed and There is an effective internal control and risk management IT process criticality is regularly defined with full support and
Measurable environment. A formal, documented evaluation of controls agreement from the relevant business process owners.
occurs frequently. Many controls are automated and regularly Assessment of control requirements is based on policy and the
reviewed. Management is likely to detect most control issues, actual maturity of these processes, following a thorough and
but not all issues are routinely identified. There is consistent measured analysis involving key stakeholders. Accountability
follow-up to address identified control weaknesses. A for these assessments is clear and enforced. Improvement
limited, tactical use of technology is applied to automate strategies are supported by business cases. Performance in
controls. achieving the desired outcomes is consistently monitored.
External control reviews are organized occasionally.
The maturity model evaluation is one of the final steps in the evaluation process. The IT audit and
assurance professional can address the key controls within the scope of the work program and formulate
an objective assessment of the maturity levels of the control practices. The maturity assessment can be a
part of the audit/assurance report and can be used as a metric from year to year to document progress in
the enhancement of controls. However, the perception of the maturity level may vary between the
process/IT asset owner and the auditor. Therefore, an auditor should obtain the concerned stakeholder’s
concurrence before submitting the final report to management.
At the conclusion of the review, once all findings and recommendations are completed, the professional
assesses the current state of the COBIT control framework and assigns it a maturity level using the six-
level scale. Some practitioners utilize decimals (x.25, x.5, x.75) to indicate gradations in the maturity
model. As a further reference, COBIT provides a definition of the maturity designations by control
objective. While this approach is not mandatory, the process is provided as a separate section at the end of
the audit/assurance program for those enterprises that wish to implement it. It is suggested that a maturity
assessment be made at the COBIT control level. To provide further value to the client/customer, the
professional can also obtain maturity targets from the client/customer. Using the assessed and target
maturity levels, the professional can create an effective graphic presentation that describes the
achievement or gaps between the actual and targeted maturity goals. A graphic is provided in section
VIII, based on sample assessments.
Note that this assessment addresses the Microsoft SQL Server database only; there are generally other
operating systems (OSs) in the enterprise.
ISACA has long recognized the specialized nature of IT assurance and strives to advance globally
applicable standards. Guidelines and procedures provide detailed guidance on how to follow those
standards. IS Auditing Standard S15 IT Controls and IS Auditing Guideline G38 Access Controls are
relevant to this audit/assurance program.
Utilizing COBIT as the control framework from which IT audit/assurance activities are based aligns IT
audit/assurance with good practices as developed by the enterprise.
The COBIT IT process DS9 Manage the configuration, from the Deliver and Support (DS) domain,
addresses good practices for ensuring the integrity of hardware and software configurations. This requires
the establishment and maintenance of an accurate and complete configuration repository. DS5.3 Identity
management and DS5.4 User account management address user identity, and the IT process AI6 Manage
changes, from the Acquire and Implement (AI) domain, specifically addresses change management.
1
Scope limitation: Identity management as it relates to superusers having access to the OS
2
Scope limitation: User account management as it relates to users accessing system functions
Refer to the ISACA publication COBIT® Control Practices: Guidance to Achieve Control Objectives for
Successful IT Governance, 2nd Edition, published in 2007, for the related control practice value and risk
drivers.
In the enterprise, Windows is one of the underlying computing platforms for servers that execute essential
business applications (both centralized and distributed), database servers that manage the massive
databases used to store business data, and web servers that provide the public face of the business on the
Internet and process transactions. Generally accepted standards of control—including but not limited to,
COBIT—recognize that the source of the Microsoft SQL Server database distribution be known and that
controls provide reasonable assurance that only authorized and tested functions, processes and
configuration changes enter the production environment.
Microsoft SQL Server database risks resulting from ineffective or incorrect database configuration
settings could permit the restricted tables, databases and data to become compromised, resulting in, but
not necessarily limited to, the following:
Disclosure of privileged information,
Loss of physical assets,
Loss of intellectual property,
Loss of competitive advantage,
Loss of customer confidence,
Violation of regulatory requirements,
Disruption of the computer infrastructure, resulting in the inability to perform critical business
functions.
The authors recognize that each audit team will customize this audit/assurance program to fit the specific
circumstances of the project and enterprise. Some enterprises will choose to audit SQL Server in phases;
some may address SQL Server in a single project. Perhaps most important, the authors recognize that
SQL Server will probably change somewhat more frequently than this audit guide and program. Thus,
each audit team that uses this audit/assurance program must perform its own research to gain reasonable
assurance that it addresses the most relevant and current SQL Server risks.
Some sections of this audit/assurance program address ancillary functions such as access control,
computer operations and physical security. The authors attempted to limit this audit/assurance program to
risks unique to or introduced into those areas by SQL Server. Thus, this audit/assurance program does not
purport to act as a comprehensive guide to auditing those other areas, some of which could require a
project as large as the audit of SQL Server itself. Example resources, current as of August 2010, include,
but are not limited to the ISACA:
Information Security Management Audit/Assurance Program—For the review of processes associated
with governance, policy, monitoring, incident management and management of the information
security function; the implementation of security configurations; and the selection and maintenance of
security technologies
Network Perimeter Security Audit/Assurance Program—For the review of network perimeter
security, including associated policies, standards and procedures and the effectiveness of the security
implementation
Change Management Audit/Assurance Program—For the review of change management process and
incident management
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
1. PLANNING AND SCOPING THE AUDIT
1.1 Define audit/assurance objectives.
The audit/assurance objectives are high level and describe the overall audit goals.
1.1.1 Review the audit/assurance objectives in the introduction to this audit/assur-
ance program.
1.1.2 Modify the audit/assurance objectives, and align them with the audit/assur-
ance universe, annual plan, charter and specific objectives of the current pro-
ject.
1.2 Define boundaries of review.
The review must have a defined scope. Gain an understanding of the operating en-
vironment; prepare a risk assessment of the SQL Server environment; and, subject
to management approval and budgetary constraints and considering historical audit
results, prepare a proposed scope document.
1.2.1 Obtain and review the Microsoft SQL Server database system security and
management policies.
1.2.2 Obtain and document the following information about the Microsoft SQL
server database environment.
1.2.2.1 Version, release and Microsoft support status of the underlying OS.
1.2.2.2 A list of Microsoft SQL Server database servers, version numbers,
server locations, and applications each server processes or supports
and whether the database versions are current and supported by
Microsoft.
1.2.2.3 Total number of named users (for comparison with logical access se-
curity testing results)
1.2.2.4 Number of database instances. For each instance, or for a sample of
instances, determine the following.
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
1.2.2.4.1 The applications and related versions accessing the data-
base (e.g., enterprise resource planning [ERP], web ap-
plication, data warehouse)
1.2.2.4.2 Utilities used to log on to and manage the database (e.g.,
Rapid SQL)
1.2.3 For any servers hosted by third-party vendors, obtain and review:
Vendor management policies
Service level agreements (SLAs)
Statements on Standards for Attestation Engagements (SSAE 16) previ-
ously referenced as Statement of Auditing Standard No. 70 (SAS 70) Re-
ports
Vendor contracts
1.2.4 Establish preliminary boundaries of the review. Include references for issues
such as:
Areas to be audited
High-level objectives and scope of work
Budget, resource allocation schedules
Report deliverables
1.2.5 Identify any known constraints that could or would limit the audit of specific
systems, processes or functions.
1.3 Define assurance.
The review requires at least two sources of standards:
a. Corporate standards, as defined in the policy and procedure documentation, that
establish corporate expectations. At a minimum, the enterprise should have imple-
mented standards.
b. One or more best-practice references, which can help define generally accepted
control standards (best practices).
If gaps exist between enterprise standards and best practices, consider proposing en-
hancements.
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
1.3.1 Obtain and review Microsoft SQL Server database security and configuration
best practices. Microsoft generally publishes a security guide for SQL Server;
however, the auditor may want to determine whether better sources exist.
1.3.2 Obtain and review corporate Microsoft SQL Server database configuration
policies, procedures and standards.
1.3.3 Identify any potential gaps between, or conflicts with, corporate policies, pro-
cedures, or standards and best practices.
1.4 Identify and document risks.
The risk assessment can help in evaluating where audit resources should be focused.
In most enterprises, audit resources are not available for all processes. The risk-
based approach helps ensure an effective utilization of audit resources.
1.4.1 Using the list of servers identified in step 1.2.2, assign each server to a risk
category and create a prioritized list of servers to assess.
1.4.2 Review any previous audits or other assessments of the Microsoft SQL
Server databases and the underlying OS for the potential impact of any find-
ing on the SQL Server environment.
1.4.3 Determine the status of any agreed-on corrective actions for issues identified
in earlier audits.
1.4.4 Evaluate the overall risk factors affecting the various SQL Server functions,
including, but not limited to:
Areas or business functions to be audited
Amount of time and resources allocated to the review
Audit procedures in this guide
1.4.5 Discuss the risks with IT, business and audit management, and adjust the risk
assessment as necessary.
1.4.6 Discuss possible changes in the scope of the review based on the final risk as-
sessment, with audit management and adjust the scope accordingly.
1.5 Define the audit change process. ME2.7
The initial audit approach depends on the reviewer’s understanding of the operating
environment and associated risk. Further research and analysis may lead to changes
in the scope and approach.
1.5.1 Identify the senior IT assurance resource responsible for the review.
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
1.5.2 Establish the process for suggesting and implementing changes to the audit/
assurance program and authorizations required.
1.6 Define the audit/assurance resources required. ME2.1
The required resources are defined in the introduction to this audit/assurance pro-
gram.
1.6.1 Determine estimated total resources (personnel, staff-hours) and time frame
(start and end dates) required for review.
1.6.2 Determine the audit/assurance skills necessary for review. Propose changes to
management if currently assigned resources appear inadequate.
1.7 Define deliverables. ME2.1
The set of deliverables is not limited to the final report. Communication among the
audit/assurance teams and the process owner is essential to assignment success.
1.7.1 Determine the interim deliverables, including initial findings, status reports,
draft reports, due dates for response and the final report.
1.8 Communicate ME2.1
The audit/assurance process is clearly communicated to the customer/client. Com-
munication among the audit/assurance teams and the process owner is essential to
assignment success.
1.8.1 Conduct an opening conference in accordance with audit/assurance standards
to discuss the review objectives with the executive responsible.
2. PREPARTORY STEPS
2.1 Define the Microsoft SQL Server database environment. PO8
Gain an understanding of the Microsoft SQL Server database environment. PO9
AI1 to 7
DS1 to 5
DS7 to 9
DS11
ME2
2.1.1 Conduct an independent survey of the environment.
2.1.2 Interview system administrators, database administrators (DBAs) and secur-
ity administrators to determine the level of overall security awareness and
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
knowledge of corporate policies and procedures.
2.1.3 Assess key risks and determine key controls or control weaknesses with re-
gard to the following factors:
The controls culture of the enterprise (e.g., a just-enough-control philo-
sophy)
The need to exercise judgement to determine the key controls in the pro-
cess and whether the control structure is adequate
2.1.4 Identify SQL Server configurable controls to test
2.1.5 Obtain a list of triggers in the database, and discuss with the DBA and secur-
ity administrator how they are used. If an external package is used to monitor
changes to the tables, review the external package settings. (Note: A trigger
is a stored procedure that executes when specified rows or fields in a table are
modified. Triggers are often created to enforce referential integrity or consist-
ency among logically related data in different tables. Triggers can also alert
management to rare and highly risky actions.)
2.1.6 Verify the existence of a database maintenance plan. Obtain any SLAs and
support contracts (SLAs executed by the DBAs with end user clients). Re-
view the SLAs to determine whether they include the following provisions:
Maintain documentation for the secure configuration of the system.
Actively monitor systems for security violations, and report any potential
or proven violations to the enterprise.
Test and load security patches within the period defined by enterprise
standards for the type of release in question, e.g., standard maintenance vs.
High-security risk.
Maintain system uptime as defined by business requirements.
Document evidence of maintenance performed.
Maintain registers of history of changes and test results to perform future
evaluations.
2.2 Physical facilities and access to database systems are secured. DS4
Control: Physical facilities should restrict access to authorized personnel only. DS5
DS11
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
DS12
ME2
2.2.1 Tour the data center and identify the location of key database systems. Ensure
that the systems are housed in a secure environment and that console settings
specify password-protected screen savers. Refer to the latest audit of physical
security and/or data centre environmental controls if available.
2.2.2 Verify the existence of a physical security audit.
3. ACCESS AND AUTHORIZATION
3.1 Appropriate access and authorisations are in place.
Control: Ensure that all users (internal, external and temporary) and their activity on IT systems are uniquely identifiable.
Recommended Additional Resource: ISACA Information Security Management Audit/Assurance Program
3.1.1 Discuss procedures used to log on to SQL database systems with the DS5
DBA. Determine whether users logon to SQL databases using SQL Au-
thentication, Active Directory accounts or both.
3.1.1.1 Obtain copies of approval documentation for users who can access
the SQL databases directly.
3.1.1.2 Identify all users/members mapped to the db_owner role, and verify
that only the privileged users identified as authorized have direct ac-
cess to the database. Determine the reasons for any variances found.
3.1.2 Obtain a list of users who can access the SQL database(s) by executing the DS5
following SQL command from MS SQL Server Management Studio:
sp_helplogins;
3.1.3 Review the list of SQL Server users to ensure that generic accounts are not DS5
used (e.g., test, guest or shared accounts).
3.1.4 Verify that default accounts and default passwords are not used by at- DS5
tempting to log on to the database using known defaults.
3.1.5 Review a sample of user accounts, and evaluate the appropriateness of ac- DS5
cess profiles assigned to each sample item.
3.1.6 Discuss the process for establishing an initial password with the DBA. DS5
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
Determine whether generic passwords or passwords that can be easily
guessed are used.
3.1.7 Password attributes DS5
Control: Password attributes (frequency of change, length of password, DS9
reuse of passwords) are established according to policy and according to
the sensitivity of the information available to the user.
3.1.7.1 Review the following profile settings to verify that password
controls conform to current best practices and that resource lim-
its exist and appear reasonable.
3.1.7.1.1 Enforce password history (recommend 24).
3.1.7.1.2 Maximum password age (recommend 42).
3.1.7.1.3 Minimum password age (recommend 1)
3.1.7.1.4 Minimum password length (recommend 8)
3.1.7.1.5 Password must meet complexity requirements (recom-
mend Yes)
3.1.7.1.6 Store password using reversible encryption for all
users in the domain (Disabled)
3.1.8 Discuss the processes for obtaining emergency access to SQL Server data- AI6.4
bases with the DBA and the security administrator. Determine whether DS4
procedures meet the following criteria. DS10
3.1.8.1 Define methods and controls over emergency access.
3.1.8.2 Require documentation for each use of emergency access.
3.1.8.3 Require access termination after the business issue is resolved.
3.1.8.4 Require a manager’s post-access review and approval if prior
authorization is not feasible.
3.1.8.5 Procedures are included in the disaster recovery plan.
3.2 Remote Access to the Database
Control: Remote access to the database(s) should be well defined and managed.
3.2.1 Determine if remote access to the SQL Server database is enabled (see ap- AI4
pendix 1 for suggested steps as of the last update of this audit/assurance DS5
program). If remote access is enabled, discuss the business requirements
with the DBA, information security officer and business owner.
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
3.3 Access for Third Parties
Control: Access for third parties should be properly managed.
3.3.1 With the DBA, discuss the processes in place to grant and terminate access PO4
for vendors, contractors and consultants. PO6
AI6
DS5
DS13
ME2
3.3.1.1 Verify that access is granted only when it is commensurate with
job responsibilities.
3.3.1.2 Verify that the controls provide reasonable assurance that access is
terminated in a timely manner after it is no longer needed.
4. SECURITY PROCESSES AND MONITORING
4.1 Users' access is commensurate with their job responsibilities. PO2
Control: Processes exist to ensure that access granted to both general and priv- PO4
ileged users is appropriate and is removed when no longer needed. PO7
Recommended Additional Resource: ISACA Information Security Management DS5
Audit/Assurance Program DS7
DS9
DS11
4.1.1 Review processes for granting, updating and terminating user access.
4.1.2 Obtain a list or file containing information on current database users
and administrators and their roles.
4.1.3 Obtain a list or file containing information on current local Windows
Server groups and the members of each group.
4.1.4 Determine if privileges to access objects or statements are assigned dir-
ectly to users, then if appropriate:
Obtain a list or file containing information on users with individual
privileges and the related objects to which they have access.
Evaluate the access based on job descriptions and the access gran-
ted.
Examine related access requests for reasonableness and proper au-
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
thorization.
Discuss possible excessive access rights with DBAs, information se-
curity officers and business owners as dictated by the circumstances.
4.1.5 Review privileges assigned to users and roles. Discuss with the DBA
and data owner any privileges directly assigned to users rather than to
roles.
4.1.6 Select a sample of user access requests and verify that access is ap-
proved by the appropriate data owners.
4.1.7 Review the roles and privileges assigned to a sample of users. Ensure
that the users’ access is commensurate with their job responsibilities.
4.1.8 Obtain a list or file of terminated employees from human resources .
(HR). Compare the terminated employee list or file to the list or a table
of database users to ensure that accounts are terminated in a timely
manner.
4.1.9 Review the assignment of fixed server roles (sysadmin, serveradmin,
etc.) to provide reasonable assurance that procedures specify these roles
are used only in support of DBA activity.
4.1.10 Review any roles and/or user accounts that are assigned create, alter or
drop privileges. Discuss the business requirements for these types of
highly privileged access with the DBA and other affected manager(s).
4.1.11 Review accounts that are assigned highly privileged roles such as
sysadmin. Discuss the requirement for this type of access with the DBA
and information security officer. Assess each for possible segregation
of duties (SoD) issues.
4.1.12 Verify that the guest user is removed from or disabled in all databases.
Discuss any exceptions with the DBA.
4.1.13 Verify that public or guest user IDs that remain in the database and are
enabled, do not grant access to any objects.
4.1.14 Verify that the database owner (dbo) owns all user-created database
schemas.
4.1.15 Review the security over access to OS executables (cmd.exe, explorer-
.exe, etc.) on the SQL Server and the SQL Server install directories.
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
Ensure that users’ unique or group permissions do not grant full con-
trol.
4.1.16 Review assignment of the grant object permission to verify that it is not
assigned to users or roles. Discuss any of these existing privileges with
the DBA.
2 Resolve instances of inappropriate access and SQL Server processing prob- DS1
lems and anomalies. DS5
Control: Processes exist to provide reasonable assurance that DBAs, security per- DS12
sonnel or system administrators would discover, investigate and resolve instances ME1
of apparent inappropriate access and SQL Server processing problems and anom- ME4
alies.
4.2.1 Evaluate procedures and processes for monitoring key database functions
and security-related events to determine the adequacy and frequency of
system activity monitoring. The evaluation would normally include, but
not be limited to the following.
4.2.1.1 Compare existing practices to best practices.
4.2.1.2 Gather a sample of important reports, queries, alarm settings and
monitoring tool outputs used by the DBA, the information se-
curity staff or other operating personnel.
4.2.1.2.1 Report deficiencies, if appropriate.
4.2.1.2.2 Discuss with the DBA.
5. BACKUP AND RECOVERY
5.1 A backup and recovery strategy exists and is tested.
Control: A regularly reviewed and approved backup and recovery strategy should exist.
5.1.1 Gather the Microsoft SQL Server database application SLAs. Verify that DS1
Microsoft SQL Server database implementations and/or systems are included DS4
in the SLAs. DS11
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
5.1.2 Gather the Microsoft SQL Server business continuity plan. Verify that the DS1
business continuity plan includes backup and restoration procedures for DS4
Microsoft SQL Server database implementations and systems. Verify that the DS11
backup and restoration procedures cover access authorisation and system
configuration files.
5.1.3 Determine for a sample of database instances if a reasonable database backup DS4
recovery model is being used. Verify that SLAs match the model for either
full simple or bulk-logged.
5.1.4 Ensure that backup file copies are stored at a location separate from the loca- DS11
tion of the servers.
5.1.5 Discuss the strategy with the DBA for backup and recovery of the database. DS11
Confirm with the DBA that the backup procedures and data are tested regu-
larly. Review procedure documents, and discuss the results of the most recent
test.
5.1.6 Review offsite backup and recovery procedures. Ensure that offsite backups DS4
are part of disaster recovery testing. DS11
5.1.7 Review the most recent backup history, and verify that backups are recover- DS11
able within the acceptable data loss timeframe defined in the SLA.
5.1.8 Verify that system master and model server database (MSDB) databases are DS11
being backed up.
5.1.9 Verify that transaction log files are being backed up. DS11
5.1.10 Discuss procedures for regularly backing up transaction logs to offline me-
dia with the DBA. Determine procedures for securely protecting and dispos- DS11
ing of offline media.
5.1.11 Determine whether procedures require encrypting sensitive and confidential DS11
data on backup media.
5.1.12 Obtain the path of the Microsoft SQL Server data and log files for each DS11
database. Ensure that these files are protected and do not exist on the same
physical disk to which backups were saved.
5.1.13 Obtain copies of backup schedules. Verify that log backups are scheduled DS11
before full backups; this improves recovery time.
5.1.14 Verify that scheduled backups are performed when database activity is low; DS11
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
this will improve backup performance.
5.1.15 Check to see if Page_Verify option “S” is set to Checksum or if DS11
Torn_Page_Detection mode is being used. For databases with these settings,
ensure backups are run using the Checksum option to verify the integrity of
the backup.
6. ENCRYPTION
6.1 An encryption strategy exists and is implemented to protect confidential information where appropriate.
Control: Encryption is used whenever there is a business need for securing privileged information.
6.1.1 Discuss the use of encryption within the database with the DBA. Determine if AI2
a third-party package or the native package is used to implement encryption. AI2
DS5
DS11
DS11
6.1.2 Review and evaluate enterprise data classification standards and encryption PO2
requirements. DS11
6.1.3 Discuss with the DBA any application, information security or database de- AI2
velopment standards that mandate the use of encryption to protect informa-
tion.
6.1.4 Review a sample of records that contain sensitive information to determine
that the information is encrypted.
7. TRUSTED RELATIONSHIPS
7.1 Trusted Relationships are restricted and protected.
Control: Trust relationships are established only if there is an approved business need.
7.1.1 Obtain a list of any database link server services used within the database DS5
from the DBA. For each service, conduct the following.
7.1.1.1 Discuss the business purpose of each link with the DBA.
7.1.1.2 Confirm the business need of each link with the business owner(s).
7.1.1.3 Obtain any available documentation or other information about the
use and purpose of each trusted database from the DBA.
7.1.1.4 Verify the validity and business purpose of each user’s access to the
table(s).
7.1.2 Obtain and review the procedures and processes for managing trusted rela- DS5
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
tionships. Verify that there is an appropriate process in place for granting and
changing trust processes. In general, only people who have a DBA or system
administrative role should have access to add or update trusted connections.
7.1.3 Verify that procedures provide reasonable assurance that Windows Active DS5
Directory is in sync with both the domain servers and SQL Server when
building trusted relationships, based on business need.
7.1.4 Verify that SQL Server maintains its list of authorized users who can connect DS5
to the server if trusted connections are used.
7.1.5 Verify that the SQL Server maintains its list of authorized application servers DS5
that can connect. Check the application server, or a sample of application
servers, to ensure that those in scope have the codes to establish the trust.
8. NETWORK SECURITY
8.1 Database information communicated over a network is protected.
Control: Configuration settings follow sound control practices.
Recommended Additional Resource: ISACA Network Perimeter Security Audit/Assurance Program
8.1.1 Obtain or create and then evaluate a network architecture diagram that de- PO2
picts the logical relationship between the database and other systems and net- AI2
works within the enterprise. AI2
AI3
DS5
DS5
DS9
ME1
ME1
ME2
8.1.1.1 Determine whether the database is protected by a firewall from any
third-party or Internet-access points.
8.1.1.2 Determine whether the database is protected from any external net-
works by network segmentation using ingress and egress filters or
an equivalent technology.
8.1.2 Determine whether master key creation and key management meet the fol-
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
lowing.
8.1.2.1 Follow written procedures.
8.1.2.2 Encrypt sensitive fields with documented encryption functions.
8.1.3 Discuss with the DBA, procedures for applying critical and noncritical
patches and service packs including, but not limited to, controls to provide
reasonable assurance that patches are installed in a timely manner. Identify
the business need for not applying service packs and patches that Microsoft
has identified as important or critical. Verify proper management review and
approval of unapplied patches.
8.1.4 Review network protocols supported using the SQL Server Configuration
Manager or other equivalent tool.
8.1.4.1 Verify that active ports or services are supported according to docu-
mented and approved use.
8.1.4.2 Verify that only approved services are in use.
8.1.4.3 Verify that only ports documented as valid are in use.
8.1.4.4 Investigate and discuss any undocumented connections with the
DBA. Recommend turning off, documenting or gaining approval for
any undocumented connections found.
8.1.4.5 Verify that security enabled ports follow enterprise security stand-
ards, e.g., encryption.
8.1.5 Verify that each network instance, or a sample of network instances, is con- DS5.10
figured as described in the documentation: DS9
From the SQL Server Configuration Manager, expand the SQL Server ME1
Network Configuration.
Click Protocols for <instance_name>, and verify that each one is con-
figured as described.
8.1.6 Scan ports, and run a vulnerability assessment to check for security expos- DS5.10
ures.
8.1.7 Obtain and review documentation of running services, and conduct the fol- DS5.10
lowing.
8.1.7.1 Verify documented services are running or normally run.
Risk Assessment
Control Activities
Information and
reference erence
Monitoring
Control
8.1.7.2 Consider recommending stopping services that appear to be un-
needed.
8.1.8 Verify that different login IDs and complex passwords are used for critical DS5.10
services.
8.1.9 Verify that policies, procedures and standards specify denying unneeded con- DS5.10
nect permission to endpoints.
This spider graph is an example of the assessment results and maturity target for a specific enterprise.
X. Technical Appendix
Suggested technical tests are current as of August 2010, the last update of this audit/assurance program.
Remote Access
1. To determine if Remote Access is enabled:
a. Click Start
i. Click to Programs
ii. Click to Microsoft SQL Server 2005
iii. Click to Configuration Tools
iv. Click SQL Server Surface Area Configuration.
b. On the SQL Server 2005 Surface Area Configuration page, click Surface Area Configuration for
Services and Connections.
c. On the Surface Area Configuration for Services and Connections page, expand Database Engine,
click Remote Connections.
d. Determine if “Local and remote connections” is enabled; that setting allows remote and local
connections. “Local connections” is default.
2. To determine if the service is running:
a. Type “sqlcmd–S(local)\SQLEXPRESS” at the command prompt. If you see “1>” that means that
you managed to connect.
b. Type “exit” to exit the sqlcmd program.