加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python应用程序中是否需要“cgi.escape”?

发布时间:2020-12-20 11:24:01 所属栏目:Python 来源:网络整理
导读:正在查看开发人员的代码.他在 Python应用程序中做过我以前从未见过的事情.他的背景是PHP,只是学习python,所以我不知道这是否可能是他习惯使用的不同系统架构的延续. 他告诉我,此代码的目的是防止用户通过代码插入攻击应用程序.我很确定这对我们的用例来说是
正在查看开发人员的代码.他在 Python应用程序中做过我以前从未见过的事情.他的背景是PHP,只是学习python,所以我不知道这是否可能是他习惯使用的不同系统架构的延续.

他告诉我,此代码的目的是防止用户通过代码插入攻击应用程序.我很确定这对我们的用例来说是不必要的,因为我们从不将数据作为代码进行评估,但我只是想确认并询问社区.

# Import library
from cgi import escape

# Get information that the client submitted
fname   = GET_request.get('fname',[''] )[0]

# Make sure client did not submit malicious code <- IS THIS NECESSARY?
if fname:
    fname = escape(fname)

>这在Python应用程序中通常是必需的吗?
>在什么情况下有必要?
>在什么情况下没有必要?

解决方法

如果用户输入进入数据库,或者其他任何地方可能被执行,那么代码注入可能是个问题.

This问题询问有关在PHP中阻止代码注入的方法,但原理是相同的 – 包含恶意代码的SQL查询被执行,可能会执行删除所有数据的操作.

escape函数转换<,>和&字符转换为html安全序列.

从这两个链接看起来它看起来不像escape()就足够了,但是需要做些什么来阻止恶意代码.当然,这可能会在您的代码中的其他地方得到处理.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读