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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-16 21:48:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。
8 n# }4 O3 O: `, k& y* uXSPA(SSPA)是什么?
- I8 s& N4 V; Y; p, @如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。5 o! V% i$ S, ^* U! H  ~
PHP fsockopen() function:
) O* H+ d8 ^* Z$ l/ A<?php' S# K/ k1 |: \4 ]
function GetFile($host,$port,$link)+ p* o! G" }0 L
{
) R4 j1 C* R  c- ~4 S$fp = fsockopen($host, intval($port), $errno, $errstr, 30);
" |* Q$ H& T& |  i7 s8 f' zif (!$fp) {
0 {* _. P% v3 p+ Hecho “$errstr (error number $errno) \n”;- X; L2 H2 z# O6 C! z/ H/ p
} else {4 ^5 P0 O8 j8 k- m3 d; I
$out = “GET $link HTTP/1.1\r\n”;0 |+ h$ y0 T5 r* Z/ N- W
$out .= “Host: $host\r\n”;
; N9 m( B/ @& I  _/ I8 F/ n, Q. K$out .= “Connection: Close\r\n\r\n”;  O% T# C4 x  O7 J; n, m7 _3 l
$out .= “\r\n”;
) q' `$ H$ `; E- }7 W6 Tfwrite($fp, $out);* D* ?* e/ C, t
$contents=”;
. Z6 y4 G5 O0 W9 H1 `3 ]while (!feof($fp)) {4 u9 F. |- K7 V6 k9 ~8 K6 i
$contents.= fgets($fp, 1024);# Q* }7 c& D/ T/ _/ s* \
}
# s7 T3 B/ U7 D! a: Ofclose($fp);; o" R9 f3 W* M! G
return $contents;
& _2 T9 F" d8 {0 n9 Q+ I}
4 J; g3 j- t9 v* W+ n}
3 N( K4 G( n# v3 V8 W7 D7 R?>
1 }7 B* \# r. O" o: E. t7 I5 d8 \复制代码: T3 E( B5 E6 T& \3 `
此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
8 b5 k+ F8 ?, ~( t4 c5 X  PHP curl_exec() function:8 \$ m% A3 Q3 }2 m7 ?) W
<?php3 M, V9 Q+ ^5 u  D' S
if (isset($_POST['url']))) s- p8 K( H" u7 `3 {) D  J  F. k; A
{
/ Z' r1 |! `0 I$ i: G+ `& ?$link = $_POST['url'];6 }: S8 `1 r# L: e
$curlobj = curl_init();
6 ^9 |" b5 f3 O) g4 Scurl_setopt($curlobj, CURLOPT_POST, 0);2 O8 d7 r; G& l: U1 L% C, Z7 a& R
curl_setopt($curlobj,CURLOPT_URL,$link);. \/ x) w. {3 P
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);
. b; v+ W) W2 ~" L- ^# T3 [$ L$result=curl_exec($curlobj);
. C. k( f' A: _2 ^% bcurl_close($curlobj);, U. I# O: Z; e! v+ V
+ s" N. c& P3 Y
$filename = ‘./curled/’.rand().’.txt’;- ~6 G" m4 B1 e
file_put_contents($filename, $result);& K! t$ T0 h2 l, o$ r
echo $result;" b9 f; _* O/ A# S* [% @
}
1 [* H* w  K7 [. w- Y: }  ?1 b?>8 t6 T: u' x+ ~; _, w5 {. d4 c: n$ @
复制代码9 C7 Z* |0 L, `+ w1 Z9 y
这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。
: {( e8 X9 k7 y+ j3 G: g0 z  E在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:
8 \% g; q0 f& T. o# }3 ]1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,
; a/ Y) Z( [4 h2。开发弱势运行的程序在Intranet或本地Web服务器
2 a) g% `0 F$ u- g3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)0 z. f8 @8 L! U' T3 \
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为
3 D2 e: e6 X' G. C& `, q/ Z5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
回复

使用道具 举报

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

本版积分规则

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