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