找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2510|回复: 0
打印 上一主题 下一主题

跨站点端口攻击 – XSPA(SSPA)

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-16 21:48:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。' f, @" d" }2 ]
XSPA(SSPA)是什么?, p+ K4 g1 ^9 P
如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。
' e% r2 M6 |) F, ?* i3 t9 oPHP fsockopen() function:; g2 C* S4 K' I1 Q. n; K. d4 X
<?php# G+ z- x$ @' U2 R& {+ @$ D
function GetFile($host,$port,$link)
( ~' A& d8 G0 N# G{
2 M4 h4 R, O, W; ]' T) U$fp = fsockopen($host, intval($port), $errno, $errstr, 30);
0 v$ e7 ^; |( x2 [7 `if (!$fp) {
# r2 E5 c  `, q  o! [& Y7 i$ Yecho “$errstr (error number $errno) \n”;0 T5 N* L& a) y" o4 j% d
} else {- {% f/ \' ]; {$ U! g
$out = “GET $link HTTP/1.1\r\n”;0 ^  `7 }9 Q) W
$out .= “Host: $host\r\n”;' B7 A% J9 A* f- D5 Y) d
$out .= “Connection: Close\r\n\r\n”;
- \" L7 [1 o, a7 Z$out .= “\r\n”;; T2 `6 Y2 N. g  g! t6 p' R
fwrite($fp, $out);
6 x2 ~. B& G# Z& f$ F) C$contents=”;. K1 A' U- p. @6 r
while (!feof($fp)) {
2 a5 Z3 }" Z( E& I8 ?  u8 T$contents.= fgets($fp, 1024);
7 x% O/ R7 S- J& ?/ F- \6 l}( l/ C3 g7 X8 A9 s2 g0 H+ m
fclose($fp);
4 P1 h  W# j5 x& l, K3 C% ^return $contents;
- ~/ S2 S  ]* Q- B}
) O8 h/ t1 F  a  \% j, Y. A}7 W; \% W2 a  t# g5 D3 T
?>
- C/ ^3 [- W2 w( m9 l3 J) i复制代码! o9 T$ s' T5 }# [! k, c
此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。2 W; R  m+ s2 {) |8 N
  PHP curl_exec() function:
' m! c7 S  E' O' N' |) M) d<?php
- j* E1 i2 N: _" A8 B1 ~8 ?5 m1 i5 ]if (isset($_POST['url']))
' f# S  I9 w+ O# ]! {1 k  ]{
% ?* s" o/ R7 R: c7 M/ l$link = $_POST['url'];# n& G: R) o5 C1 y4 X$ v- K: `
$curlobj = curl_init();
) F4 \/ l& A# e# |+ bcurl_setopt($curlobj, CURLOPT_POST, 0);
' H% l: \8 ^' t& B+ x! Icurl_setopt($curlobj,CURLOPT_URL,$link);
9 C# o1 c& u7 `' `! Vcurl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);
" Y, g2 _% R& P  F, `: f$result=curl_exec($curlobj);* m* t  T* l$ q  s" Z
curl_close($curlobj);0 Y8 ], X9 {9 H1 J+ t0 l
" N0 G9 r, s+ \0 i% n9 c9 E
$filename = ‘./curled/’.rand().’.txt’;2 a9 ]' R; ]4 c* M4 m
file_put_contents($filename, $result);5 F8 @4 v8 K. m
echo $result;# P4 o& l, u) \
}! Y3 ~+ a. E: w( u% X' u4 u
?>
) |- r+ B( C3 \% [% `复制代码
8 v& E% ^$ C* ?5 }& `这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。
  [3 _. P$ X. X/ d# X3 @在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:
8 H$ e+ H% K: L2 U1 U5 v$ k& C1 H1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,5 S# y9 C: A  J. a& y
2。开发弱势运行的程序在Intranet或本地Web服务器3 Z1 p8 w) [, `+ z5 ]* @
3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)) y3 W: h3 s2 v% ]* \, {) _
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为1 g6 K% x0 p# A3 U  {
5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表