Îå´óÖøÃûµÄÃâ·ÑSQL×¢Èë©¶´É¨Ã蹤¾ß|Findnet.com.cn
´óÁ¿µÄÏÖ´úÆóÒµ²ÉÓÃWebÓ¦ÓóÌÐòÓëÆä¿Í»§ÎÞ·ìµØÁ¬½Óµ½Ò»Æð£¬µ«ÓÉÓÚ²»ÕýÈ·µÄ±àÂ룬Ôì³ÉÁËÐí¶à°²È«ÎÊÌâ¡£WebÓ¦ÓóÌÐòÖеÄ©¶´¿ÉʹºÚ¿Í»ñÈ¡¶ÔÃô¸ÐÐÅÏ¢£¨Èç¸öÈËÊý¾Ý¡¢µÇ¼ÐÅÏ¢µÈ£©µÄÖ±½Ó·ÃÎÊ¡£
WebÓ¦ÓóÌÐò×¼Ðí·ÃÎÊÕßÌá½»Êý¾Ý£¬²¢¿Éͨ¹ý»¥ÁªÍø´ÓÊý¾Ý¿âÖмìË÷Êý¾Ý¡£¶øÊý¾Ý¿âÊǶàÊýWebÓ¦ÓóÌÐòµÄÐÄÔà¡£Êý¾Ý¿âά³Ö×ÅWebÓ¦ÓóÌÐò½«Ìض¨ÄÚÈݽ»¸ø·ÃÎÊÕßµÄÊý¾Ý£¬WebÓ¦ÓóÌÐòÔÚ½«ÐÅÏ¢½»¸ø¿Í»§¡¢¹©Ó¦ÉÌʱ£¬Ò²´ÓÊý¾Ý¿âÈ¡µÃÊý¾Ý¡£
SQL×¢Èë¹¥»÷ÊÇ×îΪ³£¼ûµÄWebÓ¦ÓóÌÐò¹¥»÷¼¼Êõ£¬Ëü»áÊÔÍ¼ÈÆ¹ýSQLÃüÁî¡£ÔÚÓû§ÊäÈëûÓГ¾»»¯”ʱ£¬Èç¹ûÖ´ÐÐÕâÖÖÊäÈë±ã»á±íÏÖ³öÒ»ÖÖSQL×¢Èë©¶´¡£
¼ì²éSQL×¢Èë©¶´Ö÷񻃾¼°µ½Á½·½Ã棬һÊÇÉó¼ÆÓû§µÄWebÓ¦ÓóÌÐò£¬¶þÊÇͨ¹ýʹÓÃ×Ô¶¯»¯µÄSQL×¢ÈëɨÃèÆ÷Ö´ÐÐÉó¼ÇµÄ×î¼Ñ·½·¨¡£ÔÚ´Ë£¬±ÊÕßÂÞÁÐÁËһЩ¶ÔWebÓ¦ÓóÌÐò¿ª·¢ÈËÔ±ºÍרҵµÄ°²È«Éó¼ÆÈËÔ±ÓмÛÖµµÄSQL×¢ÈëɨÃè³ÌÐò¡£
Ò»¡¢SQLIer
SQLIer¿ÉÒÔÕÒµ½ÍøÕ¾ÉÏÒ»¸öÓÐSQL×¢Èë©¶´µÄURL£¬²¢¸ù¾ÝÓйØÐÅÏ¢À´Éú³ÉÀûÓÃSQL×¢Èë©¶´,µ«Ëü²»ÒªÇóÓû§µÄ½»»¥¡£Í¨¹ýÕâÖÖ·½·¨£¬Ëü¿ÉÒÔÉú³ÉÒ»¸öUNION SELECT²éѯ£¬½ø¶ø¿ÉÒÔÇ¿Á¦¹¥»÷Êý¾Ý¿â¿ÚÁî¡£Õâ¸ö³ÌÐòÔÚÀûÓ鶴ʱ²¢²»Ê¹ÓÃÒýºÅ£¬ÕâÒâζ×ÅËü¿ÉÊÊÓ¦¶àÖÖÍøÕ¾¡£
SQLIerͨ¹ý“true/false”SQL×¢Èë©¶´Ç¿Á¦¿ÚÁî¡£½èÖúÓÚ“true/false” SQL×¢Èë©¶´Ç¿Á¦¿ÚÁÓû§ÊÇÎÞ·¨´ÓÊý¾Ý¿â²éѯÊý¾ÝµÄ£¬Ö»Äܲéѯһ¸ö¿É·µ»Ø“true”¡¢“false”ÖµµÄÓï¾ä¡£
¾Ýͳ¼Æ£¬Ò»¸ö°Ë¸ö×Ö·ûµÄ¿ÚÁ°üÀ¨Ê®½øÖÆASCII´úÂëµÄÈκÎ×Ö·û£©½öÐèÒª´óÔ¼1·ÖÖÓ¼´¿ÉÆÆ½â¡£
ÆäʹÓÃÓï·¨ÈçÏ£¬sqlier [Ñ¡Ïî] [URL]
ÆäÑ¡ÏîÈçÏ£º
-c £º[Ö÷»ú] Çå³ýÖ÷»úµÄ©¶´ÀûÓÃÐÅÏ¢
-s £º[Ãë]ÔÚÍøÒ³ÇëÇóÖ®¼äµÈ´ýµÄÃëÊý
£u£º[Óû§Ãû]´ÓÊý¾Ý¿âÖÐÇ¿Á¦¹¥»÷µÄÓû§Ãû£¬ÓöººÅ¸ô¿ª¡£
£w£º[Ñ¡Ïî]½«£ÛÑ¡Ïî£Ý½»ÓÉwget
´ËÍ⣬´Ë³ÌÐò»¹Ö§³Ö²Â²â×Ö¶ÎÃû£¬ÓÐÈçϼ¸ÖÖÑ¡Ôñ£º
--table-names [±í¸ñÃû³Æ]£º¿É½øÐв²âµÄ±í¸ñÃû³Æ£¬ÓöººÅ¸ô¿ª¡£
--user-fields£ÛÓû§×ֶΣݣº¿É½øÐв²âµÄÓû§Ãû×Ö¶ÎÃû³Æ£¬ÓöººÅ¸ô¿ª¡£
--pass-fields [¿ÚÁî×Ö¶Î]£º¿É½øÐв²âµÄ¿ÚÁî×Ö¶ÎÃû³Æ£¬ÓöººÅ¸ô¿ª¡£
ÏÂÃæËµÒ»ÏÂÆä»ù±¾Ó÷¨£º
ÀýÈ磬¼ÙÉèÔÚÏÂÃæµÄURLÖÐÓÐÒ»¸öSQL×¢Èë©¶´£º
http://example.com/sqlihole.php?id=1
ÎÒÃÇÔËÐÐÏÂÃæÕâ¸öÃüÁ
sqlier -s 10 http://example.com/sqlihole.php?id=1´ÓÊý¾Ý¿âÖеõ½×ã¹»µÄÐÅÏ¢£¬ÒÔÀûÓÃÆä¿ÚÁÆäÖеÄÊý×Ö“10”±íʾҪÔÚÿ´Î²éѯ֮¼äµÈ
Ïà¹ØÎĵµ£º
1. Ö´ÐÐÒ»¸öSQL½Å±¾Îļþ
SQL>start file_name
SQL>@ file_name
2. ¶Ôµ±Ç°µÄÊäÈë½øÐбà¼
SQL>edit
3. ÖØÐÂÔËÐÐÉÏÒ»´ÎÔËÐеÄsqlÓï¾ä
SQL>/
4. ½«ÏÔʾµÄÄÚÈÝÊä³öµ½Ö¸¶¨Îļþ
SQL> SPOOL file_name
ÔÚÆÁÄ»ÉϵÄËùÓÐÄÚÈݶ¼°üº¬ÔÚ¸ÃÎļþÖУ¬°üÀ¨ÄãÊäÈëµÄsqlÓï¾ä¡£
5. ¹Ø±Õspool ......
×÷Ϊһ¸öB/S¿ª·¢Õߣ¬»ò¶à»òÉÙ¶¼µÃºÍÊý¾Ý¿â´ò½»µÀ£¬¶ø¶ÔÊý¾Ý¿âµÄ²Ù×÷¹é¸ùµ½µ×¶¼ÊÇqueryÓï¾ä£¬ËùÓе½×îºó¶¼ÊÇΪÁ˲éѯ£¬ÄÇô²é¿´sqlÐÔÄÜÓÖ³ÉÁËÎÒÃÇ¿ª·¢ÖеÄÒ»¼þȤÊ¡£ÏÂÃæ¼òµ¥½éÉÜÏÂsql_traceµÄʹÓãº
alter session set sql_trace =true ;--´ò¿ªsql_trace
select * from (select * from t order by id) where rownum <= ......
°´Ö¸¶¨´ÎÊýÖØ¸´×Ö·û±í´ïʽ¡£
Óï·¨
REPLICATE ( character_expression, integer_expression)
²ÎÊý
character_expression
×Ö·ûÊý¾ÝÐ͵Ä×ÖĸÊý×Ö±í´ïʽ£¬»òÕß¿ÉÒÔÒþʽת»»Îª nvarchar »ò ntext µÄÆäËûÊý¾ÝÀàÐ͵Ä×ÖĸÊý×Ö±í´ïʽ¡£
integer_expression
¿ÉÒÔÒþʽת»»Îª int µÄ±í´ïʽ¡£Èç¹û integer_expression Ϊ ......
ÔÚSQLÓï¾äÓÅ»¯¹ý³ÌÖУ¬ÎÒÃǾ³£»áÓõ½hint,ÏÖ×ܽáÒ»ÏÂÔÚSQLÓÅ»¯¹ý³ÌÖг£¼ûOracle
HINTµÄÓ÷¨£º
1. /*+ALL_ROWS*/
±íÃ÷¶ÔÓï¾ä¿éÑ¡Ôñ»ùÓÚ¿ªÏúµÄÓÅ»¯·½·¨,²¢»ñµÃ×î¼ÑÍÌÍÂÁ¿,ʹ×ÊÔ´ÏûºÄ×îС»¯.
ÀýÈç:
SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN from BSEMPMS WHERE EMP_NO='SCOTT'; 2. /*+FIRST_ROWS*/
±íÃ÷¶ÔÓï¾ä¿ ......