春风送暖,两会在和煦的阳光中落下了帷幕,期间,互联网安全是一项备受关注的热点话题。十二届全国人大五次会议副秘书长傅莹在发布会上介绍,今年将开展网络安全执法检查,关注重点之一就是加强个人信息保护。
随着“微信小程序”的盛行,它的安全问题也不容小觑。为了贡献一己之力,知道创宇在两会期间义务为党政府机关和企事业单位提供“微信小程序”安全测试。
安全专家于超,在安全测试过程中发现某大型企业的小程序存在遍历漏洞。导致大量平台用户信息及订单信息泄露。
于超介绍说,在测试该小程序时发现在获取用户订单列表时直接使用PassportId参数进行查询,未验证查询参数PassportId是否与查询人会话身份(session)匹配,这样便导致可以通过修改PassportId值的方式获得其他用户对订单列表,从而获取用户信息。
于超建议,针对该问题,在获取用户数据时添加会话验证,只允许读取当前登录用户的订单信息,由此有效避免个人信息泄露。
经过安全服务团队结合小程序特点所做的大量分析发现,开发者可能会在小程序编写上存在SQL注入、越权访问、文件上传、CSRF信息泄露等严重安全问题,这些都会对小程序开发者、小程序用户造成严重损害,包括经济、用户信息、信任度等,甚至可能导致程序无法再使用。例如,在开发一个有查询功能的小程序时这样写:
Sqlinjection.js代码
-
Page({ data: { info: '', username: '', password: '', }, formSubmit: (e) => { console.log(e.detail.value); wx.request({ url: 'Example Domain', data: e.detail.value, method: 'POST', header: { 'content-type': 'application/json' }, success: res => { wx.showModal({ title: '服务器返回的数据', content: JSON.stringify(res.data), }) }, fail: err => { console.log('失败') } }); }, trueOne: function() { this.setData({ info: '该方法通过或语句,使查询条件为true,以此来通过登陆验证', username: 'test',