completed
Pasted diff
featherless smoke
2 findings: 2 security. 2 rated high or critical.
The code constructs an SQL query using string interpolation, which can be exploited by an attacker to inject malicious SQL code.
Flagged code
query = f"SELECT * FROM users WHERE id = '{user_id}'"Suggested fix
Use parameterized queries to prevent SQL injection. For example, with a library like `sqlite3`:
query = "SELECT * FROM users WHERE id = ?"
cursor.execute(query, (user_id,))Test stub
def test_sql_injection_prevention():
user_id = "1' OR '1'='1"
# Assuming a mock cursor object
cursor = MockCursor()
get(user_id)
assert cursor.executed_query == "SELECT * FROM users WHERE id = ?" and cursor.executed_params == (user_id,)