XSS & SQL注入(2)


你通过XSS截获输入,然后通过一个秘密文件把截获到的信息发送向你的站点.而这一切绝不是XSS所能实现的全部作用.XSS还能截获cookies.Cookies保存着有价值的信息,像用户名,密码等等.

~让我们开始吧…

我假定你知道html和javascript,而php知识也有帮助,但却不是必要的.让我们从这个php脚本开始.

XSS--跨站脚本
<html> 
<body> 
<form action="" method="GET"> 
<!-- 我使用的GET方法,因为当我们利用的时候更容易练习. --> 
Script: <input name="name" type="name"> 
<input type="submit" value="submit"> 
</form> 
</body> 
</html> 

<?php 
$name = $_GET['name']; 
echo("Hello $name"); 
?>



OK,我们应该都知道上面的代码有什么用...这是一个非常奇怪的脚本,没有一个人会在自己的站点上使用它(至少我没见过),但是它对初学者理解原理却真的很有用.来看看我输入后所得到的信息:

cnsst
"Hello cnsst!"

引号内的信息就是输出信息..注意看,现在我输入:
<script>alert(document.cookie)</script> 

那么它将会弹出document.cookie!所以它是易受XSS攻击的!

现在我们已经对XSS有了一点了解,那让我们理解它.首先,脚本做的是取得你的输入然后粘贴它.嗯...也就是说我们能输入任何数据.所以?等等...任何数据...好的,你想问客户端和服务器端分别有什么语言? 让我告诉你,基本上客户端语言是建立在你客户端浏览器之上的:JavaScript,html, VBScript等等...

服务器端语言在另一边,不是建立在你客户端之上的,而建立在服务器之上,有php,asp等等...

已有一些方法注入php,稍后我将说明.现在先想想这怎样才能对我们有帮助?注入javascript?简单.比如说你正在编写一个网站程序,由于是你的站点,所以你能使用所有你想使用的javascript(JS).因此其他任何人也可以,因为XSS允许你让网站运行你想要运行的任何脚本.

让我们看一个稍微复杂点的例子!

假设你已经输入了<script>alert(document.cookie)</script>,并且回显是这样的:
scriptalert(document.cookie)/script
或者可能是这样的:
scriptalertdocument.cookie/script

可以看出更难利用了...不过有很多方法使用XSS,这只是其中一种.而且是其中最烂的方法之一.你看到当中的"<>"都被空字符" "替换了.

让我们继续利用:
<<script>>alert(document.cookie)<</script>> 

你的输出将弹出document.cookie.

现在来看看更狠的:
<<script>>alert((document.cookie))<<//script>>


他们可能会替换所有的,或者只是"<>".所以如果一对不能得以执行,另一对就可以.现在,如果你看到:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/1413.html