Google
Web GovernmentSecurity.org

Database Security (Common-sense Principles)
Places that viruses and trojans hide on start up
Step-by-Step Guide to Using the Security Configuration Tool Set
Improving the Security of Your Site by Breaking Into it
Domain Name Robbery
XDCC - An .EDU Admin's Nightmare
Database Security
Database Security
Is Database Security an Oxymoron?
Database security: protecting sensitive and critical information
The database security blanket
Database security in your Web-enabled apps
Making Your Network Safe for Databases
SQL Injection: Modes of Attack, Defence, and Why It Matters
Database Security in High Risk Environments
Linksys Router Information (A collection)
Common Ports
Protection of the Administrator Account in the Offline SAM
Windows 2000 Security
The dangers of ftp conversions on misconfigured systems
Win98.BlackBat
AnnaKournikova worm decrypted
C/C++ made easy with GoGooSE 1.0
UNIX Bourne Shell Programming
BATCH ProgramminG
Assembly for nerds using linux
THE LATEST IN DENIAL OF SERVICE ATTACKS: "SMURFING"
The Ingredients to ARP Poison
Outlook 2002: can't send .exe file with Email
Windows 9x/Me Security and System Restrictions
Exploiting The IPC Share
Local Windows hacking
Windows Cryptic Error Messages
Windows NT Registry Tutorial
catch a macro virus
Protecting Files with Windows NTXP
Microsoft Baseline Security Analyzer V1.1
A Beginners Guide To Wireless Security
Default Logins and Passwords for Networked Devices
How To Eliminate The Ten Most Critical Internet Security Threats
About computer crime
System Backdoor Information
System Backdoors Explained
Introduction to Buffer Overflow
Donald Pipkin's Security Tips for the Week of December 23rd
Getting IP data from numerous sources
Rainbow Series Library [The One The Only]
Honeypots (Definitions and Value of Honeypots)
General Attack Descriptions
Wireless Taping
CYBERTERRORISM
Security from a different angle
 

 

Is Database Security an Oxymoron?
By Mary Chipman, Contributing Editor, Access-VB-SQL A

Microsoft Access workgroup security appears to be robust because it uses a strong encryption algorithm. However, encryption remains secure only while the decryption key remains secure, and this is where Access/Jet is vulnerable.

How Access security works
The way Jet security works is that users, group, and password information is stored in a workgroup file (MDW), and permissions are saved in the database file (MDB) and mapped to the security IDs (SIDs) of the users or groups in the MDW file. For users to work with an Access database, they need file permissions on both the MDW and MDB file. Attackers can gain physical possession by simply copying the files and carting them off to hack away on at their leisure. No matter how superior the key is, if it's physically accessible, and the attackers have the skills and the motivation, they'll crack it.

Relying on Access security is like hiding your house key in your yard. If a thief gets over the garden wall and has unlimited time and a fervent desire to get into your house, he'll find the key, even if you've cleverly hidden it under a lawn dwarf behind dense bushes inside a maze. The key might be safe if you embedded it in concrete and buried it under the fountain, but then you wouldn't be able to use it yourself. There are already companies and products out there that can hand you an administrative user name and password from any MDW.

Foil Access attackers
Fortunately, there's a way to foil attackers by exploiting the dual MDW/MDB structure of Jet security. Secure your database normally using a development workgroup file, assigning permissions to your custom groups. Then create a different workgroup file for distribution. Duplicate the group names and Personal IDs (PIDs) to generate the same SIDs in the distribution MDW. An unauthorized user who tries to hack in by obtaining an administrative login and password won't get very far, because the Admins group in the distribution workgroup file has a different SID from the Admins group in the original workgroup. Only members of the Admins group in the original workgroup file can modify permissions and access protected data, and you keep the original workgroup file safely tucked away and out of reach of would-be hackers. The Access Security FAQ includes the steps to implement this strategy. It's available at http://support. microsoft.com/default.aspx?scid=/support/access/content/secfaq.asp . See item number 33, "I want to create a remote site administrator able to administer the database and add user accounts but not alter permissions on database objects." However, because all users must have physical access to the MDW and MDB files, a hacker could still take a copy of your data and eventually decrypt it.

SQL Server security
Even when users don't have direct access to the files, as with SQL Server, you're still at risk if you use mixed-mode SQL Server authentication. The problem is that the undocumented internal function used to encrypt passwords is vulnerable. And an attacker who breaches SQL Server security and logs on as a system administrator can do more than just steal your data -- the attacker gains access to the operating system, the network, and anything else connected to the SQL Server box. There's no equivalent to the dual workgroup technique in SQL Server -- a system administrator has irrevocable permissions on all databases on that server instance and can execute extended stored procedures that reach out to the operating system. In this respect, Access is more secure than SQL Server -- at least it only exposes your data, not the entire network. The only way to protect SQL Server is to use Windows authentication only, and to run the SQL Server services under a least-privileged account, which places limits on some functionality.

The best defense
Security is a journey, not a destination. You should never assume that any product or technique is secure, because you can't possibly know what new attacks will become possible in the future. Many security vulnerabilities aren't published because attackers want to delay a fix, and manufacturers want to avoid negative publicity. There's an ongoing and unresolved debate over whether publishing security vulnerabilities encourages or helps prevent further attacks.

The most secure Jet database I ever heard of was in a military installation in an underground, nuclear-proof bunker, installed on a standalone computer with no Internet or network connections, and under armed guard 24 hours a day. However, that isn't a likely scenario for most of us. The best you can do -- whether you're working with Access/Jet or SQL Server -- is to keep up with service packs, which often contain security fixes, and to be realistic about possible threats. You should assume failure at some point, and never store truly sensitive data in any database that unauthorized users could conceivably penetrate.

And remember that most data loss occurs through social exploits, not technical ones -- your personnel procedures are usually more important than your encryption algorithms.

About the Author:
Contributing Editor Mary Chipman, MCSD, MCT, is a senior consultant for MCW Technologies, a Microsoft Solutions Provider. She is a co-author of SQL Server 7.0 In Record Time (Sybex) and the Access and SQL Server Developer's Handbook (Sybex). mChip@mcwtech.com.

 


Warning: include() [function.include]: URL file-access is disabled in the server configuration in /home/governme/domains/governmentsecurity.org/public_html/articles/IsDatabaseSecurityanOxymoron.php on line 692

Warning: include(http://www.governmentsecurity.org/forum/ssi2.php?a=lastposts) [function.include]: failed to open stream: no suitable wrapper could be found in /home/governme/domains/governmentsecurity.org/public_html/articles/IsDatabaseSecurityanOxymoron.php on line 692

Warning: include() [function.include]: Failed opening 'http://www.governmentsecurity.org/forum/ssi2.php?a=lastposts' for inclusion (include_path='.:/usr/local/share/pear') in /home/governme/domains/governmentsecurity.org/public_html/articles/IsDatabaseSecurityanOxymoron.php on line 692