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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-16 21:48:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。
' ?% t1 |3 h# M, N" N# TXSPA(SSPA)是什么?( w: K* u# x: s
如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。5 C$ x8 q: M9 C  P6 ^' C  i4 l% p
PHP fsockopen() function:
/ \* y9 T' A0 X" i4 Z<?php
1 H/ C2 J: M& r" l) ?& Zfunction GetFile($host,$port,$link): P& r! g7 P  w. a9 ]
{
" K' X9 b4 e6 g, T) {! F3 X$fp = fsockopen($host, intval($port), $errno, $errstr, 30);6 q4 o, D4 W/ L* m
if (!$fp) {
9 [0 Q" p8 d+ ?9 Mecho “$errstr (error number $errno) \n”;
' r8 m/ o$ _7 P} else {2 d) c0 G5 X4 X6 H! g5 q
$out = “GET $link HTTP/1.1\r\n”;
' K/ Z8 M; h5 C) S# H# d0 S; J$out .= “Host: $host\r\n”;; I( w) c1 D' u2 {- `
$out .= “Connection: Close\r\n\r\n”;
  L' k2 h$ e% t' N4 h$out .= “\r\n”;
0 x* B. M2 ]/ l$ Ofwrite($fp, $out);
  z6 c* O8 X, ], I: b4 q$contents=”;
, y3 P) |; _% c2 wwhile (!feof($fp)) {
) v; Y8 [$ m2 H9 d1 C" x# @$contents.= fgets($fp, 1024);4 v5 M# p5 o$ \/ }
}
2 |8 l4 s7 g2 kfclose($fp);
; t) e; C: l. _' ~. k$ |return $contents;% n1 o" u& u- u( U) ?- U
}& G/ I* l3 s* Y* v
}6 E4 T; d! l- ]* R
?>" d) E7 R, W2 x  {7 l* d0 g
复制代码  f2 m. _/ i- W- C
此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
) P5 o; [" P* f; I- N  PHP curl_exec() function:! Q+ f  i; N' R; ?* Q
<?php+ M( r) [7 D5 H' M+ p
if (isset($_POST['url']))
5 i4 ^8 i8 Z. w8 R" J5 u{
* U  A% l8 D  ~/ Z0 m0 k. |$link = $_POST['url'];! H; Z1 I. D' e
$curlobj = curl_init();' j! A/ y$ ?2 _# {' D& J
curl_setopt($curlobj, CURLOPT_POST, 0);. q. E4 b! I* L3 R1 h
curl_setopt($curlobj,CURLOPT_URL,$link);( ]& m  Q6 ~$ H0 D* B
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);
% A/ z: ]/ o6 n; r7 {2 n- p$result=curl_exec($curlobj);/ a3 \0 ^. F4 N2 K
curl_close($curlobj);
" G9 h. Q( S# H0 |5 @* u
  n8 m4 X: o: O: P$filename = ‘./curled/’.rand().’.txt’;
; p2 P2 G; r' X7 m% m' vfile_put_contents($filename, $result);0 G5 c% C' r# x( N- r! v
echo $result;! b' U# n4 Q8 w8 Z4 K, t  k2 f
}! c- U; I' e6 ~* M
?>
4 f1 S. Z# Q9 x; s+ m复制代码
3 S4 j, h$ V! `; D$ z这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。' ]  h3 T: U3 X; y, I1 Q
在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:
2 G& `: E. Q$ M1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,- I) x5 |: C. c" S  h
2。开发弱势运行的程序在Intranet或本地Web服务器2 P3 L: D2 b- Z
3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)# t" @8 ]2 Y& N3 N3 o7 b
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为
# ^8 F+ e* r! |3 C/ t! N5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
回复

使用道具 举报

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

本版积分规则

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