[英]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.