Microsoft SQL Server Security & Auditing. March 23, 2011 ISACA Chapter Meeting



Similar documents
May 17, 2011 SQL SERVER SECURITY GRANTING, CONTROLLING, AND AUDITING DATABASE ACCESS. Mike Fal -

Microsoft SQL Server Security Best Practices

SQL SERVER Anti-Forensics. Cesar Cerrudo

General DBA Best Practices

SQL Server Hardening

Author: Ryan J Adams. Overview. Policy Based Management. Terminology

Dell InTrust Preparing for Auditing Microsoft SQL Server

NNT CIS Microsoft SQL Server 2008R2 Database Engine Level 1 Benchmark Report 0514a

ADO and SQL Server Security

Division of IT Security Best Practices for Database Management Systems

Securing Data on Microsoft SQL Server 2012

SQL Server Hardening

SQL Server 2008 Administration

Securing SQL Server. Protecting Your Database from. Second Edition. Attackers. Denny Cherry. Michael Cross. Technical Editor ELSEVIER

Avatier Identity Management Suite

MS-55096: Securing Data on Microsoft SQL Server 2012

Getting to Know the SQL Server Management Studio

Microsoft SQL Server 2008 Step by Step

Upgrade Guide BES12. Version 12.1

Violating The Corporate Database. Presented by Dan Cornforth Brightstar, IT Security Summit, April 2006

1 of 10 1/31/2014 4:08 PM

GUIDE TO SYBASE SECURITY

Upgrading a Microsoft Dynamics NAV 2009 R2 or Microsoft Dynamics NAV 2009 SP1 Database to Microsoft Dynamics NAV 2015

$99.95 per user. SQL Server 2005 Database Administration CourseId: 152 Skill level: Run Time: 30+ hours (158 videos)

Minimizing the use of sa in Microsoft Dynamics GP. Copyright Fastpath, Inc. 2011

Database Security SQL Server 2012

Configuring an Alternative Database for SAS Web Infrastructure Platform Services

SQL 2016 and SQL Azure

Moving the TRITON Reporting Databases

GO!NotifyLink. Database Maintenance. GO!NotifyLink Database Maintenance 1

PRiSM Security. Configuration and considerations

PRO: Optimizing and Maintaining a Database Administration Solution by Using Microsoft SQL Server Practice Test. Version 2.


Separation of Duties in SQL Server 2014

Installation and Upgrade Guide

RSA Security Analytics

Video Administration Backup and Restore Procedures

Database Assessment. Vulnerability Assessment Course

Upgrading Your SQL Server 2000 Database Administration (DBA) Skills to SQL Server 2008 DBA Skills Course 6317A: Three days; Instructor-Led

State of Wisconsin Database Hosting Services Roles and Responsibilities

Use of Commercial Backup Software with Juris (Juris 2.x w/msde)

Migrating helpdesk to a new server

Course Outline: Course 6317: Upgrading Your SQL Server 2000 Database Administration (DBA) Skills to SQL Server 2008 DBA Skills

Security Development Tool for Microsoft Dynamics AX 2012 WHITEPAPER

Feature. Auditing SQL Server Databases Using CAATs

SQL Server Hardening

What s New in MySQL 5.7 Security Georgi Joro Kodinov Team Lead MySQL Server General Team

In this topic we will cover the security functionality provided with SAP Business One.

Microsoft SQL Database Administrator Certification

Microsoft Corporation. Project Server 2010 Installation Guide

ATTACHMENT 6 SQL Server 2012 Programming Standards

Administering Microsoft SQL Server 2012 Databases

SQL Server Auditing. By Minette Steynberg. Audit all SQL Server activities using ApexSQL Comply

Microsoft SQL Server Staging

Migrating MSDE to Microsoft SQL 2008 R2 Express

Hunting flaws in Microsoft SQL Server

ControlPoint. Advanced Installation Guide. Publication Date: January 12, Metalogix International GmbH., All Rights Reserved.

Microsoft SQL Server for Oracle DBAs Course 40045; 4 Days, Instructor-led

Hacking Database for Owning your Data

AVALANCHE MC 5.3 AND DATABASE MANAGEMENT SYSTEMS

Troubleshooting problems with the PDMWorks Enterprise database server

Oracle Database Security

The manual contains complete instructions on 'converting' your data to version 4.21.

Moving/Restoring the StarShip SQL database

MAGIC THipPro - SQL Server Installation - using the example of

MCTS: SQL Server 2008 Implementation and Maintenance

WhatsUp Gold v16.0 Database Migration and Management Guide Learn how to migrate a WhatsUp Gold database from Microsoft SQL Server 2005 Express

Database Maintenance Guide

How To Secure A Database From A Leaky, Unsecured, And Unpatched Server

SQL 2012 Installation Guide. Manually installing an SQL Server 2012 instance

A Walk Around the SQL Server 2012 Audit Feature. Timothy P. McAliley Microsoft Premier Field Engineer SQL Server

Percona Server features for OpenStack and Trove Ops

SQL SERVER DEVELOPER Available Features and Tools New Capabilities SQL Services Product Licensing Product Editions Will teach in class room

Oracle. Brief Course Content This course can be done in modular form as per the detail below. ORA-1 Oracle Database 10g: SQL 4 Weeks 4000/-

These notes are for upgrading the Linko Version 9.3 MS Access database to a SQL Express 2008 R2, 64 bit installations:

Achieving PCI COMPLIANCE with the 2020 Audit & Control Suite.

Microsoft SQL Server 2012 Administration. Real-World Skills for MCSA Certification and Beyond (Exams , , and )

Microsoft SQL Server Installation Guide

MySQL Security: Best Practices

SEER Enterprise Shared Database Administrator s Guide

Would-be system and database administrators. PREREQUISITES: At least 6 months experience with a Windows operating system.

HOW TO CONFIGURE SQL SERVER REPORTING SERVICES IN ORDER TO DEPLOY REPORTING SERVICES REPORTS FOR DYNAMICS GP

Reporting works by connecting reporting tools directly to the database and retrieving stored information from the database.

9. Database Management Utility

Microsoft SQL Server Installation Guide

NetSupport DNA Configuration of Microsoft SQL Server Express

4cast Server Specification and Installation

SQL Server. SQL Server 100 Most Asked Questions: Best Practices guide to managing, mining, building and developing SQL Server databases

Microsoft Baseline Security Analyzer

Extending the Metadata Security Audit Reporting Capabilities of the Audit and Performance Measurement Package October 2010

Spector 360 Deployment Guide. Version 7.3 January 3, 2012

Microsoft. Course 20463C: Implementing a Data Warehouse with Microsoft SQL Server

Install and Configure SQL Server Database Software Interview Questions and Answers

Administering a Microsoft SQL Server 2000 Database

Manage Your Shop with Policy Based Management & Central Management Server

Transcription:

Microsoft SQL Server Security & Auditing March 23, 2011 ISACA Chapter Meeting

Agenda Introduction SQL Server Product Description SQL Security Basics Security System Views Evolution of Tool Set for Auditing a SQL Server Things to look for when auditing a SQL Server Q & A

Who is this guy? Currently acting as a Business Intelligence (BI) Developer / DBA for Brooks Rehabilitation Former Roles: Duval County Clerk of the Courts (DBA) Citigroup (DBA / Database Developer) 9 years of real world experience with all components of the SQL Server Stack

What is the SQL Server Stack? This a term used to refer to the four different components that make up the SQL Server Product. SQL Server Database Engine SQL Server Integration Services (SSIS) SQL Server Analysis Services (SSAS) SQL Server Reporting Services (SSRS)

Logical Illustration of the SQL Server Components Provided by Microsoft

How does SQL Server Security Work? Virtual Office Building Analogy

SQL Server Logins A SQL Server Login in this analogy gets you in the building or SQL Server instance. It does not necessarily get you into any particular office or database. When a login is setup it is assigned to one of 9 static server roles that afford it differing levels of permission. Server logins can be in the form of an explicit SQL login, an individual windows login, or an Active Directory group

SQL Server Roles There are nine server roles that ship with SQL Server. They cannot be modified and you cannot create new roles: Public: This is the default role given to a new login unless otherwise specified. SecurityAdmin: Logins belonging to this role can create or modify logins on a SQL Server. SysAdmin: This is the highest level role given to a login & it automatically affords absolute privileges on a SQL Server.

SQL Server Database Users SQL Server logins are mapped to users within a particular database. Permissions assigned to a user dictate what actions they can perform within a database. Database roles can be used to organize users into groups based on the level of access they need within the database. There are database roles that exist by default but unlike server roles new ones can be added.

SQL Server Database Roles Database roles can be thought of as dynamic permission groupings or buckets. db_reader: Rights to directly select data from any tables or views within a database. db_writer: Rights to directly insert, update, or delete data within a database. db_owner: Rights to take any action within a database.

What are System Views? System Views are internal data structures provided by Microsoft to allow users to view the state of a SQL Server. There are easily 100+ system views reporting information back about every aspect of the SQL Server Engine.

Important Security System Views SQL Server 2005 & 2008 sys.server_principals: Lists all server logins. sys.server_role_members: Maps logins to their roles. sys.server_permissions: Lists server permissions along with ID of who granted them. sys.database_principals: List all database users with a link through SID column back to logins.

More Security Views sys.database_roles: List the members of database roles. sys.database_permissions: List explicit permissions within a database. In SQL Server 2000 the comparable views would have been syslogins for logins & sysusers for users. These are only included for backwards compatibility and will probably get deprecated in the upcoming version of SQL.

Want to Make it Easier? Microsoft also provides system stored procedures to get this information back without having to directly query the views. sp_helplogins: This proc will list all server logins & the user accounts that are mapped to them. sp_helpusers: This proc will list all users within the current database along with the role they are in. sp_helpsrvrolemember: Returns server role members.

More System Procedures sp_helprole: Returns information about database roles within current database. sp_helprolemember: Returns information about role members within a current database. Example: exec sp_helplogins (If the above was executed against a SQL Server you would get two sets of information listing logins & users mapped to those logins. **You must have elevated permissions to run these procs**)

Evolution of Auditing SQL Server SQL Server 2000: C2 Auditing: Expensive, heavy footprint logs every action to a file. DML Triggers: Can be difficult to maintain. Home grown background traces: Very effective and efficient if coded correctly. Need pretty high level DBA skills to implement and maintain. Vendor Products: Depending on vendor ties you to a particular version of SQL. Often hobbling ability to cleanly migrate when business needs require it.

Next Round SQL Server 2005 DDL Triggers: These allow an action to occur when someone tries to create, alter, or drop an object such as a table, view, or stored procedure. Same difficulties of trying to maintain all this background code. They do have their place but triggers alone are not a great auditing solution. *Example: CREATE TRIGGER safety ON DATABASE FOR DROP_TABLE, ALTER_TABLE AS PRINT 'You must disable Trigger "safety" to drop or alter tables!' ROLLBACK ; *Example provided by MSDN Books Online

Where We are at Today SQL Server 2008 & R2: SQL Server Audit Feature: This has laid a user interface over the background trace functionality to allow for easier setup and maintenance of these activities. Only available on SQL Server 2008 Enterprise. Still need to account for archiving of target files the audits write to. *With any background traces it is important to baseline server to make sure audit is not reducing performance.

Still Today Policy Based Management: One of the coolest new features released in SQL Server 2008. Allows an administrator to setup a server policy or check a policy against an existing server. Proactive Auditing. Requires a fair amount of knowledge to configure. Certain functionality only works with SQL Server 2008 instances.

Things to Look for in a SQL Audit What privileges and what type of network access do the Windows accounts running the SQL services have on the network? Privileges outside the server they are on should be limited. Is xp_cmdshell enabled? If so, is it restricted to sys.admin role? Remember if a login asks SQL to perform an action outside of SQL that action will be executed under the service account.

More Things to Look For What is the authentication mode on the server? Are failed login attempts being written to the Windows Event Log? Is the BUILTIN/ADMINISTRATORS group disabled? If not someone can gain access to a SQL Server by adding themselves into this server group.

(SA) Account Built in SQL Administration account. Has unlimited rights on the server by default. Been the source of many SQL Server attacks over the years. Requires a password in the latest versions of SQL Server. Many businesses choose to disable this account. (**Otherwise, password should be locked away only accessed when needed & modified**)

A Few Other Important Ones Where are SQL Backups being written to? If written to a network share is it secure? Are there any linked servers setup? If so what security context are they making their connections under? (sp_helpremotelogin)

Also Important Are all users in sysadmin role Windows accounts? Do these people have ability to modify Active Directory? Are logins that are not in special role explicitly mapped to only databases required to do their job?

In Closing Know what SQL assets you have. Know who can access them. Use principle of least privileges. Enforce separation of duties between (Network / System Engineers) & Database Administrators. Keep up with latest security threats to SQL Server.

Questions?