Para lidar com vulnerabilidades de estouro de ASP, devemos fazer uma filtragem abrangente de caracteres.
Uma delas é fazer login como membro
. O código a seguir é para filtrar caracteres ilegais no nome de usuário.
<%
nome de usuário=trim(request.form("nome de usuário"))
userpws=trim(request.form("senha"))
if username="" ou userpws="" ou Instr(username,"=")>0 ou Instr(username,"%")>0 ou Instr(username,chr(32))>0 ou Instr(username," ?")>0 ou Instr(username,"&")>0 ou Instr(username,";")>0 ou Instr(username,",")>0 ou Instr(username,"'")>0 ou Instr(nome de usuário,",")>0 ou Instr(nome de usuário,chr(34))>0 ou Instr(nome de usuário,chr(9))>0 ou Instr(nome de usuário,?")>0 ou Instr(nome de usuário, "$")>0 então
response.write(''Por favor, digite o nome de usuário e senha corretamente'')
resposta.fim
terminar se
%>
Há também uma vulnerabilidade de overflow que envolve a inserção de caracteres ilegais através da barra de endereço. Por exemplo, se uma página for newslist.asp e a outra for newspage.asp,
passamos o parâmetro newsid de newslist.asp para newspage.asp.
Ao receber parâmetros em newspage.asp, geralmente usamos apenas,
<%
notícias escuras
newsid=request(''newsid'')
.....................
%>
Para estarmos do lado seguro, deveríamos pelo menos adicionar
<%
notícias escuras
newsid=tirm(solicitação''id'')
se newsid='''' ou Instr(newsid,"'")>0 ou Instr(newsid,"%")>0 então
resposta.write(''Parâmetro ilegal'')
resposta.fim
%>
O que eu disse são basicamente os dois pontos acima. Se houver alguma deficiência, por favor me avise.
Embora ainda tenhamos algumas lacunas na INTERNET, inserir mais algumas linhas de código pode aumentar melhor a segurança do site!
Uma maneira simples de lidar com o uso da vulnerabilidade de estouro de caracteres ilegais para atacar sites