Hardware Versus Software Firewalls

by Chris Swartz and Randy Rosel
02/15/2007
www.onlamp.com/bsd

According to estimates, an unprotected Windows computer system connected to the Internet could be compromised within twelve minutes. In light of this, the need for computer security has expanded in the last few years. Today, it is just as necessary for home users to secure personal computers as it is for businesses to secure office computers. In order to gain security benefits like those many businesses possess, home network security often utilizes the same models. The difference, however, has been that most home users do not have the financial resources for top of the line security equipment. This has led many home users to begin using security tools such as freeware firewalls and over-the-counter hardware firewall solutions.

This raises a question. How do the freeware firewalls compare to expensive, all-in-one firewall solutions such as the Cisco PIX? The goal for this project, then, is to compare the Cisco PIX with two freeware firewalls.

Test Goals

The general testing goal for this project was to observe and compare the behavior of each firewall. More specifically, to compare behavior caused by the testing adapted and common attack methods (not attacks for any specific system type).

The attack types break down into two groups: discovery and penetration. The discovery group establishes or verifies the actual location of the target device. The penetration group observes the defensive measures of each firewall. Table 1 lists each test used and its purpose.

Table 1. Tests and test groups

Test GroupTest TypeTest Description
DiscoveryNetwork snifferDocuments the discovery of the target IP address and any other useful information, such as protocols being used on the target network
 TracerouteAttempts to locate the target device and all intermediate routers, switches, and systems
PenetrationSynflood attackUsed to see whether the firewall can overcome a repeated open connection request and also log the attack
 Garbage attackUsed to see whether the firewall can overcome random data packets on random ports
 UDP PingUsed to see whether the firewall can overcome a large UDP ping packet sent to it
 TCP PingUsed to see whether the firewall can overcome a large TCP ping packet sent to it
 Ping of deathUsed to see whether the firewall can overcome a single over-sized packet sent to it

Testing Procedures

The overall testing structure for this project was developed from the perspective of an outside intruder. Because of this, the target network provided public access to itself as a means of establishing a gateway. We placed an FTP server inside the network and gave the outside world (the Internet at large) access to it. This gave the outside intruder a legitimate means of knowing the IP address of the FTP server.

Sniff Test Procedure

First, we ran the network sniff test, because it was necessary to determine the target IP address (the FTP server). The information discovered was necessary in order for many of the other attacking tools to work correctly. This test also verifies the IP addresses of the equipment being used.

  1. Open Ethereal
  2. Select Capture -> Interface, then choose the network interface.
  3. Select Capture.
  4. Allow Ethereal to capture packets for about 30 seconds, and then select stop.
  5. To save the captured packets, select File -> Export as Plain Text File.
  6. Enter an appropriate filename, then click OK.
Traceroute Procedure

The traceroute was an attempt to determine the route used to reach the target network. This step also tries to determine whether there are any other IP addresses, from any other network devices, that lead to the target server. This test helps to establish, if possible, the IP address of the route(s) to the target server.

  1. Open Netwag and select Traceroute.
  2. Ensure the Destination IP Address checkbox is checked.
  3. Enter the appropriate target network.
  4. Select Generate It (bottom of screen).
  5. Then select Run It.

We chose the attack types to test each system against a variety of attack types, not to test every possible type of progressive attack.

Synflood Attack Procedure

The synflood attack observes how each firewall behaves when it receives large amounts of SYN requests. The Netwag program's synflood attack also has the ability to spoof the source IP address.

  1. Open Netwag and select Synflood.
  2. Check the Destination IP Address checkbox.
  3. Check the Destination Port Number checkboxes.
  4. Enter the target IP address.
  5. Enter the target port number.
  6. Select Generate It (bottom of screen).
  7. Select Run It.

Garbage Procedure

The garbage attack, or random fragment attack, observes how each firewall behaves against an attack that uses random datatypes on random port numbers. The Netwag program random fragment attack also has the ability to spoof the source IP address.

  1. Open Netwag and select "Flood a host with random fragments."
  2. Check the Destination IP Address checkbox.
  3. Enter the target IP address.
  4. Select Generate It (bottom of screen).
  5. Select Run It.
UDP Ping Procedure

The UDP Ping attack observes how each firewall behaves against ping attacks using UDP. The Netwag program's UDP Ping also has the ability to spoof the source IP address.

  1. Open Netwag and select Ping UDP.
  2. Check the Destination IP Address checkbox.
  3. Check the Destination Port Number checkboxes.
  4. Enter the target IP address.
  5. Enter the target port number.
  6. Select Generate It (bottom of screen).
  7. Select Run It.
TCP Ping Procedure

The TCP Ping attack observes how each firewall behaves against the ping attack using TCP. The Netwag program's TCP Ping also has the ability to spoof the source IP address.

  1. Open Netwag and select Ping TCP.
  2. Check the Destination IP Address checkbox.
  3. Check the Destination Port Number checkboxes.
  4. Enter the target IP address.
  5. Enter target port number.
  6. Select Generate It (bottom of screen).
  7. Select Run It.
Ping of Death Procedure

The ping of death attack observes how each firewall behaves against attacks that send over-sized packets. Our goal was not to determine how many over-sized packets are required to shut down each firewall.

  1. Open a Windows command prompt window.
  2. Enter ping -l 65000 <target_IPaddress>.

Configuration

The aim of this configuration is to simulate a condensed, real-world, corporate network layout. We placed one server on the outside router's external interface to act as the Internet in order to demonstrate how the internal network could gain permitted access to the Internet. The server on the inside network provides the outside world with a specific target. The access list for all three firewalls permits WWW traffic to pass out on port 80 while at the same time allowing for FTP to pass in on port 21. Because the PIX implicitly denied anything not on the access list, we had to create rules to allow these transmissions to pass through. We created the baseline (PIX Firewall) by modifying the Advanced Router Lab's configuration. SmoothWall and openBSD layouts modified this layout even further. Neither software firewall has an inside router in its configuration. We removed the inside router due to issues it caused in allowing connections to the SmoothWall web-based administrative console.

We kept this configuration for simplicity and uniform results in the later configuration and testing of the openBSD firewall.

Test Results

Our test results were interesting.

Cisco PIX Results

Regardless of which port the attack used, with the state full packet inspection activated, the Cisco PIX blocked all transmissions on every test we conducted. The PIX also continued to allow the proper connections that were not considered attacks during the tests. The PIX effectively blocked the outgoing and incoming packets. One of the few issues with the PIX is finding proper documentation. The PIX was designed with a professional support team in mind, not the typical home user.

SmoothWall Express Results

Compared to the PIX, SmoothWall was more simplistic in design and easier to configure, but also less robust. Unlike the PIX, SmoothWall uses stateless packet inspection. Attacks on specific ports locked up the firewall system until the attack stopped. SmoothWall was designed with the home user in mind, not corporations.

The documentation provided for SmoothWall is centered on the web-based GUI, which does a good job detailing how to set up and configure the system. SmoothWall also uses the open source intrusion detection system Snort. One of SmoothWall's problems is that the GUI does not list any outbound packet inspection options. (You can activate stateful inspection by modifying the source code manually.) Another issue is that SmoothWall has a limit of three interfaces: an inside, an outside, and a DMZ.

OpenBSD Results

OpenBSD is everything one might expect from an open source firewall. It has the power and potential of the PIX without the cost. As for performance, OpenBSD performed just as well as the Cisco PIX at blocking unwanted incoming or outgoing packets with no degradation to the system. OpenBSD also kept detailed text logfiles of each attack, which were fairly easy to read. Like SmoothWall, OpenBSD does not provide any type of graphical results analysis of the logged attacks; the PIX does provide this.

The main issue with OpenBSD is that you may require professional support. But without the cost of the hardware PIX, you might consider this an even offset. OpenBSD also does stateful or stateless packet inspections, remembers sessions, and modulates the session to assist with preventing the data connections from being hijacked. Because it is an operating system, OpenBSD has the ability to add Snort or other advanced IDS options. OpenBSD also has the option of creating VPN connections.

When installed, OpenBSD is secure by default. As with SmoothWall, the documentation for BSD is very detailed. However, unlike SmoothWall, the configuration instructions direct you to perform manual command-line operations. OpenBSD is our runner-up firewall. The available interfaces are only limited by the number of possible interface cards you can install in the PC.

Conclusion

The Cisco PIX behaved as expected and is an outstanding choice if cost is not an issue. Cisco's built-in graphical results are effective quick-references for observing the firewall status. For cost effectiveness and features, OpenBSD is an excellent choice. Out of the three firewalls tested, SmoothWall Express is our least preferred because it is the least powerful. However, SmoothWall Express is a good choice for a home-based network. This version is not recommended for business or corporate use. SmoothWall Express is open source; however, it does have a corporate professional edition that we did not evaluate for this project.

Choosing a firewall depends on the needs of your business or network. If you have a large corporate network behind the firewall, it would probably suit your needs to invest in a system like Cisco; however, a small entrepreneur should consider OpenBSD or SmoothWall, depending on the required security level denies and experience level.

When should a corporation consider using one of these three firewalls? The choice depends on its needs. If it wants top of the line defense that provides detailed reports (including graphs), then the Cisco PIX is the best choice. If the corporation needs a good defense but cannot afford the PIX, OpenBSD is an effective, inexpensive choice. Based on the testing results of this project, SmoothWall Express is not an effective option for a corporation.

Small business or home users are most likely unable to afford the Cisco PIX. They are just as unlikely to be able to maintain such a device, assuming they are not a technology-based business or user. Because most small business and home users do not have the money or technical experience to use a PIX or OpenBSD, the best option for them is SmoothWall.

One of the key differences between a corporation and a small business (including home users) is that a corporation stands a high risk of being a target of script kiddies and professional hackers. With a small business, this risk is low, although small business and home users are still at risk. Because of this difference, and in light of maintainability concerns, SmoothWall is a good choice for a small business or home user.

References

Chris Swartz is a senior at East Tennessee State University. Currently he is working on completing a Bachelor’s degree in Computer Science and minors in Anthropology and Japanese.

Randy Rosel works as an Application Developer for a cellular phone repair company in Upper East Tennessee.

 
分数阶傅里叶变换(Fractional Fourier Transform, FRFT)是对传统傅里叶变换的拓展,它通过非整数阶的变换方式,能够更有效地处理非线性信号以及涉及时频局部化的问题。在信号处理领域,FRFT尤其适用于分析非平稳信号,例如在雷达、声纳和通信系统中,对线性调频(Linear Frequency Modulation, LFM)信号的分析具有显著优势。LFM信号是一种频率随时间线性变化的信号,因其具有宽频带和良好的时频分辨率,被广泛应用于雷达和通信系统。FRFT能够更精准地捕捉LFM信号的时间和频率信息,相比普通傅里叶变换,其性能更为出色。 MATLAB是一种强大的数值计算和科学计算工具,拥有丰富的函数库和用户友好的界面。在MATLAB中实现FRFT,通常需要编写自定义函数或利用信号处理工具箱中的相关函数。例如,一个名为“frft”的文件可能是用于执行分数阶傅里叶变换的MATLAB脚本或函数,并展示其在信号处理中的应用。FRFT的正确性验证通常通过对比变换前后信号的特性来完成,比如评估信号的重构质量、信噪比等。具体而言,可以通过计算原始信号与经过FRFT处理后的信号之间的相似度,或者对比LFM信号的关键参数(如初始频率、扫频率和持续时间)是否在变换后得到准确恢复。 在MATLAB代码实现中,通常包含以下步骤:首先,生成LFM信号模型,设定其初始频率、扫频率、持续时间和采样率等参数;其次,利用自定义的frft函数对LFM信号进行分数阶傅里叶变换;接着,使用MATLAB的可视化工具(如plot或imagesc)展示原始信号的时域和频域表示,以及FRFT后的结果,以便直观对比;最后,通过计算均方误差、峰值信噪比等指标来评估FRFT的性能。深入理解FRFT的数学原理并结合MATLAB编程技巧,可以实现对LFM信号的有效分析和处理。这个代码示例不仅展示了理论知识在
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值