




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
Jsonp常見安全漏洞分析(京東商城Jsonp漏洞分析)JSONP(JSONwithPadding)是資料格式JSON的一種“使用模式”,可以讓網(wǎng)頁從別的網(wǎng)域要資料。這個解釋來自于互聯(lián)網(wǎng)上面的答案。jsonp只是一種使用json模式,之所以能夠很廣泛使用。主要用它來解決跨域訪問問題。可以方便跨域名傳輸數(shù)據(jù)。一些是一個jsonp的例子。但是,正確的使用jsonp是至關(guān)重要的,用得不好。將帶來重要資料把超范圍訪問,還會帶來各自xss漏洞。JSONP跨域請求例子傳統(tǒng)的ajax,往往是XMLHttpRequest,讀取一個接口,返回類似:{“Name”:“小明”,“Rank”:7}json值。一般我們都采用xmlhttprequest方法通過狀態(tài)判斷執(zhí)行請求是否完畢。JSONP的使用模式里,該URL回傳的是由自定義傳入函數(shù)名,動態(tài)生成JSON作為該函數(shù)入?yún)?,這就是JSONP的“填充(padding)”或是“前輟(prefix)”的由來。請求:<scripttype=〃text/javascript”src=〃/RetrieveUser?UserId=1823&callback二parseResponse〃></script>返回:parseResponse({〃Name〃:"Cheeso","Id":1823,"Rank”:7})parseResponse是傳入?yún)?shù)值決定的,這樣好處通過script標(biāo)簽可以解決跨域問題,并且只要scriptsrc地址加載完,js解析引擎就開始執(zhí)行src地址返回js內(nèi)容了。我們使用者不用關(guān)心,什么時(shí)候src地址加載解析完。只用寫好接收函數(shù):parseResponse,到時(shí)候自動回執(zhí)行該項(xiàng)目。比傳統(tǒng)ajax確實(shí)多了很多方便!目前,象google翻譯,地圖等都用該方法。實(shí)現(xiàn)了跨域及異步調(diào)用!JSONP漏洞將來自哪里?它給我們帶來的發(fā)布,是毫無疑問的。那么它將會有哪些漏洞呢?首先,我們知道,一切輸入是有害的。傳入callback值會在結(jié)果里面直接返回。因此,如果該參數(shù)過濾不嚴(yán)格??梢噪S便輸入:callback值為:alert(‘1’);parseResponse字符串。返回結(jié)果會打印個alert窗口,然后也會正常執(zhí)行。那么另外我們知道,flash是可以跨域的flash請求外部資源,現(xiàn)在都有個”crossdomain.xml”,可以授權(quán)允許那些來源的站點(diǎn),訪問指定站點(diǎn)的資源。其實(shí)目的就是為了防止,資源被越權(quán)調(diào)用了。如果我們不對其授權(quán),那么任何網(wǎng)站都可通過:創(chuàng)建script標(biāo)記,讀取我網(wǎng)站資源了!這個安全項(xiàng),也就是是否有對訪問來源進(jìn)行了授權(quán)訪問!JSONP漏洞總結(jié):知道了JSONP漏洞點(diǎn)主要有:callback參數(shù)注入、資源訪問授權(quán)設(shè)置!我們其實(shí),可以通過這2項(xiàng),來檢測我們的做的JSONP項(xiàng)目,里面是否有安全隱患了。好了,今天先分析到這里。這些漏洞都是,技術(shù)實(shí)現(xiàn)型漏洞!只要,我們明白了方法,杜絕是很容易的。之所以會出現(xiàn)類似安全隱患,更多來自,不知道這里有類似安全問題!,題外話、發(fā)發(fā)感慨??!現(xiàn)在網(wǎng)上看到很多教程,以及書籍都只會講,怎么樣使用某個功能,它的方法、技巧等等!很少解決,技術(shù)功能點(diǎn)安全避免漏洞的調(diào)用方法!做一個功能很重要,但是我始終認(rèn)為,開發(fā)一個安全、穩(wěn)定功能是最基礎(chǔ)的前提。如果做的功能不安全,穩(wěn)定!它急著上線,只會帶來更大的風(fēng)險(xiǎn)、或是損失?。?!歡迎大家交流,提出更換的建議?。ā笔裁??這里不是說京東商城有JSONP漏洞嗎?"”對!沒錯!”今天我這里分析漏洞點(diǎn),大家可以找找京東商城這方面使用漏洞,我們下次分享實(shí)例?。┚〇|商城Jsonp漏洞分析(京東商城XSS漏洞)繼續(xù)我們jsonp安全使用分享吧!上一篇文章我們提到j(luò)sonp使用,常見2種類型漏洞出現(xiàn)!詳細(xì)可以看看:Jsonp常見安全漏洞分析,今天我們來結(jié)合實(shí)例分析下該漏洞的測試、及利用過程吧!題外話為什么我選擇是京東商城來分析它的jsonp漏洞呢,其實(shí)主要原因最近6.18一直在做活動,我也買了不少便宜東西?,F(xiàn)在該商城越做越好了。它系統(tǒng)也非常龐大,速度性能也很好。當(dāng)時(shí)在購物時(shí)候,只是想看看,它的系統(tǒng)分離設(shè)計(jì)方面。通過分析頁面http請求,發(fā)現(xiàn)有很多jsonp調(diào)用(也許跟換域名有關(guān)系,2種域名都可以訪問,中間用jsonp交換數(shù)據(jù)),于是就看看,jsonp常見2種安全方面,有沒有做處理。結(jié)果一測試。發(fā)現(xiàn)完全沒有做任何處理,幾乎是完完全全暴露出來。個人認(rèn)為,對于這么大站點(diǎn),這一點(diǎn)還是頭一次遇到!居然,沒有任何參數(shù)處理、以及資源授權(quán)!京東商城Jsonpxss漏洞分析
我們看到,該請求就是一個jsonp,默認(rèn)返回:jsonp13**********({“Identity”:{“Name”:”",”IsAuthenticated”:false}}),我們知道callback傳入?yún)?shù),會在response中作為函數(shù)調(diào)用名稱返回!分析callback字符范圍1、測試下有沒有屏蔽常見特殊字符”<>()’”以下這些字符,經(jīng)常會用到xss里面的。
到這里,分析說明這里存在著xss注入漏洞的。而且,可以選擇很多種方法注入!本編文章,旨在說明jsonpxss漏洞成因!不會具體去擴(kuò)大漏洞拿到其它什么權(quán)限。以下還有個很有意思事情,callback其實(shí),jd對一些特殊字符串做了處理的。我們看看:
從上圖中,我們可以看到,京東商城,對輸入callback對一些特定的字符串進(jìn)行了屏蔽處理!這也是,我們做xss漏洞檢查時(shí)候,經(jīng)常出現(xiàn)問題。屏蔽字符串能夠屏蔽完嗎?常見26字符,長度不一任意組合。該有多少字符串呢?很多朋友,在做安全檢測時(shí)候,就是屏蔽某些覺得很不安全的標(biāo)簽就認(rèn)為安全了。其實(shí),我們發(fā)現(xiàn)這樣做法只能是一時(shí)安全,過不了多久,你會發(fā)現(xiàn)又有新的字符串出現(xiàn)。你會為此花費(fèi)大量的人力物力!好了,做類似事情,我們最好方法是,認(rèn)證那些覺得安全的字符,予以放行!其實(shí),為什么用白名單方法放行允許的字符呢?而不是去過濾一些字符串。原因剛剛說了,字符串太多了。過濾不過來!另外是,我們自己每個業(yè)務(wù)參數(shù),會用到那些字符其實(shí)我們更清楚。另外有人會問,為什么不去屏蔽不用的字符呢?我們知道基礎(chǔ)ascii碼有0-127,128字符。往往我們,不會用到的字符可能更多呢,我們?nèi)ミ^濾不會用到字符,有時(shí)候更困難!正確檢查jsonpcallback方法建議收到callback函數(shù)對它進(jìn)行白名單字符范圍檢測!我們可以用一般函數(shù)檢測規(guī)范來檢查就可以了。既然它是一個函數(shù)名稱,一般都是字符+數(shù)字+下劃線+點(diǎn)號(對象分割)。那么我們檢測變得非常簡單,代碼類似如:1<?php2$callback=isset($_GET['callback'])?$_GET['callback']:'';3if(!preg_match("/A[0-9a-zA-Z_.]+$/",$callback)){67 exit('參數(shù)錯誤!');}后記:以上是分析一個jsonpxss漏洞過程。要檢測一個站點(diǎn)是否有該漏洞,其實(shí)簡單方法,就是看通過參數(shù)傳入進(jìn)去的特殊字符,是不是原原本本的response返回出來。如果有朋友問我,怎么樣利用該漏洞,它能做點(diǎn)什么?你可以把它比作一個蟻穴,能帶來多大危害,看螞蟻怎么樣啃食啦!這些年,sql注入幾乎難找了,不過xss漏洞是頭號殺手。只要有xss漏洞出現(xiàn),幾乎可以做到無所不能,就看利用的人怎么用了。以上漏洞,我反饋京東商城,這么好的一個網(wǎng)站,不能因?yàn)檫@個小小xss,給用戶帶來大的安全隱患了!最后,歡迎朋友提出自己建議!還有一個忘記說了,就是它的jsonp訪問權(quán)限完全沒有限制,下次再分享吧!京東商城Jsonp資源越權(quán)限訪問漏洞分析最近比較忙,電腦一直有問題,還沒有修理好。本來以前買個電腦才3000來塊,現(xiàn)在剛好過保幾個月,然后修下說要700多,如果換配件要1000多。這個電腦現(xiàn)在買個新二手,應(yīng)該也就千把塊,夠黑了。呵呵,不說這么些了。今天我們繼續(xù)分析京東商城Jsonp使用漏洞之二,未對資源訪問進(jìn)行授權(quán)。對于Jsonp漏洞,這里我就不細(xì)說了,詳細(xì)可以看:Jsonp常見安全漏洞分析(京東商城Jsonp漏洞分析),從上面文章,我們知道jsonp是可以跨域名調(diào)用的。這個漏洞是:沒有授權(quán)網(wǎng)站,可以直接在該站點(diǎn)訪問jsonp接口資源。可能有朋友會問題:“這個漏洞有什么影響呢?”,一般我們常見有:對于存在漏洞的網(wǎng)站來說:jsonp資源給外部調(diào)用,浪費(fèi)接口資源,也給調(diào)用帶來壓力利用者,可以通過jsonp獲取網(wǎng)站資源,構(gòu)造釣魚站點(diǎn),或者給用戶發(fā)送釣魚站點(diǎn)。獲取用戶在漏洞網(wǎng)站上面的用戶信息(用戶登陸情況下),或者偷偷操作用戶功能!具體我們看看實(shí)例:我們看看,如果有個另外域名站點(diǎn),怎么樣調(diào)用該信息!<?phpheader("Content-Type:text/html;charset=utf-8”);?><script>functionjsonp13724(d){console.log(d);}</script><scripttype="text/javascript"src="/order/rec.action?jsoncallback=jsonp13724”></script>
總結(jié),通過上面例子,對于jsonp跨站訪問,帶來資源別越權(quán)調(diào)用漏洞。我們應(yīng)該知道了它的原理。如果要防止這類越權(quán)訪問,我們一般只需要對訪問來源:reffer進(jìn)行授權(quán)這是最簡單的方法!也是最常用方法了。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 天津仁愛學(xué)院《計(jì)算機(jī)系統(tǒng)的局限性》2023-2024學(xué)年第二學(xué)期期末試卷
- 排球正面上手發(fā)球 教學(xué)設(shè)計(jì)-2023-2024學(xué)年高一上學(xué)期體育與健康人教版必修第一冊
- 阜陽職業(yè)技術(shù)學(xué)院《石油工程軟件》2023-2024學(xué)年第二學(xué)期期末試卷
- 億以內(nèi)數(shù)的大小比較(教學(xué)設(shè)計(jì))-2024-2025學(xué)年四年級上冊數(shù)學(xué)人教版
- 西安電力高等??茖W(xué)校《養(yǎng)羊?qū)W》2023-2024學(xué)年第二學(xué)期期末試卷
- 寧夏財(cái)經(jīng)職業(yè)技術(shù)學(xué)院《文化史》2023-2024學(xué)年第二學(xué)期期末試卷
- 泰州2024年江蘇泰興市婦幼保健院招聘高層次人才2人(第2批)筆試歷年參考題庫附帶答案詳解
- 漯河醫(yī)學(xué)高等??茖W(xué)?!朵摻Y(jié)構(gòu)設(shè)計(jì)與施工》2023-2024學(xué)年第二學(xué)期期末試卷
- 鶴壁職業(yè)技術(shù)學(xué)院《建筑實(shí)訓(xùn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 伊犁師范大學(xué)《融媒體監(jiān)測技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- HRBP工作總結(jié)與計(jì)劃
- 2025年湖南高速鐵路職業(yè)技術(shù)學(xué)院高職單招語文2018-2024歷年參考題庫頻考點(diǎn)含答案解析
- 2025年上半年中電科太力通信科技限公司招聘易考易錯模擬試題(共500題)試卷后附參考答案
- 2025年沙洲職業(yè)工學(xué)院高職單招語文2018-2024歷年參考題庫頻考點(diǎn)含答案解析
- DB3502T052-2019 家政服務(wù)規(guī)范 家庭搬家
- 兒童故事繪本愚公移山課件模板
- 會計(jì)學(xué)專業(yè)數(shù)智化轉(zhuǎn)型升級實(shí)踐
- 中國糖尿病防治指南(2024版)解讀-1
- 2024年計(jì)算機(jī)二級WPS考試題庫(共380題含答案)
- 2024年德州職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性測試題庫
- 跨學(xué)科實(shí)踐活動10調(diào)查我國航天科技領(lǐng)域中新型材料新型能源的應(yīng)用課件九年級化學(xué)人教版(2024)下冊
評論
0/150
提交評論