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

本文作者:夏之冰雪,i春秋签约作家

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

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

每一次危机过去之后————
普通人,只会对其津津乐道;
有能力的人,会思考如何避免再次发生;
而开拓者,则会洞察整个形势。
  1. 百度网盘泄露事件留给了我们什么

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

这里我抛出一系列问题:

  1. 除了百度网盘,还有没有其它类似的问题?

  2. 遭受泄露的用户群体,有哪些通性?

  3. 从事技术行业的人,更具备敏感意识么?他们是否更大程度避免发生这类问题?

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

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

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

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

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

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

clipboard.png

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

图片描述

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

  1. 这是某个用户的密码:
    图片描述

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

clipboard.png

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

clipboard.png

这是登陆后的个人主页:

clipboard.png

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

clipboard.png

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

clipboard.png

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

clipboard.png

登陆后的个人主页:

clipboard.png

好了,不晒图了,这种账号确实有几千个,而且有好多都是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、####、、空密码等,还有一个细节一定要注意:

clipboard.png

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

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

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

clipboard.png

clipboard.png

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

坐拥这些账号,目前我能想到的赚钱方法就是,收费帮别人的项目点赞。
  1. 网络安全从业者与爬虫技术

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

但是纵观很多安全方面的东西,却又都离不开爬虫技术:

  1. 百度网盘数据泄露,爬虫惹的祸。

  2. 某企业存在通过id泄露数据,我们可以编写爬虫批量扫描id获取数据。

  3. 某网站权限配置不当,导致在特定情况访问登陆后的页面,这时候也可能需要写爬虫。

  4. wvs等安全工具,严重依赖爬虫,通过爬虫爬取网站组织架构。

  5. 探探app,两年前我就玩过,含有大量美女,我的第一反应不是感不感兴趣,而是悄悄地写了个爬虫,获取了大量图片,而且我还发现他们防色情做的不严谨。(开个玩笑)

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

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

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

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

  1. 乌云密布的爬虫

百度网盘这件事,是我不想看到的,这类安全问题的一个共同特点:

  1. 用户自身确实存在问题。

  2. 从严格意义上讲,这个不是漏洞。

  3. 企业在修复时,处于下风,甚至无能为力、无法修复。

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

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

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

只说结论:

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

这是提交给阿里云之后,阿里云的修复建议(很早之前的短信了):

clipboard.png

我的同事、朋友们之中,都有收到阿里云的这条短信。嗯,没错,因为漏洞本身源自用户自己的数据泄露,只能通过短信提醒用户。

是不是和百度网盘泄露,有相似之处?

就写到这里吧。。。

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/455443.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

关于java的关键字 transient

我们都知道一个对象只要实现了Serilizable接口,这个对象就可以被序列化,Java的这种序列化模式为开发者提供了很多便利,我们可以不必关系具体序列化的过程,只要这个类实现了Serilizable接口,这个的所有属性和方法都会自…

希捷宣布出货双碟装1TB硬盘 单碟500GB上市

希捷今天宣布,单碟容量高达500GB的Barracuda 7200.12 1TB硬盘已经出货。 现有的1TB硬盘产品一般都是三碟装(此前也有四碟装),包括希捷自家的ST31000340AS,但希捷一进率先将其升级为双碟装,存储密度也达到了329Gb每平方英寸。这样一…

FFMpeg的output_example.c例子分析

该例子讲了如何输出一个libavformat库所支持格式的媒体文件。 (1)av_register_all(),初始化libavcodec库,并注册所有的编解码器和格式。 (2)guess_format(),根据文件名来获取输出文件格式&#…

大量数据+同步+多线程_Vulkan 多线程渲染

1. Overview of Vulkan1.1 计算机图形软件图形软件有两个大类:专用软件包(special-purpose packages)和通用编程软件包(general programming packages)。专用软件包通常提供一种UI设计语言,让用户直接生成想…

(五)Maven中的聚合和继承

一、为什么要聚合? 定义:我们在开发过程中,创建了2个以上的模块,每个模块都是一个独立的maven project,在开始的时候我们可以独立的编译和测试运行每个模块,但是随着项目的不断变大和复杂化,我们…

Django/Flask/Tornado三大web框架性能分析

写在前面:本文的数据涉及到之前遇到过的问题,大概一次 http 请求到收到响应需要多少时间。这个问题在实际工作中与框架有比较大的关系,因此特别就框架的性能做了一次分析。这里使用之前的一个报告数据: Pythons Web Framework Ben…

python urllib模块学习笔记

这个模块是最基本最常用的,以前看过,总结一下 #coding : utf-8import urlliburl http://cnblogs.com#代理服务器proxies {http:http://127.0.0.1:8087}#使用代理服务器打开r urllib.urlopen(url,proxies proxies)print r.info()print r.getcode()pri…

漂亮特殊字体可复制_12个创意字体免费下载网站

今天为大家介绍12个创意字体的网站,这些网站都有提供免费下载的字体哦,希望对大家在创作上面有所帮助。FontSpace在Fontspace上有超过42000种免费字体。在这里字体被整齐的分门归类,帮助你找到想要的字体。除了典型的“serif” “script”等&…

DirectShow组件原理分析及应用

1 DirectX简介  DirectX是Microsoft公司为游戏和其他高性能多媒体应用所提供的一套底层应用程序编程接口。这些接口包括对二维和三维图形,声效和音乐,输入设备以及多玩家网络游戏等的支持。目前DirectX的最高版本是DirectX 9.0。  1.1 DirectX的组成…

栈溢出笔记1.3 准备Shellcode

经过1.1和1.2节的讲述,我们已经知道了怎样更改EIP的值。程序运行函数之后将跳转到我们设定的位置開始运行,因此,我们须要准备一个自己的程序,接手后面的工作。这是一个什么样的程序?是一个C语言编写的代码?…

DirectShow开发快速入门之慨述

文章来源:http://tech.163.com/school 2005-08-18 10:21:32 来源: 天极网摘要:本篇文档概括性的介绍了DirectShow的主要组成部分,以及一些Directshow的基本概念。熟悉这些基本的知识对于Directshow的应用开发或者过滤器的开发者都会有所帮助…

权限表使用联合主键吗_天天写 order by,你知道Mysql底层执行流程吗?

前言 在实际的开发中一定会碰到根据某个字段进行排序后来显示结果的需求,但是你真的理解order by在 Mysql 底层是如何执行的吗?假设你要查询城市是苏州的所有人名字,并且按照姓名进行排序返回前 1000 个人的姓名、年龄,这条 sql 语…

live555源代码简介

文章出自:http://blog.csdn.net/imliujie/archive/2008/01/30/2072657.aspx live555源代码简介liveMedia项目的源代码包括四个基本的库,各种测试代码以及IVE555 Media Server。四个基本的库分别是UsageEnvironment&TaskScheduler,groups…

并发无锁队列学习(单生产者单消费者模型)

1、引言 本文介绍单生产者单消费者模型的队列。依据写入队列的内容是定长还是变长,分为单生产者单消费者定长队列和单生产者单消费者变长队列两种。单生产者单消费者模型的队列操作过程是不须要进行加锁的。生产者通过写索引控制入队操作,消费者通过读索…

流媒体传输协议

1.流媒体( Streaming Media) 1.1流媒体概念 流媒体技术是网络技术和多媒体技术发展到一定阶段的产物。术语流媒体既可以指在网上传输连续时基媒体的流式技术,也可以指使用流式技术的连续时基媒体本身。在网上传输音频、视频等多媒体信息目前主要有两种方式:下载和流…

关闭浏览器网页触发事件_浅析浏览器渲染和 script 加载

前言前端代码离不开浏览器环境,理解 js、css 代码如何在浏览器中工作是非常重要的。如何优化渲染过程中的回流,重绘?script 脚本在页面中是怎么个加载顺序?了解这些对前端性能优化起着非常大的作用。借着这篇文章,让自…

Open vSwitch实验常用命令

1. 基本架构 ovs-vsctl: 管理ovsdb-server的配置,提供OVSDB的配置方法,包括创建和删除网桥、端口等; ovs-ofctl: 提供ovs-vswitchd的流表配置方法; ovs-dpctl: 配置OVS内核模块,提供缓存流表的操作方法&#xff1b…

Oracle 存储过程错误之PLS-00201: 必须声明标识符

转自:http://blog.csdn.net/u010678947/article/details/20702149 错误: ORA-06550: 第 1 行, 第 7 列: PLS-00201: 必须声明标识符ZUO.PROCE_TESTORA-06550: 第 1 行, 第 7 列: PL/SQL: Statement ignored 解决方法: (1&#x…

mysql中如何把两个查询结果列数不同并成一张表_MySQL

引言本文整理了MySQL相关的知识,方便以后查阅。 基础架构下图是 MySQL 的一个简要架构图,从下图你可以很清晰的看到用户的 SQL 语句在 MySQL 内部是如何执行的。 先简单介绍一下下图涉及的一些组件的基本作用帮助大家理解这幅图。 - 连接器: …

scrapy框架_Python学习之Scrapy框架

爬虫界江湖地位No.1说起Python,不得不说到它的爬虫应用,由于Python的短小精悍,用它来开发爬虫应用是最合适不过了,基于Python抓取网页的库有很多,例如requests,beatifulsoup等等,但是要说到有哪一个框架&am…