目錄html
1、事件回顧面試
原創,如轉載還請保留出處與做者姓名Findyou,謝謝! 架構
2016年315晚會,現場提供了一個免費WIFI,給現場觀衆鏈接。當觀衆玩手機APP必定時間後(有進行數據請求),315技術人員收集了觀衆包括姓名、電話號碼、家庭住址、身份證號碼、銀行卡號等,觀衆驚恐,電視機前觀衆後背涼~~~ ide
![]()
2016年315晚會觀看地址: http://315.cntv.cn/special/2016/video/index.shtml工具
舒適提示性能
信息泄漏都是一些消費類的APP(OTO什麼的),可是爲何不是從銀行類APP泄漏?請看下文~~~
維基百科:中間人攻擊 https://en.wikipedia.org/wiki/Man-in-the-middle_attack學習
百度百科:中間人攻擊 http://baike.baidu.com/view/1531871.htm
所謂的MITM攻擊(Man-in-the-Middle Attack, 簡稱MITM攻擊,中文通常叫中間人攻擊),簡而言之就是第三者經過攔截正常的網絡通訊數據,並進行數據篡改和嗅探,而通訊的雙方毫無感知。
MITM攻擊方式有信息篡改、信息竊取,攻擊技術有DNS欺騙、會話劫持、代理服務器等。
本文主要介紹的是信息竊取,維基百科的講解決演繹實例比較適合有HTTPS什麼SSL知識基礎的人。此處我找了一張圖,不涉汲公鑰、私鑰對小白折磨的基礎知識。
請看圖就懂:
MITM好高深,小白不懂耶~~~,不懂不要緊,根據下面步驟你就會了。咳、咳~~~~,有沒有聽過局域網抓包,沒有那也不要緊。今天不講這個,哈哈。
信息竊取簡單白話說就是:用個工具把經過WIFI(路由器)的數據都記錄下來。
3.1 信息竊取的前提
固然信息不是隨隨便便就能夠得到的,須要知足必定前提,才得獲取到信息:
- 鏈接黑客的WIFI
不連有危險的WIFI,你就堵住了由此泄露信息的途徑。三個條件中有且只有這一點,是用戶你本身能夠控制,不過也控制不了,4G資費貴哈,有免費WIFI怎能不蹭呢?哪一個WIFI是安全,哪一個是不安全的WIFI,黑客知,你不知~~~,若是你用的房東的,或者從別人那拉的網線,房東隨便裝個上網行爲管理軟件什麼的,你作啥看啥都知道了,裝個抓包軟件,密碼什麼的隨便看。哦,你說你公司也裝了行爲管理軟件,沒事你如今看的學習站點,領導不會找你談話的。
- APP須有網絡數據請求
但風是個APP,無論消費不消費類的都要連下互聯網,什麼上網訂餐、網購、團購等等...都會上報這樣那樣的信息,返回這樣那樣的數據。但此處的網絡數據請求特指的是傳輸包含用戶信息的請求,例如購買訂單、歷史賬單、我的設置(地址、手機)等數據請求。
- APP請求是HTTP未加密的傳輸
APP基本就是HTTP(或Socket)未加密的傳輸,除了銀行APP用HTTPS+SSL加密傳輸外(此處也迴應此文開頭的那個問題),基本上APP都不多會使用HTTPS,基本不對請求數據與返回數據進行加密, 最多隻是對賬號密碼傳輸加密(有些APP也是明文傳),因手機電量什麼性能的關係,大都會減小請求與處理簡化,基本就是Json格式,內容明文,抓個包想看就看的,截獲想改就改(篡改不是本文重點,不深刻),HTTPS的也是能夠的,但用戶可能會察覺,也存在必定難度,但此處不深刻剖析。。
3.2 安全實戰
借鑑315晚會,給出一種最簡單的實戰思路(學習交流, 請勿違法),讓你瞭解數據如何不知不以爲被人收集的。
- 準備
1).筆記本一臺
2).隨身WIFI一個(不要360,手機連上360WIFI後會有一個二逼廣告頁彈出,這就露餡了)
3).筆記本裝個抓包工具:WireShark (網上有好多不一一列舉)
- 抓取數據
1).選址:找一些比較特點免費WIFI的地方,好比
Starbucks
Starbucks1
Starbucks2
2).筆記本連網,開啓隨身WIFI
3).隨身WIFI取名,跟所在店名相似或同樣規則如 Starbucks3
4).隨身WIFI密碼,根據狀況,與所提供免費WIFI店的密碼一致
5).開啓WireShark,點杯喝咖啡,坐等別人連你隨身WIFI,必定時間後中止抓包,分析請求數據
結果分析舉例
至此,315晚會MITM攻擊-信息竊取還原講解完畢。
- 學習資料
1).熱點WireShark抓包介紹: http://www.cnblogs.com/findyou/p/3491065.html
2).Fiddler代理抓包介紹:http://www.cnblogs.com/findyou/p/3491014.html
3).早前一項目密碼中間人攻擊的文章 http://www.cnblogs.com/findyou/p/3244917.html
說明
1).用戶無感知型,如同315晚會現場信息竊取,315技術人員確定對數據進行了處理,其抓包工具頗有多是有針對性編寫的。
2).另外一個代理FQ逛網頁,代理服務器只要寫個記錄數據軟件,任何經過代理服務器的數據想看就看,因此沒事就不要用代理上網,若是你公司上網用代理,咳、咳~~~沒事就好好幹活,少看逛網,少看片~~~
- 規避315晚會免費WIFI問題建議
1).不連公共WIFI !不連公共WIFI !不連公共WIFI !
2).手機用4G網絡進行購買、包含我的信息的查詢!
3).我的信息沒事別用真信息
4).給有問題APP提安全問題,每天騷擾客服!要不你就換安全一點的APP,測試方式請見文中安全實戰。
如今的APP爲何沒有進行安全測試? 大約想到如下幾點(拋磚引玉)1.無安全意識:
研發架構設計就不曾考慮安全,測試負責人太水,測試人員經驗不足。好多APP大都是創業公司,來我的已不容易,高薪低能(擡高了軟件人員薪資也是件好事,呵呵)。大部分只考慮背景是否BAT公司,不多會去考慮創業型公司人員真正的需求:人員的專業能力、綜合能力。當隊伍大了時精力又花在"內耗"。測試人員經驗、能力、全局觀都達不到要求,最後一道防線薄弱,因而乎有這樣多的APP產品。你會問,不是有不少雲平臺也作安全,那作的只是一部分APP防反編譯,主要目的是保護APP源碼,保護公司利益的,非直接的用戶利益與數據的。
題外話:其實我以爲高薪低能應該也是致使不少APP項目流產的緣由,絕大數緣由招了不合適的人員,現1年半工做經驗會個只會APP功能測試,都開口10K、12K叫,遇到老闆面試談得來看心情給,遇到更水的測試面試,以爲都是大牛。近年流行創業,創業型公司多了去,有錢任性的燒,不死那纔怪。
2.狹隘安全測試:
仍是能力與視角的問題,說安全測試焦點就在賬號、密碼是否安全,是否加密傳輸這一塊。其實安全測試範圍應該很廣,全部泄漏用戶與自身業務數據的可能都應該進行考慮,全部僞造的數據頂替冒充真正用戶的也要進行考慮。
3.項目特性致使時間不夠:
因需求多變,功能測試已費盡心力(自動化?多變的項目你搞UI自動化,滾犢子),目光聚焦在功能上,後續測試前期的思考慢慢就淡忘了,到功能穩定了,說要上線了,性能、安全都沒搞,固然公司會考慮的成本問題,用戶量沒有,不值去作這個安全加固,先把日存活、月存活數據給弄起來先~~~
4.測試言輕:
面試過不少測試,有要求對方對測試崗位作一個解讀或他的理解,不少有意無心會帶進一句測試就是背鍋的每天被罵。片面的說一說這個問題,不少時候領導或項目經理會以爲測試過於誇大問題,小題大作,讓我想到扁鵲和他哥哥故事,事情在沒有形成損失前都不是問題,在形成損失後,測試爲主要責任~~~
問責:爲何會漏測?
測試:這個安全問題很早就有提,當時確認說小問題不影響,客戶要連不安全的網絡,那是客戶應該爲本身的行爲負責!
問責:測試報告有沒有提風險?有郵件反饋給測試負責人?有沒有提問題單,單號是多少?
測試:。。。。(臥槽、口頭溝通、沒有提單、沒有郵件、沒有歸入測試範圍....)
最後,借用一句話作爲結尾:安全無小事!