【硬塞專家開評】一文看懂為何 Wi-Fi 名稱會弄壞手機的 Wi-Fi 功能?三大方法教你自保

不久前資安專家證實蘋果 WiFi 出現嚴重漏洞,為什麼 Wi-Fi 名稱會弄壞手機的 Wi-Fi 功能呢?一文看懂背後原理。
評論
Photo Credit:Shutterstock/達志影像
評論

本篇來自資安解壓縮,資安解壓縮致力用最好理解的方式幫助大家了解資安一起學習如何保護自己,資安解壓縮現經營資安為主題的中文 Podcast 節目以及 IG,本篇內容為 INSIDE 邀請評論。

【硬塞專家顧問募集中】硬塞邀請各界專家、對網路科技議題有洞見的你,透過文字傳遞觀點,為網路科技產業帶來影響力。觀點評論投稿歡迎來信與我們聯絡。

今年六月中資安研究員 Carl Schou 發現他的 iPhone 只要連上名為 %p%s%s%s%s%n 的 Wi-Fi,iPhone Wi-Fi 功能就會被強制關閉,如果要重新開啟 Wi-Fi,就只能重置手機網路設定。

Carl 接著在這個月初發現,如果 iOS 手機連上名稱為 %secretclub%power 的 Wi-Fi 的話,手機的 Wi-Fi 就會完全不能用,而且這次的情況更糟,重置手機的網路設定也不一定能修復手機的 Wi-Fi 功能。

那麼為什麼把 iOS 裝置連接到一些有奇怪 Wi-Fi 名稱的網路會影響手機的 Wi-Fi 連線功能呢?這是因為 iOS 系統上的字串格式化漏洞(Format String Bug)。

什麼是字串格式化漏洞 Format String Bug ?

要理解什麼是字串格式化漏洞之前,我們需要先稍微了解一下在程式語言中的字串跟變數是怎麼被處理的。

以C語言為例的話,下面這段程式碼的作用是將 “Jeff“ 這個字串保存在 name 這個變數裡,再將變數 name 透過 printf 函式顯示出來。

大家可以注意到在使用 printf 函式在輸出的時候,我們使用了 %s 來代表要輸出的變數name

%s 是在 C 語言中用來代表字串的特殊字元,他會告訴像是 printf 這類型的函式說:我是一個變數不要直接把我印出來,要去後面找我對應的變數。

類似的特殊字元還有代表浮點數的 %f、代表十進位數字的 %d、代表 pointer 的 %p 等等的。

這樣造成什麼潛在漏洞?

如果今天,我們讓使用者可以輸入內容來與程式進行互動的話,就有可能會觸發字串格式化漏洞。

下面這段程式碼的功用是讓使用者在執行的同時附上自己的名字,接著程式會將使用者的名字輸出。

正常的使用者執行的話就會出現下面的結果,我輸入 Jeff 到程式裡,他就會將 Jeff 顯示出來。

但是如果今天遇到來搗亂的使用者,他不乖乖的輸入名字,而是輸入以下這種內容的話就會出現問題。

大家可以發現原本應該是回傳 %s 的程式,現在顯示的是一串像是亂碼的東西 0xffffdddd,他其實是一段記憶體位置。之所以會回傳一段記憶體位置是因為當我們輸入 %s 到這個程式以後,在 printf 這個函式中他把 %s 認定為是一個變數了,因此 printf 會試著去尋找對應的變數所包含的資料,但是因為我們根本沒有設定一個變數給他,因此他就會回傳對應的記憶體位置給我們。

如果我們沒有針對字串格式化漏洞進行任何的防護的話,攻擊者可以透過輸入下面這種內容來進行攻擊

如此一來,程式就會回傳一連串的記憶體資訊,攻擊者會可以透過這種方式來讀取到一些像是機密資訊等等的攻擊者原本不該有權限讀取的內容,進階一點的話攻擊者還有可能搭配溢位攻擊(Overflow Attack)或是其他的攻擊手法來修改程式的內容,讓攻擊者取得這個程式的控制權。

等等......可不可以白話一點?

以現實生活中的事物來做舉例的話,假設家X福有個只有員工才知道的通關密語,只要在結帳的時候說出這個通關密語就可以享有員工優惠。

某天我在結帳的時候正在跟身旁的朋友聊天,過程中不小心提到了這個通關密語,結帳的員工在聽到了以後就以為我也是家X福的員工,因此主動幫我使用員工優惠打了折。

我在注意到這件事以後,開始試著每次去家X福消費的時候都說出這個通關密語,並且發現每次都會有員工優惠,因此我就理解到這個通關密語是一個只有家X福員工才知道的秘密。

貪心的我並不滿足,想要透過這個通關密語獲得更多的好處,因此這天我就來到家X福的員工休息室,佯裝成是忘記帶識別證的員工請別人幫我開門,這時我就說出了通關密語想要證明自己是家X福員工,休息室內的員工因為覺得這個通關密語只有自己人會知道,因此在沒有經過更進一步的驗證之下就相信了我是家X福讓我進入員工休息室。混入了員工休息室後的我就開始各種的搜集家X福的機密資料,想辦法從中獲利。

字串格式化漏洞也是類似的概念,當我們的程式沒有好的防護機制的時候,攻擊者就會透過 %s%p 等等的字串佯裝,讓我們的程式把他們誤以為是合法的變數而回傳對應的資料,透過這樣的方式攻擊者就有辦法從我們的程式中取得機密資訊和控制權。

與這次的 Wi-Fi 問題有什麼關聯?

眼尖的讀者應該會發現,在資安研究員 Carl 發現的兩個有問題的 Wi-Fi 名稱中都包含了 %s 以及 %p ,再加上 iOS 作業系統的底層是由 C 語言所寫的,因此大家推斷 iOS 的 Wi-Fi 功能中存在著字串格式化漏洞。當我們連上了一個名稱中有 %s 或是 %p 的 Wi-Fi 時,很高機率是觸發了漏洞導致 iOS 手機無法正確地處理這些 Wi-Fi 名稱。

目前從網友提供的資訊來看,此次字串格式化漏洞的影響只限於影響 iOS 裝置的 Wi-Fi 功能導致無法使用 Wi-Fi 連線,沒有造成其他更危險的影響。但我們並不知道攻擊者會不會在得知這個漏洞,經過更多的研究後找到危險性更高的攻擊手法,因此大家還是要多多留意。

應對方式

1. 關閉 iOS 裝置的 自動加入熱點 功能:關閉這個功能可以避免手機自動連上別人的熱點,避免手機自動連上惡意 Wi-Fi。

2. 不要使用公開、未知的 Wi-Fi:不要隨意的連接和使用公開、安全性未知的 Wi-Fi,我們很難知道這個 Wi-Fi 是由誰提供的、對方是否有惡意。即便 Wi-Fi 名稱看似正常,也有可能是攻擊者偽裝的,因此建議大家不要使用公開、安全性未知的 Wi-Fi。

3. 更新手機作業系統:目前 Apple 還沒有針對這次事件釋出更新修補,但如果大家能夠養成即時更新的好習慣的話就可以在第一時間修補手機上各種安全性的漏洞。

責任編輯:Anny
核稿編輯:Mia

延伸閱讀:

相關連結



總價值一千萬獎項!「挖貝提案者大賽」提供完整顧問與行銷資源,目標助 40 組提案團隊圓夢

第一屆「挖貝提案者大賽」,不僅祭出總價值高達一千萬的豐厚獎項,更運用貝殼放大過往協助無數破千萬集資專案的強大專業優勢,提供獲選提案團隊完整顧問與行銷資源,力求讓好提案能在台灣遍地開花。
評論
Photo Credit:貝殼放大
評論

群眾集資產業在台灣邁向第 10 年,產業又有新變革!由台灣最大群眾集資顧問公司「貝殼放大」成立的「挖貝 WaBay」群眾集資平台於 1 月 14 日正式宣布,舉辦第一屆「挖貝提案者大賽」,不僅祭出總價值高達一千萬的豐厚獎項,更運用貝殼放大過往協助無數破千萬集資專案的強大專業優勢,提供最多 40 組獲選提案團隊完整顧問與行銷資源,力求讓好提案能在台灣遍地開花。

徵件對象包含原創產品、社會參與、文化內容等各類型提案,並於即日起至 3 月 31 日開放報名,首獎可獲得挖貝 WaBay 提供價值 300 萬元的專案推廣、行銷、顧問資源,而且只要入選決賽便可擁有價值 10 萬元的行銷資源挹注!歡迎所有符合資格的提案團隊報名參賽

從根本改善產業,提供完整顧問資源、提升群眾集資原創動能

「挖貝 WaBay」群眾集資平台於 2021 年 4 月正式成立,由於看見群眾集資原創性日益降低,以及層出不窮的爭議事件,漸漸讓大眾對產業失去信心,因此挖貝秉持群眾集資「信任」與「責任」原則,鼓勵「原創」和「社會倡議」類型專案,致力和提案團隊與贊助者共創良好的集資環境,希望重建群眾集資產業最美好的的初始信念,成為原創、文化及社會參與團隊最青睞的平台。

適逢整體群眾集資產業在台灣邁向第 10 年里程碑,也是挖貝平台在成立將滿一週年之際,特別舉辦「挖貝提案者大賽」,以史上最豐厚、總價值高達一千萬的獎項,鼓勵全台與挖貝一樣懷抱著美好理想的團隊,將心中的原創提案實現成真,讓社會產生正向改變,並帶動群眾集資產業正向發展。

總獎項價值千萬!首獎獨得 300 萬、入選決賽即獲 10 萬行銷資源

「挖貝提案者大賽」共分為三個組別,包含「原創產品」(具備全新概念的生活原創設計品、3C 科技、活動等)、「社會參與」(具有社會公益價值,例如:社會議題倡議、空間再造、教育、在地等)、「文化內容」(影視娛樂、藝文出版、遊戲等),期望凸顯提案團隊本身的原創性以及對社會文化的關注與理念實踐,初賽不限報名組數,最多取 40 組入選決賽。

在獎項的部分,為了鼓勵更多團隊藉由群眾集資實現理想,「挖貝提案者大賽」跳脫一般平台僅能提供基礎上架指導的限制,透過母公司「貝殼放大」成立以來奠基的紮實群眾集資執行專業,期望在過程中讓提案團隊獲得完整的專業支持,對群眾集資產業具備正確理念;本次祭出總價值一千萬的豐厚獎項,除了專案推廣費用挹注之外,更包含一對一顧問諮詢、對外宣傳資源、海外平台上架評估與輔導等實際支持;「首獎」可獨得價值 300 萬獎項、「優勝」每組兩名 50 萬獎項、「入選決賽」最多取 40 組各獲得價值 10 萬獎項。

敬請提案團隊把握機會報名參賽,挖貝提案者大賽報名資訊詳見:https://backme.tw/ref/XcxOl/

Photo Credit:貝殼放大

第一屆「挖貝提案者大賽」報名資訊

▶報名時間:即日起至 3 月 31 日

▶初賽結果公告:2022 年 4 月 20 日

▶報名資格

  • 設籍台灣
  • 具備完全行為能力之自然人或合法登記之法人、團體,未成年提案人則須提供法定代理人同意書
  • 報名期間內繳交提案資訊

▶提案組別

  • 原創產品組:生活原創產品(設計、餐飲、美妝保養、服飾)、3C 科技(3C、科技)、活動(活動、運動、旅行)等提案
  • 社會參與組:社會、空間再造、教育、在地等提案
  • 文化內容組:影視娛樂(表演、音樂、影視動畫)、藝文出版(印刷出版、攝影、插畫漫畫、藝術)、遊戲(桌遊、紙牌、電動、遊戲設計)等提案

▶獎項福利(總價值一千萬)

  • 「首獎」:一名,獎項總價值 300 萬
    • 專案推廣費 100 萬
    • 行銷、顧問資源 200 萬
  • 「優勝」:每組兩名,每名獎項總價值 50 萬
    • 專案推廣費 15 萬
    • 行銷、顧問資源 35 萬
  • 「入選決賽」:最多取 40 名,每名獎項總價值 10 萬
    • 行銷、顧問資源 10 萬

▶線上報名連結:https://backme.tw/ref/XcxOl/

本文章內容由「貝殼放大」提供,經關鍵評論網媒體集團廣編企劃編審。