SlideShare a Scribd company logo
1 of 33
Download to read offline
DNN / Proprietary and Confidential. All Rights Reserved.1
Outline
• About Ashish Prasad
• Website Security
• Security Questions to ask your Vendor
• OWASP: Concepts and Top 10
• Understanding Encryption
• High-Level Architecture of a .NET Website
• Security Best Practices for IIS 8
• Regular Checkups
• How to spot CSRF
• How to spot XSS
• .NET Website Security Resources
About Ashish Prasad
• Director of Engineering at DNN Corp.
• Co-Author of DNN Professional 7 Book
• Microsoft MVP
• CISSP
› Certified Information Systems Security
Professional
• Twitter: @ashishprasad | @DNNCorp
Website Security
Website
Security
Infrastructure Security
- Firewall,
- Antivirus
- OS Patching
Application Security
- XSS
- CSRF
- Injection
Security Questions to Ask Your Vendor
• Do you issue Security Bulletins with your release?
› For DNN Corp – Yes.
http://www.dnnsoftware.com/community/security/security-center
• How often do you test for security in your product?
› For DNN Corp – Every release and all the time
• Do you have incidence reporting system in place for customers?
› For DNN Corp – Yes. Email: security@dnnsoftware.com
• Do you have a tool to check security
› For DNN Corp – Yes. http://www.dnnsoftware.com/community-
blog/cid/155364/updates-to-security-analyzer-tool
OWASP
OWASP is an open community dedicated to enabling organizations
to conceive, develop, acquire, operate, and maintain applications
that can be trusted. All of the OWASP tools, documents, forums,
and chapters are free and open to anyone interested in improving
application security. We advocate approaching
application security as a people, process,
and technology problem because the most effective
approaches to application security include improvements in all of
these areas.
For further information on OWASP: https://www.owasp.org/index.php/About_OWASP
The OWASP Top 10
The OWASP Top Ten represents a broad
consensus about what the most critical web
application security flaws are.
•First done in 2010
•Second done in 2013 (current)
•Currently working on the latest version, expected
in 2016 or 2017
The OWASP Top 10
• A1-Injection
• A2-Broken Authentication and Session Management
• A3-Cross-Site Scripting (XSS)
• A4-Insecure Direct Object References
• A5-Security Misconfiguration
• A6-Sensitive Data Exposure
• A7-Missing Function Level Access Control
• A8-Cross-Site Request Forgery (CSRF)
• A9-Using Components with Known Vulnerabilities
• A10-Unvalidated Redirects and Forwards
For more information: https://www.owasp.org/index.php/Top_10_2013-Table_of_Contents
OWASP > A1: Injection
Injection flaws, such as SQL,
OS and LDAP injection occur
when untrusted data is sent to
an interpreter as part of a
command or query.
The attacker’s hostile data can
trick the interpreter into
executing unintended
commands or accessing data
without proper authorization.
Note: Images and descriptions for these Top 10 slides courtesy of the OWASP website:
https://www.owasp.org/index.php/Top_10_2013-Top_10
OWASP > A2: Broken Authentication and Session Management
Application functions related
to authentication and session
management are often not
implemented correctly.
This allows attackers to
compromise passwords,
keys, or session tokens, or to
exploit other implementation
flaws to assume other users’
identities.
OWASP > A3: Cross-Site Scripting (XSS)
XSS flaws occur
whenever an application
takes untrusted data and
sends it to a web browser
without proper validation
or escaping.
XSS allows attackers to
execute scripts in the
victim’s browser, which
can hijack user sessions,
deface web sites, or
redirect the user to
malicious sites.
OWASP > A4: Insecure Direct Object References
A direct object reference
occurs when a
developer exposes a
reference to an internal
implementation object,
such as a file, directory,
or database key.
Without an access
control check or other
protection, attackers can
manipulate these
references to access
unauthorized data.
OWASP > A5: Security Misconfiguration
Good security requires
having a secure
configuration defined and
deployed for the
application, frameworks,
application server, web
server, database server,
and platform.
Secure settings should be
defined, implemented, and
maintained, as defaults are
often insecure.
Additionally, software
should be kept up to date.
OWASP > A6: Sensitive Data Exposure
Many web applications do
not properly protect sensitive
data, such as credit cards,
tax IDs, and authentication
credentials.
Attackers may steal or
modify such weakly
protected data to conduct
credit card fraud, identity
theft, or other crimes.
Sensitive data deserves
extra protection, such as
encryption at rest or in
transit, as well as special
precautions when
exchanged with the browser.
OWASP > A7: Missing Function Level Access Control
Most web applications verify
function level access rights
before making that
functionality visible in the UI.
However, applications need
to perform the same access
control checks on the server
when each function is
accessed.
If requests are not verified,
attackers will be able to forge
requests in order to access
functionality without proper
authorization.
OWASP > A8: Cross-Site Request Forgery (CSRF)
A CSRF attack forces a
logged-on victim’s
browser to send a forged
HTTP request, including
the victim’s session cookie
and any other
automatically included
authentication information,
to a vulnerable web
application.
This allows the attacker to
force the victim’s browser
to generate requests the
vulnerable application
thinks are legitimate
requests from the victim.
OWASP > A9: Using Components with Known Vulnerabilities
Components, such as
libraries, frameworks, and
other software modules,
almost always run with full
privileges.
If a vulnerable component is
exploited, such an attack
can facilitate serious data
loss or server takeover.
Applications using
components with known
vulnerabilities may
undermine application
defenses and enable a
range of possible attacks
and impacts.
OWASP > A10: Unvalidated Redirects and Forwards
Web applications frequently
redirect and forward users
to other pages and
websites, and use
untrusted data to determine
the destination pages.
Without proper validation,
attackers can redirect
victims to phishing or
malware sites, or use
forwards to access
unauthorized pages.
Understanding Encryption
• Allows Decryption
› Symmetric
- Shared Key
- Fast
› Asymmetric
- Requires a pair of keys
- Public and Private
- Slow
• No Decryption
› Hashing
- One-way
- Can’t get back original
- You can validate with original by hashing and comparing hashes
- SHA 256, MD5
Architecture of a .NET Website
Security Best Practices: IIS 8
•Installation and Configuration
•Web Application Isolation
•Authentication
•Request Filtering
•Application Pool Identities
Securing IIS: Installation & Configuration
• Don’t run IIS on a domain controller or a backup domain controller.
› Don’t even have IIS server join regular user domain
› Perhaps have a separate domain for your IIS servers.
• Install only the IIS modules you need.
› IIS 8 is composed of more than 40 modules
• Periodically remove unused or unwanted modules and handlers.
• For high volume installations of IIS, run other resource-intensive
products like SQL Server or Exchange on separate computers.
• Keep your antivirus software up to date.
• Move the Inetpub folder from your system drive to a different drive.
› Default is C drive.
› This helps in saving space on system drive.
Securing IIS: Application Pool Identities
• Don’t use the built-in service identities (e.g. Network Service, Local
Service, or Local System).
• The default (recommended) and most secure is
ApplicationPoolIdentity.
• Using a custom identity account is acceptable, but be sure to use a
different account for each application pool.
Reference: http://www.iis.net/learn/manage/configuring-security/application-pool-identities
Securing IIS: Web Application Isolation
• Isolate web applications.
› Separate different applications into different sites with different
application pools
• Implement the principle of least privilege.
› Run your worker process as a low privileged identity (virtual application
pool identity) that is unique per site.
• Isolate ASP.NET temp folders.
› Set up a separate ASP.NET temp folder per site and only give access
to appropriate process identity.
• Isolate content.
› Make sure to set an ACL (access control list) on each site root to allow
only access to the appropriate process identity.
Securing IIS: Request Filtering
• Ensure that request filtering rules are enabled.
• Rules
› File Name
› Rules
› Hidden Segments
› URL
› Http Verbs
› Headers
› Query Strings
Resource: https://technet.microsoft.com/en-
us/library/hh831621(v=ws.11).aspx
Securing IIS: Authentication
•Don’t allow anonymous writes to the server.
•Disable anonymous access to server directories
and resources
•Be aware that configuring Anonymous
authentication along with another authentication
type for the same website can cause
authentication problems.
Securing IIS: Miscellaneous
•Make periodic backups of the IIS server.
•Limit permissions granted to non-administrators.
•Turn on SSL and maintain SSL certificates.
•Use SSL when you use Basic authentication.
•No clear text password recovery
•Passwords should be hashed (SHA256)
› MD5 isn’t secure anymore
Website: Perform Regular Checkups
• Do a “view source” of your web application and look for iFrames,
malicious links and cookies
• Compare the filesystem between backups and look for new or
modified files
› You may find backdoor rootkit files in your website folder
- Tool: Beyond Compare
› Also compare database
- Tool: Redgate SQL Compare
• Review audit logs
› Look for unusual activities
• Review exception logs
› Look for unusual exceptions
• Look for new Users created in your system
How to Spot: Cross-Site Request Forgery
Cross-Site Request Forgery (CSRF) is a type of attack that occurs
when a malicious web site, email, blog, instant message, or
program causes a user’s web browser to perform an unwanted
action on a trusted site for which the user is currently
authenticated.
• Asp.Net ValidateAntiForgeryTokenAttribute
• Paired tokens (cookie and header)
› Must match
Source: https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet
How to Spot: Cross-Site Scripting (XSS)
Cross-Site Scripting (XSS) attacks are a type of
injection, in which malicious scripts are injected into
otherwise benign and trusted web sites.
XSS attacks occur when an attacker uses a web
application to send malicious code, generally in the
form of a browser side script, to a different end user.
Source: https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)
Summary
• Website Security
• Security Questions to ask your Vendor
• OWASP: Concepts and Top 10
• Understanding Encryption
• High-Level Architecture of a .NET Website
• Security Best Practices for IIS 8
• Regular Checkups
• How to spot CSRF
• How to spot XSS
Resources
• Security Best Practices for IIS 8
› https://technet.microsoft.com/en-us/library/jj635855(v=ws.11).aspx
• Understanding CSRF, the video tutorial edition
› https://www.youtube.com/watch?v=hW2ONyxAySY
• Basic XSS Guide #1 - Alert() - Redirection - Cookie Stealing
› https://www.youtube.com/watch?v=486KmQOcwWg
• OWASP Top 10
› https://www.owasp.org/index.php/Top_10_2013-Table_of_Contents
For More Information About DNN
Visit our website for more information
about our secure, .NET CMS, Evoq:
http://www.dnnsoftware.com/products/evoq-content

More Related Content

What's hot

Drupal security
Drupal securityDrupal security
Drupal securityTechday7
 
Hacking web applications
Hacking web applicationsHacking web applications
Hacking web applicationsAdeel Javaid
 
ECS 2018: Introduction to Azure Web Applications
ECS 2018: Introduction to Azure Web ApplicationsECS 2018: Introduction to Azure Web Applications
ECS 2018: Introduction to Azure Web ApplicationsEric Shupps
 
Security guidelines
Security guidelinesSecurity guidelines
Security guidelineskarthz
 
Drupal and Security: What You Need to Know
Drupal and Security: What You Need to KnowDrupal and Security: What You Need to Know
Drupal and Security: What You Need to KnowAcquia
 
Instant Security & Scalable User Management with Spring Boot
Instant Security & Scalable User Management with Spring BootInstant Security & Scalable User Management with Spring Boot
Instant Security & Scalable User Management with Spring BootStormpath
 
Hacker Proof web app using Functional tests
Hacker Proof web  app using Functional testsHacker Proof web  app using Functional tests
Hacker Proof web app using Functional testsAnkita Gupta
 
Develop business apps cross-platform development using visual studio with x...
Develop business apps   cross-platform development using visual studio with x...Develop business apps   cross-platform development using visual studio with x...
Develop business apps cross-platform development using visual studio with x...Alexander Meijers
 
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...Christian Schneider
 
Automated Security Testing
Automated Security TestingAutomated Security Testing
Automated Security Testingseleniumconf
 
Microsoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud ComputingMicrosoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud ComputingJosh Holmes
 
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017Philippe Gamache
 
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)Sam Bowne
 
Externally Testing Modern AD Domains - Arcticcon
Externally Testing Modern AD Domains - ArcticconExternally Testing Modern AD Domains - Arcticcon
Externally Testing Modern AD Domains - ArcticconKarl Fosaaen
 
CNIT 129S: Ch 5: Bypassing Client-Side Controls
CNIT 129S: Ch 5: Bypassing Client-Side ControlsCNIT 129S: Ch 5: Bypassing Client-Side Controls
CNIT 129S: Ch 5: Bypassing Client-Side ControlsSam Bowne
 

What's hot (20)

Drupal security
Drupal securityDrupal security
Drupal security
 
Hacking web applications
Hacking web applicationsHacking web applications
Hacking web applications
 
SQL Server: Security
SQL Server: SecuritySQL Server: Security
SQL Server: Security
 
Web Hacking
Web HackingWeb Hacking
Web Hacking
 
ECS 2018: Introduction to Azure Web Applications
ECS 2018: Introduction to Azure Web ApplicationsECS 2018: Introduction to Azure Web Applications
ECS 2018: Introduction to Azure Web Applications
 
Security guidelines
Security guidelinesSecurity guidelines
Security guidelines
 
Spa Secure Coding Guide
Spa Secure Coding GuideSpa Secure Coding Guide
Spa Secure Coding Guide
 
Drupal and Security: What You Need to Know
Drupal and Security: What You Need to KnowDrupal and Security: What You Need to Know
Drupal and Security: What You Need to Know
 
Instant Security & Scalable User Management with Spring Boot
Instant Security & Scalable User Management with Spring BootInstant Security & Scalable User Management with Spring Boot
Instant Security & Scalable User Management with Spring Boot
 
Hacker Proof web app using Functional tests
Hacker Proof web  app using Functional testsHacker Proof web  app using Functional tests
Hacker Proof web app using Functional tests
 
Develop business apps cross-platform development using visual studio with x...
Develop business apps   cross-platform development using visual studio with x...Develop business apps   cross-platform development using visual studio with x...
Develop business apps cross-platform development using visual studio with x...
 
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...
Security DevOps - Free pentesters' time to focus on high-hanging fruits // Ha...
 
Web Hacking Intro
Web Hacking IntroWeb Hacking Intro
Web Hacking Intro
 
Automated Security Testing
Automated Security TestingAutomated Security Testing
Automated Security Testing
 
Microsoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud ComputingMicrosoft/Zend Webcast on Cloud Computing
Microsoft/Zend Webcast on Cloud Computing
 
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
OWASP Top 10 Proactive Controls 2016 - PHP Québec August 2017
 
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)
CNIT 129S: 12: Attacking Users: Cross-Site Scripting (Part 1 of 2)
 
Externally Testing Modern AD Domains - Arcticcon
Externally Testing Modern AD Domains - ArcticconExternally Testing Modern AD Domains - Arcticcon
Externally Testing Modern AD Domains - Arcticcon
 
CNIT 129S: Ch 5: Bypassing Client-Side Controls
CNIT 129S: Ch 5: Bypassing Client-Side ControlsCNIT 129S: Ch 5: Bypassing Client-Side Controls
CNIT 129S: Ch 5: Bypassing Client-Side Controls
 
ASP.NET 13 - Security
ASP.NET 13 - SecurityASP.NET 13 - Security
ASP.NET 13 - Security
 

Viewers also liked

Security Model in .NET Framework
Security Model in .NET FrameworkSecurity Model in .NET Framework
Security Model in .NET FrameworkMikhail Shcherbakov
 
.NET Security Topics
.NET Security Topics.NET Security Topics
.NET Security TopicsShawn Gorrell
 
Implementing application security using the .net framework
Implementing application security using the .net frameworkImplementing application security using the .net framework
Implementing application security using the .net frameworkLalit Kale
 
Psdot 19 four factor password authentication
Psdot 19 four factor password authenticationPsdot 19 four factor password authentication
Psdot 19 four factor password authenticationZTech Proje
 
Kerberos Authentication Process In Windows
Kerberos Authentication Process In WindowsKerberos Authentication Process In Windows
Kerberos Authentication Process In Windowsniteshitimpulse
 
E authentication template 050212
E authentication template 050212E authentication template 050212
E authentication template 050212GovCloud Network
 
Rails as iOS Application Backend
Rails as iOS Application BackendRails as iOS Application Backend
Rails as iOS Application Backendmaximeguilbot
 
User Authentication for Government
User Authentication for GovernmentUser Authentication for Government
User Authentication for GovernmentCarahsoft
 
Image Based Password Authentication for Illiterate using Touch screen by Deep...
Image Based Password Authentication for Illiterate using Touch screen by Deep...Image Based Password Authentication for Illiterate using Touch screen by Deep...
Image Based Password Authentication for Illiterate using Touch screen by Deep...Deepak Yadav
 
Authentication scheme for session password using Images and color
Authentication scheme for session password using Images and colorAuthentication scheme for session password using Images and color
Authentication scheme for session password using Images and colorNitesh Kumar
 
Item and Distracter Analysis
Item and Distracter AnalysisItem and Distracter Analysis
Item and Distracter AnalysisSue Quirante
 
Network security unit 4,5,6
Network security unit 4,5,6 Network security unit 4,5,6
Network security unit 4,5,6 WE-IT TUTORIALS
 
Hot Ideas! For using Images in Presentations.
Hot Ideas! For using Images in Presentations. Hot Ideas! For using Images in Presentations.
Hot Ideas! For using Images in Presentations. Bipul Deb Nath
 
Presentation_DanielPetrov_LasVegas_2016
Presentation_DanielPetrov_LasVegas_2016Presentation_DanielPetrov_LasVegas_2016
Presentation_DanielPetrov_LasVegas_2016Daniel Petrov
 

Viewers also liked (20)

Security Model in .NET Framework
Security Model in .NET FrameworkSecurity Model in .NET Framework
Security Model in .NET Framework
 
.NET Security Topics
.NET Security Topics.NET Security Topics
.NET Security Topics
 
Implementing application security using the .net framework
Implementing application security using the .net frameworkImplementing application security using the .net framework
Implementing application security using the .net framework
 
Psdot 19 four factor password authentication
Psdot 19 four factor password authenticationPsdot 19 four factor password authentication
Psdot 19 four factor password authentication
 
Kerberos Authentication Process In Windows
Kerberos Authentication Process In WindowsKerberos Authentication Process In Windows
Kerberos Authentication Process In Windows
 
SCWCD : Secure web
SCWCD : Secure webSCWCD : Secure web
SCWCD : Secure web
 
E authentication template 050212
E authentication template 050212E authentication template 050212
E authentication template 050212
 
Project
ProjectProject
Project
 
Rails as iOS Application Backend
Rails as iOS Application BackendRails as iOS Application Backend
Rails as iOS Application Backend
 
User Authentication for Government
User Authentication for GovernmentUser Authentication for Government
User Authentication for Government
 
Image Based Password Authentication for Illiterate using Touch screen by Deep...
Image Based Password Authentication for Illiterate using Touch screen by Deep...Image Based Password Authentication for Illiterate using Touch screen by Deep...
Image Based Password Authentication for Illiterate using Touch screen by Deep...
 
Authentication scheme for session password using Images and color
Authentication scheme for session password using Images and colorAuthentication scheme for session password using Images and color
Authentication scheme for session password using Images and color
 
Item and Distracter Analysis
Item and Distracter AnalysisItem and Distracter Analysis
Item and Distracter Analysis
 
Network security unit 4,5,6
Network security unit 4,5,6 Network security unit 4,5,6
Network security unit 4,5,6
 
Hot Ideas! For using Images in Presentations.
Hot Ideas! For using Images in Presentations. Hot Ideas! For using Images in Presentations.
Hot Ideas! For using Images in Presentations.
 
Week1 lec1-bscs1
Week1 lec1-bscs1Week1 lec1-bscs1
Week1 lec1-bscs1
 
Television mailing list
Television mailing listTelevision mailing list
Television mailing list
 
Konseling f
Konseling fKonseling f
Konseling f
 
Presentation_DanielPetrov_LasVegas_2016
Presentation_DanielPetrov_LasVegas_2016Presentation_DanielPetrov_LasVegas_2016
Presentation_DanielPetrov_LasVegas_2016
 
Armonia Delle Sfere
Armonia Delle SfereArmonia Delle Sfere
Armonia Delle Sfere
 

Similar to How to Harden the Security of Your .NET Website

OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017 OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017 Philippe Gamache
 
Vulnerabilities in modern web applications
Vulnerabilities in modern web applicationsVulnerabilities in modern web applications
Vulnerabilities in modern web applicationsNiyas Nazar
 
The path of secure software by Katy Anton
The path of secure software by Katy AntonThe path of secure software by Katy Anton
The path of secure software by Katy AntonDevSecCon
 
Web hackingtools 2015
Web hackingtools 2015Web hackingtools 2015
Web hackingtools 2015devObjective
 
Top 10 web application security risks akash mahajan
Top 10 web application security risks   akash mahajanTop 10 web application security risks   akash mahajan
Top 10 web application security risks akash mahajanAkash Mahajan
 
2013 OWASP Top 10
2013 OWASP Top 102013 OWASP Top 10
2013 OWASP Top 10bilcorry
 
The OWASP Zed Attack Proxy
The OWASP Zed Attack ProxyThe OWASP Zed Attack Proxy
The OWASP Zed Attack ProxyAditya Gupta
 
OWASP top 10-2013
OWASP top 10-2013OWASP top 10-2013
OWASP top 10-2013tmd800
 
How to Test for The OWASP Top Ten
 How to Test for The OWASP Top Ten How to Test for The OWASP Top Ten
How to Test for The OWASP Top TenSecurity Innovation
 
Lesson 6 web based attacks
Lesson 6 web based attacksLesson 6 web based attacks
Lesson 6 web based attacksFrank Victory
 
Owasp top-ten-mapping-2015-05-lwc
Owasp top-ten-mapping-2015-05-lwcOwasp top-ten-mapping-2015-05-lwc
Owasp top-ten-mapping-2015-05-lwcKaty Anton
 
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20Tabăra de Testare
 
owasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEowasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEArun Voleti
 
How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks
How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech TalksHow to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks
How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech TalksAmazon Web Services
 
OWASP Portland - OWASP Top 10 For JavaScript Developers
OWASP Portland - OWASP Top 10 For JavaScript DevelopersOWASP Portland - OWASP Top 10 For JavaScript Developers
OWASP Portland - OWASP Top 10 For JavaScript DevelopersLewis Ardern
 

Similar to How to Harden the Security of Your .NET Website (20)

OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017 OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
OWASP Top 10 Proactive Controls 2016 - NorthEast PHP 2017
 
Vulnerabilities in modern web applications
Vulnerabilities in modern web applicationsVulnerabilities in modern web applications
Vulnerabilities in modern web applications
 
The path of secure software by Katy Anton
The path of secure software by Katy AntonThe path of secure software by Katy Anton
The path of secure software by Katy Anton
 
Web hackingtools 2015
Web hackingtools 2015Web hackingtools 2015
Web hackingtools 2015
 
Web hackingtools 2015
Web hackingtools 2015Web hackingtools 2015
Web hackingtools 2015
 
Owasp top 10 2017
Owasp top 10 2017Owasp top 10 2017
Owasp top 10 2017
 
Top 10 web application security risks akash mahajan
Top 10 web application security risks   akash mahajanTop 10 web application security risks   akash mahajan
Top 10 web application security risks akash mahajan
 
2013 OWASP Top 10
2013 OWASP Top 102013 OWASP Top 10
2013 OWASP Top 10
 
The OWASP Zed Attack Proxy
The OWASP Zed Attack ProxyThe OWASP Zed Attack Proxy
The OWASP Zed Attack Proxy
 
OWASP top 10-2013
OWASP top 10-2013OWASP top 10-2013
OWASP top 10-2013
 
How to Test for The OWASP Top Ten
 How to Test for The OWASP Top Ten How to Test for The OWASP Top Ten
How to Test for The OWASP Top Ten
 
Web Server Hardening
Web Server HardeningWeb Server Hardening
Web Server Hardening
 
Lesson 6 web based attacks
Lesson 6 web based attacksLesson 6 web based attacks
Lesson 6 web based attacks
 
OWASP Top Ten in Practice
OWASP Top Ten in PracticeOWASP Top Ten in Practice
OWASP Top Ten in Practice
 
Owasp top-ten-mapping-2015-05-lwc
Owasp top-ten-mapping-2015-05-lwcOwasp top-ten-mapping-2015-05-lwc
Owasp top-ten-mapping-2015-05-lwc
 
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20
The OWASP Top 10 Most Critical Web App Security Risks - TdT@Cluj #20
 
owasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWEowasp top 10 security risk categories and CWE
owasp top 10 security risk categories and CWE
 
How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks
How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech TalksHow to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks
How to use AWS WAF to Mitigate OWASP Top 10 attacks - AWS Online Tech Talks
 
OWASP Portland - OWASP Top 10 For JavaScript Developers
OWASP Portland - OWASP Top 10 For JavaScript DevelopersOWASP Portland - OWASP Top 10 For JavaScript Developers
OWASP Portland - OWASP Top 10 For JavaScript Developers
 
Owasp
Owasp Owasp
Owasp
 

More from DNN

How to Optimize the Performance of Your DNN Website
How to Optimize the Performance of Your DNN WebsiteHow to Optimize the Performance of Your DNN Website
How to Optimize the Performance of Your DNN WebsiteDNN
 
Renew with DNN
Renew with DNNRenew with DNN
Renew with DNNDNN
 
Building Sites on DNN's Liquid Content: From Content Modeling to Front-End UX
Building Sites on DNN's Liquid Content: From Content Modeling to Front-End UXBuilding Sites on DNN's Liquid Content: From Content Modeling to Front-End UX
Building Sites on DNN's Liquid Content: From Content Modeling to Front-End UXDNN
 
New Features in the Evoq CMS
New Features in the Evoq CMSNew Features in the Evoq CMS
New Features in the Evoq CMSDNN
 
How to Make the Most of Google Analytics on Your Evoq Site
How to Make the Most of Google Analytics on Your Evoq SiteHow to Make the Most of Google Analytics on Your Evoq Site
How to Make the Most of Google Analytics on Your Evoq SiteDNN
 
How the Right CMS Makes Content Future-Friendly
How the Right CMS Makes Content Future-FriendlyHow the Right CMS Makes Content Future-Friendly
How the Right CMS Makes Content Future-FriendlyDNN
 
Why Marketing and IT Will Love the New DNN
Why Marketing and IT Will Love the New DNNWhy Marketing and IT Will Love the New DNN
Why Marketing and IT Will Love the New DNNDNN
 
How to Select the Right CMS
How to Select the Right CMSHow to Select the Right CMS
How to Select the Right CMSDNN
 
10 Essential Features of an Intranet CMS
10 Essential Features of an Intranet CMS10 Essential Features of an Intranet CMS
10 Essential Features of an Intranet CMSDNN
 
How to Improve Your SEO with a Web CMS
How to Improve Your SEO with a Web CMSHow to Improve Your SEO with a Web CMS
How to Improve Your SEO with a Web CMSDNN
 
How to Build Modern Web Applications Using Microservices
How to Build Modern Web Applications Using MicroservicesHow to Build Modern Web Applications Using Microservices
How to Build Modern Web Applications Using MicroservicesDNN
 
Improve Your Website by Removing These 30 Things
Improve Your Website by Removing These 30 ThingsImprove Your Website by Removing These 30 Things
Improve Your Website by Removing These 30 ThingsDNN
 
How Structured Content Increases the ROI of Your Content
How Structured Content Increases the ROI of Your ContentHow Structured Content Increases the ROI of Your Content
How Structured Content Increases the ROI of Your ContentDNN
 
Lessons from Leading Intranet Homepages
Lessons from Leading Intranet HomepagesLessons from Leading Intranet Homepages
Lessons from Leading Intranet HomepagesDNN
 
How to Make Your Content Future-Ready
How to Make Your Content Future-ReadyHow to Make Your Content Future-Ready
How to Make Your Content Future-ReadyDNN
 
Achieve Intranet Success by Avoiding These Common Mistakes
Achieve Intranet Success by Avoiding These Common MistakesAchieve Intranet Success by Avoiding These Common Mistakes
Achieve Intranet Success by Avoiding These Common MistakesDNN
 
Developing an Intranet Strategy
Developing an Intranet StrategyDeveloping an Intranet Strategy
Developing an Intranet StrategyDNN
 
How Evoq Helps You Build Modern Web Applications
How Evoq Helps You Build Modern Web ApplicationsHow Evoq Helps You Build Modern Web Applications
How Evoq Helps You Build Modern Web ApplicationsDNN
 
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3DNN
 
5 Evoq Features You Didn't Know Existed
5 Evoq Features You Didn't Know Existed5 Evoq Features You Didn't Know Existed
5 Evoq Features You Didn't Know ExistedDNN
 

More from DNN (20)

How to Optimize the Performance of Your DNN Website
How to Optimize the Performance of Your DNN WebsiteHow to Optimize the Performance of Your DNN Website
How to Optimize the Performance of Your DNN Website
 
Renew with DNN
Renew with DNNRenew with DNN
Renew with DNN
 
Building Sites on DNN's Liquid Content: From Content Modeling to Front-End UX
Building Sites on DNN's Liquid Content: From Content Modeling to Front-End UXBuilding Sites on DNN's Liquid Content: From Content Modeling to Front-End UX
Building Sites on DNN's Liquid Content: From Content Modeling to Front-End UX
 
New Features in the Evoq CMS
New Features in the Evoq CMSNew Features in the Evoq CMS
New Features in the Evoq CMS
 
How to Make the Most of Google Analytics on Your Evoq Site
How to Make the Most of Google Analytics on Your Evoq SiteHow to Make the Most of Google Analytics on Your Evoq Site
How to Make the Most of Google Analytics on Your Evoq Site
 
How the Right CMS Makes Content Future-Friendly
How the Right CMS Makes Content Future-FriendlyHow the Right CMS Makes Content Future-Friendly
How the Right CMS Makes Content Future-Friendly
 
Why Marketing and IT Will Love the New DNN
Why Marketing and IT Will Love the New DNNWhy Marketing and IT Will Love the New DNN
Why Marketing and IT Will Love the New DNN
 
How to Select the Right CMS
How to Select the Right CMSHow to Select the Right CMS
How to Select the Right CMS
 
10 Essential Features of an Intranet CMS
10 Essential Features of an Intranet CMS10 Essential Features of an Intranet CMS
10 Essential Features of an Intranet CMS
 
How to Improve Your SEO with a Web CMS
How to Improve Your SEO with a Web CMSHow to Improve Your SEO with a Web CMS
How to Improve Your SEO with a Web CMS
 
How to Build Modern Web Applications Using Microservices
How to Build Modern Web Applications Using MicroservicesHow to Build Modern Web Applications Using Microservices
How to Build Modern Web Applications Using Microservices
 
Improve Your Website by Removing These 30 Things
Improve Your Website by Removing These 30 ThingsImprove Your Website by Removing These 30 Things
Improve Your Website by Removing These 30 Things
 
How Structured Content Increases the ROI of Your Content
How Structured Content Increases the ROI of Your ContentHow Structured Content Increases the ROI of Your Content
How Structured Content Increases the ROI of Your Content
 
Lessons from Leading Intranet Homepages
Lessons from Leading Intranet HomepagesLessons from Leading Intranet Homepages
Lessons from Leading Intranet Homepages
 
How to Make Your Content Future-Ready
How to Make Your Content Future-ReadyHow to Make Your Content Future-Ready
How to Make Your Content Future-Ready
 
Achieve Intranet Success by Avoiding These Common Mistakes
Achieve Intranet Success by Avoiding These Common MistakesAchieve Intranet Success by Avoiding These Common Mistakes
Achieve Intranet Success by Avoiding These Common Mistakes
 
Developing an Intranet Strategy
Developing an Intranet StrategyDeveloping an Intranet Strategy
Developing an Intranet Strategy
 
How Evoq Helps You Build Modern Web Applications
How Evoq Helps You Build Modern Web ApplicationsHow Evoq Helps You Build Modern Web Applications
How Evoq Helps You Build Modern Web Applications
 
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
DNN Launch Webinar: DNN Platform 8.0 and Evoq 8.3
 
5 Evoq Features You Didn't Know Existed
5 Evoq Features You Didn't Know Existed5 Evoq Features You Didn't Know Existed
5 Evoq Features You Didn't Know Existed
 

Recently uploaded

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 

Recently uploaded (20)

"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 

How to Harden the Security of Your .NET Website

  • 1. DNN / Proprietary and Confidential. All Rights Reserved.1
  • 2. Outline • About Ashish Prasad • Website Security • Security Questions to ask your Vendor • OWASP: Concepts and Top 10 • Understanding Encryption • High-Level Architecture of a .NET Website • Security Best Practices for IIS 8 • Regular Checkups • How to spot CSRF • How to spot XSS • .NET Website Security Resources
  • 3. About Ashish Prasad • Director of Engineering at DNN Corp. • Co-Author of DNN Professional 7 Book • Microsoft MVP • CISSP › Certified Information Systems Security Professional • Twitter: @ashishprasad | @DNNCorp
  • 4. Website Security Website Security Infrastructure Security - Firewall, - Antivirus - OS Patching Application Security - XSS - CSRF - Injection
  • 5. Security Questions to Ask Your Vendor • Do you issue Security Bulletins with your release? › For DNN Corp – Yes. http://www.dnnsoftware.com/community/security/security-center • How often do you test for security in your product? › For DNN Corp – Every release and all the time • Do you have incidence reporting system in place for customers? › For DNN Corp – Yes. Email: security@dnnsoftware.com • Do you have a tool to check security › For DNN Corp – Yes. http://www.dnnsoftware.com/community- blog/cid/155364/updates-to-security-analyzer-tool
  • 6. OWASP OWASP is an open community dedicated to enabling organizations to conceive, develop, acquire, operate, and maintain applications that can be trusted. All of the OWASP tools, documents, forums, and chapters are free and open to anyone interested in improving application security. We advocate approaching application security as a people, process, and technology problem because the most effective approaches to application security include improvements in all of these areas. For further information on OWASP: https://www.owasp.org/index.php/About_OWASP
  • 7. The OWASP Top 10 The OWASP Top Ten represents a broad consensus about what the most critical web application security flaws are. •First done in 2010 •Second done in 2013 (current) •Currently working on the latest version, expected in 2016 or 2017
  • 8. The OWASP Top 10 • A1-Injection • A2-Broken Authentication and Session Management • A3-Cross-Site Scripting (XSS) • A4-Insecure Direct Object References • A5-Security Misconfiguration • A6-Sensitive Data Exposure • A7-Missing Function Level Access Control • A8-Cross-Site Request Forgery (CSRF) • A9-Using Components with Known Vulnerabilities • A10-Unvalidated Redirects and Forwards For more information: https://www.owasp.org/index.php/Top_10_2013-Table_of_Contents
  • 9. OWASP > A1: Injection Injection flaws, such as SQL, OS and LDAP injection occur when untrusted data is sent to an interpreter as part of a command or query. The attacker’s hostile data can trick the interpreter into executing unintended commands or accessing data without proper authorization. Note: Images and descriptions for these Top 10 slides courtesy of the OWASP website: https://www.owasp.org/index.php/Top_10_2013-Top_10
  • 10. OWASP > A2: Broken Authentication and Session Management Application functions related to authentication and session management are often not implemented correctly. This allows attackers to compromise passwords, keys, or session tokens, or to exploit other implementation flaws to assume other users’ identities.
  • 11. OWASP > A3: Cross-Site Scripting (XSS) XSS flaws occur whenever an application takes untrusted data and sends it to a web browser without proper validation or escaping. XSS allows attackers to execute scripts in the victim’s browser, which can hijack user sessions, deface web sites, or redirect the user to malicious sites.
  • 12. OWASP > A4: Insecure Direct Object References A direct object reference occurs when a developer exposes a reference to an internal implementation object, such as a file, directory, or database key. Without an access control check or other protection, attackers can manipulate these references to access unauthorized data.
  • 13. OWASP > A5: Security Misconfiguration Good security requires having a secure configuration defined and deployed for the application, frameworks, application server, web server, database server, and platform. Secure settings should be defined, implemented, and maintained, as defaults are often insecure. Additionally, software should be kept up to date.
  • 14. OWASP > A6: Sensitive Data Exposure Many web applications do not properly protect sensitive data, such as credit cards, tax IDs, and authentication credentials. Attackers may steal or modify such weakly protected data to conduct credit card fraud, identity theft, or other crimes. Sensitive data deserves extra protection, such as encryption at rest or in transit, as well as special precautions when exchanged with the browser.
  • 15. OWASP > A7: Missing Function Level Access Control Most web applications verify function level access rights before making that functionality visible in the UI. However, applications need to perform the same access control checks on the server when each function is accessed. If requests are not verified, attackers will be able to forge requests in order to access functionality without proper authorization.
  • 16. OWASP > A8: Cross-Site Request Forgery (CSRF) A CSRF attack forces a logged-on victim’s browser to send a forged HTTP request, including the victim’s session cookie and any other automatically included authentication information, to a vulnerable web application. This allows the attacker to force the victim’s browser to generate requests the vulnerable application thinks are legitimate requests from the victim.
  • 17. OWASP > A9: Using Components with Known Vulnerabilities Components, such as libraries, frameworks, and other software modules, almost always run with full privileges. If a vulnerable component is exploited, such an attack can facilitate serious data loss or server takeover. Applications using components with known vulnerabilities may undermine application defenses and enable a range of possible attacks and impacts.
  • 18. OWASP > A10: Unvalidated Redirects and Forwards Web applications frequently redirect and forward users to other pages and websites, and use untrusted data to determine the destination pages. Without proper validation, attackers can redirect victims to phishing or malware sites, or use forwards to access unauthorized pages.
  • 19. Understanding Encryption • Allows Decryption › Symmetric - Shared Key - Fast › Asymmetric - Requires a pair of keys - Public and Private - Slow • No Decryption › Hashing - One-way - Can’t get back original - You can validate with original by hashing and comparing hashes - SHA 256, MD5
  • 20. Architecture of a .NET Website
  • 21. Security Best Practices: IIS 8 •Installation and Configuration •Web Application Isolation •Authentication •Request Filtering •Application Pool Identities
  • 22. Securing IIS: Installation & Configuration • Don’t run IIS on a domain controller or a backup domain controller. › Don’t even have IIS server join regular user domain › Perhaps have a separate domain for your IIS servers. • Install only the IIS modules you need. › IIS 8 is composed of more than 40 modules • Periodically remove unused or unwanted modules and handlers. • For high volume installations of IIS, run other resource-intensive products like SQL Server or Exchange on separate computers. • Keep your antivirus software up to date. • Move the Inetpub folder from your system drive to a different drive. › Default is C drive. › This helps in saving space on system drive.
  • 23. Securing IIS: Application Pool Identities • Don’t use the built-in service identities (e.g. Network Service, Local Service, or Local System). • The default (recommended) and most secure is ApplicationPoolIdentity. • Using a custom identity account is acceptable, but be sure to use a different account for each application pool. Reference: http://www.iis.net/learn/manage/configuring-security/application-pool-identities
  • 24. Securing IIS: Web Application Isolation • Isolate web applications. › Separate different applications into different sites with different application pools • Implement the principle of least privilege. › Run your worker process as a low privileged identity (virtual application pool identity) that is unique per site. • Isolate ASP.NET temp folders. › Set up a separate ASP.NET temp folder per site and only give access to appropriate process identity. • Isolate content. › Make sure to set an ACL (access control list) on each site root to allow only access to the appropriate process identity.
  • 25. Securing IIS: Request Filtering • Ensure that request filtering rules are enabled. • Rules › File Name › Rules › Hidden Segments › URL › Http Verbs › Headers › Query Strings Resource: https://technet.microsoft.com/en- us/library/hh831621(v=ws.11).aspx
  • 26. Securing IIS: Authentication •Don’t allow anonymous writes to the server. •Disable anonymous access to server directories and resources •Be aware that configuring Anonymous authentication along with another authentication type for the same website can cause authentication problems.
  • 27. Securing IIS: Miscellaneous •Make periodic backups of the IIS server. •Limit permissions granted to non-administrators. •Turn on SSL and maintain SSL certificates. •Use SSL when you use Basic authentication. •No clear text password recovery •Passwords should be hashed (SHA256) › MD5 isn’t secure anymore
  • 28. Website: Perform Regular Checkups • Do a “view source” of your web application and look for iFrames, malicious links and cookies • Compare the filesystem between backups and look for new or modified files › You may find backdoor rootkit files in your website folder - Tool: Beyond Compare › Also compare database - Tool: Redgate SQL Compare • Review audit logs › Look for unusual activities • Review exception logs › Look for unusual exceptions • Look for new Users created in your system
  • 29. How to Spot: Cross-Site Request Forgery Cross-Site Request Forgery (CSRF) is a type of attack that occurs when a malicious web site, email, blog, instant message, or program causes a user’s web browser to perform an unwanted action on a trusted site for which the user is currently authenticated. • Asp.Net ValidateAntiForgeryTokenAttribute • Paired tokens (cookie and header) › Must match Source: https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet
  • 30. How to Spot: Cross-Site Scripting (XSS) Cross-Site Scripting (XSS) attacks are a type of injection, in which malicious scripts are injected into otherwise benign and trusted web sites. XSS attacks occur when an attacker uses a web application to send malicious code, generally in the form of a browser side script, to a different end user. Source: https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)
  • 31. Summary • Website Security • Security Questions to ask your Vendor • OWASP: Concepts and Top 10 • Understanding Encryption • High-Level Architecture of a .NET Website • Security Best Practices for IIS 8 • Regular Checkups • How to spot CSRF • How to spot XSS
  • 32. Resources • Security Best Practices for IIS 8 › https://technet.microsoft.com/en-us/library/jj635855(v=ws.11).aspx • Understanding CSRF, the video tutorial edition › https://www.youtube.com/watch?v=hW2ONyxAySY • Basic XSS Guide #1 - Alert() - Redirection - Cookie Stealing › https://www.youtube.com/watch?v=486KmQOcwWg • OWASP Top 10 › https://www.owasp.org/index.php/Top_10_2013-Table_of_Contents
  • 33. For More Information About DNN Visit our website for more information about our secure, .NET CMS, Evoq: http://www.dnnsoftware.com/products/evoq-content