<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sister CISA CISSP &#187; Database</title>
	<atom:link href="http://itknowledgeexchange.techtarget.com/cisa-cissp/tag/database/feed/" rel="self" type="application/rss+xml" />
	<link>http://itknowledgeexchange.techtarget.com/cisa-cissp</link>
	<description></description>
	<lastBuildDate>Tue, 19 Oct 2010 17:25:29 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>A DAM Good Idea</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/a-dam-good-idea/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/a-dam-good-idea/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 20:28:41 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[DataManagement]]></category>
		<category><![CDATA[Tools for Auditing and Security]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/?p=305</guid>
		<description><![CDATA[(Sorry, I apologize for using an acronym, but I couldn&#8217;t resist.) Whenever the subject comes up of logging activity in a database, immediately the complaints of &#8220;Too much overhead!&#8221; can be heard. Everybody thinks it&#8217;s a good idea in theory, but from a practical standpoint, it adds a lot of burdens to the database. From [...]]]></description>
				<content:encoded><![CDATA[<p>(Sorry, I apologize for using an acronym, but I couldn&#8217;t resist.)</p>
<p>Whenever the subject comes up of logging activity in a database, immediately the complaints of &#8220;Too much overhead!&#8221; can be heard. Everybody thinks it&#8217;s a good idea in theory, but from a practical standpoint, it adds a lot of burdens to the database.</p>
<p>From a security standpoint, it&#8217;s really difficult to make sure that DBAs or Administrators are accurately logged AND denied access to the logs.  On the database server itself, it&#8217;s next to impossible.</p>
<p>This isn&#8217;t really a new idea, but it has recently gained a lot of adherents:  database monitoring. Quest Software has had some good products around for monitoring performance, but recently the focus (because of compliance, big surprise) has turned to access controls, logging, and monitoring activity.</p>
<p>For example, someone might have noticed a little sooner at Countrywide that someone was accessing a lot of customer data if a Database Activity Monitoring device had been installed.</p>
<p>There are two versions of this type of device. First, is the Network-based DAM, which can monitor all traffic going to and from the database server, and puts no load on the server itself. This is a great idea, unless, of course, your traffic is encrypted. Another issue is that this type of monitoring will miss activity that is local to the server itself.</p>
<p>Second is the host-based DAM, which is really the most effective of the two, because it can see everything you want to see via an agent installed on the server that reports back to the monitoring device elsewhere on the network. The overhead of an agent will not be as high as trying to enable auditing within the database itself, and, as much as I am not fond of agent software, in this case I would make an exception, after careful testing.</p>
<p>The drawback to this system is that the agent could be disabled, but the DAM should immediately alert personnel to that fact. If you are able to size your server appropriately, an agent&#8217;s overhead could be minimized.  I&#8217;d love to hear from anyone using this type of configuration, and how they like it.</p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/a-dam-good-idea/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Auditing MS SQL &#8211; Roles, and Why They Matter</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/auditing-ms-sql-roles-and-why-they-matter/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/auditing-ms-sql-roles-and-why-they-matter/#comments</comments>
		<pubDate>Fri, 19 Sep 2008 19:37:45 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[IT audit]]></category>
		<category><![CDATA[Microsoft Windows]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Steps to an Easy Audit]]></category>
		<category><![CDATA[Tools & Tricks of the Trade]]></category>
		<category><![CDATA[Tools for Auditing and Security]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/auditing-ms-sql-roles-and-why-they-matter/</guid>
		<description><![CDATA[SQL &#8220;Server&#8221; runs on top of MS Windows, and it has groups inside of it that are not seen on the Windows server or even the Windows Domain. That&#8217;s why we have to check and make sure that inappropriate users don&#8217;t have complete access to everything inside the database. Not everyone should be looking at [...]]]></description>
				<content:encoded><![CDATA[<p>SQL &#8220;Server&#8221; runs on top of MS Windows, and it has groups inside of it that are not seen on the Windows server or even the Windows Domain.  That&#8217;s why we have to check and make sure that inappropriate users don&#8217;t have complete access to everything inside the database.  Not everyone should be looking at those payroll files!</p>
<p>So, to confuse us a little more, instead of calling them groups (like Users, Administrators, Power Users, etc) SQL calls them &#8220;roles.&#8221; There are roles based on SQL as a whole (the SQL &#8220;Server&#8221;) and roles based on individual databases.  Kind of like Domain Admins vs Local Admins.</p>
<p>SQL Server roles are equal to Domain Admins inside SQL Server. They give rights to many different core functions of SQL, and the <em>sysadmins</em> role has rights to everything inside SQL.  By default, sa is here, but you should look very carefully at any other user in this group.  DBAs like to give themselves a &#8220;backdoor&#8221; into the server this way, but that should be removed.  Best practices recommend always having the DBA use their Domain ID for insertion into this role.  This way you can log and monitor their access, and when they leave the company and their ID is disabled, they won&#8217;t be able to access the SQL databases. It also let&#8217;s them know that you are watching, and people tend to behave better that way.</p>
<p>I have found that software developers LOVE to put their names in this group, and not their Domain IDs, either. If it&#8217;s a production database, they have no business having anything other than SELECT rights anywhere.  Kick &#8216;em out!</p>
<p>Here&#8217;s the SQL Server roles default permissions:</p>
<p>Fixed Server Roles<br />
Sysadmin – can perform any activity (and Builtin\Administrators are part of this group by default)<br />
Serveradmin – can set SQL-server config options and shut down SQL Server.<br />
Securityadmin – manage logins and CREATE DATABASE permissions, read  error logs and change passwords (within SQL, not Windows)<br />
Setupadmin &#8211; manages linked servers and startup procedures<br />
Processadmin – can manage processes running in SQL server<br />
Dbcreator- can create alter and drop databases<br />
Diskadmin &#8211;   can manage disk files<br />
Bulkadmin &#8211;   can execute BULK INSERT statements</p>
<p>How do you find out who is in these roles? Use the results of a stored procedure:    <em>sp_helpsrvrolemember</em> with the results taken from the Master database.</p>
<p>For individual databases, there are <em>database roles.</em> People in these roles can  be all powerful, but only within that individual database, not all of SQL. How do you know how many databases are inside one SQL Server installation?  Again, a stored procedure:  <em>sp_helpdb</em></p>
<p>You&#8217;d be surprised how DBAs like to create their own little mini databases (on production boxes!) just to &#8220;do things.&#8221; They may be great &#8220;things,&#8221; but those databases need to go somewhere else.</p>
<p>In order to see the members of all the database roles, run another stored procedure:  <em>sp_helprolemember </em> run from each production database in SQL Server.  It&#8217;s a little tedious, but you will get the information you need.</p>
<p>I commonly monitor the membership in the db_owner role (equivalent to a local server Administrator). By default, the dbo, or db_owner is the only one in this role. If the DBAs are already sysadmins, they don&#8217;t need to be in this role, unless you want to be very granular in your controls (NOT a bad idea).  Developers shouldn&#8217;t be in this role, or just as bad, the application ID of an application accessing data.</p>
<p>This is where a lot of software development falls off the security bandwagon. If the application ID is db_owner, it means that the ID has access to everything in that database.  If I can acquire the application ID&#8217;s password, (and some of them don&#8217;t have one) I can get into all the data.  I wouldn&#8217;t use the application, just connect directly via ODBC or even Excel.  </p>
<p>It&#8217;s easier to write applications using the application ID as db_owner, but unless you are using middleware to vet everyone&#8217;s login via the Windows Domain, you take the risk of losing all that confidential data out the back door.</p>
<p>If you can acquire this information on a quarterly basis, you will go a long way towards having an easy audit and a better night&#8217;s sleep!</p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/auditing-ms-sql-roles-and-why-they-matter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>FREE Tools for Auditing MS SQL Server</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/free-tools-for-auditing-ms-sql-server/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/free-tools-for-auditing-ms-sql-server/#comments</comments>
		<pubDate>Tue, 16 Sep 2008 17:58:51 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[free tools]]></category>
		<category><![CDATA[IT audit]]></category>
		<category><![CDATA[Microsoft Windows]]></category>
		<category><![CDATA[PCI DSS]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SOX]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Steps to an Easy Audit]]></category>
		<category><![CDATA[Tools for Auditing and Security]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/free-tools-for-auditing-ms-sql-server/</guid>
		<description><![CDATA[There&#8217;s a lot of really nice application tools to audit SQL databases out there. They have lots of bells and whistles and write out a really nice report with professional formatting. If you&#8217;ve got one of those, LUCKY YOU. But most of us Admins and Auditors have to scrounge for what we can find with [...]]]></description>
				<content:encoded><![CDATA[<p>There&#8217;s a lot of really nice application tools to audit SQL databases out there.  They have lots of bells and whistles and write out a really nice report with professional formatting.   If you&#8217;ve got one of those, LUCKY YOU. But most of us Admins and Auditors have to scrounge for what we can find with the budget we&#8217;ve got (read $0).</p>
<p>So I always like to start out with <a href="http://www.sqlsecurity.com/Tools/FreeTools/tabid/65/Default.aspx">SQLPing</a> A nice tool from SQLSecurity.com that scans the network both actively and passively, testing SQL&#8217;s default listening port 1433 and it reports on what it finds (nothing fancy, just text).  This includes those desktop versions of SQL Server:  MSDE, that are often configured with SA-no password. This tool will tell you what version SQL is running, and will even do a test for SA-no password.  Since SA cannot be locked out, you won&#8217;t damage the server with one attempt.</p>
<p><strong>NOTE</strong>: Check with your network administrator before running this test.  It&#8217;s also a great test of your intrusion detection system, because, if the IDS is configured properly, it should catch it and alert for it. Make sure management knows you are using this, if that&#8217;s what you&#8217;re going to use it for.  No IDS?  No worries.</p>
<p>I also recommend <a href="http://www.sqlsecurity.com/Home/tabid/36/Default.aspx">SQLSecurity. com</a> for a lot of great information and scripts for DBAs. They know all about SQL Injection (Unlike a CIO I recently interviewed three years ago) and they have lots of MS SQL information well worth your visit.</p>
<p>The other free tools I use are found inside SQL Server.  Yes, inside the SQL database, and they are called &#8220;Stored Procedures.&#8221;  This is a fancy name for pre-written sequenced query language batch files.  The folks at Microsoft have done us all a great favor by writing hundreds of them.  Inside the Master database are the stored procedures you want to run, or have a DBA run for you and output to .csv format files. (Each database also has stored procedures, but the Master database SPs are the ones you want.) There is a table full of them, and here are the ones I use:</p>
<p><em>sp_helpdb</em>       Names and file locations on the Windows server of all SQL databases.  (And you should find out who or what has access to those files) </p>
<p><em>sp_helpuser </em>    Review usernames, groups the user belongs to, and their default login database.</p>
<p><em>sp_helplogins</em>   a. Identify and review any external users and groups; b. Look for mappings of login name to UserOrAlias or as DB Owner. c. Check AUser and ARemote columns to identify who has remote access to what database.  </p>
<p><em>sp_helpsrvrolemember</em>  Users and groups assigned to each server role (More on this later)</p>
<p><em>sp_helprotect</em>   Permissions in the database. Examine this list carefully for what rights are granted and denied to whom.  </p>
<p>Get the results of these queries, results from the <a href="http://itknowledgeexchange.techtarget.com/cisa-cissp/inside-the-database-server-ms-sql/">last post</a>, and SQLPing. You&#8217;ll have some very interesting items to review.  and remember, Google is your friend.</p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/free-tools-for-auditing-ms-sql-server/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Inside the Database Server &#8211; MS SQL</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/inside-the-database-server-ms-sql/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/inside-the-database-server-ms-sql/#comments</comments>
		<pubDate>Fri, 12 Sep 2008 14:14:01 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[IT audit]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Tools for Auditing and Security]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/inside-the-database-server-ms-sql/</guid>
		<description><![CDATA[The first question to answer is: &#8220;Is the SQL system patched?&#8221; You or a DBA can confirm this inside Enterprise Manager (the software client that runs on SQL or from a remote installation of it) by right-clicking the primary database icon and selecting Properties. You can also run a query inside Query Analyzer &#8220;SELECT @@ [...]]]></description>
				<content:encoded><![CDATA[<p>The first question to answer is:  &#8220;Is the SQL system patched?&#8221; You or a DBA can confirm this inside Enterprise Manager (the software client that runs on SQL or from a remote installation of it) by right-clicking the primary database icon and selecting Properties. You can also run a query inside Query Analyzer &#8220;SELECT @@ VERSION&#8221; and make sure the latest service packs from Microsoft are installed.  No excuses! Make sure it&#8217;s updated. MS SQL doesn&#8217;t have a lot of patches and updates (unlike the operating system) but they are important.</p>
<p>MS SQL Server is one of the easiest systems for an auditor to review.  I have a script I use (when they let me ON the server) or hand off to the DBA/Network Administrators and watch them run it.  The most difficult part is sorting all the data into something readable.  I always ask for the output in .csv format, which I can then port to Excel.</p>
<p>SQL Server always has a core of databases installed by default.  A &#8220;tempdb&#8221; database used by SQL during its operations, a &#8220;sample&#8221; database, <em>Northwind</em> (which you can delete, by the way), a &#8220;model&#8221; database, and the critical one (to auditors and IT Security) the <em>Master</em> database. I do a thorough audit of this database before I move to any other databases installed by applications.</p>
<p>The Master database holds the core functions and controls of MS SQL.  SQL has its own users and groups, that are created outside of the Windows server and any Windows Domain the server might belong to. You won&#8217;t see them in the local server administration; only the &#8220;user&#8221; SQL installs to run the SQL services. You can add Windows users and groups to SQL users and groups, and this causes a lot of confusion amongst auditors and non-DBAs.</p>
<p>For auditing purposes, we can keep it simple. But I do want to add one important note first:  <strong>None of the queries and stored procedures I&#8217;m going to discuss with you do ANYTHING in SQL other than READ. </strong> All of the procedures use the SELECT command, which is equivalent to READ in SQL.</p>
<p>This is really important in auditing, as the first rule is always: Do No Harm to the System. Always! And it means I don&#8217;t accept excuses from DBAs who are afraid of &#8220;adding more stress&#8221; to the server. Reading a table takes a nanosecond.  </p>
<p>Tables in the Master database hold information about the management of SQL as a whole. There is a table in the Master database called <em>syslogins.</em>  In SQL 2005 it&#8217;s called <em>sysxlogins.</em> This contains information about all users that have a login ID to SQL, regardless of what database they access. (<strong>And you want to make sure that very few can log into the Master database).</strong> </p>
<p>This is where you will find out about the &#8220;sa&#8221; ID, which is the equivalent to &#8220;administrator&#8221; inside MS SQL. You won&#8217;t see this ID anywhere in the Windows operating system, but it is critical to examine inside SQL. It can be disabled in SQL 2005, but NOT SQL 2000.</p>
<p>So, here&#8217;s what we use:  <strong>SELECT sid,name,password,dbname FROM syslogins</strong>  If you can, grab it off your SQL system (even a development box) to get a sense of the structure. </p>
<p>I look for several things in the results of the query, but the two most important are: Who has access and do all the users have a <strong>password?</strong></p>
<p>Yes, a password.  I am STILL running across production systems that use the <em>sa ID with no password.</em> You might as well write HACK ME across your forehead, poke yourself with a pointed stick and resign. Developers still do this in their coding because it&#8217;s easy and fast. You get what you pay for.</p>
<p>Under the Password column in the results, you should see gobbledygook or the word NULL. If there are users and groups from a Windows Domain, they will be identified by the domain name or server name and then the ID, thus:  Server\Name (for a local account) or Domain\Name.  These IDs always have NULL in the password column, because SQL expects them to be authenticated by Windows.</p>
<p>I look for a user ID with NULL in the password column. And then I test to confirm the ID is blank by using ODBC to connect to the SQL server. I am regularly horrified, I am sorry to say.</p>
<p>Examine the list of users for IDs that have been created inside SQL.  DBAs and developers are notorious for creating &#8220;backdoor&#8221; IDs that are not part of the Windows domain and only exist inside SQL.  The problem is, when they leave, those IDs don&#8217;t get deleted or disabled when you disable or delete their Domain ID.  They just sit there, waiting to be used and abused.  Again, I&#8217;m regularly horrified, I&#8217;m sorry to say. </p>
<p>Finally, the query results will show you each user ID&#8217;s default database. Make sure IDs only have access to the database they <em>need.</em></p>
<p><strong>Next: MS SQL internal groups</strong></p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/inside-the-database-server-ms-sql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>European Hotel Chain Has Their Customer Data For the Past Year Accessed</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/european-hotel-chain-has-all-their-customer-data-for-the-past-year-stolen/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/european-hotel-chain-has-all-their-customer-data-for-the-past-year-stolen/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 18:33:14 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Data Breaches]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[Identity theft]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Security Devices]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/european-hotel-chain-has-all-their-customer-data-for-the-past-year-stolen/</guid>
		<description><![CDATA[Visited Europe in the last year and used a Best Western Hotel? Your credit card, expiration date, the company that employs you, your name, address and future bookings may be in the possession of a Russian Mafia website. An enterprising Scottish newspaper, the Sunday Herald, noticed on Thursday night that an Indian hacker offered to [...]]]></description>
				<content:encoded><![CDATA[<p>Visited Europe in the last year and used a Best Western Hotel? Your credit card, expiration date, the company that employs you, your name, address and future bookings may be in the possession of a Russian Mafia website. An enterprising Scottish newspaper, the Sunday Herald, noticed on Thursday night that an Indian hacker offered to sell access to Best Western and notified Best Western about the breach.  Although Best Western closed the hole on Friday, the horse is out of the barn.</p>
<p>Eight million people stayed at 1,312 locations from 2007.  Is this &#8220;Identity Theft?&#8221; It&#8217;s a darned nice start.  Only the Social Security number is missing. Certainly the names, addresses, business information, details of employment, credit card numbers and expiration dates could be used for <a href="http://itknowledgeexchange.techtarget.com/cisa-cissp/synthetic-identity-theft-part-1/">synthetic identity theft.</a></p>
<p>According to the <a href="http://sundayherald.com/news/heraldnews/display.var.2432225.0.0.php">Herald:</a></p>
<p><em>&#8220;The Sunday Herald understands that a hacker from India &#8211; new to the world of cyber-crime &#8211; succeeded in bypassing the system&#8217;s security software and placing a Trojan virus on one of the Best Western Hotel machines used for reservations. The next time a member of staff logged in, her username and password were collected and stored.&#8221;</em></p>
<p>One of the first things I learned doing penetration testing was that you don&#8217;t have to have some fancy piece of coding to break in.  It can be the simplest thing &#8211; finding a set of keys in someone&#8217;s desk &#8211; that gets you into the server room. In fact, it usually IS the simplest thing.  Their web site may have great security, but that was easily bypassed by a user login.</p>
<p>Best Western evidently had not noticed all the activity that account was generating &#8211; sucking all the data out of their databases.  Which takes us back to auditing databases, doesn&#8217;t it?</p>
<p>Best Western&#8217;s response?  <em>Tim Wade, head of marketing for Best Western GB, said it was “unlikely” that whoever was responsible got hold of the details of “every booking at every hotel” in Europe because of the way their system worked.</em> Has anyone mentioned to Best Western that letting a marketing guy handle communications for a data breach is not always the best choice? &#8220;Unlikely&#8221; is not a word that I find comforting. What are the facts? Why don&#8217;t they know exactly how much was taken? Because they probably don&#8217;t have any security logging in the right place. It&#8217;s why they didn&#8217;t notice the breach in the first place.</p>
<p>Let&#8217;s hope they didn&#8217;t get all the way into the American side of the company. Or maybe they have.  How would we know?</p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/european-hotel-chain-has-all-their-customer-data-for-the-past-year-stolen/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to Audit Databases:  Part I</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/how-to-audit-databases-part-i/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/how-to-audit-databases-part-i/#comments</comments>
		<pubDate>Thu, 21 Aug 2008 15:48:36 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Data Breaches]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[DataManagement]]></category>
		<category><![CDATA[Identity theft]]></category>
		<category><![CDATA[IT audit]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PCI DSS]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[SAS 70]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SOX]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/how-to-audit-databases-part-i/</guid>
		<description><![CDATA[Databases are enormous, powerful repositories of data. They can hold payroll, HR personnel data (think social security numbers) stock prices, Accounts Receivable, Client Relationship Management, and customer information. Banks can&#8217;t live without them. Most medium and many small sized businesses use them, too. They are the motherlode of the organization and the last line of [...]]]></description>
				<content:encoded><![CDATA[<p>Databases are enormous, powerful repositories of data.  They can hold payroll, HR personnel data (think social security numbers) stock prices, Accounts Receivable, Client Relationship Management, and customer information.  Banks can&#8217;t live without them. Most medium and many small sized businesses use them, too.</p>
<p>They are the motherlode of the organization and the last line of defense in a hack.  It&#8217;s critical that DBAs have the tools at their disposal to monitor and provide reporting. If your database isn&#8217;t secure, the hacker won&#8217;t care how well indexed it is.</p>
<p>And there are a lot of ways in.  If I have administrative access to the server, I can copy all the database </em>files,<em> take them away and reload them on my own database server.  If I have unencrypted backups of those files, I can do the same thing.</em></p>
<p>So the first step in auditing the database is to examine the server the database is running on. This gets confusing to non-DBAs and auditors because many of the terms used inside the database are similiar to server terms.  It&#8217;s important to keep them separate, and to make sure that access to the database files <em>on the server</em> is monitored. Server administrators do not need to have access to those files, but they may have to, in order to manage/backup the server. So, set up logging.<br />
Make sure everyone who has a need to access that server administratively has a unique ID. Remove access to root(*NIX) or Administrator (Windows). They can have administrative rights, just make sure you can identify them by ID and IP connection.</p>
<p>Finally, what about the backup tapes?  If they are not encrypted, you can join the &#8220;breach list&#8221; of companies that have lost their data when tapes were misplaced, stolen, or &#8220;disappeared.&#8221;</p>
<p><strong>NEXT:  Inside the Database &#8220;Server&#8221;</strong></p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/how-to-audit-databases-part-i/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I Can Make Your Database Lie to You</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/i-can-make-your-database-lie-to-you/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/i-can-make-your-database-lie-to-you/#comments</comments>
		<pubDate>Tue, 19 Aug 2008 13:20:10 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Data Breaches]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[DataManagement]]></category>
		<category><![CDATA[Identity theft]]></category>
		<category><![CDATA[IT audit]]></category>
		<category><![CDATA[Oracle]]></category>
		<category><![CDATA[PCI DSS]]></category>
		<category><![CDATA[SAP]]></category>
		<category><![CDATA[SAS 70]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SOX]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/i-can-make-your-database-lie-to-you/</guid>
		<description><![CDATA[So many financial auditors, CEOs, CFOs and others rely on electronic data to understand the complexities of General Ledger, Accounts Payable, etc. In this era of SAP, ADP, electronic time clocks, etc., the one common denominator is the database underlying each application. Applications aren&#8217;t something you just run on one PC anymore (I know I&#8217;m [...]]]></description>
				<content:encoded><![CDATA[<p>So many financial auditors, CEOs, CFOs and others rely on electronic data to understand the complexities of General Ledger, Accounts Payable, etc.  In this era of SAP, ADP, electronic time clocks, etc., the one common denominator is the <em>database underlying each application</em>.</p>
<p>Applications aren&#8217;t something you just run on one PC anymore (I know I&#8217;m preaching to the choir, here). Financial applications, especially, are all networked, and the storage is usually a relational database like Oracle, MS SQL, Sybase, DB2 or MySQL.  Relational databases are wonderful for business because you can correlate so many different facts.</p>
<p>So why are they so scary to me?  Because they are rarely audited. </p>
<p>I need a network ID to log in, so the database is safe, right?  No.</p>
<p>The application has security controls, so my database is safe, right?  No.</p>
<p>DBAs (Database Administrators) know exactly what I am talking about here. All those items are just the outer edge of security.  If I have a network jack and a database ID and password, I can bypass those controls easily.</p>
<p>Some applications have a database ID and no password, or an easy-to-guess password. And very frequently, that ID has access to everything, including reads, writes and deletes.</p>
<p>If I have that ID and a network jack, I can log into your database using ODBC, Microsoft&#8217;s Open DataBase Connection client software that is installed by default on Windows operating systems. I can use Excel, Access, or other database software to pull all your data out.</p>
<p>Or <em>change</em> your data.</p>
<p>And P.S., connecting with ODBC uses clear text usernames and passwords, which is how I once captured a DBA&#8217;s ID and password with a sniffer.</p>
<p>Fortunately for all of us, there are usually other financial controls that can capture errors or changes in the database. Usually.</p>
<p><strong>NEXT:  How to Audit Databases</strong></p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/i-can-make-your-database-lie-to-you/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Monitoring Insider Access to Databases</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/monitoring-insider-access-to-databases/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/monitoring-insider-access-to-databases/#comments</comments>
		<pubDate>Wed, 13 Aug 2008 01:53:03 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Data Breaches]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[DataManagement]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/monitoring-insider-access-to-databases/</guid>
		<description><![CDATA[The recent report on the Countrywide data theft got me thinking again about how to monitor insider access to databases. The story is that the thief had access to the Countrywide (a mortgage broker) set of databases, which, of course, held all sorts of private financial information. A treasure trove, in fact, for anyone seeking [...]]]></description>
				<content:encoded><![CDATA[<p>The recent report on the <a href="http://www.thetechherald.com/article.php/200832/1696/Insider-arrested-in-relation-to-Countrywide-data-theft">Countrywide data theft</a> got me thinking again about how to monitor insider access to databases.</p>
<p>The story is that the thief had access to the Countrywide (a mortgage broker) set of databases, which, of course, held all sorts of private financial information.  A treasure trove, in fact,  for anyone seeking a quick buck on the Internet. Countrywide is owned by Bank of America, and I have to wonder if they had done a third-party vendor review anytime recently, or had relied on Countrywide telling them everything was secure (which lots of Banks do, despite the Office of the Comptroller of the Currency telling them NOT to do that).</p>
<p>According to Countrywide, &#8220;The thief took advantage of a lapse in policy.&#8221; What interesting language.  What policy, exactly, and what defines a &#8220;lapse?&#8221; Sounds like nobody was really paying attention to database access. Did Countrywide or Bank of America discover the thief?  No, the FBI did. </p>
<p>What would it have taken to catch the thief in the act? Given that the thief was a &#8220;senior analyst,&#8221; it means that controls would have to be really specific. Let&#8217; s brainstorm a little bit, because we need to start thinking this way.  Too often, insider access is left wide open, and excuses are made that &#8220;it&#8217;s too time intensive&#8221; or &#8220;it takes resources away from the server.&#8221;   Those excuses will no longer hold in court of law.</p>
<p>Think about it:  if your organization offers up those excuses, the judge will jump all over you.  If you have done background checks and are monitoring access, a lot of time and money will not go to lawyers. Demonstrating &#8220;due diligence&#8221; with regard to your employees and your data is very effective.</p>
<p>So, how could we monitor that kind of data? Two thoughts occur to me:  first, only allow the employee to access records he works directly with, and require approval for access to any other records.  This won&#8217;t rule out collusion, but it will make it harder for a single thief.</p>
<p>Second, log use of flash drives.  This could be &#8220;silent&#8221; logging, but you could put two and two together, if the databases were also logging access.</p>
<p>How would YOU catch him?</p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/monitoring-insider-access-to-databases/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Making Software Developers Clean Up Their Act</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/making-software-developers-clean-up-their-act/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/making-software-developers-clean-up-their-act/#comments</comments>
		<pubDate>Tue, 01 Jul 2008 15:08:36 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Admins and Auditors]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Data Breaches]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[IT audit]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Tools & Tricks of the Trade]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/making-software-developers-clean-up-their-act/</guid>
		<description><![CDATA[In the course of many audits and pentests, I can&#8217;t tell you how many times I have found flaws and openings based on bad development practices. It&#8217;s downright painful. And yet software keeps coming out with the same problems. I know WHY this is happening, but I can&#8217;t stop it. YOU can. Have you ever [...]]]></description>
				<content:encoded><![CDATA[<p>In the course of many audits and pentests, I can&#8217;t tell you how many times I have found flaws and openings based on bad development practices.  It&#8217;s downright painful.  And yet software keeps coming out with the same problems.  I know WHY this is happening, but I can&#8217;t stop it.  YOU can.</p>
<p>Have you ever been in the position of having a software vendor say: &#8220;We&#8217;re not going to test that patch yet, you&#8217;ll have to wait for the next software release from us.  If you patch it, we won&#8217;t support it.&#8221;  </p>
<p>Or finding a security flaw in the application, reporting it to the vendor, and having them say they will charge your company to fix it as a &#8220;feature request.&#8221;</p>
<p>Or examining roles and rights in the database, and finding out everyone is sysadmin.  Or better yet, the developer hardcoded his ID into the application.</p>
<p>I bet you have, and you know I have.  Once the software is installed and in production, they have you over a barrel and they know it.  <em>Time to build a better barrel.</em></p>
<p>Time after time, I&#8217;ve found software applications that don&#8217;t secure the application user inside the database (giving that user rights to EVERYTHING).  Why?  Because it&#8217;s easier to code.  You don&#8217;t have to spend time finding out what broke and fixing it when you lock user rights down. Some applications hardcode usernames and passwords right into the software so that it can never be changed (unless, of course, <em>you</em> pay for an upgrade).  Even worse, I&#8217;ve seen it when the ID is hardcoded with a blank password.  Why?  It&#8217;s fast, cheap and easy.</p>
<p>How do YOU change it?  Two ways:</p>
<p>First, <strong>raise management awareness so that you are at the table with the software salespeople to ask some hard questions</strong>.  Is security part of their SDLC (Software Development LifeCycle)? Management can often be &#8220;wowed&#8221; by a product without ever looking under the hood.  Ask how their product is secured, especially since it will probably be holding important data. Don&#8217;t be wowed by application level controls &#8211; get some hard answers on how the data is accessed.  </p>
<p>Second, <strong>be there at contract time.</strong>  This is the most important.  Make sure it is written into the contract that they will fix all security flaws found in their product within 30 days. Make sure that they are responsible for testing OS patches quickly and reporting to you if it is OK to patch. Pick a timeline <em>you</em> can live with. After all, you&#8217;re paying them for a service.</p>
<p>If not, you&#8217;ll have to live with buggy code and I&#8217;ll have to audit it.  We&#8217;re in this together.</p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/making-software-developers-clean-up-their-act/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Steps to an Easy Audit (2) &#8211; Where&#8217;s the Beef, ah, I mean, Data?</title>
		<link>http://itknowledgeexchange.techtarget.com/cisa-cissp/steps-to-an-easy-audit-2-wheres-the-beef-ah-i-mean-data/</link>
		<comments>http://itknowledgeexchange.techtarget.com/cisa-cissp/steps-to-an-easy-audit-2-wheres-the-beef-ah-i-mean-data/#comments</comments>
		<pubDate>Tue, 13 May 2008 16:38:25 +0000</pubDate>
		<dc:creator>Arian Eigen Heald</dc:creator>
				<category><![CDATA[Compliance]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[Database security]]></category>
		<category><![CDATA[IT audit]]></category>
		<category><![CDATA[PCI DSS]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Steps to an Easy Audit]]></category>

		<guid isPermaLink="false">http://itknowledgeexchange.techtarget.com/cisa-cissp/steps-to-an-easy-audit-2-wheres-the-beef-ah-i-mean-data/</guid>
		<description><![CDATA[Remember that commercial (I&#8217;m dating myself, I know) where the little old lady lifts the top of the burger bun and says, &#8220;Where&#8217;s the beef?&#8221; All things considered, we have to ask the same sorts of questions about data. Usually we&#8217;re looking at a nice fat application wrapped around data. It looks great, manipulates the [...]]]></description>
				<content:encoded><![CDATA[<p>Remember that commercial (I&#8217;m dating myself, I know) where the little old lady lifts the top of the burger bun and says, <a href="http://www.youtube.com/watch?v=Ug75diEyiA0">&#8220;Where&#8217;s the beef?&#8221;</a>  All things considered, we have to ask the same sorts of questions about data.</p>
<p>Usually we&#8217;re looking at a nice fat application wrapped around data. It looks great, manipulates the data into all sorts of interesting reports, and adds a lot of value to the data.  But ultimately, without the hamburger, the bun is useless.</p>
<p>Many IT Auditors and business managers tend to approach security by testing the application controls &#8211; synonymous with testing the hamburger by sampling the bun. The bun looks great, controls are all set, no one can see what they shouldn&#8217;t, right?</p>
<p>BIG Wrong.  This is why the <a href="http://www.pcaobus.org/Standards/Standards_and_Related_Rules/Auditing_Standard_No.5.aspx">PCAOB</a> is now requiring SOX auditors to examine the configuration of databases. I&#8217;m delighted to see that this is finally a requirement, because that&#8217;s where the beef is, and always will be. Inside the databases.</p>
<p>First question to ask:  <em>How does the application talk to the database?</em><br />
Every connection to the database requires a username and password (even if the password is blank).  EVERY CONNECTION. So, what is the application using? I&#8217;ve found IDs and passwords hard-coded inside applications (well, you won&#8217;t be changing the password on that one!), inside ASP code on the web server that serves up the application (hack the web server, get the database, too!) and sniffed it online using port 1433 and/or ODBC connections (IDs and passwords run in clear text).  Another fun one is to examine a user&#8217;s workstation and find the ID in the ODBC configuration (pushed out via script) so that the user can use their Excel application or nice Access database code. (Of course, I&#8217;m talking Microsoft SQL server here, but these items are applicable across the variety of databases.) </p>
<p>Second question to ask:  <em>What rights does the application ID have?</em><br />
It&#8217;s ironic that so many software companies cut expenses by enabling an application ID that has db-owner rights to the database.  That way everything works, right?  I&#8217;ve seen it dozens of times, and it&#8217;s always painful.  Often there is no DBA at the company, or it was installed and the DBA is stuck with it. If it&#8217;s in production, removing that access will probably break the application, and no one wants that.  So everyone crosses their fingers and toes that no one discovers this easy in.  And, PS, hopefully there is a password to that ID.</p>
<p>Third question to ask:  <em>Is logging enabled to critical database tables? </em><br />
Don&#8217;t believe anyone who says, &#8220;Logging can&#8217;t be turned on due to performance issues!&#8221;  Sure, if you turn EVERYTHING on to be logged, the server will tank.  But setting up triggers that send reports and logging access to half-a-dozen tables is not going to impact the server (unless, of course, the application is already a hog). It means more work for the DBA, but if she is skilled, it shouldn&#8217;t be a problem. A good DBA can do that in his sleep.</p>
<p>This way you can watch who is getting to the beef.  Why does the application ID matter so much?  <strong>Because if I have that ID and password, I don&#8217;t need that application to get into the database.</strong> The application is just a pretty face &#8211; I can connect via Excel, Access, or any other database-connecting application as long as I have a username and password.  Just to see what I can get.  And if that application ID has dbowner access, or even better, sysadmin access, I can get everything in the database.</p>
<p>The application may have good controls, but outside the application, or using MY application, those controls won&#8217;t exist. Beef, lots of it, sans bun. In short, hacker hamburger.</p>
<p>So, OK, how does this make a good audit, Eigen, you ask? Sounds like a pain in the neck, right? Two magic words for you:  <strong>compensating controls.</strong></p>
<!-- wpms-network-global-inserts -->]]></content:encoded>
			<wfw:commentRss>http://itknowledgeexchange.techtarget.com/cisa-cissp/steps-to-an-easy-audit-2-wheres-the-beef-ah-i-mean-data/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
