Keeping to the NetSec! philosophy, this isn't a complete explanation. That said, some of you security types need a way to explain this to the guy in the corner office or your customers or both. You're Dilbert. They are the pointy-haired boss....
Isn't having two firewalls overkill?
Having two firewalls between you and the bad guys is just practicing safe net. It gives you the ability to create granular, differentiated policies for devices in the DMZ that is established between the two devices as compared to devices that are in the inside (most secure) security zone of your network. In short, it allows you to create zone based security policies, leveraging on the DoS protection of two firewalls instead of two. This is not a “more is better” statement so much as it is a control issue. For example, if you have a public web server, you could put it in the DMZ between the outer and inner firewalls. On your outside firewall, you could open up full access to the DMZ server from the Internet and the inside firewall will prevent the DMZ server from initiating connections to the inside, trusted network. Thus, a compromised host in the DMZ could not be used to attack your inside network.