.NET 使用HttpWebRequest 伪造Request.UrlReferrer

在网上找了许久关于伪造UrlReferrer地址资料,也许是搜索的关键词不对吧,仍是内容涉及到了什么敏感的东西,愣是没找到,换成自定义UrlReferrer也找不到。通过仔细研究,原来在.NET中要自定义一个UrlReferre,只要设置Referer这个属性便可,如下是具体实现的代码。

通常在.NET中都是使用HttpWebRequest 类进行HTTP请求处理,代码大体以下安全

string strUrl = "shiyousan.com";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strUrl);
/*
* 只要设置了Referer属性,向目标发送的UrlReferrer就是Referer的值
* 这里咱们伪造的Request.UrlReferrer是shiyousan.com
*/
request.Referer = "http://shiyousan.com";
request.Method = "GET";
request.KeepAlive = false;

 

其中HttpWebRequest.Referer 属性就是设置Request.UrlReferrer。

伪造Request.UrlReferrer或者应该说自定义Request.UrlReferrer的用途暂时还想不到哪儿经常使用到,目前惟一想到是在进行恶意攻击的时候会用到。

若是有在项目中须要测试程序的安全性,能够自定义Request.UrlReferrer进行测试。在项目中,有些功能须要验证用户的请求是否合法,以此来防护那些不经过网站来访问,而是经过外部程序进行恶意攻击、请求和盗取网站等非法请求。测试

另外项目中若是根据Request.UrlReferre来判断请求的URL是不是本网站地址是不许确的,毕竟咱们从上面已经了解了Request.UrlReferre是能够被伪造的网站

相关文章
相关标签/搜索