DotNetNuke oder DNN , ist ein Open- Source Content-Management -System in Microsoft ASP.NET Web-Programmiersprache programmiert . Es ist wichtig , um die Sicherheit im Auge zu behalten , wenn Sie Module, die an der DNN -System anschließen zu schreiben. Module ermöglichen es Entwicklern, die Funktionalität des CMS erweitern DNN . Verschiedene Arten von Modulen, die Benutzerinformationen wie Formulardaten , Cookies und Abfragen erstellen können Beute für Hacker suchen, um in Ihre Daten tippen fallen . Verwenden Sie die folgenden Beispiele von Code in Ihre DNN -Module , um sie von gemeinsamen Angriffe zu blockieren . Anleitung
1
Verwenden DotNetNuke ist InputFilter Routine heraus zu filtern Funktionen wie SQL -Injektionen und die Ausführung von anderen Arten von Markup Benutzer , zum Beispiel:
Enum FilterFlag
MultiLine - 3
NoMarkup - 1 of
NoScripting - 5
NoSQL - 9
End Enum
2
Stoppen Sie Ihre DNN -Module zum Opfer fallen SQL -Injection-Angriffe , indem Verfahren gegen unerwünschte Abfragen schützen :
create proc GetSearchResults ( @ searchTerm nvarchar ( 50) )
als Werbeartikel
declar @ sql nvarchar ( 300 )
set @ sql - ' select * from searchResults wo SearchTerm wie ''% '
+ @ searchTerm + '% '''
exec sp_executesql @ sql
gehen
3
Nutzungsbedingungen InputFilter mit dem NoMarkup Parameter um Ihre Module aus, die von Cross-Site- Skripte, die Scan- Datenbank-Server auf Schwachstellen erkannt verhindern :
Dim MySearch als String - request.querystring ( " txtSearch " )
Dim As New objSecurity PortalSecurity
MySearch - objSecurity.InputFilter ( MySearch , PortalSecurity.FilterFlag.NoMarkup )
lblSearchtext.text - "Suchen nach :" & mySearchTerm