Peng Liu - Tolerant Systems

advertisement
ITDB: Intrusion Tolerant Database Systems
Survivability Validation Framework
Peng Liu
University of Maryland, BC
Sept. 4, 2001
1
Technology Description & IAS Addressed
Our project aims to develop an intrusion tolerant or survivable database system, called
ITDB.
Databases, a widely used means to store and manage data, are a critical component of a
variety of (mission critical) information systems. Although current commercial off-the-shelf
(COTS) database management systems (DBMSs) are equipped with pretty good preventive
mechanisms such as authentication and access control, COTS DBMSs have very limited
ability to survive successful (data) attacks. As a result, information assurance of existing
database applications is seriously threatened by the lack of (good) survivability, which can
cause data to be damaged (without being detected), (wrong) decisions to be made based on
damaged data, the data integrity level to be seriously decreased, and the availability of the
database to be (indirectly) jeopardized.
Existing database survivability techniques can be broken down into two categories:
trusted database systems and OS-level survivability. Trusted database systems aim to develop
a (much more) secure database system from scratch where the low level vulnerabilities and
threats (of COTS DBMSs) can be avoided or removed (by using tamper-resistant processing
environments, exploiting cryptography, and avoiding bug-prone OS services), thus the
survivability to these (low-level) threats is achieved [MVS00]. However, the requirement that
the DBMS should be redeveloped from scratch prevents the technique from being widely
used. OS-level survivability aims to enhance the survivability of COTS database systems to
Page 1
OS-level attacks such as modifying data files without interfering with the DBMS [MG96,
BGI00]. However, this technique cannot handle hardware level attacks.
Although the above two database survivability techniques can achieve pretty good
resilience to OS (and other lower) level attacks, none of them can handle application level or
transaction level attacks, namely malicious transactions, which represent most of the (known)
database attacks. Our intrusion tolerant database systems framework solves this problem.
An ITDB system, with the architecture shown in Fig 1., can detect malicious
transactions, isolate attacks, contain, assess, and repair the damage caused by malicious
transactions in a timely manner such that a self-stabilized level of data integrity can be
provided to applications [LJLI01].
Fig 1. - ITDB Architecture
Page 2
2
Assumptions
A1
No ITDB component is malicious or has bugs.
A2
The implementation of each ITDB component meets its specification.
A3
The logs and audit trails used by ITDB components are not corrupted.
A4
The COTS DBMS executes transactions correctly.
2.a Residual Risks, Limitations, and Caveats
RLC-1
RLC-2
3
OS and lower lever attacks can comprise the effectiveness of ITDB; lowlevel database survivability techniques (as mentioned in Section 1) are
needed to help ITDB survive these attacks.
DBMS bugs can be exploited by the attacker to gain the control of
transaction processing, and to access the metadata used by ITDB
components. These controls and accesses can seriously comprise the
effectiveness of ITDB.
RLC-3
Tons of malicious transactions (with different user identities) can compose a
flooding attack to the database.
RLC-4
The malicious transaction can read and disclose sensitive information.
Vulnerabilities and Attacks
ITDB focuses on the attacks through malicious transactions, which represent most of the
(known) database attacks. The assumptions (particularly A1-A4) and the residual risks
(particularly RLC-1 to RLC-4) indirectly summarize the other types of attacks that a database
system or an ITDB system may suffer (Note that these attacks are already addressed by
existing research). Malicious transactions can be generated in several ways:

Attacker uses a legitimate user’s password and privileges to execute malicious
transactions.

An insider misuses or abuses his or her privileges to execute malicious transactions.

Attacker uses a legitimate user’s unlocked GUI to takeover an active database session, so
no passwords are needed.
Page 3

A legitimate user can mistakenly execute a transaction harming the database. Executing a
harmful transaction by mistakes or executing purposely have no difference from the
perspective of the database.
As the standard interface to access a database, a malicious transaction can attack a database in
several ways.
Design
VA1
Malicious transactions are difficult to detect.
Operation
4
VA2
Malicious transactions can corrupt the data. Corrupted data can lead to wrong
(real world) decisions and actions, which can be dangerous, harmful,
misleading, and disaster-prone.
VA3
Data corruption caused by malicious transactions can force the database server
to halt periodically to assess and repair the damage, which hurts the availability.
VA4
Long detection latency (in identifying malicious transactions) can cause
ineffective damage containment.
VA5
Inaccurate intrusion detection, or high false alarm rates, can cause many
innocent transactions to be mistakenly rejected or rolled back.
Information Assurance and Survivability Attributes
The ITDB architecture assures integrity (I) by dynamically maintaining a self-stabilized
level of data integrity. The damage caused by malicious transaction will be detected and
identified through intrusion detection and damage assessment. A substantial amount of
damage will be isolated (and masked) without causing any harm to the (main) database.
Located damage will be repaired on-the-fly. A cost-based self-tuner is used to stabilize the
data integrity level through agile adaptive reconfiguration. The ITDB architecture assures
availability (AV) by WarmStart damage assessment and repair (without halting the database),
damage containment (without denying the access to undamaged part of the database), and
attack isolation and masking (without rejecting suspicious transactions). The availability (AV)
loss caused by flooding attacks to databases is not addressed by ITDB. Our project has not
addressed confidentiality (C), authentication (AU) and nonrepudiation (NR).
Page 4
5
Comparison with Other Systems
The ITDB architecture can be compared with three types of database systems: (1) COTS
DBMSs such as Oracle, SQL Server, Sybase, and Informix; (2) trusted database systems such
as ITB [MVS00]; (3) COTS DBMSs enhanced with OS-level survivability tools such as data
jamming [MG96] and data corruption detection [BGJ00]. In terms of integrity (I), type (1)
systems use integrity constraints to protect the database from inconsistent data. However, they
cannot prevent the attacker from corrupting data without violating data consistency. Type (2)
and Type (3) systems can effectively detect (and recover from) OS-level data corruption.
However, none of the three types of systems can handle transaction-level data corruption. This
kind of integrity threats can only be addressed by ITDB. In terms of availability (AV), these
three types of systems may need to halt the database during the repair. However, ITDB
systems inherently support WarmStart repair. Finally, it should be noticed that ITDB builds on
top of existing database security and survivability techniques. An ITDB system can be built on
top of either a COTS DBMS, or a trusted database system. Therefore, the confidentiality (C),
authentication (AU), and nonrepudiation (NR) of an ITDB system rely on the corresponding
IAS attributes of the underlying system.
6
Information Assurance and Survivability Mechanisms
M1
Policy Enforcement Manager: proxy transactions, monitor transaction behavior,
and enforce the system wide IAS policy [LJLI01]
M2
Intrusion detector: application aware transaction level database intrusion
detection [IL01]
M3
Isolation Manager: immunize the database from the damage caused by
suspicious transactions without losing the availability [Liu01]
M4
Masking Manager: mask the damage caused by less suspicious transactions
M5
Damage Containment Manager: one-phase and multi-phase damage
containment; contain the damaged part of the database until being repaired
[LJ01]
M6
Damage Assessor: read-write dependency based damage assessment [LJB01,
LL01, LX01]
M7
Damage Repairer: on-the-fly data corruption repair with WarmStart semantics
[LJB01, LL01, LX01]
M8
Self-Tuner: agile, adaptive, cost-based reconfiguration to deliver a self-
Page 5
stabilized level of data integrity
7
Rationale
7.1 Rational Matrix
Threats
VA1
VA2
VA3
VA4
VA5
AV
M21
N/A
(M6, M7)4
N/A
(M2, M3, M4)6
I
M22
(M1 – M8)3
N/A
M55
(M3, M4)7
C
AU
NR
N/A
Notes:
1
Inaccurate intrusion detection (ID) can cause availability loss because innocent
transactions can be mistaken as malicious and be rejected or rolled back. M2 (application
aware ID) exploits application (and transaction) semantics to improve the accuracy of ID
[IL01].
2
Inaccurate ID can cause integrity loss, since (a) undetected malicious transactions will not
be repaired, (b) the effects of the innocent transactions that are mistaken as malicious ones
will be rolled back. M2 exploits application (and transaction) semantics to improve the
accuracy of ID [IL01].
3
One of the key goals of ITDB is to detect/immunize from/mask/recover from data
corruption. M2 detects the malicious transactions that corrupt the data. M3 (isolation)
immunizes the database from a substantial amount of damage (caused by malicious
transactions) by isolating suspicious transactions before some of them turn out to be
malicious later on. M4 (masking) masks the damage caused by (a set of less) suspicious
transactions by propagating their effects onto only a subset of the masking database
servers. As a result, in many cases even if a suspicious transaction is found malicious later
on, its effects are not visible to many database servers. M5 (damage containment)
effectively contains the part of the database that is damaged. Since contained damage will
not spread, M5 can effectively stabilize the data integrity level. M6 (damage assessment)
and M7 (repair) improve data integrity by recovering the database from the damaged part.
Page 6
M8 (self-tuning) helps to achieve a self-stabilized level data integrity through adaptation.
Finally, the interactions among M2-M8 are facilitated by M1 (policy enforcement).
4
M6 (damage assessment) and M7 (repair) are two closely coupled, on-the-fly mechanisms,
which means that damage assessment and repair are processed as the execution of new
transactions continues. Hence in an ITDB system, much more availability can be given to
users. Note that ITDB do cause some availability loss, for example, the proxy delay can
reduce the throughput of the database system.
5
Long detection latency can generate a long damaged history for the Damage Assessor to
locate the damage. Hence the assessment latency will also be long. Traditional damage
containment is one phase where a data item is contained only after the Assessor finds that
it is damaged. The main limitation of one-phase containment is that long detection and
assessment latency can cause ineffective containment, that is, when an item is contained,
its damage may have already spread to many other items during the latency. M5 (multiphase damage containment) solves this problem by quick but approximate initial
containment, followed by a set of un-containing phases where the data items that are
mistakenly contained in the containment phase will be un-contained as quick as possible.
As a result, during the detection and assessment latency, M5 can guarantee that no damage
spread.
6
M2 can improve the detection accuracy to some extent; however, in many cases the false
alarm rate could still be pretty high. M3 (isolation) and M4 (masking) can significantly
reduce the number of innocent transactions that are mistaken as malicious and got rejected
or rolled back, because since many suspicious transactions will be isolated or masked, we
can setup a pretty high anomaly threshold for reporting malicious transactions. In this way,
the alarms raised by the detector will be much more accurate. At the same time, note that
isolated or masked transactions are given almost full availability.
7
We face a dilemma when using an inaccurate detector to protect data integrity: setting up a
high anomaly threshold (for ID) will allow many gradual attacks to succeed; setting up a
low anomaly threshold captures more attacks, but at the same time makes more mistakes.
In both cases, the data integrity can be seriously jeopardized. M3 (isolation) and M4
(masking) can significantly enhance a database system’s ability to live with inaccurate
intrusion detectors. In particular, by isolating and masking a set of suspicious transactions,
it is not necessary to detect the set of suspicious transaction accurately within a short
Page 7
period of time (note that we want the detection latency to be as short as possible). During
the isolation or masking period, the detector can spend more time to focus on these
suspicious transactions, which would improve the accuracy significantly. At the same
time, note that the isolated or masked transactions cause almost no damage to the main
database.
7.2 Verification Techniques
The verification should focus on the following aspects:
8

Cost-effectiveness of the ITDB architecture. This can be verified using simulated
and real world database attacks.

Correct implementation of ITDB components. This can rely on standard (and
emerging) software assurance and testing techniques.

The impact of low-level attacks (such as OS and DBMS bugs) on the effectiveness
of ITDB architecture. Both qualitative and quantitative verification methods could
be needed for this purpose.

The impact of the effectiveness of the Intrusion Detector on the overall effectiveness
of the ITDB architecture. In particular, it is desired to know how effective is enough
for an intrusion detector to be valuable to an ITDB system. For this purpose, a
quality-of-service model for intrusion detectors and a cost model for ITDB
architecture should be developed.
Cost and Benefit Analysis
8.1 Cost Considerations
Development
Development of the ITDB software (components) is a one-time cost.
Resources
More computing resources are certainly needed to enforce ITDB functionalities. To
illustrate, attack isolation requires some suspicious data versions be temporarily
Page 8
maintained, which makes ITDB systems consume more disk space. Attack masking
requires multiple (slightly different) databases (be maintained) and multiple database
servers (to manage these databases), which makes ITDB systems consume more resources
than that of a functionally equivalent database server.
System administration
In addition to the cost of administering a database server, the system security officer need
also to administer the ITDB facilities. In some applications, the data integrity level may
need to be manually monitored, and some ITDB reconfiguration operations may need to
be manually performed.
Performance
Perhaps the largest concern with survivable database systems is the database performance
penalty caused by the ITDB facilities. The throughput of the database (in transaction
processing) can be significantly decreased in an ITDB system built on top of a COTS
DBMS, compared with the throughput of this COTS DBMS. Our preliminary testing
results have shown that the main reason is that the proxy delay is significant [LL01]. It is
clear that integrating the ITDB functionality into the DBMS kernel can dramatically
decrease the performance penalty.
8.2 Benefits
Database systems conforming to the ITDB architecture can survive data corruption
caused by malicious transactions, as described in the previous sections.
9
References
[BGI00]
D. Barbara, R. Goel, and S. Jajodia. Using Checksums to Detect Data
Corruption. In Proc. of the 2000 International Conference on Extending
Data Base Technology, Mar 2000.
[IL01]
S. Ingsriswang and P. Liu. AAID: An Application Aware Transaction-Level
Database Intrusion Detection System. Technical Report, University of
Baltimore –BC, Mar 2001.
Page 9
[Liu01]
P. Liu. DAIS: A Real-Time Data Attack Isolation System for Commercial
Database Applications. Proc. 2001 Annual Computer Security Applications
Conference, Dec, 2001. To appear.
[LJ01]
P. Liu and S. Jajodia. Multi-Phase Damage Confinement in Database
Systems for Intrusion Tolerance. Proc. 14th IEEE Computer Security
Foundations Workshop, June 2001, pages 191-205.
[LJB01]
P. Liu and S. Jajodia. Trusted Recovery and Defensive Information Warfare.
Kluwer Academic Publishers, 2001. To appear.
[LJLI01]
P. Liu, J. Jing, P. Luenam, and S. Ingsriswang. Intrusion Tolerant Database
Systems. Technical Report, University of Maryland –BC, April 2001.
[LL01]
P. Luenam and P. Liu. ODAM: An On-the-fly Damage Assessment and
Repair System for Commercial Database Applications. Proc. of 15th IFIP
WG11.3 Working Conference on Database Security, July 2001.
[LX01]
P. Liu and H. Xu. Efficient Damage Assessment and Repair in Resilient
Distributed Database Systems. Proc. of 15th IFIP WG11.3 Working
Conference on Database Security, July 2001.
[MG96]
J. McDermott and D. Goldschlag. Towards a Model of Storage Jamming. In
Proc. of the IEEE Computer Security Foundations Workshop, pages 176185, Ireland, June 1996.
[MVS00]
U. Maheshwari, R. Vingralek, and W. Shapiro. How to Build a Trusted
Database System on Untrusted Storage. In Proc. of 4th Symposium on
Operating System Design and Implementation, San Diego, CA, Oct 2000.
Page 10
Download