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

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-16 21:48:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。
# f. L. Z% V6 SXSPA(SSPA)是什么?. G7 y! Y, A( a4 |' K9 @" F
如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。6 S# i: r. o$ m+ P: {* [
PHP fsockopen() function:
% j$ w0 g* N; q9 C<?php- r2 b3 z% c& |- {3 Q; a6 {
function GetFile($host,$port,$link). c7 i& }" r0 K3 y! d+ G0 Q
{% P# ?6 F0 w- X, P* H
$fp = fsockopen($host, intval($port), $errno, $errstr, 30);+ T' i$ @* a* m/ j& j2 {5 C4 q# C
if (!$fp) { 3 F* ^, n! `) O7 _2 \$ E
echo “$errstr (error number $errno) \n”;
7 [8 P- s/ @% a- W+ z1 ]/ e' o} else {" L! ]* Y. o+ ?
$out = “GET $link HTTP/1.1\r\n”;
8 \1 D& y4 [. w# W# L$out .= “Host: $host\r\n”;8 p* E9 ^; O: b) Z  `  G
$out .= “Connection: Close\r\n\r\n”;
  [* \+ o. F" X+ C$out .= “\r\n”;
9 _4 e( ^) B7 K9 {fwrite($fp, $out);
3 j! k+ K! L: u, a/ }/ C$contents=”;1 P# w, V- Q( T+ B
while (!feof($fp)) {; ~( g1 z4 R% V5 {
$contents.= fgets($fp, 1024);
, m/ H, E5 u/ ~# e}9 D- Y8 Q+ o( O. E4 i4 g
fclose($fp);
% e. @& n. k; i2 C' p! T/ U7 h. zreturn $contents;
1 @+ \  j5 U' j3 O/ X}+ S. M; q( \7 O: o& B5 c  O& R
}3 f* H! n  e, B4 B; f$ H  q' P3 @
?>! X5 E* r5 [+ I% W* t9 n3 t- O
复制代码
5 e+ J3 N) b0 @1 m- q& Z此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
2 ]: G& v* m: X8 l9 \0 J# _  PHP curl_exec() function:$ V$ o$ r' y' M
<?php
( T% `6 t) w, y8 |7 w' g9 p& B3 w! f- jif (isset($_POST['url']))
) z$ j( z$ q1 X6 I. f{
# b# b0 F6 U1 d+ v' t: r$link = $_POST['url'];
* L$ m7 y2 M9 J+ M$curlobj = curl_init();
* n" v! G9 X6 Vcurl_setopt($curlobj, CURLOPT_POST, 0);
: S3 H$ h, g$ q: a% icurl_setopt($curlobj,CURLOPT_URL,$link);: [. S6 e6 y7 L3 T% O5 x' }; I* @
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);' h3 x+ Y- w- L5 V
$result=curl_exec($curlobj);
& k1 \( [! M1 {. `: M8 ^curl_close($curlobj);
: O3 b4 c% w+ _" }' ]" b
( [5 P7 x& J% s' f; C4 ?$filename = ‘./curled/’.rand().’.txt’;7 M/ r: r3 _8 y( z8 n
file_put_contents($filename, $result);
; d, C; l; t) i- L6 p8 P' i; Uecho $result;
4 u- L( ^# g' k* }3 T}
$ T& B6 ~& Q, c* _5 l! l& _?>
, B: G9 M* C# E, S8 }- y4 J复制代码
7 m. O2 c2 o9 a# N- h9 t! `) ]9 b这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。4 W% X9 |2 F! w7 W- E* [+ f, D0 h
在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:. ?2 Q% w% i4 ?8 `* g
1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,6 D4 D& |+ o( I. P# F8 q$ h
2。开发弱势运行的程序在Intranet或本地Web服务器$ O+ H8 S7 ]1 j  ^7 d
3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)
1 ]4 F5 [" j% V" ^0 V) R5 H4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为
- u: X8 t) J0 N$ C8 U) e$ ^% L5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
回复

使用道具 举报

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

本版积分规则

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