[Disclaimers - English]
This article involves network security experiments. Reading this article indicates that you have read, fully understand, and promise to comply with all the following terms and conditions: > 1. You promise that the technology involved in this article will only be used for experimentation and security technology testing, and shall not be used for any criminal activities, fraud or cracking, nor for production environments that require confidentiality or importance. > 2. You comply with the Cybersecurity Law of the People's Republic of China and are not allowed to use any technology on this website for illegal or criminal activities. > 3. You shall comply with Article 286 (1) of the Criminal Law and shall not use any technology on this website to disrupt computer information systems. > 4. You shall comply with Article 32 of the Electronic Signature Law and shall not use any technology of this website to forge, impersonate, or embezzle the electronic signature of others > If any of the above terms are violated, we will fully and independently assume any legal and other responsibilities that may arise.欢迎您研究并进行《自建时间戳服务器实现伪签名驱动证书》实验(以下简称“本实验”)。
在使用本实验前请您仔细阅读并同意以下免责许可条款,继续则代表您同意条款全部内容。
若您不同意本许可条款的任何内容,请立即停止进行本实验,并删除所有内容及其衍数据。
- “实验内容”:包括本网站实验所提供的技术(包括但不限于代码、文件、步骤)及其衍生内容。
- “违反法律法规”:指违反本协议所提及的和您所在国家或地区的相关法律法规,及其相关规定。
- “作者”:本实验技术的提供者,包括本文档创建人,网站提供者,以及其他提供帮助的主体等。
- “使用者”:使用本实验提供的技术(包括但不限于:代码、文件、步骤)及其衍生内容的主体。
本实验旨在提供网络安全技术的实践学习和技术研究。
本实验仅供个人或团体进行非商业性质的技术探索。
- 您承诺本实验的原理仅用于实验和安全技术测试和技术实验,不用于需保密或者重要生产环境。
- 您不得用于任何违反法律法规的活动,包括但不限于犯罪行为、欺诈、破坏计算机信息系统等。
您遵守《中华人民共和国网络安全法》,不得使用本网站任何技术进行违法犯罪活动。
您遵守《中华人民共和国刑法》第286条第1款规定,不得使用本网站的任何技术破坏计算机信息系统。
您遵守《中华人民共和国电子签名法》第32条,不得使用本网站的任何技术伪造、冒用、盗用他人的电子签名
您遵守**以及其他所在国家和地区的法律法规,不得使用本网站的任何技术违反法律法规,或者给其他任何个人、团体造成问题或者损失。
本实验仅提供技术实验和安全技术测试之用,不对使用者的行为负责
本实验的原理发布在Github上,任何人均可自由获取和使用,作者不对实验的使用者行为负责。
本实验的原理可能存在技术问题、安全问题或其他问题,使用者需自行承担使用风险,并采取必要的安全措施保护自身和他人的利益。
作者对于使用本实验的原理所产生的任何直接或间接损失,包括但不限于利润损失、数据损失、业务中断等,不承担责任。
本网站保留在任何时候中断或终止本服务的权利,而无需提前通知使用者。
您如果违反上述条款的任何内容,您将完全独立承担带来的任何法律以及其他责任和后果。
请您在使用本服务前认真阅读并理解上述免责许可条款。若您同意并接受上述条款,请继续使用本实验。
如有任何疑问或需要进一步解释,请联系我们。
-
适用于: Windows Vista、Windows 7;带安全启动的 Windows 8+ Windows 8、Windows 8.1、Windows 10 版本 1507、1511 以及安全启动 Windows 10 版本 1607、1703、1709 以及安全启动 Windows 10 版本 1803 及安全启动 架构: 仅 64 位,32 位不需要签名 64 位、32 位 64 位、32 位 64 位、32 位 需要签名: 嵌入文件或目录文件 嵌入文件或目录文件 嵌入文件或目录文件 嵌入文件或目录文件 签名算法: SHA2 SHA2 SHA2 SHA2 证书: 代码完整性信任的标准根 代码完整性信任的标准根 Microsoft 根证书颁发机构 2010、Microsoft 根证书颁发机构、Microsoft 根证书颁发机构 Microsoft 根证书颁发机构 2010、Microsoft 根证书颁发机构、Microsoft 根证书颁发机构 -
Windows 10 1607 及更新版本
- 如果EV代码签名证书是2015/07/19及以前由微软交叉签名的CA颁发的证书:
- (必须)签署EV代码签名证书:SHA2(SHA256,SHA1实测仍然可以)
- 如果EV代码签名证书是2015/07/19及以后(微软交叉签名)CA颁发的证书:
- (必须)签署微软WHQL签名:SHA1/SHA2(SHA256,SHA1目前可以)
- (可选)签署EV代码签名证书:SHA2(SHA256,微软官方不允许SHA1)
- 如果EV代码签名证书是2015/07/19及以前由微软交叉签名的CA颁发的证书:
-
Windows 10 1607 之前的版本(到Vista/Win7/Win8/8.1)
- (必须)签署EV代码签名证书:SHA1/SHA2(SHA256,SHA1实测仍然可以)
- 对于某些旧版Win7及之前的版本,可能不支持SHA256
-
Windows XP/2000,更早的系统不要求内核驱动强制签名
- (可选)普通代码签名证书:SHA1(不支持SHA256)
-
-
-
Windows 10 1607 之后UEFI引导模式,并且开启Secure Boot选项:
-
无法开启测试模式,不能通过修改BCD解决,可以使用EFIGuard
-
每次可以开机进入高级模式-选择禁用内核驱动强制签名启动
-
-
Windows 10 1607 之前,Win8/8.1/7/Vista,或者关闭Secure Boot:
-
开启测试模式:
bcdedit /enum all bcdedit /set {default} testsigning on bcdedit /set nointegritychecks on bcdedit /set testsigning on bcdedit /debug ON bcdedit /bootdebug ON
-
也可以每次可以开机进入高级模式-选择禁用内核驱动强制签名启动
-
-
-
-
-
整合包包括本地时间戳服务器和本地代码签名工具
如果选择本地整合包, 需要自己生成CA和TSA证书
此方法不用再下载签名工具和使用在线时间戳服务
您只需要泄露的证书和自建CA信任体系并安装CA
只适用于Windows
-
虚假时间签名工具整合包:Signtool-Stamp-Fake.zip
-
真实时间签名工具整合包:Signtool-Stamp-Real.zip
用于时间戳认证 / CA Certificate: Used for Timestamp Auth
二选一,需要和下面签名工具的时间戳证书一致
-
Pikachu Fake CA (推荐):自动安装工具(推荐)
-
JemmyLoveJenny(备用):注册安装工具(手动)
泄漏的过期签名代码证书 / Leaked Expired Signature Code Certificate
需要2015-07-29及以前的EV代码签名证书,我不提供任何代码签名证书
EV code signing certificates from July 29, 2015 and earlier are required,
I do NOT provide any code signing certificates
亚洲诚信数字签名工具包 / TrustAsia Digital Signature Toolkit Modify
二选一,需要和之前安装的CA证书一致
-
Pikachu Fake CA (推荐):亚洲诚信签名工具 / TrustAsia SignTool - PikaFakeTimers
-
JemmyLoveJenny(备用):亚洲诚信签名工具 / TrustAsia SignTool - JemmyLoveJenny
其他工具:微软SignTool / Other tools: Microsoft SignTool CMD Usage
signtool timestamp /t "http://<服务器地址>/{SHA1|SHA256}/YYYY-MM-DDTHH:mm:ss" <待签名程序>
signtool timestamp /t "http://time.pika.net.cn/fake/RSA/SHA1/2011-01-01T00:00:00" test.exe
signtool timestamp /tp 1 /tr "http://time.pika.net.cn/fake/RSA/SHA256/2011-01-01T00:00:00" test.exe
signtool.exe sign /f Cert.pfx /p password /tr http://time.pika.net.cn/fake/RSA/2011-01-01T00:00:00 /as /v T.exe
signtool.exe sign /f Cert.pfx /p password /fd sha256 /tr http://time.pika.net.cn/fake/RSA/2011-01-01T00:00:00 /td sha256 /as /v T.exe
-
git clone https://github.com/PIKACHUIM/FakeSign.git
-
编辑:
TSServer/Develop/TimeStamping/Program.cs
static readonly string supportFake = @"true";
如果要使用伪造服务器,则此处填写
true
,如果要使用真实时间,应当填写false
-
输出:
TSServer/Develop/TimeStamping/bin/Debug
- 创建一个CA和时间戳证书,参考XCA自制CA证书并签发时间戳证书
- 放置证书文件到当前的运行目录内,需要参考下面的文件说明:
- TSA.crt 证书Base64编码
- TSA.key 密钥Base64编码
- 双击:
TimeStamping.exe
即可运行
sudo dpkg --add-architecture i386
sudo apt-get install wine mono-complete winetricks wine32 winbind
-
sudo winetricks dotnet45
-
-
wine uninstaller wine64 uninstaller
安装上一步下载的MSI文件(wine-mono-7.4.0-x86.msi)
-
创建一个CA和时间戳证书,参考XCA自制CA证书并签发时间戳证书
放置证书文件到当前的运行目录内,需要参考下面的文件说明:
- TSA.crt 证书Base64编码
- TSA.key 密钥Base64编码
wine TimeStamping.exe
-
git clone https://github.com/PIKACHUIM/FakeSign.git
-
编辑:
SignTool/Hooktool/main.cpp
if (!_wcsicmp(lpOriginalTS, L"{CustomTimestampMarker-SHA1}")) { wcscat(buf, L"http://time.pika.net.cn/fake/RSA/"); wcscat(buf, lpTimestamp); return buf; } else if (!_wcsicmp(lpOriginalTS, L"{CustomTimestampMarker-SHA256}")) { wcscat(buf, L"http://time.pika.net.cn/fake/RSA/"); wcscat(buf, lpTimestamp); return buf; }
将里面的
http://time.pika.net.cn/fake/RSA/
修改为http://你的地址/路径
-
输出:
SignTool/Hooktool/bin/Debug
[1] 时间戳签名库以及本地Demo服务器,可以倒填时间制造有效签名,JemmyloveJenny,吾爱破解,https://www.52pojie.cn/thread-908684-1-1.html
[2] 亚洲诚信数字签名工具修改版 自定义时间戳 驱动签名,JemmyloveJenny,吾爱破解,https://www.52pojie.cn/thread-1027420-1-1.html
[3] 关于Windows驱动签名认证的大致总结,ANY_LNK,BiliBili,https://www.bilibili.com/read/cv17812616
[4] 数字证书伪造与利用(仅方便用于驱动开发人员的调试,不得非法使用), MIAIONE,BiliBili,https://www.bilibili.com/read/cv9802857/