DotNetNuke , ou DNN , é um sistema de gerenciamento de conteúdo de código aberto programado em linguagem de programação web ASP.NET da Microsoft. É importante manter a segurança em mente quando você escrever módulos que se conectam ao sistema DNN . Módulos permitem aos desenvolvedores estender a funcionalidade do DNN CMS. Diferentes tipos de módulos que geram as informações do usuário , tais como dados de formulários, cookies e consultas pode ser vítima de hackers que procuram explorar os dados. Use os seguintes exemplos de código em seus módulos DNN para bloqueá-los de ataques comuns . Instruções
1
InputFilter rotina de Uso DotNetNuke para filtrar funções, tais como injeções SQL e execução de outros tipos de marcação do usuário, por exemplo :
Enum FilterFlag
Multiline - 3
NoMarkup - 1
NoScripting - 5
NoSQL - 9
End Enum
2
Pare seu módulos DNN de ser vítima de ataques de injeção de SQL , adicionando procedimentos de proteção contra consultas indesejadas :
criar GetSearchResults proc ( @ nvarchar searchTerm (50) )
como
declar @ sql nvarchar (300 )
set @ sql - ' select * from searchResults onde searchTerm como ''% ' em
+ @ searchTerm + ' %'' ' em
sp_executesql exec @ sql
ir
3
Use InputFilter com o parâmetro NoMarkup para evitar que seus módulos sejam detectados por scripts cross-site , que digitalizar os servidores de banco de dados de vulnerabilidades : < br >
Dim MySearch como corda - Request.QueryString ( " txtSearch " )
Dim objSecurity As New PortalSecurity
MySearch - objSecurity.InputFilter ( MySearch , PortalSecurity.FilterFlag.NoMarkup ) < br >
lblSearchtext.text - "Procurar :" & mySearchTerm