首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Checkmarx反射XSS

Checkmarx反射XSS
EN

Stack Overflow用户
提问于 2021-09-03 18:46:01
回答 1查看 916关注 0票数 1

我有一个基于Django的API。在用CheckMarx扫描我的应用程序之后,如果显示我已经在这里反映了XSS的可移植性:

代码语言:javascript
复制
user_input_data = json.loads(request.GET.get('user_input_data'))

我已经尝试过的是:

django.utils.html.escpae

  • Used django.utils.html.strip_tags

  • Used html.escape

  • Used

  • 使用escapejson软件包

每次我运行扫描时,它都会在这个位置找到存储的XSS。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-18 00:26:00

您所尝试的是正确和可接受的,但是Checkmarx对Django的支持是有限的,这就是它不承认您使用的任何功能的原因。您需要与您的安全团队争论这一点,并让他们认识到这是防止XSS的正确方法之一。

通过使用替换函数和替换“<”和'>‘字符来清除输入的基本方法.不是一种强有力的方法,但这正是Checkmarx所认识到的。

代码语言:javascript
复制
def escape(s, quote=None):
    '''Replace special characters "&", "<" and ">" to HTML-safe sequences.
    If the optional flag quote is true, the quotation mark character (")
is also translated.'''
    s = s.replace("&", "&amp;") # Must be done first!
    s = s.replace("<", "&lt;")
    s = s.replace(">", "&gt;")
    if quote:
        s = s.replace('"', "&quot;")
    return s

来自此代码段post的信用

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69049419

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档