web-dev-qa-db-ja.com

この脆弱な脆弱性のあるWebアプリの例でSQLインジェクション(高レベル)を実行できないのはなぜですか?

$query = " $sql = select * from users where id = '$id' " 

しない$id=3' OR '1'='1クエリを中断しますか?誰かがそれを壊すことができないと主張したので、疑いが生じました。

2

高レベルは安全な実装であることを意図しており、破壊できないはずです

ソースコード を見ると、$idは数値です。

if (is_numeric($id)){

        $getid = "SELECT first_name, last_name FROM users WHERE user_id = '$id'";

したがって、idパラメーターを、パラメーターをデータ値コンテキストからクエリコンテキストに分割するものに変更することはできません。

2
SilverlightFox