代码审计 | 某驾校综合管理系统 SQL注入和登录认证绕过
2020-03-26 14:46:42 Author: www.secpulse.com(查看原文) 阅读量:430 收藏

自官方的介绍

企业政府 | 免费版 | 大小:11.98MB | 环境:.NET/MSSQL | 人气:1996 (多多少少还是有点使用量的)

驾校管理系统是新翔软件科技有限公司根据一线客户需求开发的管理系统。系统采用B/S架构,可以在电脑、微信端联网访问。软件包括后台驾校管理平台、前台电脑网站、前台手机网站、前台微信学生平台、微信教练平台、微信代办平台等多个平台。实现平台联动、数据共享。集约化管理学员报名、缴费、练车、考试进度、报表打印等各项业务功能。下载地址 http://down.chinaz.com/soft/39427.htm


漏洞触发点

  • 0x01. /app/login.aspx 登录处SQL注入

    上方的内部登录为管理员登录,下方的登录为用户和其他人员登录,点击后跳转至移动版登录页面。

    上图红色部分均可注入,但password注入优先于username,原因请见下图。

  可见上图响应区域的红色部分的代码,***号联系电话错误,密码字段自然错误。因此尝试注入。

成功获取到数据库版本信息。先了解数据库结构然后准备构造语句,数据库结构

如下图

存在xm和pwd,直接select吧。

payload为:

2'+and+1%3d(select+id,xm,pwd+from+manage+where+id+%3d+1+for+xml+path(''))--

至此前台注入已经搞定了。那么接下来在看看后台登录认证绕过。

  • 0x02. 后台登录绕过

后台登录页面如下图:

触发漏洞点在用户名处,漏洞触发后,见下图:

程序错误。说明存在异常,假设使用上述注入漏洞来窃取到的密码进行登录(密码无解的情况下),使用账号admin,然后注释后续闭合的方法即可绕过登录,或采用cookie伪造的方法绕过登录。见下图:

上述三幅图可见通过注入漏洞成功绕过登录,

同时可见 response 头部的set-cookie字段

xxuser=id=1&xm=admin&pwd=E10ADC3949BA59ABBE56E057F20F883E&userxm=admin&qx=0&jueseid=2;expires=Mon, 23-Mar-2020 16:03:29 GMT; path=/其中含有xxuser部分为身份认证信息,且包含用户密码。所以如果密码无法解开的情况下或者是特殊情况,可采用cookie伪造的方法进入后台。见下图

总结

 攻击者可前台注入,窃取后台管理账号密码或提权服务器(mssqlsa权限未被降权的情况下)

 后台存在SQL注入漏洞,可被绕过登录

  cookie信息存在严重隐患,如后台注入漏洞被修复,可通过修改本地cookie配合前台注入在无需解密密码的情况下绕过登录。

本文作者:SecPulse

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/126508.html


文章来源: https://www.secpulse.com/archives/126508.html
如有侵权请联系:admin#unsafe.sh