ASP 오버플로 취약점을 처리하려면 포괄적인 문자 필터링을 수행해야 합니다.
하나는 회원으로 로그인하는 것입니다
. 다음 코드는 사용자 이름에서 잘못된 문자를 필터링하는 것입니다.
<%
사용자 이름=trim(request.form("사용자 이름"))
userpws=trim(request.form("비밀번호"))
사용자 이름="" 또는 userpws="" 또는 Instr(username,"=")>0 또는 Instr(username,"%")>0 또는 Instr(username,chr(32))>0 또는 Instr(username," ?")>0 또는 Instr(사용자 이름,"&")>0 또는 Instr(사용자 이름,";")>0 또는 Instr(사용자 이름,",")>0 또는 Instr(사용자 이름,"'")>0 또는 Instr(사용자 이름,",")>0 또는 Instr(사용자 이름,chr(34))>0 또는 Instr(사용자 이름,chr(9))>0 또는 Instr(사용자 이름,"?")>0 또는 Instr(사용자 이름, "$")>0 다음
response.write(''사용자 이름과 비밀번호를 정확하게 입력해주세요'')
응답.끝
종료하면
%>
주소 표시줄을 통해 불법 문자를 입력하는 것과 관련된 오버플로 취약점도 있습니다. 예를 들어 한 페이지가 newslist.asp이고 다른 페이지가 newspage.asp인 경우
newslist.asp에서 newspage.asp로 newsid 매개 변수를 전달합니다.
newspage.asp에서 매개변수를 수신할 때 일반적으로 다음만 사용합니다.
<%
희미한 뉴스 ID
뉴스ID=요청(''뉴스ID'')
.....................
%>
안전한 편이 되려면 최소한 다음 사항을 추가해야 합니다.
<%
희미한 뉴스 ID
newsid=tirm(요청''id'')
newsid='''' 또는 Instr(newsid,"'")>0 또는 Instr(newsid,"%")>0이면
response.write(''잘못된 매개변수'')
응답.끝
%>
제가 말씀드린 내용은 기본적으로 위의 두 가지 사항입니다. 부족한 점이 있으면 알려주세요.
인터넷에는 여전히 허점이 있지만, 몇 줄의 코드를 더 입력하면 웹사이트의 보안을 더욱 강화할 수 있습니다!
불법 문자 오버플로 취약점을 이용한 웹사이트 공격을 처리하는 간단한 방법