Evil bit

From Wikipedia, the free encyclopedia

The evil bit is a fictional IPv4 packet header field proposed in a humorous April Fools' Day RFC from 2003,[1] authored by Steve Bellovin. The Request for Comments recommended that the last remaining unused bit, the "Reserved Bit"[2] in the IPv4 packet header, be used to indicate whether a packet had been sent with malicious intent, thus making computer security engineering an easy problem – simply ignore any messages with the evil bit set and trust the rest.


The evil bit has become a synonym for all attempts to seek simple technical solutions for difficult human social problems which require the willing participation of malicious actors, in particular efforts to implement Internet censorship using simple technical solutions.

As a joke, FreeBSD implemented support for the evil bit that day, but removed the changes the next day.[3] A Linux patch implementing the iptables module "ipt_evil" was posted the next year.[4] Furthermore, a patch for FreeBSD 7 is available,[5] and is kept up-to-date.

There is an extension for XMPP protocol "XEP-0076: Malicious Stanzas", inspired by evil bit.[citation needed]

This RFC has also been quoted in the otherwise completely serious RFC 3675, ".sex Considered Dangerous", which may have caused the proponents of .xxx to wonder whether the Internet Engineering Task Force (IETF) was commenting on their application for a top-level domain (TLD) – the document was not related to their application.[6]

For April Fool's 2010, Google added an &evil=true parameter to requests through the Ajax APIs.[7]

A patch to add compatibility for RFC 3514 in Wireshark was proposed but never implemented. [8]

See also[edit]


  1. ^ S. Bellovin (April 1, 2003). The Security Flag in the IPv4 Header. Network Working Group. doi:10.17487/RFC3514. RFC 3514. Informational. This is an April Fools' Day Request for Comments.
  2. ^ Rocha, Luis (April 1, 2013). "The Evil Bit". Count Upon Security. Retrieved May 9, 2016.
  3. ^ Implementation, removal
  4. ^ "ipt_evil, kernel part". Archived from the original on February 2, 2011. Retrieved January 1, 2011.
  5. ^ "RFC3514 for FreeBSD7". Archived from the original on February 18, 2009. Retrieved December 26, 2008.
  6. ^ "Adult-Related TLDs Considered Dangerous". Retrieved July 6, 2017.
  7. ^ "Helping you help us help you". googleajaxsearchapi.blogspot.co.uk. Retrieved February 19, 2017.
  8. ^ "Wireshark · Ethereal-dev: [Ethereal-dev] Patch: RFC 3514 support". Wireshark. Retrieved May 15, 2024.