首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

論壇聊天室安全防護:HTML 標籤過濾器 Java 實作

     編輯:Java 相關知識

開放式論壇與聊天室面臨惡意用戶嵌入 HTML/Script 標籤破壞頁面結構或注入惡意碼的風險。最直接有效的防禦是將輸入中的 <、> 轉義為實體碼 &lt;、&gt;,使瀏覽器以純文字顯示而非解析執行。

過濾演算法

  1. 檢查輸入為空則直接返回。
  2. 建立 StringBuffer 預留空間 (長度+6 緩衝)。
  3. 逐字元掃描:遇到 < 追加 &lt;,遇到 > 追加 &gt;,其餘字元直接追加。
  4. 返回緩衝區字串。

Java 實作代碼

public String htmlFilter(String inputString) {
    if (inputString == null || inputString.length() == 0) return inputString;
    StringBuffer str = new StringBuffer(inputString.length() + 6);
    for (int i = 0; i < inputString.length(); i++) {
        char c = inputString.charAt(i);
        if (c == '<') str.append("&lt;");
        else if (c == '>') str.append("&gt;");
        else str.append(c);
    }
    return str.toString();
}

此函數可直接整合於論壇發文、聊天發言處理流程,有效阻斷 XSS 攻擊向量與版面破壞行為,是 Web 應用輸入過濾的基礎防線。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved