the Test host receives only legitimate packets from
the suspicious host D, that is the packets’ source IP
is host D’s IP and the packets’ destination IP is the
Test host E’s IP, then we can conclude that the
suspicious host D has enabled IP packet routing but
it is not sniffing any network traffic. Host D may
have enabled IP packet routing by accident without
any intention to perform malicious sniffing activities
against other network hosts. The whole process of
detection is then repeated for the remaining
identified suspicious hosts.
7 THE ANTIMIM APPLICATION
Based on the proposed detection techniques, an
application, called AntiMiM, has been developed
using Visual C++6.0 and WinpCap Library. The
application detects any host sniffing the switched
network using the MiM attack. AntiMiM application
has been evaluated against the two IDSs Arpwatch
and Snort. The application does not require a
monitoring port (SPAN) to run, unlike Snort and
Arpwatch. In addition, Snort and Arpwatch are not
able to detect the network’s hosts with enabled IP
packet routing. Finally, AntiMiM does not require a
predefined database of valid IP/MAC entries, like
Snort and Arpwatch. The database is used to verify
whether or not a given IP/MAC pair found in a
captured packet belongs to the database. Usually,
such a packet is used when performing ARP cache
poisoning attack. When Snort or Arpwatch are used
to detect ARP cache poisoning attack, the network
administrator should provide them with a database of
valid IP/MAC pairs. The generation of such a
database is times consuming. In addition, in large
networks, the database may include erroneous
entries. When a new host is connected to the
network, or a host gets a new MAC address (after
changing its NIC card) or IP address, the database
should be updated.
8 NETWORK PERFORMANCE
ANALYSIS
The proposed detection mechanism uses two
techniques that attempt to send spoofed packets to
the network’s hosts and then collect the response
packets for analysis. Therefore, for the efficiency of
the proposed mechanism, it is important to compute
the number of packets injected in the network. If the
network is flooded with heavy traffic, then its
performance may be affected.
We assume that there are n hosts in the network
including the Test host used to perform all the tests
(refer to sections 6.1 and 6.2). The proposed
mechanism detects first, among the n hosts, the hosts
with enabled IP packet routing, using the technique
discussed in section 6.1. We assume that m hosts
with enabled IP packet routing have been identified
(called suspicious hosts). Hence, the Test host will
send (n-1) trap ICMP echo request packets to the (n-
1) hosts in the network. Only, m hosts will forward
back the received packets, since they have enabled
IP packet routing. Therefore, ((n-1) + m) packets are
injected in the network, while detecting the hosts
with enabled IP packet routing.
Then, the proposed mechanism attempts to detect
among the m identified suspicious hosts, the hosts
that have performed ARP cache poisoning attack
against the other hosts. When the technique of the
section 6.2 is used, the Test host sends fake ARP
requests to the suspicious hosts in order to corrupt all
the entries in their cache. Since there are n hosts
including m suspicious hosts in the network, and the
maximum number of IP/MAC entries in an ARP
cache is (n-1), the Test host needs to generate ((n-
1)*m) fake ARP request packets. In addition, since
the ARP cache entries are supposed to expire if they
are not referenced within few minutes (typically
between tens of seconds to a few minutes, according
to the OS), then the Test host should keep sending
fake ARP requests periodically. As long as the Test
host keeps doing this, the suspicious hosts will not
issue ARP requests for that IP addresses, since their
ARP cache entries will always be within the timeout
threshold. Therefore, if the Test host waits a period
of 10 seconds, for example, and then sends again the
((n-1) *m) fake ARP packets, and the detection
process will take 1 minutes, then the Test host will
inject (((n-1)*m)*6) packets in the network.
Consequently, the use of the proposed techniques
does not degrade the network performance since
they do not flood the network with heavy traffic. On
the other hand, the techniques are independent from
the Switch brand and model, since they are based on
the attack of the ARP caches of the suspicious hosts.
9 CONCLUSION
Throughout this paper, we demonstrated that sniffing
is still a big thread even in a switched network. This
is against the belief that switched network are safe
from sniffing activities.
SECRYPT 2006 - INTERNATIONAL CONFERENCE ON SECURITY AND CRYPTOGRAPHY
46