д¸ø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 Ö¸Áî»ò ÅäÖýÚÖÐÉèÖà validateRequest="fa
Ïà¹ØÎĵµ£º
1.¶ÔÏó³õʼ»¯£¨OnInit·½·¨£©
Ò³ÃæÖеĿؼþ(°üÀ¨Ò³Ãæ±¾Éí)¶¼ÊÇÔÚËüÃÇ×î³õµÄFORMÖб»Ê״γõʼ»¯µÄ¡£Í¨¹ýÔÚASPXÒ³ÃæµÄºǫ́´úÂëÎļþµÄ¹¹ÔìÆ÷ÖÐÉùÃ÷ÄãµÄ¶ÔÏó£¬Ò³Ã潫֪µÀ¶ÔÏóµÄÀàÐÍ£¬²¢ÖªµÀÐèÒª´´½¨¶àÉÙ¸öÕâÑùµÄ¶ÔÏó¡£Ò»µ©ÄãÔÚ¹¹ÔìÆ÷ÖÐÉùÃ÷ÁËÄãµÄ¿Ø¼þ£¬Äã¾Í¿ÉÒÔÔÚËüµÄÈκÎ×ÓÀ࣬·½·¨£¬Ê¼þ»òÕßÊôÐÔÖзà ......
1.ÈçºÎÔÚJavaScript·ÃÎÊC#º¯Êý?
·½·¨Ò»£º1¡¢Ê×ÏȽ¨Á¢Ò»¸ö°´Å¥£¬ÔÚºǫ́½«µ÷Óûò´¦ÀíµÄÄÚÈÝдÈëbutton_clickÖÐ;
2¡¢ÔÚǰ̨дһ¸öjsº¯Êý£¬ÄÚÈÝΪdocument.getElementById("btn1").click();
3¡¢ÔÚǰ̨»òºóÌ ......
¹ØÓÚÒ³Ãæ´«ÖµµÄ·½·¨£¬Òý·¢Á˺ܶàÌÖÂÛ¡£1. ʹÓÃQueryString±äÁ¿¡£2. ʹÓÃApplication ¶ÔÏó±äÁ¿¡£4. ʹÓÃCookie¶ÔÏó±äÁ¿¡£Õâ¸ö²Å¿ÉÒÔ˵ÊÇÃæÏó¶ÔÏ󿪷¢ËùʹÓõķ½·¨£¬ÆäʹÓÃServer.Transfer·½·¨°ÑÁ÷³Ì´Óµ±Ç°Ò³ÃæÒýµ¼¡£
¡¡¡¡1. ʹÓÃQueryString±äÁ¿
¡¡¡¡QueryStringÊÇÒ»Öַdz£¼òµ¥µÄ´«Öµ·½Ê½£¬Ëû¿ÉÒÔ½«´«Ë͵ÄÖµÏÔʾÔÚä¯ ......
ÔÚ±¾ÆªÎļþÖУ¬ÎÒÃǽ«ÌÖÂÛ±à³ÌÈËÔ±ÔÚʹÓÃASP.NET¿ª·¢Ó¦ÓóÌÐòʱÐèҪעÒâµÄ10¸ö¼¼ÇÉ£¬ÕâЩ¼¼ÇÉÉæ¼°´ÓȱʡµÄ¿Ø¼þ¡¢±íµ¥ÃûµÄ¸Ä±äµ½StringBuilderÀàµÄʹÓã¬ÓÐÖúÓÚ±à³ÌÈËÔ±Äܹ»¾¡¿ìµØÊÊÓ¦.NET»·¾³¡£ 1¡¢ÔÚʹÓÃVisual Studio .NETʱ£¬³ýÖ±½Ó»ò·ÇÒýÓõĶÔÏóÍ⣬²»ÒªÊ¹ÓÃȱʡµÄÃû×Ö¡£
.NET´øÀ´µÄºÃ´¦Ö®Ò»ÊÇËùÓеÄÔ´´úÂëºÍÅäÖÃÎ ......
Èç¹ûÄãÒѾÓн϶àµÄÃæÏò¶ÔÏ󿪷¢¾Ñ飬Ìø¹ýÒÔÏÂÕâÁ½²½£º
µÚÒ»²½ ÕÆÎÕÒ»ÃÅ.NETÃæÏò¶ÔÏóÓïÑÔ£¬C££»òVB.NET¡£
ÎÒÇ¿ÁÒ·´¶ÔÔÚûϵͳѧ¹ýÒ»ÃÅÃæÏò¶ÔÏóÓïÑÔµÄÇ°ÌáÏÂȥѧASP.NET¡£
ASP.NETÊÇÒ»¸öÈ«ÃæÏò¶ÔÏóµÄ¼¼Êõ£¬²»¶®ÃæÏò¶ÔÏó£¬ÄǾø¶Ôѧ²»ÏÂÈ¥£¡
µÚ¶þ²½ ¶Ô.NET FrameworkÀà¿âÓÐÒ»¶¨µÄÁ˽â
¿ÉÒÔͨ¹ý¿ª·¢Windows FormÓ¦Óà ......