|
by:haX0r from:https://www.xfocus.net/ ) |0 V; B7 k- i/ \- x/ w. H* d Y7 v
隐藏通道机制是一种简易而有效的方法,可使得建立在未授权或未预料的方法之上的通信机制成为可能。他们能跨越多种访问控制/监视报告系统。因为这类系统总是在这样的通过在常规数据流夹带隐秘数据的方法面前显得无能为力。 ! r. _5 a* S' F, s
. C! N# @$ c8 v o! S8 {. m! K隐通道技术常常基于隧道技术。这种机制允许将任何协议封装在已被授权的可行协议内,因此通过在被授权的协议数据流内夹带任何其他协议数据,便可实现此类通信。
' L' l6 N$ [4 K# \
( K/ K" M% E1 @% ]$ d目前,我们已经开发出几个项目,通过这些程序,可以在TCP的几种子协议(HTTP HTTPS MSN)和UDP协议上建立隐藏通道.运用安全套接字协议实现安全隧道。这是专为那些不具有外部IP地址却仍想实现互联网服务的人设计的。 _blank\'">http://www.gray-world.net/cn/images/af.gif
& e. Y* I* g1 X, f& _服务器被置于一台拥有公网地址的计算机上。客户端运行在防火墙/网关后的某台计算机上。这使得客户端可以访问互联网。运行服务器端进程无需超级用户特权。也无须使用任何其他进程或线程。 2 S/ O, V9 R. P- R b1 ^, v( `4 C
' V: R5 H/ I7 Y. I) E. y
- 运用安全套接字协议实现安全隧道;CCTT - 将TCP/UDP数据在TCP/UDP/HTTP的POST方法上传输;Firepass - 一种隧道技术工具,通过它可以避开防火墙的规则约束,将数据流封装在合法的HTTP POST请求中。任何基于TCP/UDP协议的子协议可以通过它来穿越HTTP代理服务器对HTTP协议的严格审查。到目前为止,客户端和服务器端仅用PERL语言编写。服务器端作为一个CGI脚本运行在WEB服务器上。
0 u/ Y+ T! H' f7 q; J) ^) R_blank\'">http://www.gray-world.net/cn/images/firepass.gifFirepass的主要特点是用户可以在外网使用几种方法安装服务器端脚本。用户无需在外网计算机上帮定任何端口。当服务端脚本被置于企业WEB服务器上,客户端脚本从外部网络和它通信时,Firepass也可适用于反弹作业。
. Q2 _1 `1 q; v+ L u# g% }2 x
8 Q- ^+ v, |, W6 ^- 将TCP/UDP数据封装在HTTP协议的POST方法上传输;' r1 b6 i# q( l& \- T' d
MsnShell - 一种隐藏通道工具,外网的计算机可以避开防火墙的严格数据审查,远程控制一台内网计算机。它把Shell命令/响应隐蔽地封装在MSN协议中传送出去。必要时还可以将MSN协议包封装在HTTP协议中传送出去。它无需安装客户端,只由一个可执行程序组成服务端。
& l7 J% }) Q- T/ @0 V; W! }_blank\'">http://www.gray-world.net/cn/images/msnshell.gifMsnShell的主要特点:& @+ V1 j2 t8 D7 S& \/ O; k) ?
3 t$ M# J e* L3 y9 Z; D1 N内网计算机为外网计算机提供一个SHELL控制台,方便其远程控制操作。
: L Q6 ~/ C( W* S7 y& | X3 A& h2 p+ F
通过将SHELL命令和回应封装在MSN协议中,避开网络访问控制系统的探测。 & t/ S$ }( @9 ^+ p# O
6 S+ i% I1 E; }- @+ W- P3 z
也可以在SHELL命令被封装在MSN协议后,将这样的MSN数据包封装在HTTP协议中,穿透HTTP代理服务器。
, |/ j( A" A2 X# h5 ]5 {, c4 M2 H: L) \- 通过MSN协议/基于HTTP协议的MSN协议,远程登陆Linux Shell;Wsh, "Web Shell" - 远程控制UNIX/WIN SHELL,它基于HTTP/HTTPS协议,此软件包含两个分别对应其客户端/服务器端的PERL脚本和一个服务端C语言程序。客户端脚本与控制台终端用法相似。服务器端仅以一个CGI脚本的形式出现在目标(受控)主机上。 . V7 o4 `$ |8 F: g, Z: c8 m# W6 b: I- A1 ^
9 E3 E! c( X3 r7 `; S' V_blank\'">http://www.gray-world.net/cn/images/wsh.gif客户端Wsh-c提供类似于Shell命令行的提示信息,它把用户命令封装在HTTP POST请求中,通过HTTP代理服务器发送到位于目的主机WEB服务器上的服务器端Wsh-s。然后,这个服务端脚本从HTTP POST请求中提取出命令行内容,并运行它,将结果信息封装在HTTP回应信息内回送到客户端,客户端将其打印到标准输出/标准错误上。缺省情况下,两个脚本用异或算法加密HTTP数据。 " m8 p$ {$ R* u; @* g- T
7 d* }$ E/ R$ G; e% zWeb Shell的主要特点:
& a% d& ^6 N e3 ?8 f! \( \) G! r
: Z$ L, I+ `7 A) @: \6 c支持加密协议套接子;
5 x! Q+ F# _2 Z6 y" y) `8 K6 J6 Y" W/ Q9 |' L) i# ~, m( P
支持命令行历史;
4 Z9 F9 k) a3 i4 m, ?5 l. @! p T0 B0 N
支持文件的上传与下载; 4 r1 k( R1 S; A) f' o3 c6 B
# ?9 L# ]1 g! `: t4 i% N) \通过在HTTP消息中运用密匙加密脚本用法信息;
4 c# l! F7 F- G3 W, ^) t w* c9 E, A s* h
支持数据流的异或加密;
" X: a% }' p1 i: } o' `7 _( I* D' U; _: {1 b3 k9 k; `# k5 z3 j
可穿越HTTP代理服务器; ! s: c8 }1 w K* Y$ U+ F' e3 t9 z
' w6 {$ Q& X) r1 z一些附带软件包需要安装在客户端计算机上。 + |" c! G0 E O, r6 p% e) C' A* Z* b
+ ]. i2 r3 x4 m8 g+ b' k4 I8 ~- 通过HTTP和HTTPS协议远程登陆Unix/Win Shell " w, [, \( F3 g4 d. I6 z
8 C5 e# h& z: c# \4 o& o1 z9 L2 G
|