Senlon开源系统白盒测试

发表于:2011-4-27 10:06

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:风良    来源:51Testing软件测试网原创

  senlon是一款免费的在线算命系统(当然,他是干什么的不用管,我们只管看代码找bug就OK,也没多看到底是什么系统,貌似这套V3.1还是最新版,看网站简介还很强大很NB。)架构是asp+access的,我是在自己本机架的测试环境,我自己搭建的环境是windows xp+asp+access2003,服务器是用小旋风的asp server,核心是netbox2.8的。

  像这种整站程序,我一般是先看首页文件,主要是看它包含哪些其他文件,其次是看程序动态交互的地方,这些地方一不小心就很容易出问题的,最后看数据库。当然这只是个人习惯而已。

  漏洞文件:chouqian目录下的guanyin.asp,第13-18行代码。代码如下:

gyqid=request("gyqid")

set rs=server.createobject("adodb.recordset")

sql="select * from guanyin where id="&gyqid

rs.open sql,conn,1,3

jieqian=rs("jieqian")

Rs.close

  对于获取的gyqid变量没做任何过滤便入库查询了,很明显的SQL injection。其实漏洞代码不仅产生在这一处,其他代码也存在同样问题,而且在这个文件夹下的huangdaxian.asp,zgjm.asp,zgss.asp文件均有类似问题,这里不再重复。

  此外在astro目录下的xzyc.asp文件,第43-49行代码:

xz=request("xz")

 if xz<>"" then

 Sql="select * from xzysday where id="&xz

 else

Sql="select * from xzysday where xzmc='"&myxz&"'"

end if

rs.open sql,conn,1,1%>

  ……………………

  查看全文请点击下载:http://www.51testing.com/html/39/n-234539.html

  该文件在其他地方同样也出现了类似漏洞,这里不再重复。另外要提的是,它的根目录下面有一个sql.asp文件,是用来防注入的,先看防注代码吧:

<%

   '

   '核客SQL高级防注入程序加强版

   '本程序由 绝情风 合作开发

   '对本程序有任何疑问请联系本人

   '中国核客

'此版本欢迎到处转

 

'--------定义部份------------------

   Dim Fy_Post,Fy_Get,Fy_In,Fy_Inf,Fy_Xh,Fy_db,Fy_dbstr

   '自定义需要过滤的字串,""分隔

   Fy_In = "';andexecinsertselectdeleteupdatecount*%chrmidmastertruncatechardeclare"

   '----------------------------------

%>

 

<%

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号