Firewall (computing)

From Wikipedia, the free encyclopedia
(Redirected from Firewall (networking))

In computing, a firewall is a network security system that monitors and controls incoming and outgoing network traffic based on predetermined security rules.[1][2] A firewall typically establishes a barrier between a trusted network and an untrusted network, such as the Internet.[3]

History[edit]

The term firewall originally referred to a wall intended to confine a fire within a line of adjacent buildings.[4] Later uses refer to similar structures, such as the metal sheet separating the engine compartment of a vehicle or aircraft from the passenger compartment. The term was applied in the late 1980s to network technology[5] that emerged when the Internet was fairly new in terms of its global use and connectivity.[6] The predecessors to firewalls for network security were routers used in the late 1980s. Because they already segregated networks, routers could apply filtering to packets crossing them.[7]

Before it was used in real-life computing, the term appeared in the 1983 computer-hacking movie WarGames, and possibly inspired its later use.[8]

Types of firewall[edit]

Firewalls are categorized as a network-based or a host-based system. Network-based firewalls are positioned between two or more networks, typically between the local area network (LAN) and wide area network (WAN),[9] their basic function being to control the flow of data between connected networks. They are either a software appliance running on general-purpose hardware, a hardware appliance running on special-purpose hardware, or a virtual appliance running on a virtual host controlled by a hypervisor. Firewall appliances may also offer non-firewall functionality, such as DHCP[10][11] or VPN[12] services. Host-based firewalls are deployed directly on the host itself to control network traffic or other computing resources.[13][14] This can be a daemon or service as a part of the operating system or an agent application for protection.

An illustration of a network-based firewall within a network

Packet filter[edit]

The first reported type of network firewall is called a packet filter, which inspects packets transferred between computers. The firewall maintains an access-control list which dictates what packets will be looked at and what action should be applied, if any, with the default action set to silent discard. Three basic actions regarding the packet consist of a silent discard, discard with Internet Control Message Protocol or TCP reset response to the sender, and forward to the next hop.[15] Packets may be filtered by source and destination IP addresses, protocol, or source and destination ports. The bulk of Internet communication in 20th and early 21st century used either Transmission Control Protocol (TCP) or User Datagram Protocol (UDP) in conjunction with well-known ports, enabling firewalls of that era to distinguish between specific types of traffic such as web browsing, remote printing, email transmission, and file transfers.[16][17]

The first paper published on firewall technology was in 1987 when engineers from Digital Equipment Corporation (DEC) developed filter systems known as packet filter firewalls. At AT&T Bell Labs, Bill Cheswick and Steve Bellovin continued their research in packet filtering and developed a working model for their own company based on their original first-generation architecture.[18] In 1992, Steven McCanne and Van Jacobson released a paper on BSD Packet Filter (BPF) while at Lawrence Berkeley Laboratory.[19][20]

Connection tracking[edit]

Flow of network packets through Netfilter, a Linux kernel module

From 1989–1990, three colleagues from AT&T Bell Laboratories, Dave Presotto, Janardan Sharma, and Kshitij Nigam, developed the second generation of firewalls, calling them circuit-level gateways.[21]

Second-generation firewalls perform the work of their first-generation predecessors but also maintain knowledge of specific conversations between endpoints by remembering which port number the two IP addresses are using at layer 4 (transport layer) of the OSI model for their conversation, allowing examination of the overall exchange between the nodes.[22]

Application layer[edit]

Marcus Ranum, Wei Xu, and Peter Churchyard released an application firewall known as Firewall Toolkit (FWTK) in October 1993.[23] This became the basis for Gauntlet firewall at Trusted Information Systems.[24][25]

The key benefit of application layer filtering is that it can understand certain applications and protocols such as File Transfer Protocol (FTP), Domain Name System (DNS), or Hypertext Transfer Protocol (HTTP). This allows it to identify unwanted applications or services using a non standard port, or detect if an allowed protocol is being abused.[26] It can also provide unified security management including enforced encrypted DNS and virtual private networking.[27][28][29]

As of 2012, the next-generation firewall provides a wider range of inspection at the application layer, extending deep packet inspection functionality to include, but is not limited to:

Endpoint specific[edit]

Endpoint-based application firewalls function by determining whether a process should accept any given connection. Application firewalls filter connections by examining the process ID of data packets against a rule set for the local process involved in the data transmission. Application firewalls accomplish their function by hooking into socket calls to filter the connections between the application layer and the lower layers. Application firewalls that hook into socket calls are also referred to as socket filters.[citation needed]

Most common firewall log types[edit]

Traffic Logs:

  • Description: Traffic logs record comprehensive details about data traversing the network. This includes source and destination IP addresses, port numbers, protocols used, and the action taken by the firewall (e.g., allow, drop, or reject).
  • Significance: Essential for network administrators to analyze and understand the patterns of communication between devices, aiding in troubleshooting and optimizing network performance.

Threat Prevention Logs:

  • Description: Logs specifically designed to capture information related to security threats. This encompasses alerts from intrusion prevention systems (IPS), antivirus events, anti-bot detections, and other threat-related data.
  • Significance: Vital for identifying and responding to potential security breaches, helping security teams stay proactive in safeguarding the network.

Audit Logs:

  • Description: Logs that record administrative actions and changes made to the firewall configuration. These logs are critical for tracking changes made by administrators for security and compliance purposes.
  • Significance: Supports auditing and compliance efforts by providing a detailed history of administrative activities, aiding in investigations and ensuring adherence to security policies.

Event Logs:

  • Description: General event logs that capture a wide range of events occurring on the firewall, helping administrators monitor and troubleshoot issues.
  • Significance: Provides a holistic view of firewall activities, facilitating the identification and resolution of any anomalies or performance issues within the network infrastructure.

Session Logs:

  • Description: Logs that provide information about established network sessions, including session start and end times, data transfer rates, and associated user or device information.
  • Significance: Useful for monitoring network sessions in real-time, identifying abnormal activities, and optimizing network performance.

DDoS Mitigation Logs:

  • Description: Logs that record events related to Distributed Denial of Service (DDoS) attacks, including mitigation actions taken by the firewall to protect the network.
  • Significance: Critical for identifying and mitigating DDoS attacks promptly, safeguarding network resources and ensuring uninterrupted service availability.

Geo-location Logs:

  • Description: Logs that capture information about the geographic locations of network connections. This can be useful for monitoring and controlling access based on geographical regions.
  • Significance: Aids in enhancing security by detecting and preventing suspicious activities originating from specific geographic locations, contributing to a more robust defense against potential threats.

URL Filtering Logs:

  • Description: Records data related to web traffic and URL filtering. This includes details about blocked and allowed URLs, as well as categories of websites accessed by users.
  • Significance: Enables organizations to manage internet access, enforce acceptable use policies, and enhance overall network security by monitoring and controlling web activity.

User Activity Logs:

  • Description: Logs that capture user-specific information, such as authentication events, user login/logout details, and user-specific traffic patterns.
  • Significance: Aids in tracking user behavior, ensuring accountability, and providing insights into potential security incidents involving specific users.

VPN Logs:

  • Description: Information related to Virtual Private Network (VPN) connections, including events like connection and disconnection, tunnel information, and VPN-specific errors.
  • Significance: Crucial for monitoring the integrity and performance of VPN connections, ensuring secure communication between remote users and the corporate network.

System Logs:

  • Description: Logs that provide information about the overall health, status, and configuration changes of the firewall system. This may include logs related to high availability (HA), software updates, and other system-level events.
  • Significance: Essential for maintaining the firewall infrastructure, diagnosing issues, and ensuring the system operates optimally.

Compliance Logs:

  • Description: Logs specifically focused on recording events relevant to regulatory compliance requirements. This may include activities ensuring compliance with industry standards or legal mandates.
  • Significance: Essential for organizations subject to specific regulations, helping to demonstrate adherence to compliance standards and facilitating audit processes.

Configuration[edit]

Setting up a firewall is a complex and error-prone task. A network may face security issues due to configuration errors.[31]

Firewall policy configuration is based on specific network type (e.g., public or private), and can be set up using firewall rules that either block or allow access to prevent potential attacks from hackers or malware.[32]

See also[edit]

References[edit]

  1. ^ Boudriga, Noureddine (2010). Security of mobile communications. Boca Raton: CRC Press. pp. 32–33. ISBN 978-0849379420.
  2. ^ Macfarlane, Richard; Buchanan, William; Ekonomou, Elias; Uthmani, Omair; Fan, Lu; Lo, Owen (2012). "Formal security policy implementations in network firewalls". Computers & Security. 31 (2): 253–270. doi:10.1016/j.cose.2011.10.003.
  3. ^ Oppliger, Rolf (May 1997). "Internet Security: FIREWALLS and BEYOND". Communications of the ACM. 40 (5): 94. doi:10.1145/253769.253802. S2CID 15271915.
  4. ^ Canavan, John E. (2001). Fundamentals of Network Security (1st ed.). Boston, MA: Artech House. p. 212. ISBN 9781580531764.
  5. ^ Cheswick, William R.; Bellovin, Steven M. (1994). Firewalls and Internet Security: Repelling The Wily Hacker. Addison-Wesley. ISBN 978-0201633573.
  6. ^ Liska, Allan (Dec 10, 2014). Building an Intelligence-Led Security Program. Syngress. p. 3. ISBN 978-0128023709.
  7. ^ Ingham, Kenneth; Forrest, Stephanie (2002). "A History and Survey of Network Firewalls" (PDF). Retrieved 2011-11-25.
  8. ^ Boren, Jacob (2019-11-24). "10 Times '80s Sci-Fi Movies Predicted The Future". ScreenRant. Retrieved 2021-03-04.
  9. ^ Naveen, Sharanya. "Firewall". Retrieved 7 June 2016.
  10. ^ "Firewall as a DHCP Server and Client". Palo Alto Networks. Retrieved 2016-02-08.
  11. ^ "DHCP". www.shorewall.net. Retrieved 2016-02-08.
  12. ^ "What is a VPN Firewall? – Definition from Techopedia". Techopedia.com. Retrieved 2016-02-08.
  13. ^ Vacca, John R. (2009). Computer and information security handbook. Amsterdam: Elsevier. p. 355. ISBN 9780080921945.
  14. ^ "What is Firewall?". Retrieved 2015-02-12.
  15. ^ Peltier, Justin; Peltier, Thomas R. (2007). Complete Guide to CISM Certification. Hoboken: CRC Press. p. 210. ISBN 9781420013252.
  16. ^ "TCP vs. UDP : The Difference Between them". www.skullbox.net. Retrieved 2018-04-09.
  17. ^ Cheswick, William R.; Bellovin, Steven M.; Rubin, Aviel D. (2003). Firewalls and Internet Security repelling the wily hacker (2 ed.). Addison-Wesley Professional. ISBN 9780201634662.
  18. ^ Ingham, Kenneth; Forrest, Stephanie (2002). "A History and Survey of Network Firewalls" (PDF). p. 4. Retrieved 2011-11-25.
  19. ^ McCanne, Steven; Jacobson, Van (1992-12-19). "The BSD Packet Filter: A New Architecture for User-level Packet Capture" (PDF).
  20. ^ McCanne, Steven; Jacobson, Van (January 1993). "The BSD Packet Filter: A New Architecture for User-level Packet Capture". USENIX.
  21. ^ M. Afshar Alam; Tamanna Siddiqui; K. R. Seeja (2013). Recent Developments in Computing and Its Applications. I. K. International Pvt Ltd. p. 513. ISBN 978-93-80026-78-7.
  22. ^ "Firewalls". MemeBridge. Retrieved 13 June 2014.
  23. ^ "Firewall toolkit V1.0 release". Retrieved 2018-12-28.
  24. ^ John Pescatore (October 2, 2008). "This Week in Network Security History: The Firewall Toolkit". Archived from the original on April 29, 2016. Retrieved 2018-12-28.
  25. ^ Marcus J. Ranum; Frederick Avolio. "FWTK history".
  26. ^ "What is Layer 7? How Layer 7 of the Internet Works". Cloudflare. Retrieved Aug 29, 2020.
  27. ^ "5 Firewall Features you Must-Have". Check Point Software. Retrieved 2021-11-08.
  28. ^ Stanfield, Nathan (2019-12-04). "11 Firewall Features You Can't Live Without". Stanfield IT. Retrieved 2021-11-08.
  29. ^ "Safing Portmaster". safing.io. Retrieved 2021-11-08.
  30. ^ Liang, Junyan; Kim, Yoohwan (2022). Evolution of Firewalls: Toward Securer Network Using Next Generation Firewall. pp. 0752–0759. doi:10.1109/CCWC54503.2022.9720435. ISBN 978-1-6654-8303-2. Retrieved 2024-02-02.
  31. ^ Voronkov, Artem; Iwaya, Leonardo Horn; Martucci, Leonardo A.; Lindskog, Stefan (2018-01-12). "Systematic Literature Review on Usability of Firewall Configuration". ACM Computing Surveys. 50 (6): 1–35. doi:10.1145/3130876. ISSN 0360-0300. S2CID 6570517.
  32. ^ "What is Firewall Configuration and Why is it Important?". Fortinet.

External links[edit]