中国网络渗透测试联盟
标题:
跨站点端口攻击 – XSPA(SSPA)
[打印本页]
作者:
admin
时间:
2013-2-16 21:48
标题:
跨站点端口攻击 – XSPA(SSPA)
许多Web应用程序提供的功能将数据从其他Web服务器,由于种种原因。下载XML提要,从远程服务器,Web应用程序可以使用用户指定的URL,获取图像,此功能可能会被滥用,使制作的查询使用易受攻击的Web应用程序作为代理运行在远程攻击其他服务的基于文本的文件等。 /本地服务器。通过这种滥用而产生的功能被命名为攻击,跨站点端口的攻击(XSPA)。
3 E) v% o# |. m9 v: P
XSPA(SSPA)是什么?
9 X' j$ f6 Q2 R
如果应用程序处理用户提供的URL和不验证/消毒后端从远程服务器接收到响应,然后将其发送回客户端应用程序是容易受到跨站点端口的攻击。攻击者可以通过发送特制的查询到一个易受攻击的Web应用程序代理攻击,面临的外部Internet服务器,内网设备和Web服务器本身易受攻击的Web应用程序使用的广告功能。的反应,在某些情况下,可以进行研究,以确定服务的可用性(端口状态,横幅等),甚至在非传统的方式获取数据的远程服务。
3 ^) E6 g# B5 Z2 \: r
PHP fsockopen() function:
" w) h$ d) ]) Y/ @! Y- S4 I' c3 ?
<?php
. e, a! s% q' H0 Q8 r( n
function GetFile($host,$port,$link)
3 Q$ g- n. x6 J
{
) [+ A/ {! o$ {& d: S; q3 H
$fp = fsockopen($host, intval($port), $errno, $errstr, 30);
; S/ b% ?' p) R5 L$ X% x, z2 p9 s
if (!$fp) {
1 X0 @4 P5 K6 \+ v
echo “$errstr (error number $errno) \n”;
, u2 ]) ]2 ?* j; G$ P9 @" L2 A: p
} else {
+ B% q5 }+ K# |4 m& z: X4 O
$out = “GET $link HTTP/1.1\r\n”;
3 O, f5 u( s% Q( h9 x4 S
$out .= “Host: $host\r\n”;
$ j1 g- V; y3 ^; O) k9 y8 e
$out .= “Connection: Close\r\n\r\n”;
* q5 s' }' g% K6 q0 m+ B
$out .= “\r\n”;
' O# n7 }0 A+ z+ ?; D
fwrite($fp, $out);
2 i4 Z3 g4 [, l0 w3 x
$contents=”;
3 ~# ?: |! Z6 {5 X" o1 x: F1 d9 X
while (!feof($fp)) {
+ a# U9 I1 g: J' r
$contents.= fgets($fp, 1024);
: A6 {& v% c1 ?+ j# O. a' e
}
0 L! L! [! K) ~6 o6 K0 K
fclose($fp);
, \# ]9 Y* W( r+ f: c( ^# v+ R
return $contents;
! [7 j l& v' l L3 `3 S
}
5 p- f# w& w$ A% E* K
}
2 n) v! o' ?% H B" {
?>
; z' d6 G# m: w) K3 [
复制代码
+ s' {0 l" K9 M( {* q6 n
此实现获取数据,如由一个用户使用的fsockopen PHP函数(任何文件或HTML)请求。此功能建立一个TCP连接的套接字的服务器上,并进行原始数据传输。
* z# f+ \* {+ [1 d* l# M6 R/ w, b
PHP curl_exec() function:
' _3 K+ ^: T7 E! ~8 b/ R
<?php
, _" ^8 \$ S" P2 P, w \6 D
if (isset($_POST['url']))
6 i5 p* F* d. z; h$ @* H1 @
{
* S a2 Q, t# a
$link = $_POST['url'];
0 ~* \% S0 P: r0 u! r g0 ^: V
$curlobj = curl_init();
`! n7 y6 q8 v
curl_setopt($curlobj, CURLOPT_POST, 0);
3 P1 _! A: ^% i/ W
curl_setopt($curlobj,CURLOPT_URL,$link);
! o% o& ^: G* P2 h* Z2 J+ v1 x9 b/ u) [
curl_setopt($curlobj, CURLOPT_RETURNTRANSFER, 1);
5 l0 l$ F |6 v$ ]/ p
$result=curl_exec($curlobj);
1 z3 y: |1 ?1 t7 v; O4 W
curl_close($curlobj);
x- o5 d" ^: Z/ ^
; {$ B# n7 b& X7 \: X$ Z% L, ]
$filename = ‘./curled/’.rand().’.txt’;
/ t }. g# x) a! Z. R
file_put_contents($filename, $result);
% ~( r$ D) F) z4 J2 A/ X
echo $result;
+ m' A* M! F9 J7 T
}
& d1 _, |; B9 C# ^ a
?>
7 l. y! T& Z5 d' G+ D' \* Z
复制代码
o0 _. S% z6 B1 P' Q( N0 m
这是另一种非常常见的实现,通过PHP使用curl获取数据。“卷曲”文件夹下的文件/数据下载并存储到磁盘,并附加一个随机数“。txt’结尾的文件扩展名。
; ~5 ~- A; C4 h
在本系列的下一部分,我们将看到一些可以启动的攻击使用此vulnerbility。XSPA允许攻击者在目标服务器基础设施,主要是内网的Web服务器,Web服务器本身,以及面向互联网的服务器以及。目前,我已经遇到以下五种不同的攻击方式,可以启动使用XSPA:
# t, S0 l1 |+ g) I2 ]; S. b
1。端口扫描远程互联网服务器,内网设备和本地Web服务器本身。横幅敛也有可能在某些情况下,
7 a# A0 |+ \# P& H
2。开发弱势运行的程序在Intranet或本地Web服务器
1 \8 m8 T- R( t; U
3。攻击内部/外部Web应用程序很容易通过URL来获取参数的漏洞(SQLI,参数操作等)
. g) p9 e8 S0 r" b3 k; Y, M
4。指纹图谱的Intranet Web应用程序使用标准的应用程序的默认文件及行为
3 ^5 t6 ~/ y2 j& P' s
5。阅读使用file :/ / /协议处理程序的本地Web服务器上的文件。
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2