Files
ykxmz/_build/patch_readme_av.py
T
xmz7891 b705216e4a ykxmz 1.5.0锛氫慨澶嶆墜琛ㄧ TLS 璇佷功鏍¢獙 + MTU 淇缃戠粶绋冲畾鎬?
琚帶绔?- 淇 MTU 闂锛氬す MSS + 璺緞 MTU 鎺㈡祴锛堝叕缃戝彲鐢ㄧ巼 48% -> 100%锛?- 澶嶇敤 HTTP 杩炴帴锛堝厤鎺夋瘡娆℃柊寤?TLS 鐨?30% 鎻℃墜澶辫触锛?- 姣忓垎閽熷洖澶存壘灞€鍩熺綉锛岃嚜鍔ㄥ垏鍥炲揩 400 鍊嶇殑璺緞
- 鐢婚潰蹇冭烦甯э細闈欐鏃剁渷娴侀噺锛屽鎴风浠嶇煡閬撴祦鏄椿鐨?- 閿佸睆鏃剁粰鍑哄彲鎿嶄綔鐨勬彁绀?
鎵嬭〃绔?- 鍐呯疆 GTS Root R4 / GlobalSign Root CA锛屼慨 SSLHandshakeException
- 杩炴帴閿欒缈昏瘧鎴愪汉璇濓紙璇佷功/鏃堕棿/瑙f瀽/瓒呮椂鍒嗗埆鎻愮ず锛?- 缁忎腑杞繛涓婂悗鐢ㄦ湇鍔″櫒鎶ョ殑鍦板潃鍒锋柊宸查厤瀵硅褰?- 鏂板灞€鍩熺綉杩炴帴椤甸潰銆佹湇鍔″櫒寤惰繜妫€娴?
鏈嶅姟鍣ㄧ
- 鏀寔 chunked 璇锋眰浣擄紙淇瘡 16 绉掍竴娆$殑杩炴帴閿欎贡涓庡ぇ闈㈢Н 502锛?- 缃戠粶璋冧紭鑴氭湰 net-tune.sh锛堝紑鏈鸿嚜鍔ㄥ簲鐢級
- 绠$悊椤碉細鎵归噺鍒犻櫎銆佺綉缁滀綋妫€銆佷笅杞藉尯
- 闅ч亾鏀?HTTP/2 + 鍙岃繛鎺?
鏂囨。
- 璁稿彲鍗忚 / 瀹夎鍓嶅繀璇?/ 瀹夎鍚庨』鐭ワ紙浣滆€咃細灏忛害瀛愶級
2026-10-06 19:01:05 +08:00

119 lines
4.2 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# -*- coding: utf-8 -*-
"""README 补一节:关于杀毒软件误报。
要讲清楚的:
* 哪些特征**天生**会被启发式盯上(不是我加的,是这类工具的共性)
* 我做了哪些**合法**的降误报
* 真正解决误报的办法是代码签名 —— 需要买证书,我做不到
* 为什么我不做免杀
"""
from __future__ import annotations
import sys
from pathlib import Path
README = Path(r"C:\Users\shu\Desktop\deepseekagent\LanRemote\README.md")
SECTION = '''## 关于杀毒软件误报
### 先说结论
**这个工具没有做任何免杀。** 它会被某些杀软启发式报毒,这是真的,
我不打算靠混淆/加壳/加密去绕,因为那正是恶意软件的做法 ——
绕过去之后,你也分不清自己装的是不是真有毒。
真正能解决误报的路只有一条:**代码签名**(要买证书,见下)。
### 为什么会被盯上
| 特征 | 为什么杀软敏感 | 这是谁的需求 |
|---|---|---|
| PyInstaller 打包 | 打包器的引导代码是启发式的重灾区 | 你要「多文件 exe,双击就跑」 |
| 写注册表 Run 键 | 自启动是持久化的典型手法 | 你要「开机自启」 |
| 无窗口后台常驻 | 隐藏进程是木马的常见形态 | 你要「全程静默」 |
| 监听端口 + 收指令 | 远控和被控端在行为上无法区分 | 这就是远控工具 |
| 提权改防火墙 | 改防火墙规则经常被拦 | 你要「黑终端一闪修防火墙」 |
**这五条全是你明确要求的。** 它们组合在一起,行为特征上和远控木马是一回事 ——
区别在于:**配对码是你自己设的、认证是真的、你不会拿它去连别人的电脑。**
### 我做了哪些合法的降误报
1. **`--onedir` 而不是 `--onefile`**
onefile 每次启动都往临时目录解压自己,这是最容易被判毒的行为之一。
onedir 不解压,启动也更快。
2. **`--noupx`**
加壳压缩是杀软重点关注对象,明确关掉。
3. **完整的版本信息**
EXE 里写入了公司名、产品名、文件描述、版本、版权。
未签名二进制有正经的版本资源,比光秃秃的少一点可疑度,
也方便你在杀软里按「厂商 + 产品」加例外。
4. **不做任何偷偷摸摸的事**
没有自我复制、没有进程注入、没有内存加载、没有关闭杀软、
没有偷偷加防火墙例外。自启写注册表是**你勾了勾选框**才做的。
### 你遇到误报时怎么办
**优先做成例外,不要关杀软。**
被控端目录整个加进排除项即可(就是你放 `LanRemote-Agent.exe` 那个文件夹):
```
Windows 安全中心 → 病毒和威胁防护 → 管理设置
→ 排除项 → 添加或删除排除项 → 添加文件夹
→ 选 LanRemote-Agent 那个目录
```
加**文件夹**而不是单个 exe —— 因为 `_internal\\` 里的 dll/pyd 也可能被单独报。
### 真正根治:代码签名
有了签名,SmartScreen 和大部分杀软就不会再拦。需要:
1. 买一张代码签名证书(OV 约 ¥1000-2000/年,EV 更贵但立刻获得 SmartScreen 信誉)
2. 用 `signtool` 给 `LanRemote-Agent.exe` 和 `_internal` 里的 dll 签名
3. 加时间戳(否则证书过期后签名失效)
买了证书之后告诉我,我把签名步骤加进构建脚本。
### 我查到的情况(本机)
这台机器上 Windows Defender 的**按需扫描是坏的**:
```
MpSmartConfigInitialize() failed (80070002)
```
Defender 的 PowerShell 模块(`Get-MpComputerStatus` 等)也不存在,
所以**我没法在这台机器上给你一个权威的"报不报毒"结论**。
我不会假装测过。
想自己确认的话,把 EXE 传到 VirusTotal 看一下 —— 那是最快的办法。
---
'''
ANCHOR = "## 七、后台运行方式"
def main() -> int:
text = README.read_text(encoding="utf-8")
if "关于杀毒软件误报" in text:
print(" README 已有这一节")
return 0
if ANCHOR not in text:
print(" [失败] 锚点没找到")
return 1
text = text.replace(ANCHOR, SECTION + ANCHOR, 1)
README.write_text(text, encoding="utf-8")
print(" README: 已补「关于杀毒软件误报」")
return 0
if __name__ == "__main__":
sys.exit(main())