【发布时间】:2020-03-27 13:39:58
【问题描述】:
我正在开发一个项目,我将在其中备份一些来自 Lotus Notes 的论坛和信息。我正在使用 Flask 运行后端。用代码扫描器 AppScreener 检查我的代码后,它说我的 SQL 代码有一些 SQL 注入漏洞,但我不明白为什么。
这是 AppScreener 结果:
for usuario in data:
print("Usuario", usuario)
status = usuario['estatus_usuario']
mail = usuario['email_usuario']
cursor = conn.cursor()
cursor.execute( "UPDATE administrador_usuarios SET estatus_usuario=%s
WHERE email=%s",(status,mail)) # ---> this is the line where according to AppScreener is the vulnerability present
conn.commit()
conn.close()
return json.dumps({"response":"ok"})
你能告诉我我能做什么吗?
【问题讨论】:
-
不要使用常规字符串插值构建查询。请参阅little johnny tables,以幽默的方式了解如何利用这一点。也可以here 寻求解决方案。
-
或搜索“SQL Injections”here,阅读那里的段落并查看上面的示例。
标签: python mysql python-3.x flask sql-injection