簡體   English   中英

從字符串中刪除不安全字符但保留Unicode字符的最快方法?

[英]Fastest way to remove unsafe chars from string but keep unicode characters?

我最近在HackerNews上進行了一項測試,邀請人們破壞我的Web應用程序( www.tagxt.com )。

有些人成功打破了我要解決的幾件事。

我在這里追求的是:

如何阻止人們創建../../../logout這樣的用戶名,但仍然讓他們使用☃☃☃☃☃☃等Unicode字符? 另外, _下划線也可以。

用戶名的最大長度為15個字符,因此性能並不是一個很大的因素,但是我想找到最快的方法來刪除危險字符。

像這樣的事情呢:

list = ["A", "B", "C"...]
for i in list:    
    string1 = "../../"
    if i in string1:
        print("Error")

我不確定...

驗證字符的最快方法是創建所有允許字符的白名單:

allowed = [ 'A','B','C'...]

如果這看起來很乏味,請使用OWASP ESAPI之類的庫

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM