基于bs4的防止xss攻击,过滤script标签

Posted cjj-zyj

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于bs4的防止xss攻击,过滤script标签相关的知识,希望对你有一定的参考价值。

from bs4 import BeautifulSoup


@login_required
def add_article(request):
    """
    后台管理的添加书籍视图函数
    :param request:
    :return:
    """
    if request.method == "POST":
        title = request.POST.get("title")
        content = request.POST.get("content")

        # 防止xss攻击,过滤script标签
        soup=BeautifulSoup(content,"html.parser")
        for tag in soup.find_all():

            print(tag.name)
            if tag.name=="script":
                tag.decompose()

        # 构建摘要数据,获取标签字符串的文本前150个符号

        desc=soup.text[0:150]+"..."

        models.Article.objects.create(title=title,desc=desc,content=str(soup), user=request.user)
        return redirect("/cn_backend/")

    return render(request, "backend/add_article.html")

 

以上是关于基于bs4的防止xss攻击,过滤script标签的主要内容,如果未能解决你的问题,请参考以下文章

Xss Csrf DDOS sql注入及防范

如何在 django 中防止 XSS 攻击

asp网站如何防止XSS攻击

SpringBoot使用mica-xss防止Xss攻击

特殊字符的过滤,防止xss攻击

sql注入,xss攻击,csrf(模拟请求)