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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-16 21:48:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。9 R0 s5 h$ g& n8 k7 P. e
XSPA(SSPA)是什么?( w3 y" Q( H% T  Y  h( r
如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。
' x: C& h7 m1 WPHP fsockopen() function:
& D) M; `5 E1 h" s5 h  p( l3 A<?php( Z" i% y5 C3 r" V. `
function GetFile($host,$port,$link)5 [9 Q; p  i' j( v; W1 D; U
{
+ v9 J6 d  a4 W% ?" K( N$ C: d/ [$fp = fsockopen($host, intval($port), $errno, $errstr, 30);
3 Q" _/ L0 w" {: \& Lif (!$fp) {
) j5 `7 H  w! v. O  V2 t# decho “$errstr (error number $errno) \n”;/ ]1 }$ d- d5 T& u4 `" p
} else {' x# g% y5 C- l; P6 D7 \! E
$out = “GET $link HTTP/1.1\r\n”;
% T# U  a8 C- i6 V5 t$out .= “Host: $host\r\n”;1 h3 U6 u' [) ~) ]% c/ K
$out .= “Connection: Close\r\n\r\n”;
2 H  o2 ]2 ^, k' X- m/ `$out .= “\r\n”;
: Z# K4 t/ o/ H- E- a% s. \fwrite($fp, $out);/ b6 t2 q% M* ~$ l( J
$contents=”;' {: l' c0 m8 [2 V* y8 O# q' X
while (!feof($fp)) {$ X: c. `# M+ u2 @; V
$contents.= fgets($fp, 1024);
% V# r) @" e2 b5 z) N* U# G}* E, g) Z3 w$ ^( m6 |8 J& o  }5 E; ]
fclose($fp);9 h5 |5 L3 x) N  q  W8 a
return $contents;+ E$ j4 ]5 L( b' X4 f
}
3 J; R7 w: O: u: ]/ c}/ Z. @# {( _. n3 e* t" [" J
?>' d/ n6 A5 e% N
复制代码
) b+ }: S+ ~, D" X- R此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
, J/ P& r9 h: F" b/ Z* |, E) }  PHP curl_exec() function:7 m7 N- ]. F1 e3 K9 ^% D
<?php
9 r# z. |! X. Fif (isset($_POST['url']))
9 T' E3 f+ Y1 l, e; a' o" R{) c2 A# I2 N5 `0 a) I: z! ]0 `3 ]
$link = $_POST['url'];. k% v+ {; S& V4 k1 T
$curlobj = curl_init();2 C$ k5 |5 }  {* N
curl_setopt($curlobj, CURLOPT_POST, 0);; ^4 m! L1 M$ U" e; l5 W- O
curl_setopt($curlobj,CURLOPT_URL,$link);
: \- f; E) @2 f# ^- q% u; Pcurl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);, e3 ~' L+ d+ J5 ^4 r2 p
$result=curl_exec($curlobj);$ a0 O6 R# J5 E# r+ Z# V
curl_close($curlobj);
# F: l0 ?  I. A: h% [! w1 b$ w
% I1 \! x( b6 p8 i: S1 {" G6 s/ q0 a$filename = ‘./curled/’.rand().’.txt’;
1 g6 Q# D8 Q$ z$ Y# Z6 v/ ^& r- @file_put_contents($filename, $result);8 K- s2 [6 p* `4 Q
echo $result;
- n# L# x4 _( `& S7 B' |- L% v% s}) _# D' j; w+ G* [, K
?>
4 |5 {2 W- P7 j% }7 ~复制代码; L7 A, \3 p2 H) M( I
这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。6 R3 B2 q( o* Z) u
在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:" W/ ~1 ]% a3 k$ K/ E- N4 Y# Q
1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,- N. M$ P% Y0 k
2。开发弱势运行的程序在Intranet或本地Web服务器
$ ]' `4 X; @' o3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)* X( k9 L  {& b. A* ^& c) @& x
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为
8 V1 r9 I6 s$ p) s3 s5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
回复

使用道具 举报

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

本版积分规则

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