-4

現在、mysqlクエリを使用して、ユーザーが存在するかどうかを確認し、存在する場合はページをリダイレクトしています。エコーアウトされるものはなく、リダイレクトにはクエリからのデータは含まれていません。どこにリスクがあるのか​​わからないので、わからないことがないようにしたいと思います。ありがとう!

if (mysql_num_rows(mysql_query("SELECT * FROM performers WHERE username='".$_GET['username']."' AND acct_type='group'")) > 0) {
        header('Location: gprofile.php?username='.$_GET['username']);
        exit();
    } 
4

2 に答える 2

5

はい、間違いなく懸念事項です。ハッカーが自分のユーザー名が正しいと判断したbob';drop table performers;--場合は、問題が発生しています。

常に信頼できないデータ(または安全のために任意のデータ)を常に使用しますmysql_real_escape_string()

于 2013-03-23T22:30:00.557 に答える
2

さらに、明白なSQLインジェクションの脆弱性(DuncanNZによってすでに説明されています)には、CSRFの脆弱性もあります。

于 2013-03-23T22:35:25.240 に答える