百度 WormHole 漏洞分析

还记得9月份 Xcode 曝 XcodeGhost 漏洞的时候,网络上一片哗然,大家纷纷叹息一直以安全性著称的 iOS 系统也不再安全了,像微信、网易云音乐等安装量过亿的 APP 纷纷中枪。接着是各种漏洞利用的分析,分析一轮下来,最令人咋舌的就是可以通过这个漏洞来获取用户 appleID 了。

然而事过两个月之后百度 Android APP 被爆出了 WormHole 虫洞漏洞,与其说这是一个漏洞,倒不如说这是百度自己留下的一个后门。百度全系APP连同使用了百度地图的APP纷纷中枪,影响用户同样过亿。该后门之流氓程度与XcodeGhost相比有过之而无不及,包括静默下载任意文件、后台上传用户文件等各种流氓行径。

下面就来分析一下 WormHole 漏洞吧

Read More

VCard 格式说明

最近做一个通讯录相关的东西,需要把通讯录导出 VCF 文件。之前没有接触过 VCard 相关的东西,并不知道 VCard 的格式定义。试着导出了一个 VCF 文件看一下,iCloud 导出的 VCF 文件里面部分字段都加着下划线,明显不是本身定义的字段,看起来像是扩展字段的样子,这让我犯了难。既然这样,只能先查一下 VCF 的格式规范了,奈何中文资料并不多,大部分只是对字段进行了说明,而且不够详细,只能硬着头皮去看官方文档了。VCard 的文档在 RFC6350 这份规范上被定义。所以主要看的这个文档。

字段定义就不多言了。出门左转,百度百科。这里只记录一下使用过程中需要注意的点

Read More

给时光以生命

毕业不知不觉已有一年多了,工作也有2年了~但是回想着两年的生活,却觉得索然无味,每天过着上班下班的生活,似乎并没有什么大的波澜。

对比现在与在学校的时光,似乎并没有什么差别,唯独时间变得越来越破碎,大学时可以一整天呆在图书馆看一本喜欢的书,而现在却只能在地铁里刷知乎。但是对书本与知识的渴望犹存,却没了往日的激情,懒病越来越严重,事情总是一拖再拖,却能够在家很悠闲的看一天电视,想想这真的是一件很可怕的事情。也许一个人就是在这么一天一天的不知不觉中变得越来越平庸,直到有一天发现应届生的水平都已经超过你了,这个时候再想起来上进却已然来不及了。

Read More

APP安全性解析

翻看一下乌云上面关于 APP 的漏洞,发现有不少漏洞都是很弱智的错误,而且部分厂家还会选择主动忽略漏洞。按照近期公布的《第36次中国互联网络发展状况统计调查报告》显示,我国网民规模达6.68亿,其中手机网民规模达5.94亿,手机上网人群已超过台式机、笔记本等传统上网模式。如此规模的网民,安全问题却还没有获得足够的重视。

这一篇文章只是对 APP 中常见的安全问题做一个汇总概述,后续可能会单独拿出来一一详解。

Read More

Swift 构造过程

Swift 的构造过程算是比较复杂的,《The Swift Programming Language》 中关于 Initialization 的信息量也是非常大。

Swift 中构造器的写法如下

class Student: NSObject {
var name: String?
init(name: String) {
super.init()
}
}

与 Objective-C 不同,

  • Swift 的构造器是没有返回值的
  • Swift 的构造器是通过参数列表来区分的
  • Swift 的构造器默认情况下是不被继承的

Read More

常用的几种 Content-Type

列举几种开发中常用的 Content-Type

application/x-www-form-urlencoded

浏览器的原生 form 表单,如果不设置 enctype 属性,那么最终就会以 application/x-www-form-urlencoded 方式提交数据。请求如下面形式:

POST http://www.example.com HTTP/1.1
Content-Type: application/x-www-form-urlencoded;charset=utf-8

title=test&sub%5B%5D=1&sub%5B%5D=2&sub%5B%5D=3

该种方式提交的数据放在 body 里面,数据按照 key1=val1&key2=val2 的方式进行编码,key 和 val 都进行了 URL 转码。

Read More