找回密码
 立即注册
查看: 2928|回复: 0
打印 上一主题 下一主题

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

[复制链接]
跳转到指定楼层
楼主
发表于 2013-2-16 21:48:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。
3 b" A, O: k  t. f0 B4 E5 AXSPA(SSPA)是什么?
4 G# ]6 B* v2 A/ N0 n& R0 M5 K3 k) t如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。
- @. P- A4 i$ L. H+ Q7 v0 }PHP fsockopen() function:$ J/ b6 p9 w  u; d$ l( H
<?php
- ?1 ?* p; k. g: D5 m) Ffunction GetFile($host,$port,$link)0 p) s; g; W6 X8 K
{, G2 Q/ @  H8 }- G% I) `
$fp = fsockopen($host, intval($port), $errno, $errstr, 30);3 p7 r# v2 J  O) q8 R+ x0 v
if (!$fp) {
7 T1 ], H4 C, m( hecho “$errstr (error number $errno) \n”;
4 ~/ I6 j; o% o. N9 S} else {! M/ b# T1 z. r/ m7 X" b
$out = “GET $link HTTP/1.1\r\n”;
* Q2 |2 k, K* G7 B" a$out .= “Host: $host\r\n”;
* n% Y" q( s$ Y3 k$ m$out .= “Connection: Close\r\n\r\n”;% d1 Q6 J0 v; W
$out .= “\r\n”;2 d: C) g/ w* B: Z( O
fwrite($fp, $out);. d' `. u1 X  W; a2 L
$contents=”;
. M0 k% Y7 J. B: O3 O8 Q1 owhile (!feof($fp)) {
4 I: V0 @/ }& }4 Y5 r; g# u$contents.= fgets($fp, 1024);2 v. V8 d) D$ }; w
}
9 n' i  m  D; i) {. u8 U* |$ n0 Qfclose($fp);
% J, e3 g; E* D, breturn $contents;5 g) ?4 X* @) B! F& X
}
5 O# n# M2 ~5 F# D8 _0 `}/ w  r0 U* w7 u
?>
4 @0 g; h+ Z1 J& S5 v* `$ c复制代码
% _$ V/ x' X0 T2 k: @4 B此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
3 i+ w# H/ u2 n7 I/ r  PHP curl_exec() function:
& _0 V1 h  i: Z/ R9 c. F<?php9 R+ n' J1 K1 y( m
if (isset($_POST['url']))4 Z7 Y: }( j) i
{+ N% I6 D; m; _
$link = $_POST['url'];5 w* t6 B- b" ]* l9 m
$curlobj = curl_init();
/ |" Q8 M9 }$ c2 d% vcurl_setopt($curlobj, CURLOPT_POST, 0);
9 S- N  {$ X. |/ I* G$ S$ ~8 x& dcurl_setopt($curlobj,CURLOPT_URL,$link);
. G( X" ]) h( B; Dcurl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);' Q% B+ n! u) s
$result=curl_exec($curlobj);
, x' N% U5 Z3 g) S7 jcurl_close($curlobj);
, R5 w  z9 o/ P2 J
! i2 n, A" @% M$filename = ‘./curled/’.rand().’.txt’;
- r% n5 J: i7 k, t( G+ Xfile_put_contents($filename, $result);
6 v" ~1 G, o0 v8 M: T, a+ i3 {echo $result;
+ O% F. m, [1 B' Y# h! c}" i; h: q- M+ C7 _3 a1 @
?>
/ D* A* [# e! V! P5 s5 q复制代码. ?5 v" H& i$ f' v
这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。
; {, l" g7 \  J! V: Y, l在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:+ C* k9 ]. }! w
1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,, {3 p# }- D: P# U
2。开发弱势运行的程序在Intranet或本地Web服务器* ]6 C( E+ X) V: b
3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)% \  q/ A3 H8 S% a0 i' V
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为4 h1 V& {" W+ D# J3 o4 j# K
5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
回复

使用道具 举报

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

本版积分规则

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