Ettercap is a comprehensive network security suite for man-in-the-middle attacks on local area network (LAN). It is used for network and host analysis and security auditing.
Ettercap works by putting the network interface into promiscuous mode and by ARP poisoning the target machines. It supports custom plugins to extend its features.
Ettercap works on Unix-based operating systems including Linux, Solaris, Debian, Ubuntu, Fedora, Gentoo, Pentoo, Mac OSX, FreeBSD, OpenBSD, NetBSD, and on Windows (untested) 2000, XP, 2003, Vista, 7, and 8.
Ettercap supports 3 types of user interfaces namely, command-line interface (CLI), graphical user interface (GUI) and NCurses.
Ettercap features sniffing of live connections, content filtering on the fly. It also supports active and passive dissection of many protocols.
4 sniffing modes available are:
- IP-based: packets are filtered based on IP source and destination
- MAC-based: packets are filtered based on MAC address, useful for sniffing connections through a gateway
- ARP-based: uses ARP poisoning to sniff on a switched LAN between two hosts (full-duplex)
- PublicARP-based: uses ARP poisoning to sniff on a switched LAN from a victim host to all other hosts (half-duplex)
- Character injection into an established connection: characters can be injected into a server (emulating commands) or to a client (emulating replies) while maintaining a live connection.
- SSH1 support: the sniffing of a username and password, and even the data of an SSH1 connection. Ettercap is the first software capable of sniffing an SSH connection in full duplex.
- HTTPS support: the sniffing of HTTP SSL secured data-even when the connection is made through a proxy.
- Remote traffic through a GRE tunnel: the sniffing of remote traffic through a GRE tunnel from a remote Cisco router, and perform a man-in-the-middle attack on it.
- Packet filtering/dropping: setting up a filter that searches for a particular string (or hexadecimal sequence) in the TCP or UDP payload and replaces it with a custom string/sequence of choice, or drops the entire packet.
- OS fingerprinting: find the geometry of the LAN.
- Kill a connection: killing connections of choice from the connections-list.
- Passive scanning of the LAN: extract useful information about hosts in the LAN, open ports of a host, the version numbers of available services, the type of the host (gateway, router or simple PC) and estimated distances in number of hops.
- Hijacking of DNS requests.