Research on Deception in Defense of Information Systems
Neil C. Rowe, Mikhail Auguston, Doron Drusinsky, and J. Bret Michael
U.S. Naval Postgraduate School
Code CS, 833 Dyer Road
Monterey, CA USA 93943
ncrowe, maugusto, ddrusins, and bmichael @ nps.navy.mil
Abstract
Our research group has been broadly studying the use of deliberate deception by software
to foil attacks on information systems. This can provide a second line of defense when
access controls have been breached or against insider attacks. The thousands of new
attacks being discovered every year that subvert access controls say that such a second
line of defense is desperately needed. We have developed a number of demonstration
systems, including a fake directory system intended to waste the time of spies, a Web
information resource that delays suspicious requests, a modified file-download utility that
pretends to succumb to a buffer overflow, and a tool for systematically modifying an
operating system to insert deceptive responses. We are also developing an associated
theory of deception that can be used to analyze and create offensive and defensive
deceptions, with especial attention to reasoning about time using temporal logic. We
conclude with some discussion of the legal implications of deception by computers.
A theory of deception in information systems
Deception is a key feature of human social interaction not much studied in either
information security or artificial intelligence. In one part of our project, we are
developing testable computational models of deception including the major subphenomena or trust, expectation, suspicion, surprise, deception plans, and manufactured
patterns (Bell & Whaley, 1991). Such a theory can be used to explain both offensive
deceptions (to gain some advantage) and defensive deceptions (to foil someone else's
plans). Defensive deception could fool attackers into thinking our systems are not worthy
of attack, or thinking incorrectly they have hurt us. It can be very convincing because
people expect computer systems to be obedient servants. Paradoxically, deception
against bad people can increase the trust level of good people, much like how an
inquisitive police force increases social trust. Deceptions can also produce useful side
effects like identification of the attacker by planting phone numbers we can trace or
installing "spyware" on the attacker that will report their activities.
Producing a convincing defensive deception requires careful planning because people can
easily recognize patterns suggesting it. So deception needs to be applied sparingly and
thoughtfully based on a theory of trust and "suspiciousness" and its psychological
consequences (Miller & Stiff, 1993). We are exploring applying it in two different ways.
One will use a theory of "generic excuses" that will frustrate the attacker but appear to be
highly plausible. The other way will use a theory of "counterplanning" that will frustrate
the attacker in highly effective but hard-to-notice ways. Counterplanning can make use
of artificial-intelligence planning research but has unique issues too.
We must be careful not to apply deceptions to non-malicious users who accidentally act
suspicious; thus intrusion-detection systems need to search for consistent patterns in
lower levels of suspiciousness, a different set of criteria than employed today. Deception
also raises ethical issues to be explored. In general, deception is judged ethical against
serious consequences (e.g. destruction of a computer system in an attack) which may
apply to cyberterrorism (Tan, 2003).
One part of our research on the theory of deception (Rowe and Rothstein, 2004) looked at
the classic deception methods of conventional warfare: concealment, camouflage, ruses,
demonstrations, feints, false and planted information, lies, displays; and insight. Of the
nine, concealment and camouflage of operations (as opposed to data) are difficult in
cyberspace since so much of it is black and white: Either a file exists or not. Then
domain name servers are quite willing to tell adversaries about what resources exist.
Ruses are not helpful in cyberwarfare because identity theft is easy and lacks surprise.
Demonstrations are hard to make convincing and likely counterproductive since shows of
strength encourage attacks which cannot be defended. Feints are not helpful because it is
so difficult to localize an enemy for a counterattack in cyberspace. False and planted
information such as posting fake attack methods on hacker bulletin boards is certainly
possible, but it may turn out to be easy to confirm most statements about cyberspace with
sufficient time.
This leaves lies, displays, and insights as potential defensive tactics. Moreover, they are
powerful tactics just beginning to be explored. Outright lies by an information system
can be effective because users are so accustomed to truth from their systems. The system
could lie about completing a download of a suspicious file or give a false excuse as to
why it cannot. Or lies could be integrated into an overall "display" for the attacker. An
example would be simulating an infection by a virus while actually destroying the
infection. "Insights" would be the next step, where a set of lies and displays could be
integrated into an overall defensive strategy designed to cause the attacker the maximum
amount of trouble, using methods from artificial intelligence. (Cohen, 1999) gives an
interesting further taxonomy of deception methods.
Implementation of automatic deceptions and deception planning
We have implemented several demonstration systems for deceptive software. One was a
Web browser that delays answering requests when it suspects it is under attack (Julian et
al, 2003). Another was a file-transfer utility that pretends to succumb to a well-known
buffer-overflow attack (Michael, Fragkos, and Auguston, 2003).
Another was a demonstration Web site including a number of deceptive practices. The
site looks like a file directory hierarchy (see Figure 1); users can click on names of
directories to see subfiles and subdirectories with fake dates and sizes, and can click on
names of files to see captioned image data. Some of the files appear to be encrypted like
that on the top right of Figure 1. Authorization errors are issued for some other files, and
loading time is proportional to the listed number of bytes of the file but is exaggerated.
However, the directories and files are all fake: Names are chosen randomly from a list of
all the Web page names at our school, and contents of the accessible and readable files
are generated by randomly choosing a picture and its caption from a school Web page.
The picture at the bottom of Figure 1 was allegedly the file /root/Code05/WAT/policy/
Old_pages/23_AdvancesNonPhotoRealisticRendering/Locations/NavalPostgraduate
School/images/aries_thumbnail.html, which suggests that this Aries vehicle has
something to do with photographic rendering, policy, and wide-area timesharing, none of
which is true. The site functions as a kind of "honeypot" for spies, encouraging them to
find spurious connections between seemingly meaningful things, while the encryption
and the authorization errors suggest hidden secrets.
We also implemented a software tool MECOUNTER (Rowe, 2003) to systematically
"counterplan" (Carbonell, 1981) or find ways to foil a computer-system attack plan. This
work is built on previous research in automated planning from constraints, and exploits a
hierarchical and probabilistic attack model. The model has two agents with different
goals, an attacker and a computer system. To test our counterplanning, we tested it on a
particular model we built for attacks that use buffer overflows to install rootkits. This
model is of a sufficiently high level to ignore details that change frequently between
attacks such as the particular buffer-overflow method, but detailed enough to capture
most details of situation-independent behavior. It models nineteen action types which
can be instantiated to ninety-three distinct actions. The specifications cover a possible
115 distinct facts (and their 115 negations) in states, preconditions, and goals, and allow
for thirteen categories of random occurrences with actions. We defined for it 3072 test
starting states for the goals of installing a rootkit on a system, installing gimmicked portmanagement software, and logging out. When no complicating random events occur,
forty-eight steps are sufficient to achieve the goal from the most complex start state.
Our approach to counterplanning is to first find all possible atomic "ploys" that can
interfere with the plan. Ploys are simple deceits the operating system can perform such
as lying about the status of a file. We analyze ploys as to the degree of difficulty they
cause to the attack plan wherever they can be applied. This is more complex than it
seems because ploys may necessitate changes to more than one fact simultaneously. For
instance, if we add a fact that a file F on site S is compressed, we must add the fact that F
is on S if that fact is not asserted already. So for any proposed deletion or addition of a
fact to a state, we must determine all implied facts and implied negations of facts. We
can infer that A implies B if whenever A occurs in a state, B also occurs. We can infer
that A implies not(B) if whenever A occurs in a state, B does not occur. Such
implications obey transitivity (if A implies B and B implies C, A implies C) and
contrapositivity (if A implies B, then not(B) implies not(A)) which reduces their required
number. As an aid to designers of deception strategies, we have a tool program that
Figure 1: Example from the fake file directory deception.
examines the states resulting from a set of simulation runs of the planner and suggests
implications.
Several principles then can be used to prune possible ploys. It makes no sense to apply a
ploy to a state if the ploy is a normal plan action for that state. Facts added by a ploy that
are already true in a state, or facts deleted by a ploy that are already false in a state, can
be ignored to simplify the ploy (or eliminate it if all changes are removed). It is not
generally possible to delete mental consequences of actions (such as human knowledge of
particular vulnerability), though strong efforts at disinformation can sometimes work. It
makes no sense to delete, add, or change an order with a ploy since computers are should
be agents of human needs and this kind of deception is easily apparent. Similarly, it
makes no sense to delete a report since a human is expecting that report. But false reports
are useful ploys, either events that never occurred (like reporting that the network
crashed) or events that occurred differently (like reporting that the network is slow when
it is not); false reports eventually cause precondition violations and failure during
execution of actions. We assume a false report must relate to a precondition or
postcondition of the preceding action. For our rootkit-installation example after pruning,
we found 588 implications, 16 fact-deletion ploys, 28 fact-addition ploys, and 16 ploys
with both fact deletion and addition.
We then formulate a counterplan by selecting the most cost-effective set of ploys and
assign appropriate presentation methods for them, taking into account the likelihood that,
if we are not careful, the attacker will realize they are being deceived and will terminate
our game with them. The counterplan can be accomplished by a modified operating
system. An exhaustive approach to finding the best ploys for the counterplan is to
systematically consider each one for each state, an analogy to approximating partial
derivatives of a cost function. The most troublesome ploy-state combinations for the
attacker can be executed. However, much of this exhaustive analysis is unnecessary. We
can collapse analysis of identical states in different runs, building a Markov state model
with state-transition probabilities. State equivalence can be qualitative to further reduce
the possibilities. We ran our rootkit-installation model 500 times (in about 700 minutes)
with random starting states drawn from the set of 3072, the defined random
postconditions, and durations defined by probability distributions (allowing that attacker
and system can work in parallel) to get 10,276 distinct states in 21,720 total states, which
cut our work in half.
A second efficiency idea is to infer good ploys from similar situations using inheritance
and inheritance-like rules. We devised useful rules for "backward temporal suitability
inheritance", "downward fixplan inheritance", and "ploy fixplan following". For our full
example of rootkit installation with 500 simulation runs, there were 70 ploys for the
10,276 possible states, providing 616,560 ploy-to-state match possibilities. Only 19,112
of these were needed for initial analysis, and temporal inheritance expanded this to
104,971. Of these, only 18,835 (3.0%) were found meaningful and damaging to the
attacker. (The average fixplan needed 6.6 steps to return the attacker to a known state.)
Combining this data with the benefits of the Markov model, we reduced our
counterplanning effort to 1.4% of the cost of an exhaustive test of changes to the
simulation, without eliminating any useful possibilities.
After promising ploys and their best times of application to the plan have been computed,
we must choose a good set of them to comprise the counterplan. Our benefit metric must
reflect the results of numerous "red team" experiments that showed that well-trained and
determined attackers usually eventually gained control of target computer systems. So
our only realistic objective is to delay the attacker maximally. But we cannot just do this
by implementing every ploy every time because the more ploys we use, the more likely
the attacker will suspect they are being fooled. Then the more likely the attacker will
give up and log off, and we cannot then delay them further. The simplest acceptable
model of the expected benefit due to ploy i at state j in a counterplan we found was:
k j g j ei c i j ((1 + ρ )mi j − ρ ) f ((1 − p i )(1 − a i ,1,i −1 ))
where k j is the frequency of the occurrence of state j in a randomly chosen complete
attack plan; g j is the probability that a user beginning an attack plan including j actually
reaches state j (without being discouraged, etc.); ei is the probability that ploy i succeeds;
ci j is the expected time added to the plan by the ploy i at state j; ρ is the ratio of the
value of a delay of one unit of a legitimate user's time to the delay of one unit of an
attacker's time; mi j is the probability the behavior observed so far is part of the attack
plan for which the ploys were generated; f(x) is a sigmoid function between 0 and 1 (we
used f (x) = x 2 /(100 + x 2 ) in experiments); pi is the a priori probability of the ploy
occurring at random; a i ,1,i −1 is the association probability between this ploy and the mostsimilar previous one.
We used a greedy search to choose the best set of ploys since it performed almost as well
as branch-and-bound in test runs. That is, we choose the best ploy-time pair, then the
second best of the remaining ploy-time pairs after adjusting probabilities, then the third,
and so on until expected ploy time delays no longer exceed a fixed threshold. We use the
same counterplan for each attack because consistency is important in deception. We
discovered with MECOUNTER analyzing the results of the 500 simulation runs that the
best way to impede the root-compromise plan was to do 22 ploy-state combinations.
These changes included some obvious ones (like faking general network problems and
deleting the rootkit after the attacker has logged out) and less obvious ones (such as
issuing false reports that the downloaded files are now recompressed). In general, all
ploys proposed by MECOUNTER were helpful and reasonable for defense of the system.
Prototype design of an intrusion interception language CHAMELEON
We also developed and implemented the first version of the rule language
CHAMELEON (Michael, Fragkos, and Auguston, 2003) for experiments with software
decoys in Red Hat Linux 6.2 environment. The implementation is based on the Linux
kernel wrapper tools developed by NAI (Ko et al, 2000). This provides a more general
approach to implementing deceptions in the form of a tool to systematically modify large
software systems like operating systems.
This first version of rule language provides functionality for signature-based intrusion
detection and countermeasures, like delay or total blocking of kernel command
execution, and error message generation. Intrusion signatures can be specified as regular
expressions over kernel subroutine calls and can involve also values of input and output
parameters of kernel calls. The CHAMELEON compiler takes the rule source code and
generates wrapper code in the Wrapper Definition Language (WDL) in addition to a
script file necessary to compile the WDL code into executable and install and activate the
wrapper in the kernel space. The Appendix shows the formal syntax of the language.
Wrapper Support System (WSS) monitors install wrappers and creates a new instance of
a wrapper for each process executed within the system. Since event patterns can be
accompanied by actions written in the C language, it becomes possible to program
arbitrary countermeasures in response to the detected intrusion activities.
As an example, the rule below detects a sequence of file operations, including opening
the file, some read/write operations, and closing the file. Each event will cause a
message to be sent to the system-monitoring log file with the file name involved. The
pre and post options indicate whether the corresponding action is performed before or
after the matching kernel call. $path is one of several predefined access variables that
provide values of kernel call parameters.
/* simple rule example */
R1 :
detect
open pre { wr_printf("open file %s", $path) ; }
(
read pre { wr_printf("read file %s ", $path); } |
write pre {wr_printf("write file %s ", $path);}
)*
close post { wr_printf( "file %s closed", $path); }
Besides executing arbitrary C code, the actions performed by wrapper rules may include
two simple primitives: DENY, which will prevent execution of corresponding kernel call,
and DELAY(N), which delays execution of kernel call by N milliseconds.
The CHAMELEON framework supports signature-based intrusion detection and a basic
countermeasures mechanism. Future work includes an extension to accommodate
anomaly-based statistical methods for detecting system misuse. One idea we are
exploring is to use a third-party intrusion detection system that communicate with the
wrappers (Monteiro, 2003), which appears a promising way to cut development costs
significantly.
Run-time monitoring of Knowledge Temporal Logic specifications
Another aspect of our research is modeling the time sequence of events in deceptions and
attempts to foil them. We have found temporal logic quite useful. (Pnueli, 1977)
suggested using Linear-Time Propositional Temporal Logic (LTL) for reasoning about
concurrent programs. LTL is an extension of propositional logic where, in addition to the
well-known propositional logic operators, there are four future-time operators (◊Eventually, -Always, U-Until, Ο-Next) and four dual past-time operators. (Fagin et al,
1995) developed a general framework for modeling knowledge and computation and
apply it towards reasoning about knowledge in distributed systems. This framework,
which we refer to as knowledge logic, is based on propositional modal logic.
A card-game example was introduced in (Fagin et al, 1995). It consists of two players (1
and 2) and three cards (A, B and C). Each player takes one card and the third card is left
face down on the table. A possible world is described in the formal model by the cards
that the players hold. If player 1 holds A and player 2 holds B we denote the world as (A,
B). Hence there are six possible worlds (A, B), (A, C), (B, A), (B, C), (C, A) and (C, B).
Now if the player 1 has card C then he clearly thinks that there are two possible worlds,
one where player 2 holds card A and in the other where player 2 holds card B. The
model is represented visually in Figures 2 and 3.
1
A,B
A,C
2
2
C,B
1
C,A
2
B,A
1
B,C
Figure 2: Kripke model for the card game.
<WORLD NAME="AB">
<PL CODE="player1HasA" TRUTH="1" />
<PL CODE="player1HasB" TRUTH="0" />
<PL CODE="player1HasC" TRUTH="0" />
<PL CODE="player2HasA" TRUTH="0" />
<PL CODE="player2HasB" TRUTH="1" />
<PL CODE="player2HasC" TRUTH="0" />
Figure 3: Representation of the world AB in the card games’ knowledge file.
Run-time Monitoring of KTL
Run time Execution Monitoring (REM) is a class of methods of tracking temporal
requirements for an underlying application. Of particular interest are on-line REM
methods where temporal rules are evaluated without storing an ever-growing and
potentially unbounded history trace. (Drusinsky, 2000) and (Drusinsky and Shing, 2003)
describe the DBRover and Temporal Rover REM tools. These tools support REM and
simulation of properties written in LTL (future-time and past-time) with counting
operators, as well as real-time and time-series constraints. We have extended the
specification language used by these tools with two new operators, knows (K) and
believes (B). In addition, the user specifies a possible worlds model, such as in Figure 2,
using an XML knowledge file. The Rover tools assume that agent relations, such as the
Figure 2 relation (<C,B>,<C,A>, player-1), are transitive. The end user can select
whether the agent’s relation is reflexive and symmetric, though we have only
experimented with a full equivalence relation.
Consider the KTL rule for the card game: R1=◊≤3K1K2≤2{player1HasCardB ∨
player1HasCardC}, i.e., R1 states that "within three cycles player-1 will know that
player-2 knows that for two consecutive cycles player-1 has card B or C." When the
Rover tools monitor rule R1 they repeatedly read a stream of propositional statements
about the status of each player. In the implementation of the card game demo we chose to
represent each such reading as a 6-tuple <player1HasCardA, player1HasCardB…
player2HasCardC>; the reading of a new tuple constitutes a cycle from the temporal
perspective. The domain of propositions in the input stream (six propositions in our case)
and the domain of propositions in the possible worlds model are related by knowledge
file which assigns a truth value to propositions in each world. Listing 1 contains the
specification of the world AB in knowledge file for the card game.
Consider the following sequence of readings (i.e., cycles), where XY represents the world
where player-1 has card X and player-2 has card Y: σ=AB.AC.BC.BA. Consider for
example world AB, which is the world of cycle 0. Using the possible worlds model of
[FHMV], AB |- K1 ρ if ρ holds in all worlds that are equivalent to AB for player-1, i.e., in
worlds AB and AC. AB |- ρ i.e., AB |- K2 ϕ if ϕ holds in all worlds that are equivalent to
AB for player-2, i.e., in worlds AB and CB. However, player1HasCardB ∨
player1HasCardC is not true in world AB. Hence the monitoring result for R1 in cycle 0
is false. Consider the world for cycle 2, namely BC. ρ= K2 ϕ must hold in both (i) BC and
(ii) BA. For (i) ϕ must hold in BC and AC, and for (ii) ϕ must hold in BA and CA. One of
those four worlds, AC, does not satisfy player1HasCardB ∨ player1HasCardC resulting
for R1 in cycle 2 is false.
Consider the slightly modified rule R2=◊≤3B1K2≤2 {player1HasCardB ∨
player1HasCardC}. Using the same input sequence σ, we examine R2 for the world for
cycle 2, namely BC. ρ= K2 ϕ must hold in either (i) BC or (ii) BA, where (i) and (ii) are
described above; case (ii) holds in cycle 2. The world for cycle 3 is BA where ρ= K2 ϕ
must hold in either (i) BC or (ii) BA, which is identical to cycle 2. Hence, ρ holds for two
consecutive cycles starting in cycle 2; therefore R2 is true.
Modeling the WWII "Man Who Never Was" Deception Ploy
Let us apply this to a classic military example from (Dunnigan and Nofi, 2001). In the
spring of 1943 the Allies began to consider options for the invasion of Europe.
Strategically located in the Mediterranean, Sicily was a good target. However, due to
various obstacles facing the Allied command it was decided to not invade Sicily but
rather to form a complete set of fake plans for another invasion site and time and then
convince the Germans of this plan. A plan named “Operation Mincemeat," was created
in which a British spy would be “captured” with the false documents. This spy was
Major Martin, a corpse. Martin was provided with false papers in a briefcase attached to
his body to give a false view of when and where the invasion would occur. A 30-yearold pneumonia victim who had recently died and who resembled a typical staff officer
was chosen as Major Martin. The fluid in his lungs would suggest that he had been at sea
for an extended period. Fake love letters, overdue bills, and a letter from the Major’s
father, and some personal belongings were put on his corpse. Martin’s obituary was in
the British papers, and his name appeared on casualty lists. Major Martin was taken to a
point just off the coast of Spain where the Allies knew the most efficient German military
intelligence network was in place, put in a life jacket, and set adrift. The body soon
washed ashore practically at the feet of a Spanish officer conducting routine coastal
defense drills. He notified the proper authorities, which notified the Germans. On the
return of Major Martin’s body to England, they discovered that his briefcase had been
very carefully opened, then resealed. The Germans had photographed every document on
Martin’s body and in his briefcase, then released him to the Spanish authorities for return
to England, for the English authorities had been demanding return of Martin’s body. One
additional less known fact is that during the time that the leading German coroner was in
Spain during when the Spanish found Martin’s body. The German coroner was capable
of uncovering the real cause of death, pneumonia. However, as it happened the dots were
not connected and this coroner did not examine Major Martin’s body.
The logic representation of the "Man who never was" deception ploy is concerned with
all possible worlds seen by the three agents, the British, the Germans, and the Spanish.
We define the following three Boolean propositions, which together induce a space of
eight possible worlds:
• H- represents possible worlds where Major Martin episode is a deception.
• G- represents possible worlds where the German coroner is in Spain and is
working on the case.
• M- represents possible worlds where Major Martin drowned.
Hence, for example, w1 = <H, ¬G, ¬M> is the possible world where the Major Martin
episode is a deception, the German coroner is not in Spain, and Major Martin did not
drown. This is the possible world the British considered they were in, but in fact, they
were unable to distinguish between this world and w2 = <H, G, ¬M> and could have
very well been in world w2. As in the card example of Figure 2, KL relations are used to
aggregate worlds an agent is unable to distinguish. Figure 4 illustrates the KL model for
the "Man who never was" deception ploy.
H,G,M
S
H,G, ¬M
S
¬H,G, ¬M
D,S
H, ¬G, ¬M
B,S
D,S
¬H,G, M
H, ¬G,M
B,S
D,S
B,S
B,S
D,S
¬H, ¬G,M
D,S
¬H, ¬G, ¬M
Figure 4: The KL model for the "Man who never was" ploy, where B=British,
D=German, S=Spanish.
Deception and the law
Response to attacks
In addition to the technical aspects of realizing cyber-based deceptions, we are investigating social
aspects, in particular those relating to conducting deception within the confines of the law. For instance,
(Michael, Wingfield, and Wijesekera 2003) demonstrated how the Schmitt Analysis (Schmitt, 1998) can
be used to perform an academically rigorous evaluation of the factors affecting a lawful response to a
terrorist attack, regardless of whether the attack is effected via kinetic or cyber means. Schmitt Analysis
is not intended to provide a mechanical algorithm for solving what are some of the most technically and
legally challenging questions we face; instead, it is designed to be a useful framework for analyzing the
effect of key factors on the legal nature of an attack and the appropriate response. As such, it provides
an invaluable tool for clarifying thought and highlighting areas of misunderstanding or disagreement. It
is an excellent basis for training lawyers, technologists, and decision makers in government. Finally,
Schmitt’s methodology shows the way for parallel efforts to make more rigorous and more transparent
the legal analyses in neighboring areas.
Misuse of deception
Cyber decoys provide a means for automating, to a degree, counterintelligence activities and responses
to cyber-attacks. Like other security mechanisms for protecting information systems, it is likely that
cyber decoys will in some instances be misused. In the United States, criminal law provides us with
analogies for preventing or punishing improper state use of deception, and criminal and civil law give us
a range of tools to use against private actors. However, in addition to states, nongovernmental entities
and individuals can employ cyber decoys. (Michael and Wingfield, 2003) presented a principled
analysis of the use of cyber decoys, in which they explored the absolute minima in terms of customary
principles for what might be considered to be acceptable use of deception.
According to (Michael and Wingfield, 2003), software decoys can be used as an airlock between the
technology and the law in that the decoys can be programmed with a wide spectrum of options for
taking action. Software decoys provide for anticipatory exception handling. In other words, the decoy
anticipates the types of inappropriate interaction between itself and processes or objects requesting its
services, providing in advance a set of rules for learning about and evaluating the nature of the
interaction, in addition to rules for response. One could envision developing policy that places
boundaries on the extent and type of deception to be employed, but providing some degree of latitude to
the user of decoys to inject creativity into deceptions so as to increase the likelihood that the deceptions
will be effective. The boundaries could be used to delineate the thresholds that if breached could result
in the misuse or unlawful use of decoys. That is, principled analysis can be used to meet all domestic
legal criteria, and set absolute minima in terms of the four customary principles of discrimination,
necessity, proportionality, and chivalry.
The U.S. Department of Homeland Security will be responsible for coordinating the protection of both
public and private cybernetic property using cyber weapons. There are gray areas in the law regarding
how to coordinate counterintelligence activities and countermeasures that need to take place at the
intersection of law enforcement, intelligence collection, and military activity. Principled analysis can
help here too, but public policymakers will need technically and legally sophisticated advice to manage
the best technological defense, including deception techniques, available within the framework of the
law.
Tools and support for education
We have been working from two different but complimentary areas: lawful use of software-based
deception (Michael and Wingfield, 2003), and cyber law (Wingfield, 2000). To this end, we are
developing case studies, with the aid of some automated tools, to teach officials from the law
enforcement, intelligence, and military communities how to reason about the legality of responses to
terrorist attacks. With appropriate training, information, and analysis (both automated and with man-inthe-loop), it will be possible to reduce the “gray area” of legal uncertainty to a minimum, and allow the
most complete range of effective responses against those who attack a nation’s critical infrastructure.
(Farkas et al., 2004) reports development of THEMIS, the Threat Evaluation Metamodel for Information
Systems. THEMIS is a description logic-based framework to apply state, federal, and international law
to reason about the intent, with respect to collateral consequences, of computer network attacks. The
purpose THEMIS is intended to serve is to provide law enforcement agencies and prosecutors with
automated tools for building legally credible arguments, and for network designers to keep their
defensive and retaliatory measures—including the use of deception mechanisms—within lawful limits.
THEMIS automates known quantitative measures of characterizing attacks, weighs their potential
impact, and places them in appropriate legal compartments.
Acknowledgements
Conducted under the auspices of the Naval Postgraduate School’s Homeland Security Leadership
Development Program, this research is supported by the U.S. Department of Justice Office of Justice
Programs and Office of Domestic Preparedness. The views and conclusions contained herein are those
of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of the U.S. Government.
References
J. Bell & B. Whaley, Cheating and Deception, New Brunswick, NJ: Transaction Publishers, 1991.
J. Carbonell, Counterplanning: A strategy-based model of adversary planning in real-world situations,
Artificial Intelligence, vol. 16, pp. 295-329, 1981.
F. Cohen, Simulating cyber attacks, defenses, and consequences, retrieved from http://all.net/journal/ntb/
simulate/simulate.html, May 1999.
D. Drusinsky, The Temporal Rover and ATG Rover, Proc. Spin2000 Workshop, Springer Lecture Notes
in Computer Science, No. 1885, pp. 323-329.
D. Drusinsky and M. Shing, Verification of timing properties in rapid system prototyping, Proc. Rapid
System Prototyping Conference 2003 (RSP'2003).
J. F. Dunnigan and A. A. Nofi, Victory and Deceit, 2nd edition: Deception and Trickery at War, San
Jose, CA: Writers Press Books, 2001.
R. Fagin, J. Halpern, Y. Moses, and M. Vardi, Reasoning About Knowledge, The MIT Press, 1995.
C. Farkas, T. C. Wingfield, J. B. Michael, and D. Wijesekera, THEMIS: Threat Evaluation Metamodel
for Information Systems, Proc. Second Symposium on Intelligence and Security Informatics, Tucson,
Ariz., June 2004, in Springer Lecture Notes in Computer Science, 2004.
D. Julian, N. C. Rowe, and J. B. Michael, Experiments with deceptive software responses to bufferbased attacks, Proc. 2003 IEEE-SMC Workshop on Information Assurance, West Point, NY, June 2003,
pp. 43-44.
C. Ko, T. Fraser, L. Badger, and D. Kilpatrick, Detecting and countering system intrusions using
software wrappers, Proc. USENIX Security Symposium 2000, Denver, CO, August 2000, pp. 145-156.
B. Michael, G. Fragkos, and M. Auguston, An experiment in software decoy design: Intrusion detection
and countermeasures via system call instrumentation. In Gritzalis, D., di Vimercati, S. D. C., Samarati,
P., and Katsikas, S., eds. Security and Privacy in the Age of Uncertainty, Norwell, Mass.: Kluwer
Academic Publishers, 2003, pp. 253-264.
J. B. Michael, T. C. Wingfield, and D. Wijesekera, Measured responses to cyber attacks using Schmitt
Analysis: A case study of attack scenarios for a software-intensive system, Proc. IEEE Twenty-seventh
Annual Int. Computer Software and Applications Conf., Dallas, Tex., Nov. 2003, pp. 622-627.
J. B. Michael and T. C. Wingfield, Lawful cyber decoy policy. In Gritzalis, D., Vimercati, S. C.,
Samarati, P., and Sokratis, K., eds., Security and Privacy in the Age of Uncertainty. Boston, Mass.:
Kluwer Academic, 2003, pp. 483-488.
G. Miller and J. Stiff, Deceptive Communications. Newbury Park, UK: Sage Publications, 1993.
N. C. Rowe, Counterplanning deceptions to foil cyber-attack plans, Proc. 2003 IEEE-SMC Workshop
on Information Assurance, West Point, NY, June 2003, pp. 203-211.
V. Monteiro, How intrusion detection can improve software decoy applications, M.S. thesis in Computer
Science, Naval Postgraduate School, March 2003.
A. Pnueli, The temporal logic of programs, Proc.18th IEEE Symposium on Foundations of Computer
Science, pp. 46-57, 1977.
N. C. Rowe and H. Rothstein, Two taxonomies of deception for attacks on information systems,
submitted to Journal of Information Warfare, March 2004.
M. N. Schmitt, Bellum Americanum: The US view of Twenty-first Century war and its possible
implications for the law of armed conflict, Mich. J. Int. Law 19, 4 (1998), pp. 1051-1090.
G. Tan, "Cyberterrorism and Cyber Deception", M.S. thesis in Computer Science, Naval Postgraduate
School, December 2003.
T. C. Wingfield, The Law of Information Conflict: National Security Law in Cyberspace, Falls Church,
Va.: Aegis Research Corp., 2000.
Note: Papers and theses of our deception research group are available at
www.cs.nps.navy.mil/research/deception/.
Appendix: The syntax of CHAMELEON rule language
Rule::=
Rule_name ':' detect Event_sequence
Event_sequence::=
(+ Event_pattern +) |
'(' Event_sequence ')' [ ( '*' ! '+' ! '?') ] |
'(' Event_sequence ( '|' Event_sequence )+ ')'
Event_pattern::=
Event_type [ probe Condition ] [ pre Actions ] [ post Actions ]
Condition::= '(' C_expression ')'
Actions::=
'{' Action * '}'
Action::=
DENY | DELAY '(' number_of_msec ')' | C_operator
Event_type::=
ANY | kernel_subroutine_name
Rule_name ::=
identifier
Notes:
•
•
•
•
Conditions and actions may include references to the kernel call parameters, like $path.
The current wrapper system can monitor approx. 150 kernel subroutine names.
Actions can be performed just before (pre) or after (post) the detected event.
The probe condition provides for additional context checking when the event is detected.