MySQL と multi-statement SQL injection

複文が利用できるデータベースの調査: SQL Serverが狙われるには理由がある - 徳丸浩の日記(2008-05-02) の件だけど、MySQLプロトコルは multi-statement をサポートしている。(参考: http://forge.mysql.com/wiki/MySQL_Internals_ClientServer_Protocol#Handshake_Initialization_Packet)

じゃあドライバレベルでどうなっているか、という話になるけど、Perl (DBD::mysql) だと、

mysql_multi_statements

    As of MySQL 4.1, support for multiple statements seperated by a semicolon (;) may be enabled by using this option. Enabling this option may cause problems if server-side prepared statements are also enabled.

DBD::mysql - MySQL driver for the Perl5 Database Interface (DBI) - metacpan.org

とかみたいな感じで、アプリケーション側から設定できたりする。