千萬不要在朋友圈晒機票,名字打碼了也不行!

今天看到了個新聞,一家機票預定系統曝出了高危漏洞,安全隱患非常大!


千萬不要在朋友圈曬機票,名字打碼了也不行!



大概的意思是說,全球有 44% 的航空公司,只要你在上面買票,黑客就可以知道你的所有個人賬戶信息。。。

千萬不要在朋友圈曬機票,名字打碼了也不行!

為什麼這麼猛呢,首先還要說到 “ Amadeus ” 這個東西,雖然你可能沒聽說過,但每年全球大量遊客訂機票的時候都會用到它。

這個 Amadeus 是全球多家 GDS 系統之一, GDS 的全稱是 Global Distribution System -- 全球分銷系統。

GDS 是旅行中介商和航空公司的中間服務商,整理航空公司的航班庫存,做信息整合和發佈。


千萬不要在朋友圈曬機票,名字打碼了也不行!



千萬不要在朋友圈曬機票,名字打碼了也不行!

說白了。。。二道販子。。。

但這是個很有技術含量的販子,而且提供的服務對航司來說非常有必要。

一般來說,航空公司自己有一套預定系統,存著航班數據,有預定出去的票和餘票。


千萬不要在朋友圈曬機票,名字打碼了也不行!



但是航空公司只有自己的數據,沒有別家的。

千萬不要在朋友圈曬機票,名字打碼了也不行!

如果我們要訂一個複雜點的,跨航司的航線,就很麻煩了。

這時候 GDS 的作用就出來了:它們和航空公司簽訂協議,可以直接訪問餘票數據,再把服務提供給代理商。


千萬不要在朋友圈曬機票,名字打碼了也不行!



用戶通過代理商平臺,比如攜程,飛豬等搜索機票時,這些代理商就聯繫 GDS ,然後 GDS 去航空公司的數據庫裡找配對,代理商再比價顯示結果。

一旦我們通過攜程,飛豬等訂好票,這個確認信息會再次通過 GDS 給航空公司,更新票庫。


千萬不要在朋友圈曬機票,名字打碼了也不行!



完成預定的時候,會產生一個 “ 旅客預定記錄 ” ,也就是 PNR ( Passenger Name Record ) ,在 GDS 和航空公司的系統裡。

想必訂過機票的各位,都在郵件裡收到過 PNR ,就是那個 6 位的數字 + 字母組合

下圖紅色標註部分就是 PNR

千萬不要在朋友圈曬機票,名字打碼了也不行!



PNR 裡包含了很多重要的旅客信息,比如姓名,聯繫方式,出發地,目的地,價格。。。

千萬不要在朋友圈曬機票,名字打碼了也不行!

同一個 PNR 可以在不同的航空公司裡搜出對應的記錄,以及前後連接著的航班。


千萬不要在朋友圈曬機票,名字打碼了也不行!



打個比方,差評君訂了這樣一套複雜的航線:杭州 -> 首爾 -> 達拉斯 -> 拉斯維加斯,依次由韓國航空,美國航空,美聯航承運。 ( 舉例而已,現實中哪有這麼折騰的訂法。。。 )

那麼

韓國航空的工作人員收到了 PNR 以後,可以找出杭州 -> 首爾的信息,以及下一班首爾 -> 達拉斯的信息;

美聯航的工作人員,可以搜到達拉斯 -> 拉斯維加斯的信息,以及上一班銜接的首爾 -> 達拉斯的航班。

至於美國航空的工作人員,則能通過同一個 PNR ,搜到這 3 個航班信息,因為前後都銜接上了。


千萬不要在朋友圈曬機票,名字打碼了也不行!



千萬不要在朋友圈曬機票,名字打碼了也不行!

通過上面的例子,我們可以理解 GDS 的好處了。

用一套統一的,標準一致的系統,既可以方便消費者,也可以方便供應商。

這就好像是工業標準裡的螺絲釘半徑,要是全世界的螺絲釘都隨心所欲自訂半徑,這個世界連個飛機都造不起來。

GDS 和 PNR 服務了全球的旅行者和旅行商,全球主流的幾大 GDS 公司有 上文提到的 Amadeus,以及 Sabre , Galileo 等等。。。


千萬不要在朋友圈曬機票,名字打碼了也不行!



有時候航空公司有時候還會轉行當代銷,通過 GDS 在官網上賣其他航司的票,滿足顧客需求 ~

這些 GDS 向航空公司收錢,然後給機票代理商訂座補貼,如此運轉下來 GDS 的收費大約佔行業成本的 2% 。 ( 數據來源:知乎 @elliott )

千萬不要在朋友圈曬機票,名字打碼了也不行!

這些錢都是航空公司的成本,沒錯。。。一般來最終會落到我們消費者頭上的,萬惡的資本主義。。。

相對來說,我們國家的 GDS -- 中航信就良心得多,據統計商業成本佔行業成本的 0.5% 。( 數據來源:知乎 @elliott )


千萬不要在朋友圈曬機票,名字打碼了也不行!



這次發現 Amadeus 漏洞的安全人員 Rotem 說,他們團隊從以色列航空公司的網站上可以輕易拉出他們和 Amadeus 之間交流 PNR 的記錄。

剛剛差評君提到了 PNR 包含了很多信息,因此黑客拿到 PNR 以後可以看到乘客的個人信息,甚至還能用它來更換常旅客計劃碼偷里程!


千萬不要在朋友圈曬機票,名字打碼了也不行!



據 Rotem 說,這個漏洞的源頭是產生 PNR 的系統太容易被暴力破解了,因此和 Amadeus 連接的航司網站應該都有安全隱患。。。

千萬不要在朋友圈曬機票,名字打碼了也不行!

而他們的合作航司,還不少。。。可能接近兩百家。

三大聯盟旗下一大堆航空公司

千萬不要在朋友圈曬機票,名字打碼了也不行!



而且 Amadeus 根本沒有反機器人機制,黑客寫個腳本

就可以批量處理 PNR ,然後從中牟利。

千萬不要在朋友圈曬機票,名字打碼了也不行!

總而言之,危險得很吶。。。

目前 Amadeus 已經及時修復漏洞,並且引入了一套驗證碼機制了,可以防一手腳本。


千萬不要在朋友圈曬機票,名字打碼了也不行!



不過這個路還長著。。。因為 PNR 本身就不是個非常安全的信息載體。

雖然理論上只有航空公司, GDS , 代理商,還有你自己知道旅程的 PNR 。

但你想想,自己有沒有把登機牌 PO 上朋友圈過?。。。

就算你碼掉了名字,機票上的 PNR 能查

就算碼掉了 PNR 或者沒印, 登機牌上的條碼其實也含有 PNR 。。。


千萬不要在朋友圈曬機票,名字打碼了也不行!



所以對於想獲得你用戶隱私的人來講,獲得 PNR 簡直就是易如反掌。。。

而最重要的問題是:只要有了 PNR ,別有用心的人能做的事情就有很多了!

對於我們普通人來講,很難避免自己的數據不被有意無意的洩露,有心無力。

但是吧,請大家再也不要在微信微博曬自己機票了,畢竟保護一點是一點嘛,不然沒準你朋友圈哪個痴漢順著機票就找上門了呢。。。

圖片來源

HolidaySimplyAmadeus YouTube ChannelSlideShareTechCrunchTechCrunch " Flaws in Amadeus’ airline booking system made it easy to change passenger records "Wikipedia " Global distribution system "Wikipedia " Passenger name record "知乎問題 “ 國外的 GDS 入化,對於機票代理產業鏈會產生怎樣的影響? ” @elliott 的回答Amadeus " What is a Global Distribution System ? "


“ 其實 GDS 普遍還接了酒店系統。。。 ”


分享到:


相關文章: