コードレビュー中級約15分
レビュー: SQLインジェクション脆弱性
pythonsecuritysql-injectiondatabase
コードレビュー課題
以下のPythonコードをレビューしてください。
背景
このコードはユーザー管理システムの一部で、ユーザー情報の検索と認証を行います。SQLiteデータベースを使用しています。
レビュー観点
- セキュリティ上の問題
- SQLインジェクションの可能性
- 入力値の検証
- パスワード処理の安全性
あなたの回答
user_service.pypython
import sqlite3 def find_user(username): """Find user by username""" conn = sqlite3.connect('users.db') query = f"SELECT * FROM users WHERE username = '{username}'" cursor = conn.cursor() cursor.execute(query) return cursor.fetchone() def authenticate(username, password): """Authenticate user""" conn = sqlite3.connect('users.db') query = f"SELECT * FROM users WHERE username = '{username}' AND password = '{password}'" cursor = conn.cursor() cursor.execute(query) result = cursor.fetchone() return result is not None行番号をクリックしてコメントを追加(Shift+クリックで範囲選択)
最低100文字必要です
コメントを追加し、サマリーを100文字以上入力してください
模範解答
回答を送信するか、「表示する」をクリックすると模範解答が表示されます。