国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

新浪SEAオープンプラットフォーム開発ドキュメント / 應(yīng)用安全開發(fā)注意事項(xiàng)

應(yīng)用安全開發(fā)注意事項(xiàng)

新浪安全部門一直致力于推動開放平臺上的產(chǎn)品安全,使微博應(yīng)用擁有更好的用戶體驗(yàn)和具備更安全的功能。從目前的情況來看,我們發(fā)現(xiàn)部分應(yīng)用存在下面幾種常見的安全漏洞或缺陷,這些安全漏洞除了對應(yīng)用本身帶來影響外,也會給用戶帶來損失。

app secret泄露

app_secret是應(yīng)用請求開放平臺生成access_token的唯一認(rèn)證,使用app_secret目的是確保應(yīng)用是開發(fā)者本人在使用。


不同的應(yīng)用在開放平臺擁有不同的接口調(diào)用資源和API權(quán)限。如果該應(yīng)用的接口資源被盜用,進(jìn)行發(fā)布垃圾信息和加關(guān)注等惡意操作,開放平臺會對應(yīng)用的資源和權(quán)限進(jìn)行限制,這樣會直接影響到該應(yīng)用的正常API的調(diào)用。因此,對于開發(fā)者來說,有必要保護(hù)自身應(yīng)用安全,相應(yīng)的安全資源不被非法使用,從而保障應(yīng)用的正常運(yùn)行。


建議把a(bǔ)pp secret保存在應(yīng)用服務(wù)端,為了更好的保護(hù)你的應(yīng)用安全,建議在管理中心/安全設(shè)置中綁定應(yīng)用的服務(wù)器ip。


anquan1.png


如果發(fā)現(xiàn)應(yīng)用的app secret被泄露,請立即到應(yīng)用管理中心進(jìn)行重置 http://open.weibo.com/apps/


app secret泄露的常見原因:

1、app secret出現(xiàn)在頁面源代碼或者url中,導(dǎo)致直接查看源代碼即獲得。

2、app_secret保存在客戶端本身程序中,所有的本機(jī)應(yīng)用程序(如iOS,Android或Windows桌面應(yīng)用程序),都可以反編譯的代碼獲得。

3、未使用HTTPS安全傳輸協(xié)議,攻擊者通過網(wǎng)絡(luò)嗅探獲得。

access_token泄露

access_token是用戶通過應(yīng)用訪問開放平臺的會話標(biāo)識,應(yīng)用程序要做好保護(hù)工作,防止被第三方竊取。


常見的access_token泄露途徑:

1、access_token保存在cookie或者頁面代碼中,攻擊者通過xss漏洞竊取用戶token。

2、應(yīng)用服務(wù)器存在sql注入漏洞,導(dǎo)致用戶token泄露。


綁定微博用戶CSRF漏洞

如果你的應(yīng)用有自己的帳戶體系,并且有綁定微博用戶登陸這個(gè)功能,請檢查綁定接口是否有防止CSRF攻擊的功能。授權(quán)接口state參數(shù)的可以用來防止授權(quán)過程CSRF攻擊,具體詳細(xì)的使用方法,可以參考最新版SDK代碼,https://github.com/ElmerZhang/WeiboSDK。

加關(guān)注發(fā)微博CSRF漏洞

關(guān)于CSRF漏洞的更多介紹可以參考這里。http://baike.baidu.com/view/1609487.htm


微博應(yīng)用的CSRF漏洞常見于加關(guān)注和發(fā)微博等寫入接口處,用戶看到的現(xiàn)象是微博多了一些莫名的關(guān)注,或者轉(zhuǎn)發(fā)了一些營銷微博。


開發(fā)者可以通過檢查referer是否合法或者在表單中加入csrf_token方式來防御CSRF攻擊。

用戶身份偽造

完成OAuth 2.0授權(quán)認(rèn)證后,應(yīng)用方可獲得象征用戶身份的access_token,一般直接用于接口調(diào)用。但部分應(yīng)用需要獲得用戶的uid,作為同自身賬號體系做關(guān)聯(lián)的認(rèn)證憑據(jù),以提供更多應(yīng)用自身的服務(wù)內(nèi)容。典型情況如使用了微博sso sdk的手機(jī)應(yīng)用、網(wǎng)絡(luò)存儲服務(wù)型應(yīng)用。


在此場景下,常見的漏洞有:

1、 客戶端直接以授權(quán)接口返回的uid或提取access_token中的uid,回傳應(yīng)用自身服務(wù)器作為認(rèn)證憑據(jù)。該傳輸過程可被非法攔截,通過篡改uid偽造用戶身份。

2、 客戶端將access_token回傳自身服務(wù)器,服務(wù)器提取其中的uid作為認(rèn)證憑據(jù),但并未校驗(yàn)該access_token的合法性。此時(shí),通過騙取A用戶授權(quán)X應(yīng)用,獲取access_token后傳入Y應(yīng)用服務(wù)器,便可拿到Y(jié)應(yīng)用的A用戶憑證,訪問Y應(yīng)用中該用戶的服務(wù)內(nèi)容。


修復(fù)建議:

1、 不要直接使用沒有授權(quán)信息的uid來換取自身服務(wù)的認(rèn)證憑據(jù),只能使用access_token進(jìn)行。

2、 服務(wù)器端提取access_token中的uid,需調(diào)用開放平臺的OAuth2/get_token_info接口。使用該接口時(shí),需一并查證該access_token所屬的appkey是否為自己的客戶端應(yīng)用appkey。Appkey來源相符的才允許換取自身服務(wù)的認(rèn)證憑據(jù)。

3、 對所有已存入的綁定access_token進(jìn)行核查,發(fā)現(xiàn)access_token中的新浪uid和綁定新浪uid不一致、非自身客戶端應(yīng)用appkey授權(quán)的access_token、過期access_token等異常情況均需要全部撤消,要求這些異常用戶重新授權(quán)登錄。

點(diǎn)擊劫持漏洞

惡意站點(diǎn)通過iframe的方式嵌套微博應(yīng)用站點(diǎn),利用HTML透明覆層等技術(shù),劫持用戶的點(diǎn)擊操作。從而達(dá)到誘導(dǎo)用戶執(zhí)行惡意加關(guān)注目的。


修復(fù)建議:


1、不需要被iframe的應(yīng)用,可選用下面之一的方法。

    • a、header頭聲明 header( "X-FRAME-OPTIONS:DENY");
    • b、JS判斷當(dāng)前頁面是否被iframe,示例代碼: if(top.location!=location){top.location=locaiton;}


2、需要被iframe的產(chǎn)品。

    • a、判斷父窗口是否是允許的頁面;
    • b、彈出加關(guān)注確認(rèn),并給出被關(guān)注者的昵稱。


應(yīng)用安全涉及的范圍比較廣,開發(fā)者除了要注意避免掉上面常見的安全問題外,也應(yīng)該關(guān)注最新安全趨勢,了解自身產(chǎn)品的安全缺陷,更重要的提升產(chǎn)品和開發(fā)人員的安全意識,只有這樣,才盡可能的減少安全問題產(chǎn)生。如果出現(xiàn)安全漏洞,可以及時(shí)聯(lián)系我們,我們會第一時(shí)間提供解決方案。