《我在百度網盤上看到上萬條車主我的信息,企業、政府高官信息、各類數據庫和無窮無盡的盜版》,一時間,這篇文章就火了,火爆程度另百度猝不及防。html
其實呢,這事真不能全怪百度,畢竟用戶分享出去了。之因此引發這麼大轟動,主要是由於用戶的文件自己,什麼數據都有,致使此次危害或者說恐慌,進行了放大。python
每一次危機過去以後———— 普通人,只會對其津津樂道; 有能力的人,會思考如何避免再次發生; 而開拓者,則會洞察整個形勢。
百度網盤泄露事件留給了咱們什麼git
百度事件發生,獲得消息的人會趕忙確認本身的隱私文件是否被分享,而後儘快取消分享保證安全。一週事後,風波也就散了,基本就沒有什麼話題或者新聞了。github
這裏我拋出一系列問題:redis
除了百度網盤,還有沒有其它相似的問題?數據庫
遭受泄露的用戶羣體,有哪些通性?安全
從事技術行業的人,更具有敏感意識麼?他們是否更大程度避免發生這類問題?網絡
本篇文章不會給出答案,由於這是開放性問題,沒有絕對的答案。上面這幾個問題,目的是爲了讓你們帶着思考去看下文,以後,你可能會對百度事件,有一個更全面的認識。架構
從最大的同性社交平臺獲取數據
好了,言歸正傳,回到題目。題目不是噱頭,毋庸置疑github是全球最大的同性社交平臺,這篇文章,我會經過github向你們展現一種攻擊思路,以及個人一個成果:
我有幾千個github帳號和密碼(確實沒有上萬,不吹牛逼,該多少就多少)。
幾千個帳號,說多很少,說少很多,所運用到的技術原理————基於爬蟲的數據攻擊,這方面的研究(不知道算不算學術)差很少有一年多了,我會把可公開的內容展現給你們,研究的結果還不是很成熟,歡迎你們在下面回帖討論,很樂意與你們交流。
在github平臺,用戶須要輸入帳號和密碼登錄,而帳號能夠輸入郵箱也能夠輸入github的用戶名。
github用戶名就是所謂的git帳號,這個是對外公開的,查看我的主頁,或者查看代碼時候,都會在比較明顯的地方顯示用戶名,經過用戶名能夠直接登陸github。好比這個哥們,他叫Sushil Thasale,而他的github帳號是sushil-thasale。
帳號很容易獲得,那麼密碼怎麼才能知道呢?直接上圖!
這是某個用戶的密碼:
這是這個用戶的登錄後的頁面:
這個用戶名字是四位,很好的帳號——jv98,他的密碼很複雜:
這是登錄後的我的主頁:
其實咱們還能知道用戶的郵箱,這個用戶的郵箱是Oliver.andersson.te14c @ gmail.com,如此複雜,他的密碼卻很簡單:
我的帳戶設置頁面,我能夠悄悄地加一個郵箱進行監控:
再給一個2013年就註冊的帳號和密碼:
登錄後的我的主頁:
好了,不曬圖了,這種帳號確實有幾千個,並且有好多都是github的重度用戶。
細心的讀者應該已經發現,我是怎麼找到他們的密碼的了。全部密碼截圖,都是來自他們本身上傳到github項目的代碼裏,全部截圖都是代碼截圖。我利用了github的搜索技術,搜索到一堆想要的帳號和密碼,而後進行登陸嘗試,登錄成功的我就記下來。
那麼,怎麼搜索才能找到呢?
充分利用開源項目,開源項目有固定的存儲密碼的位置,好比php語言的wordpress,密碼存放位置在根目錄下的wp-config.php文件中,代碼內容define(‘DB_PASSWORD’, ‘password’)。
開源項目有不少,就拿php語言來講,就有wordpress、joomla、phpcms、discuz等。
利用搜索技術,好比同時搜索多個關鍵詞define,DB_PASSWORD,篩選語言爲php,基本就能列出全部wordpress的密碼了。
善於利用搜索技術,對於密碼爲空的要過濾掉,對於密碼爲####、*這種的也要過濾掉。
以上操做,千萬不要手工,開頭我都說了————基於爬蟲的數據攻擊,因此咱們要寫爬蟲,自動爬取github數據,而後經過正則匹配篩選掉不想要的數據。
這裏的核心就是爬蟲,以及過濾。過濾技術用得越好,數據越有價值,爆破的時間成本越低!
除了過濾掉常見的password、####、、空密碼等,還有一個細節必定要注意:
沒錯,github密碼有要求的,因此咱們能夠寫個正則,只保留符合 github 密碼要求的,這樣我就拿到了一堆價值數據。
而後再用python寫個程序,模擬登錄github就能夠了。
最後再展現一個github項目比較多的帳號:
爲了不引發額外信息泄露,暫時沒法提供更多深刻的數據和完整的爬蟲框架腳本。
坐擁這些帳號,目前我能想到的賺錢方法就是,收費幫別人的項目點贊。
網絡安全從業者與爬蟲技術
爬蟲技術自己,並不能實施黑客攻擊,也不能直接與安全連在一塊兒。
可是縱觀不少安全方面的東西,卻又都離不開爬蟲技術:
百度網盤數據泄露,爬蟲惹的禍。
某企業存在經過id泄露數據,咱們能夠編寫爬蟲批量掃描id獲取數據。
某網站權限配置不當,致使在特定狀況訪問登錄後的頁面,這時候也可能須要寫爬蟲。
wvs等安全工具,嚴重依賴爬蟲,經過爬蟲爬取網站組織架構。
探探app,兩年前我就玩過,含有大量美女,個人第一反應不是感不感興趣,而是悄悄地寫了個爬蟲,獲取了大量圖片,並且我還發現他們防色情作的不嚴謹。(開個玩笑)
寫到這裏,你們應該明白了,爲何我強調爬蟲的重要性了。
另外,爬蟲可使不少事情變得有趣,只要肯琢磨,腦洞足夠開,咱們徹底能夠實施不少攻擊。
從過來人角度說一下,本身的成長蠻有意思的,從爬蟲起家學技術,中途又在公司從事過接近一年的數據挖掘,這兩個技術的結合,給個人學習和研究,帶來了不少興趣。
當你具有爬蟲和數據分析時,你真的能夠去改變一些事情。
烏雲密佈的爬蟲
百度網盤這件事,是我不想看到的,這類安全問題的一個共同特色:
用戶自身確實存在問題。
從嚴格意義上講,這個不是漏洞。
企業在修復時,處於下風,甚至無能爲力、沒法修復。
就拿github這個例子來講,除非我把github幾千個帳號發出來,github把每一個人帳號都凍結。
我只是嘗試了一些開源項目,還有不少項目我沒有實施爬蟲攻擊,好比facebook的redmine項目等,頗有可能這些項目代碼裏,也有密碼泄露。
真的沒辦法根治!將來,我擔憂會有愈來愈多的安全問題,屬於沒有辦法根治的,卻存在極大安全隱患的。就比如,我生大病了,我殊不知道怎麼治,你說問題嚴重麼?
只說結論:
腳本執行了一個下午,我便擁有了幾百個阿里雲服務,其中不乏性能很高的服務,不乏百萬數據級別的redis服務,也不乏企業服務。這些服務裏面的數據,我不知道有多少價值,泄露會引發多少恐慌,由於我一條都沒看過。
這是提交給阿里雲以後,阿里雲的修復建議(很早以前的短信了):
個人同事、朋友們之中,都有收到阿里雲的這條短信。嗯,沒錯,由於漏洞自己源自用戶本身的數據泄露,只能經過短信提醒用戶。
是否是和百度網盤泄露,有類似之處?
就寫到這裏吧。。。
安全漸遠漸行,卻總有一些無能爲力的事情發生,絲絲的痛