注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Oh! I see you!

Hi! ppmm~~

 
 
 

日志

 
 

皇帝的新装——如何绕过深信服VSP防泄密安全桌面  

2018-01-27 11:37:58|  分类: Software |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

本文链接:http://oicu.cc.blog.163.com/blog/static/1230394712018027111034990/

做项目的时候,总会遇到一些视数据为生命的甲方,各种加密限制,各种网络隔离,与操作系统、其他软件还各种兼容性问题,给工作带来很大不便,比如亿赛通、深信服VSP安全桌面等,在我看来就如皇帝的新装,绕过限制只是分分钟的事情。

深信服VSP安全桌面这个产品在政府部门使用得比较多,属于XP时代的产品吧,用过这么多软件,没见过这么烂的软件,用户体验、兼容性令人嗤之以鼻,当下Windows 10当道,VSP还不支持……

言归正传,因为我的环境很多,各种操作系统,使用VSP过程中总能发现一些“奇怪”现象,比如:

  1. Administrator用户可以同时在本地桌面和安全桌面打开IE等多标签的程序,但User用户则不行;
  2. IE代理有时候无法修改,始终被VSP劫持,导致无法添加例外地址;
  3. 飞鸽、飞信、内网通等多种局域网通讯工具,有时候能从VSP安全桌面里发送消息到本地桌面,但无法传文件;
  4. ……

根据各种迹象,我构想出系统层、网络层、中间人、跳转、中转、提权、软件层、服务层、共享内存等多种绕过限制的模式,并验证了几种方式均成功,花式狂虐VSP。

  1. 系统层,如果你是Windows Server系统,可以多用户登录,在VSP安全桌面里,mstsc远程登录127.0.0.2到另一个用户,剩下的我不多说。如果没有Server系统,破解Windows XP、Windows7-10全系列操作系统变成多用户登录也是很简单的事。
  2. 中转,如果有一台服务器,能在本地桌面和VSP安全桌面同时访问,那么在VSP安全桌面里把数据传输到该服务器,然后本地桌面再从服务器下载。
  3. 网络、软件、服务层,前面不是提到局域网通讯工具能从VSP安全桌面里发送消息到本地桌面么?那可以在安全桌面里启动http、ftp服务提供下载么?答案是不行。但反过来呢?哈哈……在本地桌面搭建FTP等文件服务,在VSP安全桌面里使用FTP客户端连接127.0.0.1即可传文件。熟悉操作系统及网络的同学都知道电脑有个lo网卡,有IPv6地址,出去的网卡只有一个,利用回环或者IPv6隧道的特性绕过VSP的沙盒~
  4. 中间人的方式较为复杂,不推荐,无非就是iptables、3proxy代理、burp等工具做一些DNAT、SNAT,就不多言。乌云上有一篇利用中间人绕过VSP限制的帖子《看我如何利用burp大法绕过深信服SSL VPN访问权限控制》,原文没有了,这里有个暂存的 https://www.secpulse.com/archives/50144.html 网址,但是这个方式太过复杂了,本机环境无法完成,普通用户难以复制。
  5. 提权,VSP可以配置提供下载安全桌面里文件的权限,解决思路是“破解”,有简单的方式能绕过,就不搞这些费心思的事情了。

 

最容易实现的是方法3,练手写个 python 脚本搭建只能本机连接的匿名 FTP 服务器,在本地桌面运行脚本启动服务后,在 VSP 安全桌面里用 IE 或者资源管理器打开 ftp://127.0.0.1 即可传文件:

#!/usr/bin/env python
# -*- coding: gb18030 -*-
#########################################
# Usage:       python FtpServer.py
# Author:      oicu
# Required:    pip install pyftpdlib
#########################################

from pyftpdlib.authorizers import DummyAuthorizer
from pyftpdlib.handlers import FTPHandler
from pyftpdlib.servers import FTPServer

authorizer = DummyAuthorizer()
authorizer.add_anonymous('C:/pub', perm='elradfmwMT')
handler = FTPHandler
handler.authorizer = authorizer
server = FTPServer(('127.0.0.1', 21), handler)
server.serve_forever()

  评论这张
 
阅读(397)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018