Function Host_Fun(Host)
Host = Replace(Host, "http://", "")
Host = Replace(Host, "https://", "")
Host_Fun = Host
End Function
'' CSRF 방어하기
Sub CSRF_Token
' 현재파일의 폴더까지의 위치확인
InStrLen = InStrRev(Request.ServerVariables("http_host")&Request.ServerVariables("http_url"),"/")
' 글을 입력받는 URI 확인(http:// 를 제외)
http_referer = Left(Host_Fun(Request.ServerVariables("http_referer")), InStrLen)
' 글을 입력하는 페이지
now_url = Left(Request.ServerVariables("http_host")&Request.ServerVariables("http_url"), InStrLen)
If ( http_referer <> now_url ) Then
Response.Write "<script>"&VbCrLf
Response.Write "<!--"&VbCrLf
Response.Write "window.alert('잘못된경로로접근하셨습니다!');"&VbCrLf
Response.Write "window.history.back();"&VbCrLf
Response.Write "//-->"&VbCrLf
Response.Write "</script>"&VbCrLf
Response.End
End If
End Sub
' 모든페이지 글등록 처리
If InStr(Request.ServerVariables("http_url"), "_ok") > 0 Then
Call CSRF_Token
End If
'ASP' 카테고리의 다른 글
엑셀다운로드 복잡한 방법(효과적이진 못하나 괜찮다) (0) | 2015.12.24 |
---|---|
asp에서 euc-kr / utf-8 설정 상단 구문 (0) | 2015.11.01 |
SQLInjection 방어하기 (0) | 2015.10.29 |
정규식을 이용한 HTML 태그제거 함수 (0) | 2015.03.19 |
Parameter 사용 (0) | 2014.01.05 |