Tôi đang sử dụng Flask, WTForms và thư viện MySQL của MySQL cho ứng dụng của tôi. Tôi nhận được dữ liệu bài đăng từ biến số request.form
. Tôi đặt nó vào một đối tượng dạng WTForms. Tôi gọi validate()
trên biểu mẫu đó và sau đó chèn dữ liệu biểu mẫu vào cơ sở dữ liệu MySQL bằng cách sử dụng OurSQL.Nếu tôi nhận được dữ liệu bài đăng với Flask, hãy đưa dữ liệu đó vào biểu mẫu WTForms và xác thực thành công, liệu có an toàn với các cuộc tấn công SQL injection không?
Nếu không thực hiện bất kỳ xử lý bổ sung nào, tôi có an toàn với việc tiêm SQL không? Phương pháp WTForms validate
có thoát không? Nếu không, tôi nên làm gì để thoát khỏi dữ liệu? Một ví dụ về những gì tôi đang làm trông như sau:
form = MyWTFFormsForm(request.form)
if form.validate():
cursor.execute("INSERT INTO mytable VALUES (?, ?, ?, ?, ?);",
(form.field1.data, form.field2.data, form.field3.data,
form.field4.data,
form.field5.data))