- 相關(guān)推薦
防盜鏈接ASP函數(shù)實(shí)現(xiàn)代碼
簡單介紹下功能吧:使用了ASP的一個對象ServerVariables(服務(wù)器環(huán)境變量),通過這個環(huán)境變量可以獲取到真正的下載地址再通過一些簡單的VBS內(nèi)置函數(shù)破壞其真正地址的完整性。達(dá)到欺騙下載軟件的功能,F(xiàn)附上源碼提供大家學(xué)習(xí)。
復(fù)制代碼 代碼如下:
<% FunctIon DownloadFIle(StrFIle)
StrFIlename=StrFIle
Response.Buffer=True
Response.Clear
Set S=Server.CreateObJect("ADODB.Stream")
S.Open
S.Type=1
on Error Resume Next
Set Fso=Server.CreateObJect("ScrIptIng.FIleSystemObJect")
If Not Fso.FIleExists(StrFIleName) Then
From_Url=Cstr(Request.ServerVarIables("HTTP_REFERER"))
Serv_Url=Cstr(Request.ServerVarIables("SERVER_NAME"))
If MId(From_Url,8,len(Serv_Url)) <> Serv_Url Then
Response.WrIte "該文件不存在或者已經(jīng)刪除."
Response.End
End If
Response.RedIrect Request.ServerVarIables("HTTP_REFERER")
Response.End
End If
FileExt=MId(StrFIlename,InStrRev(StrFIleName, ".")+1)
Select Case UCase(FIleExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB", "PHP", "JSP", "SHTML", "HTML", "HTM", "TV", "DATA"
From_Url=Cstr(Request.ServerVarIables("HTTP_REFERER"))
Serv_Url=Cstr(Request.ServerVarIables("SERVER_NAME"))
If MId(From_Url,8,len(Serv_Url)) <> Serv_Url Then
Response.WrIte "該文件不存在或者已經(jīng)刪除."
Response.End
End If
Response.RedIrect Request.ServerVarIables("HTTP_REFERER")
Response.End
End Select
Set F=Fso.GetFIle(StrFIlename)
IntFIlelength=F.SIze
s.LoadFromFIle(StrFIlename)
If Err Then
From_Url=Cstr(Request.ServerVarIables("HTTP_REFERER"))
Serv_Url=Cstr(Request.ServerVarIables("SERVER_NAME"))
If MId(From_Url,8,len(Serv_Url)) <> Serv_Url Then
Response.WrIte "該文件數(shù)據(jù)不完整或許已損壞."
Response.End
End If
Response.RedIrect Request.ServerVarIables("HTTP_REFERER")
Response.End
End If
Set Upload=Server.CreateObJect("PersIts.Upload")
If Upload Is Nothing Then
Response.AddHeader "Content-DIsposItIon","attachment; FIlename="&F.Name
Response.AddHeader "Content-Length",IntFilelength
Response.CharSet="UTF-8"
Response.ContentType="application/x-download"
Response.BinaryWrite S.Read
Response.Flush
S.Close
Set s=NothIng
Else
Upload.SendBinary StrFIlename,True,"application/x-download",False
End If
End FunctIon
%>
使用:<%call>。
【防盜鏈接ASP函數(shù)實(shí)現(xiàn)代碼】相關(guān)文章:
解讀Rnd 函數(shù)中的asp08-03
關(guān)于ASP.NET使用JavaScript顯示信息提示窗口實(shí)現(xiàn)原理及代碼05-09
揭秘利用ajax實(shí)現(xiàn)預(yù)覽鏈接看鏈接的內(nèi)容10-19
JavaScript實(shí)現(xiàn)網(wǎng)頁刷新代碼段08-07
ASP.NET Page函數(shù)調(diào)用解析10-01
php對圖像的各種處理函數(shù)代碼總結(jié)07-03
ASP.NET連SQL7接口的源代碼06-06