国产软件CVE漏洞分析系列:泛微OA系统 漏洞编号:SSV-91661

今天开始扒拉一下各种国产软件已经公布的漏洞,有些公司自己把漏洞保密起来,其实真是傻啦吧唧的,以为不让大家知道,漏洞就不存在吗!没办法,可能也是为了上市公司的股价吧。普通人对于漏洞的理解还是有点狼来了的感觉,没有正确的对待漏洞的出现和解决,只是想明面上保持自己在行业里的领先地位。

废话太多,有点愤青的感觉,对于我这个年纪来说不太合适?


ssv-91661发布在知道创宇上面,这个编号的开头字母就是知道创宇的简称,这个无所谓了。

看看实际的漏洞内容:

  1. 漏洞发生的页面位置是/meeting/Maint/MeetingTypeCheck.jsp
  2. 这个页面是可以直接访问的,不用做路由跳转。
  3. 漏洞页面的代码如下:

<%@ page language="java" contentType="text/html; charset=GBK" %><%@ page import="weaver.general.Util" %>

<%



String roomtypename = Util.null2String(**.**.**.**.URLDecoder.decode(request.getParameter("typename"),"UTF-8"));  //获得操作页面MeetingType_left.jsp传过来的参数 name

String id = Util.null2String(request.getParameter("id"));



if (id != null && !"".equals(id))

        RecordSet.executeSql("select * from meeting_type where name='"+roomtypename+"' and id != " + id); //修改状态时有id传入进行过滤

else

      RecordSet.executeSql("select * from meeting_type where name='"+roomtypename+"'");



if (RecordSet.next()){

        out.print("exist--");

} else {

    out.print("unfind--");

}



%>

这是一个非常明显的sql注入漏洞,当然这个漏洞是2016年发现的,现在2019年了,3年过去了。再想找到这么直接的漏洞估计不太可能了,当然也不是说一定不可能,估计利用原理是一样的,但是看起来没这么明显。

两个问题:

  1. 输入参数id和typename没有做任何字符过滤
  2. sql语句直接做的字符串拼接,没有用对象处理

其实这个就是普及一下常识,大家看看就好了。 

本系列的漏洞分析主要是针对国内软件进行分析,如果有知识产权的侵犯,请联系本人删除,非常感谢!

你可能感兴趣的:(前行者)