ASP.NetµÄvalidateRequest=false
validateRequest="false" Ö¸ÊÇ·ñÒªIISÑéÖ¤Ò³ÃæÌá½»µÄ·Ç·¨×Ö·û£¬±ÈÈ磺>,<ºÅµÈ,µ±ÎÒÃÇÐèÒª½«Ò»¶¨¸ñʽµÃhtml´úÂë»ñµÃ£¬²åÈëÊý¾Ý¿âʱºò£¬¾ÍÒª½«Õâ¸öÊôÐÔÉèÖÃΪfalse,ÀýÈçÄ㽫×ÖÌå¼Ó´ÖµÈ²Ù×÷ʱ¡£
ASP.Net 1.1ºóÒýÈëÁ˶ÔÌá½»±íµ¥×Ô¶¯¼ì²éÊÇ·ñ´æÔÚXSS(¿çÕ¾½Å±¾¹¥»÷)µÄÄÜÁ¦¡£µ±Óû§ÊÔͼÓÃÖ®ÀàµÄÊäÈëÓ°ÏìÒ³Ãæ·µ»Ø½á¹ûµÄʱºò£¬ASP.NetµÄÒýÇæ»áÒý·¢Ò»¸ö HttpRequestValidationExceptioin¡£Ä¬ÈÏÇé¿öÏ»᷵»ØÈçÏÂÎÄ×ÖµÄÒ³Ãæ£º
ÒÔÏÂÊÇÒýÓÃÆ¬¶Î£º
Server Error in '/YourApplicationPath' Application
A potentially dangerous Request.Form value was detected from the client
(txtName="<b>").
Description: Request Validation has detected a potentially dangerous client input value, and processing of the request has been aborted. This value may indicate an attempt to compromise the security of your application, such as a cross-site scripting attack. You can disable request validation by setting validateRequest=false in the Page direct ......
ÍøÂç´òÓ¡¸ÅÊö
¡ôB/S½á¹¹µ¼ÖÂÁËWebÓ¦ÓóÌÐòÖдòÓ¡µÄÌØÊâÐÔ¡£
¡ô³ÌÐòÔËÐÐÔÚä¯ÀÀÆ÷ÖУ¬´òÓ¡»úÔÚ±¾µØ£¬¶øÎļþÈ´¿ÉÄÜÔÚ·þÎñÆ÷ÉÏ£¬µ¼ÖÂÁË´òÓ¡¿ØÖƲ»ÊǺÜÁé»î¡£
¡ô¸ñʽÈçºÎ¿ØÖƺͶ¨ÖƵȣ¬ÊÇÎÒÃÇ¿ª·¢ÖпÉÄÜ»áÃæ¶ÔµÄÎÊÌâ¡£
´òÓ¡ÎĵµµÄÉú³É
1¡¢¿Í»§¶Ë½Å±¾·½Ê½
Ò»°ãÇé¿öÏ£¬Ö÷ҪʹÓÃJS¿ÉÒÔ·ÖÎöÔ´Ò³ÃæµÄÄÚÈÝ£¬½«Óû´òÓ¡µÄÒ³ÃæÔªËØÌáÈ¡³öÀ´£¬ÊµÏÖ´òÓ¡¡£Í¨¹ý·ÖÎöÔ´ÎĵµµÄÄÚÈÝ£¬¿ÉÒÔÉú³É´òÓ¡Ä¿±êÎĵµ¡£
Óŵ㣺¿Í»§¶Ë¶ÀÁ¢Íê³É´òÓ¡Ä¿±êÎĵµµÄÉú³É£¬¼õÇá·þÎñÆ÷¸ººÉ£»
ȱµã£ºÔ´ÎĵµµÄ·ÖÎö²Ù×÷¸´ÔÓ£¬²¢ÇÒÔ´ÎĵµÖеĴòÓ¡ÄÚÈÝÒªÓÐÔ¼¶¨¡£
2¡¢·þÎñÆ÷¶Ë³ÌÐò·½Ê½
ÀûÓúǫ́´úÂë´ÓÊý¾Ý¿âÖжÁÈ¡´òÓ¡Ô´£¬Éú³É´òÓ¡Ä¿±êÎĵµ¡£µ±µÄÒ³ÃæÉú³Éʱ£¬»¹Ó¦Êʵ±¿¼ÂÇʹÓÃCSSÀ´ÊµÏÖÇ¿ÖÆ·ÖÒ³¿ØÖÆ¡£
Óŵ㣺¿ÉÒÔÉú³ÉÄÚÈݷdz£·á¸»µÄ´òÓ¡Ä¿±êÎĵµ£¬Ä¿±êÎĵµµÄÄÚÈݵĿɿØÐÔÇ¿¡£ÓÉÓÚ´òÓ¡ÄÚÈÝÊÇ´ÓÊý¾Ý¿âÖлñÈ¡µÄ£¬ËùÒÔÉú³É²Ù×÷Ïà¶Ô¼òµ¥£»
ȱµã£º·þÎñÆ÷¶Ë¸ºÔرȽϴó¡£
Ò³ÃæÉèÖÃ
¡ôÒ³ÃæÉèÖÃÖ÷ÒªÊÇÖ¸ÉèÖôòÓ¡ÎĵµµÄÒ³±ß¾à¡¢Ò³Ã¼¡¢Ò³½Å¡¢Ö½ÕŵÈÄÚÈÝ¡£Ò³ÃæÉèÖý«Ö±½ÓÓ°Ïìµ½´òÓ¡Îĵµ°æÃæµÄÉú³ÉЧ¹û£¬ËùÒÔËüºÍ´òÓ¡ÎĵµµÄÉú³ÉÓÐ×ÅÃÜÇеĹØÏµ¡£±ÈÈ磺±í¸ñµÄÐÐÊý¡¢´óС¡¢Î»Öá¢×ÖÌåµÄ´óСµÈ¡£
ÏÖÓеļ¼ÊõÊÇÀûÓÃIE 6.0ÄÚÖõĴòÓ ......
Ïò»ùÓÚASP.NET MVCµÄWeb³ÌÐò·¢ËÍÇëÇóÊ×ÏÈ´«µÝÒ»¸ö UrlRoutingModule ¶ÔÏó£¬ÕâÊÇÒ»¸öHTTPÄ£¿é¡£Õâ¸öÄ£¿é½âÎöÇëÇó²¢Ö´ÐзÓÉÑ¡Ôñ¡£ UrlRoutingModule ¶ÔÏóÑ¡ÔñµÚÒ»¸öÆ¥Å䵱ǰÇëÇóµÄ·ÓɶÔÏó¡£(·ÓɶÔÏóÊÇʵÏÖ RouteBase µÄÀ࣬¶øÇÒͨ³£ÊÇ Route ÀàµÄÒ»¸öʵÀý¡£) Èç¹ûûÓÐÈκηÓÉÆ¥Å䣬 UrlRoutingModule ¶ÔÏó¾Íɶ¶¼²»×ö£¬ÈÃÇëÇ󻨵½Í¨³£µÄASP.NET»òIISÇëÇó´¦ÀíÖС£
ÓÉÑ¡ÔñµÄ Route ¶ÔÏó, UrlRoutingModule ¶ÔÏó»ñÈ¡ÓÉRoute ·Ö¸ôµÄ IRouteHandler ¶ÔÏó¡£ÔÚMVC³ÌÐòÖÐÕâͨ³£»áÊÇÒ»¸ö MvcRouteHandlerµÄʵÀý¡£ IRouteHandler ʵÀý´´½¨Ò»¸ö IHttpHandler ¶ÔÏó²¢½«Ëü´«µ½IHttpContext ¶ÔÏó¡£Ä¬ÈÏÇé¿öÏ£¬ÓÃÓÚMVCµÄ IHttpHandler ʵÀýÊÇ MvcHandler ¶ÔÏó¡£ MvcHandler ¶ÔÏó½ø¶øÑ¡Ôñ×îÖÕ´¦Àí³ÌÐòµÄ¿ØÖÆÆ÷¡£
×¢Òâ:
µ±ASP.NET MVC Web ³ÌÐòÔËÐÐÔÚ IIS 7.0ÏÂʱ, MVCÏîÄ¿²»ÒªÇóÎļþÃûÀ©Õ¹¡£È»¶ø£¬ÔÚ IIS 6.0ÏÂ,ÐèÒªÓ³Éä.mvcÎļþÃûÀ©Õ¹µ½ASP.NET ISAPI DLL¡£
Ä£¿éÓë´¦Àí³ÌÐòÊÇ ASP.NET MVC ¿ò¼ÜµÄÈë¿Úµã¡£ËüÃÇÖ´ÐÐÒÔϲÙ×÷:
ÔÚMVC Web³ÌÐòÖÐÑ¡ÔñÊʺϵĿØÖÆÆ÷¡£
»ñȡָ¶¨µÄ¿ØÖÆÆ÷ʵÀý¡£
µ÷ÓÿØÖÆÆ÷µÄ Execute ·½·¨¡£
ϱíÁгöÁËMVC WebÏîĿִÐеĽ׶Ρ£
½ ......
session
===================================
session¶ÔÏóÓÃÓÚ´æ´¢ÌØ¶¨µÄÓû§»á»°ËùÐèµÄÐÅÏ¢ ¡£ Session¶ÔÏóµÄÒýÈëÊÇΪÁËÃÖ²¹HTTPÐÒéµÄ²»×㣬HTTPÐÒéÊÇÒ»ÖÖÎÞ״̬µÄÐÒé¡£
¡¡¡¡SessionÖÐÎÄÊÇ“»á»°”µÄÒâ˼£¬ÔÚASPÖдú±íÁË·þÎñÆ÷Óë¿Í»§¶ËÖ®¼äµÄ“»á»°”¡£SessionµÄ×÷ÓÃʱ¼ä´ÓÓû§µ½´ïij¸öÌØ¶¨µÄWebÒ³¿ªÊ¼£¬µ½¸ÃÓû§À뿪WebÕ¾µã£¬»òÔÚ³ÌÐòÖÐÀûÓôúÂëÖÕֹij¸öSession½áÊø¡£ÒýÓÃSession Ôò¿ÉÒÔÈÃÒ»¸öÓû§·ÃÎʶà¸öÒ³ÃæÖ®¼äµÄÇл»Ò²»á±£Áô¸ÃÓû§µÄÐÅÏ¢¡£
¡¡¡¡ÏµÍ³ÎªÃ¿¸ö·ÃÎÊÕß¶¼ÉèÁ¢Ò»¸ö¶ÀÁ¢µÄSession¶ÔÏó£¬ÓÃÒÔ´æ´¢Session±äÁ¿£¬²¢ÇÒ¸÷¸ö·ÃÎÊÕßµÄSession¶ÔÏ󻥲»¸ÉÈÅ¡£
¡¡¡¡SessionÓëCookieÊǽôÃÜÏà¹ØµÄ¡£ SessionµÄʹÓÃÒªÇóÓû§ä¯ÀÀÆ÷±ØÐëÖ§³ÖCookie£¬Èç¹ûä¯ÀÀÆ÷²»Ö§³ÖʹÓÃCookie£¬»òÕßÉèÖÃΪ½ûÓÃCookie£¬ÄÇô½«²»ÄÜʹÓÃSession¡£
¡¡¡¡SessionÐÅÏ¢¶Ô¿Í»§À´Ëµ£¬²»Í¬µÄÓû§Óò»Í¬µÄSessionÐÅÏ¢À´¼Ç¼¡£µ±Óû§ÆôÓÃSessionʱ£¬ASP×Ô¶¯²úÉúÒ»¸öSessionID.ÔÚлỰ¿ªÊ¼Ê±£¬·þÎñÆ÷½«SessionIDµ±×öcookie´æ´¢ÔÚÓû§µÄä¯ÀÀÆ÷ÖС£
¡¡¡¡sessionÓï·¨£º
¡¡¡¡session.¼¯ºÏ∣ÊôÐÔ∣·½·¨
¡¡¡¡¾ÙÀý:
¡¡¡¡<html>
¡¡¡¡<head>
¡¡¡¡< ......
session
===================================
session¶ÔÏóÓÃÓÚ´æ´¢ÌØ¶¨µÄÓû§»á»°ËùÐèµÄÐÅÏ¢ ¡£ Session¶ÔÏóµÄÒýÈëÊÇΪÁËÃÖ²¹HTTPÐÒéµÄ²»×㣬HTTPÐÒéÊÇÒ»ÖÖÎÞ״̬µÄÐÒé¡£
¡¡¡¡SessionÖÐÎÄÊÇ“»á»°”µÄÒâ˼£¬ÔÚASPÖдú±íÁË·þÎñÆ÷Óë¿Í»§¶ËÖ®¼äµÄ“»á»°”¡£SessionµÄ×÷ÓÃʱ¼ä´ÓÓû§µ½´ïij¸öÌØ¶¨µÄWebÒ³¿ªÊ¼£¬µ½¸ÃÓû§À뿪WebÕ¾µã£¬»òÔÚ³ÌÐòÖÐÀûÓôúÂëÖÕֹij¸öSession½áÊø¡£ÒýÓÃSession Ôò¿ÉÒÔÈÃÒ»¸öÓû§·ÃÎʶà¸öÒ³ÃæÖ®¼äµÄÇл»Ò²»á±£Áô¸ÃÓû§µÄÐÅÏ¢¡£
¡¡¡¡ÏµÍ³ÎªÃ¿¸ö·ÃÎÊÕß¶¼ÉèÁ¢Ò»¸ö¶ÀÁ¢µÄSession¶ÔÏó£¬ÓÃÒÔ´æ´¢Session±äÁ¿£¬²¢ÇÒ¸÷¸ö·ÃÎÊÕßµÄSession¶ÔÏ󻥲»¸ÉÈÅ¡£
¡¡¡¡SessionÓëCookieÊǽôÃÜÏà¹ØµÄ¡£ SessionµÄʹÓÃÒªÇóÓû§ä¯ÀÀÆ÷±ØÐëÖ§³ÖCookie£¬Èç¹ûä¯ÀÀÆ÷²»Ö§³ÖʹÓÃCookie£¬»òÕßÉèÖÃΪ½ûÓÃCookie£¬ÄÇô½«²»ÄÜʹÓÃSession¡£
¡¡¡¡SessionÐÅÏ¢¶Ô¿Í»§À´Ëµ£¬²»Í¬µÄÓû§Óò»Í¬µÄSessionÐÅÏ¢À´¼Ç¼¡£µ±Óû§ÆôÓÃSessionʱ£¬ASP×Ô¶¯²úÉúÒ»¸öSessionID.ÔÚлỰ¿ªÊ¼Ê±£¬·þÎñÆ÷½«SessionIDµ±×öcookie´æ´¢ÔÚÓû§µÄä¯ÀÀÆ÷ÖС£
¡¡¡¡sessionÓï·¨£º
¡¡¡¡session.¼¯ºÏ∣ÊôÐÔ∣·½·¨
¡¡¡¡¾ÙÀý:
¡¡¡¡<html>
¡¡¡¡<head>
¡¡¡¡< ......
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using MSXML2;
using System.Text.RegularExpressions;
namespace EC
{
/// <summary>
/// Ô¶³ÌÎļþץȡÀà
/// </summary>
public class GetRemoteObj
{
#region ¹¹ÔìÓëÎö¹¹º¯Êý
public GetRemoteObj()
{
//
// TODO: ÔÚ´Ë´¦Ìí¼Ó¹¹Ô캯ÊýÂß¼
//
&nbs ......
×î½ü×öÒ»¸öÍøÕ¾£¬¸ÃÍøÕ¾ÐèÒªÌí¼Ó4000¶à ²úÆ·ÐÅÏ¢£¬Èç¹ûÓÃÈ˹¤·½·¨È¥±ðµÄÍøÕ¾copyÄÇÖÁÉÙÒª»¨·Ñ°ëÔÂʱ¼ä²ÅÄÜÍê³É£¬ËùÒÔÎÒ¸ö°ì·¨Ê¹ÓÃc#×÷³öÀ´ÁËÒ»¸öÍøÒ³Êý¾Ý²É¼¯Èí¼þ
Ïêϸ³ö´¦²Î¿¼£ºhttp://www.jb51.net/article/21468.htm
//ÌáÈ¡²úÆ·ÁбíÒ³ÖвúÆ·×îÖÕÒ³µÄÍøÒ³
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "")
{
MessageBox.Show("ÍøÖ·ºÍÓòÃû²»ÄÜΪ¿Õ£¡", "ÐÅÏ¢Ìáʾ", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
try
{
string Html = inc.GetHtml("http://study.pctoday.net.cn");
//ArrayList al = inc.GetMatchesStr(Html, "<a[^>]*?>.*?</a>");
ArrayList al = inc.GetMatchesStr(Html, @"href\s*=\s*(?:[\'\""\s](?<1>[^\""\']*)[\'\""])");//ÌáÈ¡Á´½Ó
" title="Replica Watches:">Replica Watches Buy Full Quality Popular Luxury Watches at Amazing Price, Your One Stop Discount Swiss Watches StoreExclusive Replica Rolex Watches, Tag Heuer Watches Replica, Cartier Watches online Sale!
StringBuilder ......
×î½ü×öÒ»¸öÍøÕ¾£¬¸ÃÍøÕ¾ÐèÒªÌí¼Ó4000¶à ²úÆ·ÐÅÏ¢£¬Èç¹ûÓÃÈ˹¤·½·¨È¥±ðµÄÍøÕ¾copyÄÇÖÁÉÙÒª»¨·Ñ°ëÔÂʱ¼ä²ÅÄÜÍê³É£¬ËùÒÔÎÒ¸ö°ì·¨Ê¹ÓÃc#×÷³öÀ´ÁËÒ»¸öÍøÒ³Êý¾Ý²É¼¯Èí¼þ
Ïêϸ³ö´¦²Î¿¼£ºhttp://www.jb51.net/article/21468.htm
//ÌáÈ¡²úÆ·ÁбíÒ³ÖвúÆ·×îÖÕÒ³µÄÍøÒ³
private void button1_Click(object sender, EventArgs e)
{
if (textBox1.Text.Trim() == "" || textBox2.Text.Trim() == "")
{
MessageBox.Show("ÍøÖ·ºÍÓòÃû²»ÄÜΪ¿Õ£¡", "ÐÅÏ¢Ìáʾ", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
try
{
string Html = inc.GetHtml("http://study.pctoday.net.cn");
//ArrayList al = inc.GetMatchesStr(Html, "<a[^>]*?>.*?</a>");
ArrayList al = inc.GetMatchesStr(Html, @"href\s*=\s*(?:[\'\""\s](?<1>[^\""\']*)[\'\""])");//ÌáÈ¡Á´½Ó
" title="Replica Watches:">Replica Watches Buy Full Quality Popular Luxury Watches at Amazing Price, Your One Stop Discount Swiss Watches StoreExclusive Replica Rolex Watches, Tag Heuer Watches Replica, Cartier Watches online Sale!
StringBuilder ......