11.07.2015 Views

Improving Web Application Security: Threats and - CGISecurity

Improving Web Application Security: Threats and - CGISecurity

Improving Web Application Security: Threats and - CGISecurity

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 4: Design Guidelines for Secure <strong>Web</strong> <strong>Application</strong>s 73<strong>Security</strong> Policies <strong>and</strong> Procedures<strong>Security</strong> policy determines what your applications are allowed to do <strong>and</strong> what theusers of the application are permitted to do. More importantly, they definerestrictions to determine what applications <strong>and</strong> users are not allowed to do. Identify<strong>and</strong> work within the framework defined by your corporate security policy whiledesigning your applications to make sure you do not breach policy that mightprevent the application being deployed.Network Infrastructure ComponentsMake sure you underst<strong>and</strong> the network structure provided by your targetenvironment <strong>and</strong> underst<strong>and</strong> the baseline security requirements of the network interms of filtering rules, port restrictions, supported protocols, <strong>and</strong> so on.Identify how firewalls <strong>and</strong> firewall policies are likely to affect your application’sdesign <strong>and</strong> deployment. There may be firewalls to separate the Internet-facingapplications from the internal network. There may be additional firewalls in front ofthe database. These can affect your possible communication ports <strong>and</strong>, therefore,authentication options from the <strong>Web</strong> server to remote application <strong>and</strong> databaseservers. For example, Windows authentication requires additional ports.At the design stage, consider what protocols, ports, <strong>and</strong> services are allowed to accessinternal resources from the <strong>Web</strong> servers in the perimeter network. Also identify theprotocols <strong>and</strong> ports that the application design requires <strong>and</strong> analyze the potentialthreats that occur from opening new ports or using new protocols.Communicate <strong>and</strong> record any assumptions made about network <strong>and</strong> applicationlayer security <strong>and</strong> which component will h<strong>and</strong>le what. This prevents securitycontrols from being missed when both development <strong>and</strong> network teams assume thatthe other team is addressing the issue. Pay attention to the security defenses that yourapplication relies upon the network to provide. Consider the implications of a changein network configuration. How much security have you lost if you implement aspecific network change?Deployment TopologiesYour application’s deployment topology <strong>and</strong> whether you have a remote applicationtier is a key consideration that must be incorporated in your design. If you have aremote application tier, you need to consider how to secure the network betweenservers to address the network eavesdropping threat <strong>and</strong> to provide privacy <strong>and</strong>integrity for sensitive data.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!