全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1499
推到 Plurk!
推到 Facebook!

嘗試解決本站特定字串被替換成 forbidden 問題

 
bestlong
站務副站長


發表:126
回覆:734
積分:512
註冊:2002-10-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2011-06-07 23:34:53 IP:113.61.xxx.xxx 訂閱
很多發文內容因吻合特定字串而被直接替換成 forbidden 導致閱讀與複製上的錯誤
這個問題真的困擾大家很久了,也有很多站友提報改善要求
為了避免自己考量不周延與處置不完整
所以在此跟大家作個探討與確認完整的解決之道
這個部分是為了避免受到 Cross-site scripting (簡稱為 XSS)的攻擊所做的處理
可參考資料 http://en.wikipedia.org/wiki/Cross-site_scripting

希望站上在此方面有實際經驗的朋友共同討論

本站的發文內容會有下列功能組合後才儲存到資料庫
1. 支援 HTML 顯示
2. BB Code 支援
3. 語法高亮處理(應該也算是 BBCode 的範圍)
4. FCKEditor (也可歸屬支援 HTML 顯示)

真的很棘手阿,需要進行考古研究

因為要支援 HTML 格式顯示,那麼發文就無法直接輸入 HTML 的原始碼
而這部分在 FCKEditor 在輸入時就會幫忙轉換成編碼後的文字
例如 <HTML> 被轉換成 <HTML><br />
所以在本站導入使用 FCKEdtitor 前,若有直接呈現的 HTML 原始碼不知道是否有進行轉換處理?

而導入 FCKEditor 後有改版幾次也還需要確認?
相關公告 http://delphi.ktop.com.tw/board.php?cid=32&fid=107&tid=90449
依上列公告就可確認至少有兩個版本

其他的陸續考古中
------
http://blog.bestlong.idv.tw/
http://www.bestlong.idv.tw/
http://delphi-ktop.bestlong.idv.tw/
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2011-06-07 23:59:29 IP:118.169.xxx.xxx 未訂閱
呵呵! 最近副站長很積極哦! 套句星爺電影的經點對白, "各位師兄弟終於回來了"
加油, 感謝, 給你按一個 "讚"
cancer
高階會員


發表:58
回覆:319
積分:190
註冊:2004-07-31

發送簡訊給我
#3 引用回覆 回覆 發表時間:2011-06-08 08:43:07 IP:220.128.xxx.xxx 未訂閱
師兄弟,準備開波啦!
===================引 用 P.D. 文 章===================
呵呵! 最近副站長很積極哦! 套句星爺電影的經點對白, "各位師兄弟終於回來了"
加油, 感謝, 給你按一個 "讚"
hahalin
版主


發表:295
回覆:1698
積分:823
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2011-06-09 16:46:48 IP:64.62.xxx.xxx 未訂閱

專家,這事就你好好處理吧,加油
herbert2
尊榮會員


發表:58
回覆:640
積分:894
註冊:2004-04-16

發送簡訊給我
#5 引用回覆 回覆 發表時間:2011-06-10 23:40:24 IP:202.39.xxx.xxx 訂閱
若不將那些字轉換成 forbidden, 而將其改變顏色, 如: DesMetaFile、OnClick等,
不知是否可行?
編輯記錄
herbert2 重新編輯於 2011-06-10 09:41:22, 註解 無‧
herbert2 重新編輯於 2011-06-10 09:41:56, 註解 無‧
herbert2 重新編輯於 2011-06-10 09:42:24, 註解 無‧
herbert2 重新編輯於 2011-06-10 09:42:58, 註解 無‧
bestlong
站務副站長


發表:126
回覆:734
積分:512
註冊:2002-10-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2011-06-14 09:54:13 IP:210.242.xxx.xxx 訂閱
更新了程式碼
解決發文內容有輸入 HTML 語法時會消失不見的問題

我本篇發文時的某行的原始輸入內容如下:

例如 被轉換成

發文時在 FCKEditor 將所輸入的轉成特殊編碼為的是能夠顯示
卻又在顯示時將之轉換回 HTML 原始碼
我認為是個矛盾的作法
會導致實際輸入的內容會部分消失,因為被當做 HTML 原始碼套用
------
http://blog.bestlong.idv.tw/
http://www.bestlong.idv.tw/
http://delphi-ktop.bestlong.idv.tw/
bestlong
站務副站長


發表:126
回覆:734
積分:512
註冊:2002-10-19

發送簡訊給我
#7 引用回覆 回覆 發表時間:2011-06-14 10:01:03 IP:210.242.xxx.xxx 訂閱
這一招可以嘗試
不過我會使用將特定字串切開成兩段作處理
但是應該不會是用顏色來區隔 SPAN 或 DIV 應該就可以了

===================引 用 herbert2 文 章===================
若不將那些字轉換成 forbidden, 而將其改變顏色, 如: DesMetaFile、OnClick等,
不知是否可行?
------
http://blog.bestlong.idv.tw/
http://www.bestlong.idv.tw/
http://delphi-ktop.bestlong.idv.tw/
bestlong
站務副站長


發表:126
回覆:734
積分:512
註冊:2002-10-19

發送簡訊給我
#8 引用回覆 回覆 發表時間:2011-06-15 13:19:31 IP:210.242.xxx.xxx 訂閱
實作之後
在文章的一般內文是可行的
但是碰到程式碼區塊內的就變成多顯示出轉換後的 HTML TAG

真是一山不容二虎阿

===================引 用 herbert2 文 章===================
若不將那些字轉換成 forbidden, 而將其改變顏色, 如: DesMetaFile、OnClick等,
不知是否可行?
------
http://blog.bestlong.idv.tw/
http://www.bestlong.idv.tw/
http://delphi-ktop.bestlong.idv.tw/
系統時間:2024-04-25 17:47:42
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!