SQLite 注入
注入风险与其它数据库一致:永远用参数绑定(? 占位符)而不是字符串拼接。
Key PointsSQLite,注入,参数绑定,安全
讲解
注入风险与其它数据库一致:永远用参数绑定(? 占位符)而不是字符串拼接。
示例
Python
-- Python 示例:安全写法
cur.execute("SELECT * FROM users WHERE name = ?", (user_input,))
-- 危险写法(禁止)
-- cur.execute("SELECT * FROM users WHERE name = '" + user_input + "'")讲解
注入风险与其它数据库一致:永远用参数绑定(? 占位符)而不是字符串拼接。
示例
Python
-- Python 示例:安全写法
cur.execute("SELECT * FROM users WHERE name = ?", (user_input,))
-- 危险写法(禁止)
-- cur.execute("SELECT * FROM users WHERE name = '" + user_input + "'")