views:

120

answers:

3

I'm in a process of designing a multi-tier ASP.NET web application that is supposed to deal with sensitive information (say financial data).

I would like to identify all potential threats the application will face in real life and plan the countermeasures accordingly.

Some details:

  • The application will be hosted in customer's data center for both internal and external users
  • Target platform is Windows Server 2008 + IIS7 or Windows Server 2003 + IIS6
  • Target DB is MS SQL Server 2008
+4  A: 

Phew! Where to start... Depends on how "secure" you need it to be. i.e. Difference between a personal blog and a large project for a large company/government dept. etc...

In no particular order

  • Secure your configuration files by encrypting them.
  • Ensure that your Database is behind some sort of DMZ and not on a publically accessible IP
  • Get a security company to give your site an overhaul for potential vulneribilities (Cross Site Scripting / Sql Injection)
  • Use SSL
  • Lock down everything port-wise on the server except for 80 HTTP & 443 HTTPS unless absolutely necessary
  • Make sure your Remote Desktop/VNC connections to the box are secure
  • If your storing passwords in the DB, hash & salt them and don't store plain text
  • Publish your code, and don't leave source code on the server
  • Build your code based on known standards, i.e. don't write your own Crypto Algorithms
  • If secure connections between the Site->DB or Site-MSMQs are available, use them

Microsoft have a good article on securing ASP.NET apps that i'll dig out.

Edit

And as Syed just posted in his reply, (+1 a credit to him)

Building Secure ASP.NET Applications: Authentication, Authorization, and Secure Communication

Eoin Campbell
@Eoin Campbell: +1
Syed Tayyab Ali
You can copy those link into your reply. So, information become more consolidate in one post.
Syed Tayyab Ali
Cheers Syed +1 .
Eoin Campbell
A: 

that is a very large (broad) question, there are complete books on security that can not answer that. Go to Borders and get a few security books and start reading.

KM
down vote all you like, but it is true! I'd like to know everything about XYZ and you can type it all in this little text area, yea right!
KM