д¸øASP.NET³ÌÐòÔ±£ºÍøÕ¾ÖеݲȫÎÊÌâ
×öÏîÄ¿Ò²ÓÐÒ»¶Îʱ¼äÁË£¬ÔÚ³ÌÐòÖÐÒ²Óöµ½ºÜ¶à°²È«·½ÃæµÄÎÊÌâ¡£Ò²¸Ã×ܽáÒ»ÏÂÁË¡£Õâ¸öÏîÄ¿ÊÇÒ»¸ö CMS ϵͳ¡£ÏµÍ³ÊÇÓà ASP.NET ×öµÄ¡£¿ª·¢µÄʱºò·¢ÏÖ΢Èí×öÁ˺ܶలȫ´ëÊ©£¬Ö»ÊÇÓÐЩÐÂÊÖ³ÌÐòÔ±²»ÖªµÀÔõô¿ªÆô¡£ÏÂÃæÎÒͨ¹ý¼¸¸ö·½Ãæ¼òµ¥½éÉÜ£º
¡¡¡¡1£ºSQL ×¢Èë
¡¡¡¡2£ºXSS
¡¡¡¡3£ºCSRF
¡¡¡¡4£ºÎļþÉÏ´«
SQL ×¢Èë
¡¡¡¡ÒýÆðÔÒò£ºÆäʵÏÖÔںܶàÍøÕ¾Öж¼´æÔÚÕâÖÖÎÊÌâ¡£¾ÍÊdzÌÐòÖÐÖ±½Ó½øÐÐ SQL Óï¾äÆ´½Ó¡£¿ÉÄÜÓÐЩ¶ÁÕß²»Ì«Ã÷°×¡£ÏÂÃæͨ¹ýÒ»¸öµÇ¼ʱ¶ÔÓû§ÑéÖ¤À´ËµÃ÷£º
¡¡¡¡Ñé֤ʱµÄ SQL Óï¾ä£º
µÇ¼ÑéÖ¤ SQL Óï¾ä(Ôʼ)
SELECT * from WHERE user = '" + txtUsername.Text + "' AND pwd = '" + txtPwd.Text + "'
¡¡¡¡ÕâÊÇÒ»¶Î´ÓÊý¾Ý¿âÖвéѯÓû§£¬¶ÔÓû§Ãû£¬ÃÜÂëÑéÖ¤¡£
¡¡¡¡¿´ÉÏÈ¥ºÃÏóûÓÐʲôÎÊÌ⣬µ«ÊÇʵ¼ÊÕâÀïÃædz²Ø×ÅÎÊÌ⣬Óû§Ãû£ºadmin ÃÜÂ룺admin
µÇ¼ÑéÖ¤ SQL Óï¾ä(Õæʵ)
SELECT * from WHERE user = 'admin' AND pwd = 'admin'
¡¡¡¡Èç¹ûÓû§ºÍÃÜÂëÕýÈ·¾Í¿ÉͨÑéÖ¤¡£Èç¹ûÎÒÓû§Ãû£ºasdf' OR 1 = 1 -- ÃÜÂ룺ËæÒâÊäÈë.
¡¡¡¡ÎÒÃÇÔÙÀ´¿´Óï¾ä£º
µÇ¼ÑéÖ¤ SQL Óï¾ä(×¢Èë)
SELECT * from WHERE user = 'asdf' OR 1 = 1 -- and pwd=''
¡¡¡¡Ö´Ðк󿴵½Ê²Ã´£¿ÊDz»ÊÇËùÓмǼ£¬Èç¹û³ÌÐòÖ»ÊǼòµ¥ÅжϷµ»ØµÄÌõÊý£¬ÕâÖÖ·½·¨¾Í¿ÉÒÔͨÑéÖ¤¡£
¡¡¡¡Èç¹ûÖ´ÐÐÓï¾äÊÇ SA Óû§£¬ÔÙͨ¹ý xp_cmdshell Ìí¼Óϵͳ¹ÜÀíÔ±£¬ÄÇôÕâ¸ö·þÎñÆ÷¾Í±»ÄÃÏÂÁË¡£
¡¡¡¡½â¾ö·½·¨£º
¡¡¡¡a. Õâ¸öÎÊÌâÖ÷ÒªÊÇÓÉÓÚ´«ÈëÌØÊâ×Ö·ûÒýÆðµÄÎÒÃÇ¿ÉÒÔÔÚ¶ÔÊäÈëµÄÓû§ÃûÃÜÂë½øÈë¹ýÂËÌØÊâ×Ö·û´¦Àí¡£
¡¡¡¡b. ʹÓô洢¹ý³Ìͨ¹ý´«Èë²ÎÊýµÄ·½·¨¿É½â¾ö´ËÀàÎÊÌ⣨עÒ⣺ÔÚ´æ´¢¹ý³ÌÖв»¿ÉʹÓÃÆ´½ÓʵÏÖ£¬²»È»ºÍûÓô洢¹ýºÍÊÇÒ»ÑùµÄ£©¡£
XSS£¨¿çÕ¾½Å±¾¹¥»÷£©
¡¡¡¡ÒýÆðÔÒò£ºÕâ¸öÒ²ÓÐʱ±»ÈËÃdzÆ×÷ HTML ×¢È룬ºÍ SQL ×¢ÈëÔÀíÏàËÆ£¬Ò²ÊÇûÓÐÌØÊâ×Ö·û½øÐд¦Àí¡£ÊÇÓû§¿ÉÒÔÌá½» HTML ±êÇ©¶ÔÍøÕ¾½øÐÐÖØÐµĹ¹Ôì¡£ÆäʵÔÚĬÈϵÄÇé¿öÏÂÔÚ ASP.NET ÍøÒ³ÖÐÊÇ¿ªÆô validateRequest ÊôÐԵģ¬ËùÓÐ HTML ±êÇ©ºó»á.NET¶¼»áÑéÖ¤£º
¡¡¡¡µ«ÕâÑùÖ±½Ó°ÑÒì³£Å׸øÓû§£¬¶àÉÙÓû§ÌåÑé¾Í²»ºÃ¡£
¡¡¡¡½â¾ö·½·¨£º
¡¡¡¡a. ͨ¹ýÔÚ Page Ö¸Áî»ò ÅäÖýÚÖÐÉèÖà validateReque
Ïà¹ØÎĵµ£º
ÏÂÃæ½éÉÜÈçºÎ½øÐÐASP.NETÖÐÍøÕ¾·ÃÎÊÁ¿µÄͳ¼Æ¡£
Ò»¡¢½¨Á¢Ò»¸öÊý¾Ý±íIPStatÓÃÓÚ´æ·ÅÓû§ÐÅÏ¢
ÎÒÔÚIPStat±íÖдæ·ÅµÄÓû§ÐÅÏ¢Ö»°üÀ¨µÇ¼Óû§µÄIP£¨IP_Address£©£¬IPÀ´Ô´£¨IP_Src£©ºÍµÇ¼ʱ¼ä£¨IP_DateTime£©£¬Ð©±íµÄÐÅÏ¢±¾ÈËÖ»±£´æÒ»ÌìµÄÐÅÏ¢£¬Èç¹ûҪͳ¼Æÿ¸öÔµÄÐÅÏ¢ÔòÒª±£´æÒ»¸öÔ¡£
¶þ¡¢ÔÚGlobal.asaxÖлñÈ¡Óû§ÐÅÏ¢ ......
<%=%>°ó¶¨CSÎļþÖеıäÁ¿£¬ÓÐÖµµÄÊôÐÔ£¬»òÕßÓзµ»ØÖµµÄ·½·¨£¬
<%#%>Ò»°ãʽ·ÅÔÚÊý¾Ý¿Ø¼þÖаó¶¨Êý¾ÝÔ´±íÖеÄ×Ö¶Î
<%=%><%#%>Çø±ð:
Ç°Õß ÊÇÔÚÒ³ÃæÖ®ÖÐʹÓÃ.ÊôÓÚÒ»¶Î´úÂë.ÓÐ=ºÅµÄ¾ÍÏ൱ÓÚresponse.write()Õ⹦ÄÜ.ºÍaspÒ»Ñù.
ºóÕß ÊÇÔÚÒ³ÃæÖеķþÎñÆ÷Êý¾Ý¿Ø¼þÖаó¶¨Êý¾ÝÔ´µÄ×ֶΠ......
Èç¹ûÄãÒѾÓн϶àµÄÃæÏò¶ÔÏ󿪷¢¾Ñ飬Ìø¹ýÒÔÏÂÕâÁ½²½£º
µÚÒ»²½¡¡ÕÆÎÕÒ»ÃÅ¡£NETÃæÏò¶ÔÏóÓïÑÔ£¬C#»òVB.NET ÎÒÇ¿ÁÒ·´¶ÔÔÚûϵͳѧ¹ýÒ»ÃÅÃæÏò¶ÔÏó£¨OO£©ÓïÑÔµÄÇ°ÌáÏÂȥѧASP.NET¡£ ASP.NETÊÇÒ»¸öÈ«ÃæÏò¶ÔÏóµÄ¼¼Êõ£¬²»¶®OO£¬ÄǾø¶Ôѧ²»ÏÂÈ¥£¡
µÚ¶þ²½¡¡¶Ô¡£NET FrameworkÀà¿âÓÐÒ»¶¨µÄÁ˽⠿ÉÒÔͨ¹ý¿ª·¢Windows FormÓ¦ÓóÌÐòÀ´Ñ ......
<mce:script language=javascript><!--
//×¢²áÃüÃû¿Õ¼ä
Type.registerNamespace("Demo");
Demo.Message=function(content,publishTime)
{
this._content = content;
this._publishTime = publishTime;
}
Dem ......