工作总结, 社会工程学

我在全球最大的同性社交平台那点事

《我在百度网盘上看到上万条车主个人信息,企业、政府高官信息、各种数据库和无穷无尽的盗版》,一时间,这篇文章就火了,火爆程度另百度猝不及防。

其实呢,这事真不能全怪百度,毕竟用户分享出去了。之所以引起这么大轰动,主要是因为用户的文件本身,什么数据都有,导致这次危害或者说恐慌,进行了放大。


每一次危机过去之后————
普通人,只会对其津津乐道;
有能力的人,会思考如何避免再次发生;
而开拓者,则会洞察整个形势。

1. 百度网盘泄露事件留给了我们什么
百度事件发生,得到消息的人会赶紧确认自己的隐私文件是否被分享,然后尽快取消分享保证安全。一周过后,风波也就散了,基本就没有什么话题或者新闻了。

这里我抛出一系列问题:
1. 除了百度网盘,还有没有其它类似的问题?
2. 遭受泄露的用户群体,有哪些通性?
3. 从事技术行业的人,更具备敏感意识么?他们是否更大程度避免发生这类问题?

本篇文章不会给出答案,因为这是开放性问题,没有绝对的答案。上面这几个问题,目的是为了让大家带着思考去看下文,之后,你可能会对百度事件,有一个更全面的认识。

2. 从最大的同性社交平台获取数据

好了,言归正传,回到题目。题目不是噱头,毋庸置疑github是全球最大的同性社交平台,这篇文章,我会通过github向大家展示一种攻击思路,以及我的一个成果:


我有几千个github账号和密码(确实没有上万,不吹牛逼,该多少就多少)。

几千个账号,说多不多,说少不少,所运用到的技术原理————基于爬虫的数据攻击,这方面的研究(不知道算不算学术)差不多有一年多了,我会把可公开的内容展示给大家,研究的结果还不是很成熟,欢迎大家在下面回帖讨论,很乐意与大家交流。

在github平台,用户需要输入账号和密码登陆,而账号可以输入邮箱也可以输入github的用户名。

github用户名就是所谓的git账号,这个是对外公开的,查看个人主页,或者查看代码时候,都会在比较明显的地方显示用户名,通过用户名可以直接登录github。比如这个哥们,他叫Sushil Thasale,而他的github账号是sushil-thasale。

账号很容易得到,那么密码怎么才能知道呢?直接上图!

1. 这是某个用户的密码:

这是这个用户的登陆后的页面:

2. 这个用户名字是四位,很好的账号——jv98,他的密码很复杂:

这是登陆后的个人主页:

3. 其实我们还能知道用户的邮箱,这个用户的邮箱是Oliver.andersson.te14c@gmail.com,如此复杂,他的密码却很简单:

个人账户设置页面,我可以悄悄地加一个邮箱进行监控:

4. 再给一个2013年就注册的账号和密码:

登陆后的个人主页:

好了,不晒图了,这种账号确实有几千个,而且有好多都是github的重度用户。

细心的读者应该已经发现,我是怎么找到他们的密码的了。所有密码截图,都是来自他们自己上传到github项目的代码里,所有截图都是代码截图。我利用了github的搜索技术,搜索到一堆想要的账号和密码,然后进行登录尝试,登陆成功的我就记下来。

那么,怎么搜索才能找到呢?
1. 充分利用开源项目,开源项目有固定的存储密码的位置,比如php语言的wordpress,密码存放位置在根目录下的wp-config.php文件中,代码内容define('DB_PASSWORD', 'password')。
2. 开源项目有很多,就拿php语言来说,就有wordpress、joomla、phpcms、discuz等。
3. 利用搜索技术,比如同时搜索多个关键词define,DB_PASSWORD,筛选语言为php,基本就能列出所有wordpress的密码了。
4. 善于利用搜索技术,对于密码为空的要过滤掉,对于密码为####、*****这种的也要过滤掉。

以上操作,千万不要手工,开头我都说了————基于爬虫的数据攻击,所以我们要写爬虫,自动爬取github数据,然后通过正则匹配筛选掉不想要的数据。

这里的核心就是爬虫,以及过滤。过滤技术用得越好,数据越有价值,爆破的时间成本越低!

除了过滤掉常见的password、####、******、空密码等,还有一个细节一定要注意:

没错,github密码有要求的,所以我们可以写个正则,只保留符合github密码要求的,这样我就拿到了一堆价值数据。

然后再用python写个程序,模拟登陆github就可以了。

最后再展示一个github项目比较多的账号:

为了避免引起额外信息泄露,暂时无法提供更多深入的数据和完整的爬虫框架脚本。


坐拥这些账号,目前我能想到的赚钱方法就是,收费帮别人的项目点赞。

3. 网络安全从业者与爬虫技术

爬虫技术本身,并不能实施黑客攻击,也不能直接与安全连在一起。

但是纵观很多安全方面的东西,却又都离不开爬虫技术:
1. 百度网盘数据泄露,爬虫惹的祸。
2. 某企业存在通过id泄露数据,我们可以编写爬虫批量扫描id获取数据。
3. 某网站权限配置不当,导致在特定情况访问登陆后的页面,这时候也可能需要写爬虫。
4. wvs等安全工具,严重依赖爬虫,通过爬虫爬取网站组织架构。
5. 探探app,两年前我就玩过,含有大量美女,我的第一反应不是感不感兴趣,而是悄悄地写了个爬虫,获取了大量图片,而且我还发现他们防色情做的不严谨。(开个玩笑)

写到这里,大家应该明白了,为什么我强调爬虫的重要性了。

另外,爬虫可以使很多事情变得有趣,只要肯琢磨,脑洞足够开,我们完全可以实施很多攻击。

从过来人角度说一下,自己的成长蛮有意思的,从爬虫起家学技术,中途又在公司从事过接近一年的数据挖掘,这两个技术的结合,给我的学习和研究,带来了很多兴趣。


当你具备爬虫和数据分析时,你真的可以去改变一些事情。

4. 乌云密布的爬虫

百度网盘这件事,是我不想看到的,这类安全问题的一个共同特点:
1. 用户自身确实存在问题。
2. 从严格意义上讲,这个不是漏洞。
3. 企业在修复时,处于下风,甚至无能为力、无法修复。

就拿github这个例子来说,除非我把github几千个账号发出来,github把每个人账号都冻结。

我只是尝试了一些开源项目,还有很多项目我没有实施爬虫攻击,比如facebook的redmine项目等,很有可能这些项目代码里,也有密码泄露。

真的没办法根治!未来,我担心会有越来越多的安全问题,属于没有办法根治的,却存在极大安全隐患的。就好比,我生大病了,我却不知道怎么治,你说问题严重么?

再给大家简单展示一个例子,为了避免引起不必要的隐患,具体的爬虫思路我全部省略。

只说结论:


脚本执行了一个下午,我便拥有了几百个阿里云服务,其中不乏性能很高的服务,不乏百万数据级别的redis服务,也不乏企业服务。这些服务里面的数据,我不知道有多少价值,泄露会引起多少恐慌,因为我一条都没看过。

这是提交给阿里云之后,阿里云的修复建议:

安全渐远渐行,却总有一些无能为力的事情发生,丝丝的痛。

6 Comments

  1. 机械鸥

    牛掰,爬虫用好了,也是很可怕,蚂蚁虽小,数量多了也吓人。

  2. wyldlmu

    老哥厉害啊,学习了。很好玩啊,不过开源项目真的是暴露太多隐私了

  3. ranshy

    为了让讨论更清晰,那我再说几句好了。

    首先,这篇文章,从头到尾,我没有说任何厂商有问题,也没有说过github和阿里云有漏洞。我只是展示了,通过爬虫,我可以获取这两个平台的某些数据。
    而这些数据,对于用户个体而言,却能造成严重的攻击。

    之所以写这篇文章,就是希望除了百度网盘事件本身,再给大家提供一些其他的案例。除了阿里云案例,github案例之外,我还有别的案例,只是没有写罢了,我只是拿了这两个做典型。

    我所谓的攻击行为,问题在于用户,所以我要写出来,希望让更多的安全从业者重视。就像最后写的,未来很可能会有更多的安全问题发生,而这些问题,表面看和厂商没关系,但是用户却损失惨重。这种事情会很棘手,安全从业者和厂商更应该从付责任的角度出发,思考怎么对待。

    在一些情况下,百度网盘是否可以在适当的位置提醒用户你的文件被分享出去了,如果真的做到这样。是不是会更大程度帮助用户,加强安全意识?

    评论区有人说——
    “用户主动泄漏的事,就好像你把自己的钱包把钱给了小偷,还怪警察不作为?”

    我的回答是——
    “丢钱的问题确实是用户。但是,你有没有发现,地铁站、火车站等地方,经常会有警察或者喇叭对用户大声讲,请看管好自己随身物品。这就是责任!”

  4. ranshy

    233sec无心:
    我是说,你的那句话,“阿里云无法直接修复的漏洞”。而且我说你爬阿里了么。我说你能爬,阿里的人,也能爬。并没有喷你的意思。总有sb用户,好比每个公司网站都是有漏洞的存在。这是不可避免的,你只能尽量做好自己的义务。还有,阿里的风控池,不是你不知道,就不存在的。

    还有,我没怎么冲,就事论事,百度网盘是百度的逻辑问题,以及配置问题加上用户设置问题。这样的泄漏,是用户自己的自动行为,最多算用户自己的漏洞。就好比,你通过gayhub知道了别人的邮箱账号密码,登陆了别人的邮箱,这tx跟没啥关系一样。

    还有,你这样的类似的爬到的数据,也是可以直接报给阿里的,阿里会监控这些数据以及爬虫方式等。监控用户的泄漏行为。这可以理解成你所说的,警察在火车站装个喇叭么?

    夏之冰雪:
    非常感谢,为了避免引起歧义,那句话我删了。
    另外,安全起见,国内爬取的数据,仅做测试,我都第一时间删除了,不做任何保留。

    通过你的讲述,我了解你所说的,阿里会对用户行为负责。

    确实我不了解内部机制,所以只是提了一个个人想法和建议,可能会有偏差。文章也仅仅是给大家多几个案例,多一些思考。

  5. 233sec无心

    看法是非常好的,好的看法也是需要接纳跟认可的,也许你今天提的看法已经有人提出,但是可能你明天的看法就是非常新颖的。我一开始语气的确不是很好,给你道歉。还有,我不是啥阿里的,就是 233sec 团队的,微信公众号,233sec。我们也非常欢迎你这样有看法的人加入。

  6. spanuitree

    以后爬虫行为估计会被严格管理

Leave a Reply

黑ICP备15001596号