Twi*_*per 14 asp.net iis protection reverse-proxy
我有一个网站"www.website.com".
最近我发现有人在我的网站前设置了一个反向代理,其中有一个几乎相同的网址"www.website1.com".
我担心那些通过反向代理访问我网站的用户.他们登录时可能会记录他们的用户名和密码.
有没有办法让我的Web服务器拒绝反向代理?
例如,我在"www.stackoverflow.com"前面使用网址"www.fakestackoverflow.com"设置了反向代理.因此,每当我在网络浏览器地址栏中输入"www.fakestackoverflow.com"时,我都会被反向代理重定向到"www.stackoverflow.com".然后我注意到我的地址栏中的网址已更改为"www.stackoverflow.com",表示我不再通过反向代理.
"www.stackoverflow.com"一定检测到我从另一个网址进入网站,然后通过实际网址将我重定向到网站.
我如何在ASP.NET Web应用程序中执行类似的操作?
还询问服务器故障.
jmz*_*jmz 11
首先,使用JavaScript来嗅探document.location.href并将其与您的域匹配:
var MyHostName = "www.mydomain.com";
if (0 == document.location.href.indexOf("https://"))
{
MyHostName = "https://" + MyHostName + "/";
if (0 != document.location.href.indexOf(MyHostName)) {
var new_location = document.location.href.replace(/https:\/\/[^\/]+\//, MyHostName);
if(new_location != document.location.href)
document.location.replace(new_location);
}
}
else
{
MyHostName = "http://" + MyHostName + "/";
if (0 != document.location.href.indexOf(MyHostName)) {
var new_location = document.location.href.replace(/http:\/\/[^\/]+\//, MyHostName);
if(new_location != document.location.href)
document.location.replace(new_location);
}
}
Run Code Online (Sandbox Code Playgroud)
第二步:将init脚本写入所有ASP页面,以检查远程用户IP地址是否与反向代理的地址匹配.如果匹配,则重定向到tinyurl链接,该链接重定向回您的真实域.使用tinyurl或其他重定向服务来反击反向代理的URL重写.
第三步:编写计划任务以对假域进行DNS查找,并更新步骤2中init脚本使用的配置文件.注意:不要在ASP中进行DNS查找,因为DNS查找可能会停顿5秒钟.这为您的网站打开了一扇门.此外,不要仅仅基于IP地址阻止,因为它很容易重新定位.
编辑:如果您被认为是代理运营商窃取用户密码和用户名,您应该将所有服务的用户记录到代理的IP地址,并禁用他们的帐户.然后通过拼写错误的域名向他们发送电子邮件,说明他们是网络钓鱼攻击的受害者,并请求他们更改密码.
| 归档时间: |
|
| 查看次数: |
4958 次 |
| 最近记录: |