1. 程式人生 > >短信平臺相關安全問題

短信平臺相關安全問題

發送 重置 信任 針對 相關鏈接 開發人員 可見 get 結合

在近期的滲透測試項目中,在短信平臺相關功能都出現了一些問題,現對滲透過程中發現,及wooyun上出現的相關短信平臺的幾類問題做個整理。

一、短信發送無頻率限制

通過wooyun上搜索可見,該類漏洞是最為常見的。

漏洞相關鏈接:

萬網發驗證信息,無限時。無限次數形成短信轟炸 http://www.wooyun.org/bugs/wooyun-2010-07592
盛大網絡短信ddos攻擊漏洞 http://www.wooyun.org/bugs/wooyun-2010-02773

漏洞成因: 對發送信息功能調用未做任何限制

漏洞危害:

1、可針對某用戶短時間內發送大量垃圾短信,造成短信轟炸攻擊;

2、對於企業,每發一條短信,都是需要向運營商交付一些費用,盡管比個人用戶費用低,但是一旦被惡意利用大量發送後,造成較大的直接經濟損失。

漏洞修補:

1、限定同一手機號在一時間段內發送次數,如每分鐘發送1次,具體落實需結合用戶體驗綜合考慮;

2、使用強壯的驗證碼機制。

補充:曾在測試中發現某客戶的驗證碼有效期為2分鐘,即2分鐘內無需修改驗證碼直接成功回放請求包,同樣可造成短信炸彈工具。因此,務必保證驗證碼的強壯型,並采用一次一用機制。

二、短信發送內容來自客戶端

這類漏洞一般不直觀,直接由用戶輸入來定義短信內容的問題確實沒遇到過,這裏的漏洞是把短信內容放在的POST表單中,從頁面上無法發現,需要抓包分析才能看到。

相關漏洞:

(知道這漏洞是哪家的同學也請噓,咱不討論它是誰的,另漏洞已經修補了)

某系統可以在WEB頁面上選擇手機品牌和型號,填入手機號碼可發送下載地址至手機,具體操作界面如下圖:

技術分享

抓包查看該POST表單的內容

技術分享

正常情況下,用戶收到的短信即為客戶端提交的內容:“var1下載:var2”,var1和var2分別為手機品牌和手機型號。

例如“NOKIA
N97下載:wap.abc.com.cn/abc.sisx”。

由於短信內容為客戶端定義的,即修改var1=NULL,var2=“恭喜您中獎,請登陸XXX領取”。此時目標手機收到短信為:“下載:恭喜您中獎,請登陸XXX領取”。最終造成釣魚攻擊。

漏洞原因:

直接原因是客戶端可控制短信內容。但更深層次去追究,實際上是開發人員追求性能和效率,把重要的操作分發給客戶端去做,而忽視其中安全問題導致的,這也是開發人員考慮問題重心偏移和安全從業者不同的體現。類似,為追求性能而導致有意思的漏洞:sohu郵箱任意用戶密碼重置 http://www.wooyun.org/bugs/wooyun-2010-04728

漏洞危害:

該類漏洞一般被用戶釣魚欺詐,直接受害者為最終用戶,也使得企業方遭受名譽損失。

漏洞修補:

短信發送文字內容應由服務器來定義,客戶端應觸碰不到。可以制定為鍵-值對,客戶端只能選擇鍵,然後在服務端匹配到鍵相應的值,再把值內容發送給用戶手機。

三、手機驗證過程中pin碼可爆破

這類問題常出現在“密碼找回”、“綁定手機”等功能處。正常工作流程一般為在頁面提交手機號,然後短信平臺會發送一個pin碼給手機,再將pin碼提交回給服務器,完成身份認證或綁定。

相關漏洞:

微信任意用戶密碼修改漏洞 http://www.wooyun.org/bugs/wooyun-2010-011720

該漏洞在爆破pin碼階段相當精彩,先贊一個。

only_guest大牛說了:

技術分享

因此,這類漏洞成因:

1、pin碼太弱,短位的純數字組合,極易爆破;

2、高頻由同一源發類似請求包,這麽像CC攻擊了,服務器總該做點反應吧。

漏洞危害:

需根據實際功能來定,大則如漏洞標題,任意用戶密碼修改。且即便看似難以利用,在大牛手上將會用神奇的構思,來證明漏洞的危害。近期,pysolve大牛就在做這樣的事情。

漏洞修復:

使用長度和復雜性足夠強壯的Pin碼,防止被爆破。

四、短信平臺自身的問題

先不論短信平臺的應用層面的漏洞,我在測試過程中遇到的問題是:弱口令!直接登陸到短信平臺。

技術分享

漏洞成因:

維護人員的安全意識問題。

該短信平臺只能通過IP訪問,未綁定URL。我知曉其存在是由於客戶提供了資產列表。站在客戶的視角,外部用戶難以發現短信平臺入口,因此並不重視其安全性。但後續我發現通過Google hack也是能找到這個短信平臺的。且有數字瀏覽器如此強大的存在,怎麽可能產生互聯網孤島呢?

另外短信平臺一般是由第三方提供,企業做為使用者難以保證其安全性,因此也可能存在常規WEB應用漏洞。

漏洞危害:

短信平臺的操作權限一旦被惡意攻擊者獲取,上述提及的幾類漏洞危害都有可能導致。

漏洞修復:

站在企業的角度,對於這樣一個第三方系統,進行代碼審計、滲透測試,成本投入都略顯過大,因此對於短信平臺,建議使用最直接、最暴力也是我認為最合適的方案——制定合適的ACL,限定僅內網特定用戶訪問,如確實有外網用戶需要使用系統,也需采用VPN接入。

總結:

以上四類問題是我遇到和見到的,但是,由於我能力和視野有限,考慮得肯定是不夠全面的,也請有經驗的大牛給予指點。

短信平臺相關安全問題