中国网络渗透测试联盟
标题:
跨站点端口攻击 – XSPA(SSPA)
[打印本页]
作者:
admin
时间:
2013-2-16 21:48
标题:
跨站点端口攻击 – XSPA(SSPA)
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。
9 ` e' R9 Z7 N7 r5 I* P
XSPA(SSPA)是什么?
- E4 @/ R6 D( T3 {7 |; r0 L4 G, f
如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。
- a' W; h* i# t/ p
PHP fsockopen() function:
: H% _; @6 ^" F# ^' a2 r8 k
<?php
+ e, d( w7 x q" S. d+ `# `
function GetFile($host,$port,$link)
$ V: U- V2 {" o7 ]& [$ J$ z/ s2 ^
{
7 y% `. b: J( d, W2 Y, x) C. [
$fp = fsockopen($host, intval($port), $errno, $errstr, 30);
$ `- i8 e+ i: V& a
if (!$fp) {
9 p$ Z3 s- H$ u S
echo “$errstr (error number $errno) \n”;
' `0 }1 `( s- M5 {! E& v1 U5 B
} else {
' O5 I! p: f0 a- E
$out = “GET $link HTTP/1.1\r\n”;
2 l# ~: N1 G1 v g7 i
$out .= “Host: $host\r\n”;
7 J3 F+ ~* ?1 u( L; t/ m x
$out .= “Connection: Close\r\n\r\n”;
" |9 B) x9 u+ v5 f# c
$out .= “\r\n”;
0 ]. @8 W1 {5 H. {3 P& ^
fwrite($fp, $out);
+ W, r8 K) f8 E. t4 O
$contents=”;
' {5 {2 x6 f6 P t- C7 I" O
while (!feof($fp)) {
+ ~% k7 A) G* _! S2 Y' B
$contents.= fgets($fp, 1024);
: e L6 o# M' g- d- F" F
}
0 {& E: p. ~; L% \0 X, k. p
fclose($fp);
% i J1 @/ I( \9 M( L2 p
return $contents;
; q4 |) I1 r9 k- R& C
}
& u. h9 A2 R$ f" B" ]+ C& X; Q" L. y
}
3 R" T1 H4 `4 N* g
?>
1 e" A! `0 f) \0 ^7 N7 h3 c- m R
复制代码
% ~) ]" K* P# f# Z7 ^$ T( W
此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
3 Z6 r$ [# i- [' ]
PHP curl_exec() function:
8 |0 w7 a4 b! F8 P
<?php
, H( C q, \4 v4 U* ~; `% p2 Z! g
if (isset($_POST['url']))
* ]3 D' `0 K& y2 Y4 M# G- _- d
{
. v0 u- ^& ~; |# {: i2 U7 ^
$link = $_POST['url'];
- ]( ~, _% T. o, e$ B! \! m
$curlobj = curl_init();
0 Q' a4 F8 R! K' v% w- m% r
curl_setopt($curlobj, CURLOPT_POST, 0);
6 v9 a0 j' f. B/ P& P& b9 w
curl_setopt($curlobj,CURLOPT_URL,$link);
+ C# ^1 R5 ]- X. M
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);
! I8 c0 T; A5 H1 \( P
$result=curl_exec($curlobj);
6 Q- v% [& Z. Z Q! E6 X
curl_close($curlobj);
0 [ U. v( T/ S i
' n: I& N: N) O$ A D S, U ^4 v
$filename = ‘./curled/’.rand().’.txt’;
9 _3 A. Q; C3 P( Z5 v
file_put_contents($filename, $result);
' g8 i9 b! h4 m; s' @% J9 o) l
echo $result;
) Z G4 J+ d( D$ r& t& i u
}
4 G! ]+ P: Z- H5 Y* J0 V- N
?>
* t+ g6 Q( A5 c; _
复制代码
) J, y+ ]8 }5 e" s5 @
这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。
) s3 ?( ]; n; u* k4 \! ~+ o- |
在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:
$ ~, n/ A0 i3 H# K' K* c
1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,
8 O$ x; T2 ^* g3 W
2。开发弱势运行的程序在Intranet或本地Web服务器
. x7 Y" M3 f X' X$ e; f
3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)
% e+ c% O6 V' j3 L) j
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为
+ k+ k6 f' N7 o! @' f: J& m
5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2