Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- #
- # inyección de código
- # Nombre: Carlos', 30); DELETE FROM personas; --
- # Edad: 30
- import sqlite3
- conn = sqlite3.connect("base.sqlite")
- cursor = conn.cursor()
- nombre = input("Ingrese un nombre: ")
- edad = int(input("Ingrese una edad: "))
- """
- ## forma correcta SEGURA, EVITA INYECCION DE CODIGO SQL
- try:
- cursor.execute("INSERT INTO personas VALUES(?,?)",(nombre,edad))
- except sqlite3.OperationalError:
- print("La consulta no se ejecutó correctamente")
- conn.commit()
- print("Todo OK")
- """
- ## forma insegura
- try:
- cursor.executescript(f"INSERT INTO personas VALUES('{nombre}',{edad})")
- except sqlite3.OperationalError:
- print("La consulta no se ejecutó correctamente")
- print("Todo OK")
- conn.commit()
- # inyeccion:
- # "INSERT INTO personas VALUES('Carlos', 30); DELETE FROM personas; --',11)"
- conn.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement