Web_Design 板


LINE

各位板友好, 我是正在學習前端的新手 最近在寫一個網頁,需要利用爬蟲的方式取得一些資料 然而,卻又遭遇到 CORS 的惡夢 查一堆資料都看得頭暈眼花,JSONP 已經會被 Chrome 檢查 MIME Type,找到一個 proxy 在 local 都正常,推到 GitHub Pages 又噴 CORS error 雖然最終我透過 Netlify 提供的 Redirect Proxy 暫時解決我的問題 但我仍然很疑惑 CORS 的目的究竟為何?? 如果是要保護伺服器端的資料,應該用 API key 之類的方法,否則還是會被其他爬蟲擷 取啊 如果是要保護客戶端也很不合理啊,怎麼是由伺服器端加上 header 來保證安全,要注入 惡意程式碼難道就不會加上 header 嗎?? 看起來整個 CORS 似乎只是為惹阻止前端爬蟲而已,它到底是要幹嘛啊?? 還請各位大大不吝賜教,感激不盡 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.240.165.72 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Web_Design/M.1624612621.A.E53.html
1F:→ ssccg: 防止XSS攻擊,瀏覽器端存的資料的安全保護是以origin為信任 06/25 18:00
2F:→ ssccg: 單位,不同origin的script不能互相存取在瀏覽器的資料 06/25 18:01
3F:→ ssccg: 然後「伺服器端加上 header 來保證安全」是你搞反了吧,預 06/25 18:02
4F:→ ssccg: 設是不能存取=安全,加上header是指示瀏覽器放寬限制=危險 06/25 18:04
5F:→ ssccg: 這機制跟爬蟲沒關,爬蟲只是一種script,從後端自己發沒有 06/25 18:06
6F:→ ssccg: 不會動到瀏覽器的資料所以沒關係,前端是所有XSS都不行 06/25 18:09
7F:→ ssccg: 可以理解你程式新手寫個js用瀏覽器跑是很直觀的想法,但是 06/25 18:10
8F:→ ssccg: 你要知道瀏覽器不是用來給你跑程式的,是給一般人上網的 06/25 18:11
還是不懂怎麼是伺服器端放寬限制,瀏覽器就可以存取??我感覺應該由瀏覽器來決定外部 資源是否可以被信任 而且我只是要 fetch JSON 而已,我沒有要執行它阿 ※ 編輯: nevikw39 (123.240.165.72 臺灣), 06/25/2021 18:23:54
9F:→ ssccg: 你可能還有一個問題是發request哪裡動到資料,發request時 06/25 18:18
10F:→ ssccg: 會自動帶入該origin的Cookie,接收時會收到Set-Cookie,這 06/25 18:19
11F:→ ssccg: 些Cookie就是不能讓不同origin存取的資料 06/25 18:20
12F:推 vi000246: 等你當駭客的時候就會覺得cors很難搞了 好不容易找到漏 06/25 18:31
13F:→ vi000246: 洞 結果注入的惡意程式碼被cors限制 06/25 18:31
14F:→ vi000246: cors是瀏覽器做的限制 你用後端寫爬蟲就能正常爬取了 06/25 18:32
CORS 就讓我超頭痛,資安領域看起來真不簡單
15F:→ ssccg: 某個origin的資料,要放寬給哪些其他origin存取,當然是伺 06/25 18:33
16F:→ ssccg: 服器決定啊,瀏覽器難道還要內建全世界網站要開放的名單? 06/25 18:34
17F:→ ssccg: 想到你可能搞錯一點,nevikw39.com 存取 example.com 被擋 06/25 18:49
18F:→ ssccg: 不是保護 nevikw39.com 用到外部資源,是要保護example.com 06/25 18:51
19F:→ ssccg: 存在瀏覽器端的資料不會被 nevikw39.com 的網頁存取 06/25 18:52
所以是 CORS 的目的其實是要防止某個網頁資源的 cookie, storage 被其他網頁載入?? 結果連帶使得其他網頁不能取得某網頁資源?? 我現在這樣理解正確嗎 ※ 編輯: nevikw39 (123.240.165.72 臺灣), 06/25/2021 18:57:33
20F:→ ssccg: 所以當然由example.com的response header設定CORS規則 06/25 18:52
我大概想通惹 比如今天我的瀏覽器有登入 Google, Facebook 等服務,如果沒有 CORS 那麼所有網頁都可 以幫我發文之類的,那就可怕惹 ※ 編輯: nevikw39 (123.240.165.72 臺灣), 06/25/2021 19:02:51
21F:推 fantania: 爬蟲應該要用Selenium之類的webdriver去爬,不然會被擋 07/13 10:20
22F:→ ku399999: 連帶兩個字是多餘的 01/21 08:00







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:BabyMother站內搜尋

TOP