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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

350 Part III: Building Secure <strong>Web</strong> <strong>Application</strong>sCountermeasuresCountermeasures that may be implemented to prevent unauthorized access include:● Ensure that the front-end <strong>Web</strong> application authenticates <strong>and</strong> authorizes clients,<strong>and</strong> that communication to middle-tier application servers is restricted by usingIPSec policies. These measures ensure that only the <strong>Web</strong> server can access themiddle-tier application server directly.● Use ASP.NET to host remote components <strong>and</strong> use Windows authentication torestrict access to remote components.● Use the ASP.NET FileAuthorizationModule. This requires specific configuration<strong>and</strong> the creation of a physical file (.rem or .soap) to match the remoting endpoint.●●Use role-based authorization to restrict access to remote components, remotecomponent classes, <strong>and</strong> methods. This can be done by using URL authorization tocontrol access to the remoting endpoint (.rem or .soap) or, at the class or methodlevel, by using principal-permission dem<strong>and</strong>s.Do not trust IPrincipal objects passed from the client unless the client is trusted.This is generally only the case if IPSec is used to limit the range of clientcomputers.Network EavesdroppingWith network eavesdropping, an attacker is able to view request <strong>and</strong> responsemessages as they flow across the network to <strong>and</strong> from the remote component. Forexample, an attacker can use network monitoring software to retrieve sensitive data.This might include sensitive application level data or credential information.VulnerabilitiesVulnerabilities that can lead to security compromises from network eavesdroppinginclude:● Basic authentication used over an unencrypted communication channel● No transport level encryption● No application level encryptionCountermeasuresCountermeasures that may be implemented to prevent successful networkeavesdropping attacks include:● Use transport level encryption such as SSL or IPSec. The use of SSL requires you touse an ASP.NET host <strong>and</strong> the HttpChannel. IPSec can be used with custom hosts<strong>and</strong> the TcpChannel.● Encrypt the request at the application level to provide privacy. For example,you could create a custom encryption sink to encrypt part of the entire messagepayload.

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

Saved successfully!

Ooh no, something went wrong!