« L-Blog 1.08(SE) Final 验证码功能修改方法! | (回到Blog入口) | 列表模式 分页功能缺陷 修正 »

L-BLOG重大安全漏洞的描述及补丁

一、禁止站外提交数据
打开blogedit.asp文件。找到”<!--include file="commend.asp"-->“
在后面加入:
程序代码: [ 复制代码到剪贴板 ]  

一、禁止站外提交数据
打开blogedit.asp文件。找到”“
在后面加入:
程序代码: [ 复制代码到剪贴板 ]


<%
dim server_v1,server_v2
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
if mid(server_v1,8,len(server_v2))<>server_v2 then
response.write "

你提交的路径有误,禁止从站点外部提交数据请不要乱该参数!
"
response.end
end if
%>

打开BLOGEDIT。ASP文件,找到:
程序代码: [ 复制代码到剪贴板 ]
<%
IF Request.Form("message")=Empty OR Request.Form("log_Title")=Empty Then
Response.Write("必须填写日志内容
请返回重新填写")
ElseIF Request.Form("blogdele")="1" Then
Conn.ExeCute("DELETE * FROM blog_Content WHERE log_ID="&Request.Form("log_ID"))
Conn.ExeCute("DELETE * FROM blog_Comment WHERE blog_ID="&Request.Form("log_ID"))
Conn.ExeCute("UPDATE blog_Member SET mem_PostLogs=mem_PostLogs-1 WHERE mem_Name='"&Request.Form("log_Author")&"'")
Conn.ExeCute("UPDATE blog_Info SET blog_LogNums=blog_LogNums-1")
SQLQueryNums=SQLQueryNums+4
Response.Write("

日志及相关留言删除成功

点击返回首页

")
Else
dim Log_Title,log_Content,log_From,log_FromURL,log_ID,log_Intro,log_DisSM,log_DisUBB,log_DisIMG,log_AutoURL,log_Modify,log_IsShow,log_AutoKEY,log_IsTop,log_DisComment,log_Weather
log_Title=CheckStr(Request.Form("log_Title"))
log_Content=CheckStr(Request.Form("message"))
log_Intro=SplitLines(HtmlEncode(log_Content),4)
log_From=CheckStr(Request.Form("log_From"))
log_FromURL=Request.Form("log_FromURL")
log_ID=Request.Form("log_ID")
log_DisSM=Request.Form("log_DisSM")
log_DisUBB=Request.Form("log_DisUBB")
log_DisIMG=Request.Form("log_DisIMG")
log_AutoURL=Request.Form("log_AutoURL")
log_AutoKEY=Request.Form("log_AutoKEY")
log_Weather=Request.Form("log_Weather")
IF Request.Form("log_IsTop")="1" Then
log_IsTop=True
Else
log_IsTop=False
End IF
IF Request.Form("log_IsShow")="0" Then
log_IsShow = True
Else
log_IsShow = False
End IF
If Request.Form("log_DisComment")="1" Then
log_DisComment=True
Else
log_DisComment=False
End IF
IF log_DisSM=Empty Then log_DisSM=0
IF log_DisUBB=Empty Then log_DisUBB=0
IF log_DisIMG=Empty Then log_DisIMG=0
IF log_AutoURL=Empty Then log_AutoURL=0
IF log_AutoKEY=Empty Then log_AutoKEY=0
log_Modify="[本日志由 "&memName&" 于 "&DateToStr(Now(),"Y-m-d H:I A")&" 编辑]"
Dim log_MoveToSQL
IF Request.Form("blogmoveto")<>"0" Then
log_MoveToSQL=",log_CateID="&Request.Form("blogmoveto")&""
End IF
Conn.ExeCute("UPDATE blog_Content Set log_Title='"&log_Title&"',log_Intro='"&log_Intro&"',log_Content='"&log_Content&"',log_From='"&log_From&"',log_FromURL='"&log_FromURL&"',log_DisSM="&log_DisSM&",log_DisUBB="&log_DisUBB&",log_DisIMG="&log_DisIMG&",log_AutoURL="&log_AutoURL&",log_AutoKEY="&log_AutoKEY&",log_Modify='"&log_Modify&"',log_IsShow="&log_IsShow&",log_DisComment="&log_DisComment&",log_Weather='"&log_Weather&"',log_IsTop="&log_IsTop&log_MoveToSQL&" WHERE log_ID="&log_ID&"")
SQLQueryNums=SQLQueryNums+1
Response.Write("

修改日志成功

点击返回首页

或者返回你所修改的日志

或者等待3秒后自动返回你所修改的日志

")
End IF
%>

替换为:
程序代码: [ 复制代码到剪贴板 ]
<%
Dim blog_EdRS,blog_ED
blog_ED=CheckStr(Request.Form("log_ID"))

Set blog_EdRS=Server.CreateObject("ADODB.Recordset")
SQL="SELECT L.*,C.cate_Name FROM blog_Content AS L,blog_Category AS C WHERE log_ID="&blog_ED&" AND C.cate_ID=L.log_cateID"
blog_EdRS.Open SQL,Conn,1,1
SQLQueryNums=SQLQueryNums+1
IF blog_EdRS.EOF AND blog_EdRS.BOF Then
response.write "你要修改日志的日志不存在
点击返回主页面"
elseIF Not((blog_EdRS("log_Author")=memName AND memStatus="Admin") OR memStatus="SupAdmin") Then
response.write "你没有权限修改日志
点击返回主页面"
else
IF Request.Form("message")=Empty OR Request.Form("log_Title")=Empty Then
Response.Write("必须填写日志内容
请返回重新填写")
ElseIF Request.Form("blogdele")="1" Then
Conn.ExeCute("DELETE * FROM blog_Content WHERE log_ID="&Request.Form("log_ID"))
Conn.ExeCute("DELETE * FROM blog_Comment WHERE blog_ID="&Request.Form("log_ID"))
Conn.ExeCute("UPDATE blog_Member SET mem_PostLogs=mem_PostLogs-1 WHERE mem_Name='"&Request.Form("log_Author")&"'")
Conn.ExeCute("UPDATE blog_Info SET blog_LogNums=blog_LogNums-1")
SQLQueryNums=SQLQueryNums+4
Response.Write("

日志及相关留言删除成功

点击返回首页

")
Else
dim Log_Title,log_Content,log_From,log_FromURL,log_ID,log_Intro,log_DisSM,log_DisUBB,log_DisIMG,log_AutoURL,log_Modify,log_IsShow,log_AutoKEY,log_IsTop,log_DisComment,log_Weather
log_Title=CheckStr(Request.Form("log_Title"))
log_Content=CheckStr(Request.Form("message"))
log_Intro=SplitLines(HtmlEncode(log_Content),4)
log_From=CheckStr(Request.Form("log_From"))
log_FromURL=Request.Form("log_FromURL")
log_ID=Request.Form("log_ID")
log_DisSM=Request.Form("log_DisSM")
log_DisUBB=Request.Form("log_DisUBB")
log_DisIMG=Request.Form("log_DisIMG")
log_AutoURL=Request.Form("log_AutoURL")
log_AutoKEY=Request.Form("log_AutoKEY")
log_Weather=Request.Form("log_Weather")
IF Request.Form("log_IsTop")="1" Then
log_IsTop=True
Else
log_IsTop=False
End IF
IF Request.Form("log_IsShow")="0" Then
log_IsShow = True
Else
log_IsShow = False
End IF
If Request.Form("log_DisComment")="1" Then
log_DisComment=True
Else
log_DisComment=False
End IF
IF log_DisSM=Empty Then log_DisSM=0
IF log_DisUBB=Empty Then log_DisUBB=0
IF log_DisIMG=Empty Then log_DisIMG=0
IF log_AutoURL=Empty Then log_AutoURL=0
IF log_AutoKEY=Empty Then log_AutoKEY=0
log_Modify="[本日志由 "&memName&" 于 "&DateToStr(Now(),"Y-m-d H:I A")&" 编辑]"
Dim log_MoveToSQL
IF Request.Form("blogmoveto")<>"0" Then
log_MoveToSQL=",log_CateID="&Request.Form("blogmoveto")&""
End IF
Conn.ExeCute("UPDATE blog_Content Set log_Title='"&log_Title&"',log_Intro='"&log_Intro&"',log_Content='"&log_Content&"',log_From='"&log_From&"',log_FromURL='"&log_FromURL&"',log_DisSM="&log_DisSM&",log_DisUBB="&log_DisUBB&",log_DisIMG="&log_DisIMG&",log_AutoURL="&log_AutoURL&",log_AutoKEY="&log_AutoKEY&",log_Modify='"&log_Modify&"',log_IsShow="&log_IsShow&",log_DisComment="&log_DisComment&",log_Weather='"&log_Weather&"',log_IsTop="&log_IsTop&log_MoveToSQL&" WHERE log_ID="&log_ID&"")
SQLQueryNums=SQLQueryNums+1
Response.Write("

修改日志成功

点击返回首页

或者返回你所修改的日志

或者等待3秒后自动返回你所修改的日志

")
End IF

end if
blog_EdRS.close
set blog_EdRS=nothing
%>

关于

此页面包含了发表于2005年1月18日 10:55的 Blog 上的单篇日记。

此 Blog 的前一篇日记是 L-Blog 1.08(SE) Final 验证码功能修改方法!

此 Blog 的后一篇日记是 列表模式 分页功能缺陷 修正

更多信息可在 主索引 页和 归档 页看到。

Creative Commons License
此 Blog 中的日记遵循以下授权 Creative Commons(创作共用)授权.
Powered by
Movable Type 6.3.2