Submodule 1: Overview fo Database Security

Assignment 2
Indirect Access Issue of Inference Control

Created: July 14, 2003
Last Updated: February 10, 2004

Assignment version number: Version 0.1
Author of the Assignment: Author: Dr. Morris Liaw


Level of Difficulty: Moderate

Completion Time: 1 week

Progaramming involved: No


Objectives

In this project, students will investigate the database security issue - indirect access of inference control.

Note:

Inference control aim at protecting data from indirect detection.
This occurs when a set X of data items to be read by a user can be used to obtain the set of Y of confidential data.

Description

Imagine that you are the database administrator for a military transportation system. You have a table named cargo in your database that contains information on the various cargo holds available on each outbound airplane. Each row in the table represents a single shipment and lists the contents of that shipment and the flight identification number. The flight identification number may be cross-referenced with other tables to determine the origin, destination, flight time and similar data. The cargo table appears as follows:

Flight ID Cargo Hold Contents Classification
1254 A Boots Unclassified
1254 B Guns Unclassified
1254 C Atomic Bomb Top Secret
1254 D Butter Unclassified

Suppose that General Jones (who has a Top Secret security clearance) comes along and requests information on the cargo carried by flight 1254. The general would (correctly) see all four shipments. On the other hand, if Private Smith (who has no security clearance) requests the data, the private would see the following table:

Flight ID Cargo Hold Contents Classification
1254 A Boots Unclassified
1254 B Guns Unclassified
1254 D Butter Unclassified

This correctly implements the security rules that prohibit someone from seeing data classified above their security level. However, assume that there is a unique constraint on flight ID and cargo hold (to prevent scheduling two shipments for the same hold). When Private Jones sees that nothing is scheduled for hold C on flight 1254, he might attempt to insert a new record to transport some vegetables on that flight. However, when he attempts to insert the record, his insert will fail due to the unique constraint. At this point, Private Jones has all the data he needs to infer that there is a secret shipment on flight 1254. He could then cross-reference the flight information table to find out the source and destination of the secret shipment and various other information.

The Project

What can you do about this security problem to the military transportation database?

Resources

Books
Articles
Links

Glossary