Jump to content

英文维基 | 中文维基 | 日文维基 | 草榴社区

Promiscuous mode

From Wikipedia, the free encyclopedia

In computer networking, promiscuous mode[1][2][3][4] is a mode for a wired network interface controller (NIC) or wireless network interface controller (WNIC) that causes the controller to pass all traffic it receives to the central processing unit (CPU) rather than passing only the frames that the controller is specifically programmed to receive. This mode is normally used for packet sniffing that takes place on a router or on a computer connected to a wired network or one being part of a wireless LAN.[5] Interfaces are placed into promiscuous mode by software bridges often used with hardware virtualization.

In IEEE 802 networks such as Ethernet or IEEE 802.11, each frame includes a destination MAC address. In non-promiscuous mode, when a NIC receives a frame, it drops it unless the frame is addressed to that NIC's MAC address or is a broadcast or multicast addressed frame. In promiscuous mode, however, the NIC allows all frames through, thus allowing the computer to read frames intended for other machines or network devices.

Many operating systems require superuser privileges to enable promiscuous mode. A non-routing node in promiscuous mode can generally only monitor traffic to and from other nodes within the same collision domain (for Ethernet and IEEE 802.11) or ring (for Token Ring). Computers attached to the same Ethernet hub satisfy this requirement, which is why network switches are used to combat malicious use of promiscuous mode. A router may monitor all traffic that it routes.

Promiscuous mode is often used to diagnose network connectivity issues. There are programs that make use of this feature to show the user all the data being transferred over the network. Some protocols like FTP and Telnet transfer data and passwords in clear text, without encryption, and network scanners can see this data. Therefore, computer users are encouraged to stay away from insecure protocols like telnet and use more secure ones such as SSH.

Detection

[edit]

As promiscuous mode can be used in a malicious way to capture private data in transit on a network, computer security professionals might be interested in detecting network devices that are in promiscuous mode. In promiscuous mode, some software might send responses to frames even though they were addressed to another machine. However, experienced sniffers can prevent this (e.g., using carefully designed firewall settings). An example is sending a ping (ICMP echo request) with the wrong MAC address but the right IP address. If an adapter is operating in normal mode, it will drop this frame, and the IP stack never sees or responds to it. If the adapter is in promiscuous mode, the frame will be passed on, and the IP stack on the machine (to which a MAC address has no meaning) will respond as it would to any other ping.[6] The sniffer can prevent this by configuring a firewall to block ICMP traffic.

Some applications that use promiscuous mode

[edit]

The following applications and applications classes use promiscuous mode.

Packet Analyzer
Virtual machine
Containers
  • Docker with optional Macvlan driver on Linux
Cryptanalysis
Network monitoring
Gaming

See also

[edit]

References

[edit]
  1. ^ "Glossary - Promiscuous Mode". blumira.com.
  2. ^ Zouheir Trabelsi; Hamza Rahmani (2004). INSTICC (ed.). Promiscuous Mode Detection Platform (PDF). Proceedings of the 2nd International Workshop on Security in Information Systems - Volume 1: WOSIS, (ICEIS 2004). SciTePress. pp. 279–292. doi:10.5220/0002682902790292. ISBN 972-8865-07-4.
  3. ^ "Promiscuous Monitoring in Ethernet and Wi-Fi Networks" (PDF). TamoSoft. 2005.
  4. ^ Lee D. VanGundy (July 2014). An analysis of network interface card promiscuous mode detection methods in virtual network (PDF) (MSc thesis). University of Idaho.
  5. ^ SearchSecurity.com definition of promiscuous mode
  6. ^ Sumit Dhar, Sniffers: Basics and Detection (PDF), Version 1.0-1, Information Security Management Team, Reliance Infocomm, retrieved 2024-12-01