Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sql injection lek #3

Open
milovanderlinden opened this issue Jun 7, 2011 · 1 comment
Open

sql injection lek #3

milovanderlinden opened this issue Jun 7, 2011 · 1 comment

Comments

@milovanderlinden
Copy link
Contributor

De functies voor het lezen en schrijven naar de database zijn niet beveiligd tegen SQL injecties. Theoretisch zou het kunnen dat iemand een gemanipuleerd BAG extract probeert te verwerken dat ondertussen het datamodel kapot maakt.

Zie documentatie voor psycopg2 http://initd.org/psycopg/docs/usage.html

Warning
Never, never, NEVER use Python string concatenation (+) or string parameters interpolation (%) to pass variables to a SQL query string. Not even at gunpoint.
The correct way to pass variables in a SQL command is using the second argument of the execute() method:

SQL = "INSERT INTO authors (name) VALUES (%s);" # Notice: no quotes
data = ("O'Reilly", )
cur.execute(SQL, data) # Notice: no % operator

@milovanderlinden
Copy link
Contributor Author

Ik ben bezig met testen. De eerste stappen ter verbetering zijn hier te zien:

https://github.com/opengeogroep/BAG-Extract/commit/ea78a4a99d248f9abccd0ac49f3a6927e98815ff#diff-0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant