作为毕了业的利益不太相关,抱着学习的心态反编译超级校园看了看
代码画风大概是这样的
我去你*个大卵子
===================================
做的怎么样我并不 care,然而激活账号时需要学号、姓名、手机(需验证)还有邮箱,这就很吓人了。
(补充:激活账号所调用的方法大家欣赏一下
找了半天 activate 关键字的我还是太 naive 了)
看了一下,大部分请求应该是通过这个 Servlet 响应
代码中不含 http://tju.edu 域名,暂时也未发现动态下发域名列表,可以推断学号和姓名的验证是直接通过这个公司/组织/实体的网站进行的,最惨的情况是该公司/组织/实体已拿到了正确的学号-姓名数据库,当然还有一种可能是这个 Servlet 和学校数据库交互进行验证。不过不管怎么样,能验证通过的话,这个公司自然可以至少存储正确的学号和姓名信息。手机号是需要验证的,邮箱虽然可以随便填,但有了手机号也不是那么重要了。
同时在相册功能中有个函数 -[PersonViewController loadData],抓包得请求头为
POST /wxyws/servlet/albumService HTTP/1.1 Host: www.mzwxy.cn
POST 体做了简单的 MD5 加密,当然代码也很容易反编译出来...
而获取的 JSON 体中,有一段是这样的
"personInfo" : [ { "yuanxi" : "XX学院", "plc" : 0, "dzc" : 0, "mingcheng" : "天津大学", "renyuantouxiang" : "一个头像.jpg", "xingming" : "名字", "banji" : "XX级XX专业X班" } ]
这就没话说了。
最后,存在上传不必要的信息的现象,好像是设备型号一类的(里面的 leixing, bianma 就不吐槽了)。
当然,很多 app 都存在上传、埋点、统计一类的行为。这也只是 iOS 客户端看了几分钟发现的东西,Android 端可能画面更美。但同时掌握准确的高校学生实名信息、学号、手机号、邮箱、学校、学院、年级、专业、班级、设备信息、还可能有真实头像,又没有足够能力保证数据安全(不被人拖库啥的,当然这句话我没有什么依据,纯粹是看代码质量猜测的,很乐意被打脸),甚至说,毕竟数据经过了你的服务器,相关方还没有证明不会在服务器上私自保存这些珍贵的、准确的个人数据。学校也应该澄清一下是否和校外盈利性组织共享了学生信息数据库,如有相关活动,共享了数据库中的哪些字段。据我所知数据库中还是有着非常非常敏感的个人信息甚至家庭信息的,一旦被不法分子利用,后果不堪设想。