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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-16 21:48:30 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。$ g+ O' t8 }. T1 W, [% u- g( }
XSPA(SSPA)是什么?, ]* e! O6 R( O5 i; ]
如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。/ }. g7 z7 Y6 G
PHP fsockopen() function:3 `7 b# V, a& i/ Z2 e
<?php" o6 H# P$ ^0 t. x5 e# P+ W
function GetFile($host,$port,$link)
0 H" y/ v  a2 D. p. c5 y{6 D" a8 r) z4 x' g" l* H0 X
$fp = fsockopen($host, intval($port), $errno, $errstr, 30);
% V- T, v  h/ V  `/ J, N, e- bif (!$fp) { # A: a* Z7 i! m6 q' p/ ]
echo “$errstr (error number $errno) \n”;
5 J  ?, O/ W) w4 W+ g# O1 j" c7 X5 D} else {
. j6 t! _/ c* y6 Z0 Y" h$out = “GET $link HTTP/1.1\r\n”;
' j5 }$ ]1 {) N2 I+ e" ?$out .= “Host: $host\r\n”;
9 |" g5 W8 h5 @" ~  h2 g$out .= “Connection: Close\r\n\r\n”;
6 H, h% j0 N$ ]* b0 |$out .= “\r\n”;
5 `8 {' y( O  t% P) C$ xfwrite($fp, $out);
: {- L( N$ ^2 _1 x/ M$contents=”;
# @5 X1 w" w* p( W  qwhile (!feof($fp)) {
1 B0 o* Y3 [8 e6 n/ L# ?$contents.= fgets($fp, 1024);* e& V  D3 o9 q' ^6 |& i7 z
}
) P% ~6 J( k7 _" Pfclose($fp);4 c5 R+ Z7 j* k' M( K
return $contents;
  h# E3 a! _  F. B4 Y! l! j}" W  p& p' n: D1 r
}
2 {% {$ Y  Z! l9 @3 V?>. O7 J" q. W+ N5 C7 x1 o0 f. D; |
复制代码5 Q. W7 o' V. X6 z( P
此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
1 p* d4 ~8 |' t4 E, H2 S* X  PHP curl_exec() function:
, G2 c& `3 {  n- I6 y<?php
; o; q, X' k1 B9 M  ^' bif (isset($_POST['url']))
3 g) y* ]4 z. j! E. H5 F$ F{4 ^  K- R' V3 X9 [" h: \) W5 n
$link = $_POST['url'];; A( W  Q9 G1 _" d
$curlobj = curl_init();
& \( w5 x8 P0 J5 Kcurl_setopt($curlobj, CURLOPT_POST, 0);
( T( [+ v7 z$ tcurl_setopt($curlobj,CURLOPT_URL,$link);
( _& `$ p" I& A- Icurl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);
3 I+ O) m1 `0 [+ @6 C5 P$result=curl_exec($curlobj);; U8 a. V4 H! C" s
curl_close($curlobj);
) Z4 g, I8 G! ]3 J# G) r
3 |4 ?  N4 G7 C  X& N5 k+ I) ?$filename = ‘./curled/’.rand().’.txt’;
$ W  S! x3 p& H7 ]+ X  p6 ~1 Pfile_put_contents($filename, $result);& M. i' n8 N) \% c
echo $result;
7 [4 [) I3 ?- m  d  Y! M" X( e}5 f; q" n9 M( D9 D6 ^) B) c
?>& i# v/ _& u% w* d
复制代码
: s2 M" n2 r0 u- @4 p  _这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。" o+ w* ?& s( L
在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:
- W/ y4 k. s( s7 [6 U& w' R  Z1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,/ T' j, U4 \; D% N6 a" n9 e
2。开发弱势运行的程序在Intranet或本地Web服务器
' A! _' \( z; }& v; `3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)7 X/ ^% W$ H+ e/ u9 I' |% R. r* A- O7 Y
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为
( W8 f& I- s7 n5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
回复

使用道具 举报

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

本版积分规则

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