diff --git a/README.md b/README.md index b75ef83..f8eb39c 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ As an individual developer or test driver, purchasing an EV code signing certifi Microsoft suspended the issuance of EV cross drive signing certificate CA in July 2019, which means that EV code signing cannot be directly used after that and WHQL authentication is required. But certificates issued before this can be directly signed to complete authentication. -There are some leaked EV code signature certificates online, which can be used to implement pseudo signature driver certificates through self built timestamp services( https://code.52pika.cn/index.php/archives/277/ )The timestamp function completes the forgery of signatures, allowing the signature timestamp to be within the validity period of the leaked certificate, achieving driver signature and authentication. +There are some leaked EV code signature certificates online, which can be used to [Implement Pseudo Signature Driver Certificates through Self-built Timestamp Services](https://code.52pika.cn/index.php/archives/277/) The timestamp function completes the forgery of signatures, allowing the signature timestamp to be within the validity period of the leaked certificate, achieving driver signature and authentication. ## 免责声明 / Disclaimers diff --git a/index.html b/index.html index 72993b3..32d4c0e 100644 --- a/index.html +++ b/index.html @@ -1660,7 +1660,7 @@ README
-

自建时间戳服务器实现伪签名驱动证书

Drivers Signning with Self-Sign Fake Timestamp Servers

自建时间戳服务器实现伪签名驱动证书

项目介绍 / Introduction

购买一个代码签名证书非常昂贵,而在Windows平台上,驱动签名需要EV代码签名证书才能进行WHQL认证,EV代码签名证书一年就需要几千块。

作为个人开发者或者测试驱动需求,购买权威机构的EV代码签名证书是非常不划算的,同时需要公司认证,时间流程都非常麻烦。

微软于2019年7月暂停了EV交叉驱动签名证书CA的签发,意味着这之后不能直接使用EV代码签名,需要WHQL认证。但在这之前签发的证书可以直接签署驱动完成认证。

网上有一些泄露的EV代码签名证书,可以利用《自建时间戳服务实现伪签驱动证书》的时间戳功能完成伪造签名,让签名时间戳在泄露证书有效期内,实现驱动签名和认证。

Purchasing a code signing certificate is very expensive, and on the Windows platform, driver signing requires an EV code signing certificate for WHQL authentication, which costs several thousand yuan per year.

As an individual developer or test driver, purchasing an EV code signing certificate from an authoritative organization is very uneconomical, and requires company certification, which is a very complicated time process.

Microsoft suspended the issuance of EV cross drive signing certificate CA in July 2019, which means that EV code signing cannot be directly used after that and WHQL authentication is required. But certificates issued before this can be directly signed to complete authentication.

There are some leaked EV code signature certificates online, which can be used to implement pseudo signature driver certificates through self built timestamp services( https://code.52pika.cn/index.php/archives/277/ )The timestamp function completes the forgery of signatures, allowing the signature timestamp to be within the validity period of the leaked certificate, achieving driver signature and authentication.

免责声明 / Disclaimers

本文涉及网络安全实验,阅读本文表示您已经阅读、完全理解并承诺遵守下列条款的全部内容:

This article involves network security experiments. Reading this article means that you have read, fully understood, and committed to complying with all the following terms and conditions:

+

自建时间戳服务器实现伪签名驱动证书

Drivers Signning with Self-Sign Fake Timestamp Servers

自建时间戳服务器实现伪签名驱动证书

项目介绍 / Introduction

购买一个代码签名证书非常昂贵,而在Windows平台上,驱动签名需要EV代码签名证书才能进行WHQL认证,EV代码签名证书一年就需要几千块。

作为个人开发者或者测试驱动需求,购买权威机构的EV代码签名证书是非常不划算的,同时需要公司认证,时间流程都非常麻烦。

微软于2019年7月暂停了EV交叉驱动签名证书CA的签发,意味着这之后不能直接使用EV代码签名,需要WHQL认证。但在这之前签发的证书可以直接签署驱动完成认证。

网上有一些泄露的EV代码签名证书,可以利用《自建时间戳服务实现伪签驱动证书》的时间戳功能完成伪造签名,让签名时间戳在泄露证书有效期内,实现驱动签名和认证。

Purchasing a code signing certificate is very expensive, and on the Windows platform, driver signing requires an EV code signing certificate for WHQL authentication, which costs several thousand yuan per year.

As an individual developer or test driver, purchasing an EV code signing certificate from an authoritative organization is very uneconomical, and requires company certification, which is a very complicated time process.

Microsoft suspended the issuance of EV cross drive signing certificate CA in July 2019, which means that EV code signing cannot be directly used after that and WHQL authentication is required. But certificates issued before this can be directly signed to complete authentication.

There are some leaked EV code signature certificates online, which can be used to Implement Pseudo Signature Driver Certificates through Self-built Timestamp Services The timestamp function completes the forgery of signatures, allowing the signature timestamp to be within the validity period of the leaked certificate, achieving driver signature and authentication.

免责声明 / Disclaimers

本文涉及网络安全实验,阅读本文表示您已经阅读、完全理解并承诺遵守下列条款的全部内容:

This article involves network security experiments. Reading this article means that you have read, fully understood, and committed to complying with all the following terms and conditions:

"Implementing Pseudo Signature with Self-Sign Timestamp Servers" Disclaimers - English

Welcome to research and conduct the experiment on "Implementing Pseudo Signature with Self-Sign Timestamp Servers"

Before using this experiment, Please carefully read and agree to the following disclaimer license terms.

@@ -1727,7 +1727,7 @@
Violations
《自建时间戳服务器实现伪签名驱动证书》免责声明 - 简体中文

欢迎您研究并进行《自建时间戳服务器实现伪签名驱动证书》实验(以下简称“本实验”)。

在使用本实验前请您仔细阅读并同意以下免责许可条款,继续则代表您同意条款全部内容。

若您不同意本许可条款的任何内容,请立即停止进行本实验,并删除所有内容及其衍数据。

  1. 术语解释
    1. “实验内容”:包括本网站实验所提供的技术(包括但不限于代码、文件、步骤)及其衍生内容。

    2. “违反法律法规”:指违反本协议所提及的和您所在国家或地区的相关法律法规,及其相关规定。

    3. “作者”:本实验技术的提供者,包括本文档创建人,网站提供者,以及其他提供帮助的主体等。

    4. “使用者”:使用本实验提供的技术(包括但不限于:代码、文件、步骤)及其衍生内容的主体。

    本文件中的关键词“必须”、“不得”、“要求”、“应”、“不应”、“可”、“不可”、“建议”、“旨在”、“仅(供)”和“可选”

    应按照RFC2119中的说明进行解释。

  2. 实验目的
    1. 本实验旨在提供网络安全技术的实践学习和技术研究。

    2. 本实验仅供个人或团体进行非商业性质的技术探索。

  3. 使用限制
    1. 必须承诺本实验的原理仅用于实验和安全技术测试和技术实验,不用于需保密或者重要生产环境。

    2. 不得用于任何违反法律法规的活动,包括但不限于犯罪行为、欺诈、破坏计算机信息系统等。

  4. 法律合规
    1. 必须遵守《中华人民共和国网络安全法》,不得使用本网站任何技术进行违法犯罪活动。

    2. 必须遵守《中华人民共和国刑法》第286条第1款规定,不得使用本网站的任何技术破坏计算机信息系统。

    3. 必须遵守《中华人民共和国电子签名法》第32条,不得使用本网站的任何技术伪造、冒用、盗用他人的电子签名

    4. 必须遵守中国以及其他所在国家和地区的法律法规,不得使用本网站的任何技术违反法律法规,或者给其他任何个人、团体造成问题或者损失。

  5. 免责声明
    1. 本实验提供技术实验和安全技术测试之用,不对使用者的行为负责

    2. 本实验的原理发布在Github上,任何人均可自由获取和使用,作者不对实验的使用者行为负责。

    3. 本实验的原理可能存在技术问题、安全问题或其他问题,使用者需自行承担使用风险,并采取必要的安全措施保护自身和他人的利益。

    4. 作者对于使用本实验的原理所产生的任何直接或间接损失,包括但不限于利润损失、数据损失、业务中断等,不承担责任。

    5. 本网站保留在任何时候中断或终止本服务的权利,而无需提前通知使用者。

  6. 违规情形

    您如果违反上述条款的任何内容,您将完全独立承担带来的任何法律以及其他责任和后果。

请您在使用本服务前认真阅读并理解上述免责许可条款。若您同意并接受上述条款,请继续使用本实验。

如有任何疑问或需要进一步解释,请联系我们。

-

简易使用 / Quick Usage

简易使用方法

  1. 下载时间证书信任工具:数字证书安装工具,双击EXE,根据安装流程信任证书文件

  2. 安装泄露驱动签名证书:我不提供任何证书,你可以去查找(FuckCertVerifyTime

  3. 下载驱动代码签名工具:亚洲诚信签名工具,打开软件选择[自定义时间戳]进行签名

     

  4. Download Time Certificate Trust Tool: Digital Certificate Installation Tool

  5. Install leaked driver signature certificate: I do not provide any certificate (FuckCertVerifiyTime)

  6. Download the driver code signing tool: Asia Integrity Signature Tool, open and select [Custom Timestamp] to sign

驱动生成CAT / Driver Cat Create Usage

添加时间方法 / Time Signature Methods

添加时间示例 / Signature Examples

单独添加时间戳(序号=1)
代码签名时间戳(SHA160)
代码签名时间戳(SHA256)

实现原理 / Principles

  • 微软内核模式驱动代码签名要求:

    20230425155145

    适用于: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 位
    需要签名:嵌入文件或目录文件嵌入文件或目录文件嵌入文件或目录文件嵌入文件或目录文件
    签名算法:SHA2SHA2SHA2SHA2
    证书:代码完整性信任的标准根代码完整性信任的标准根Microsoft 根证书颁发机构 2010、Microsoft 根证书颁发机构、Microsoft 根证书颁发机构Microsoft 根证书颁发机构 2010、Microsoft 根证书颁发机构、Microsoft 根证书颁发机构
  • 微软禁用内核驱动强制签名方法:

    • Windows 10 1607 之后UEFI引导模式,并且开启Secure Boot选项:

      • 无法开启测试模式,不能通过修改BCD解决可以使用EFIGuard

      • 每次可以开机进入高级模式-选择禁用内核驱动强制签名启动

    • Windows 10 1607 之前,Win8/8.1/7/Vista,或者关闭Secure Boot:

      • 开启测试模式

      • 也可以每次可以开机进入高级模式-选择禁用内核驱动强制签名启动

  • 伪造签名原理

    伪造签名原理

    • 自建伪造时间戳服务器

      • 自建CA证书(CA=TRUE,密钥用法=Certificate Signing, Off-line CRL Signing, CRL Signing,增强型密钥用法=2.5.29.32.0)
      • 自签时间戳签名证书(密钥用途=Digital Signature,增强型密钥用法=时间戳 ,OCSP-URL,CRL-URL)
      • 设置CRL地址(推荐Nginx,把CRL文件放入对应地址),或者设置OCSP服务器(OpenSSL OCSP)
      • 搭建并启动时间戳响应服务器(RFC3161以及Authenticode格式 ,需要同时支持SHA1+SHA256)

 

自建时间服务 / TSA Server

直接修改配置文件(推荐)

  • 打开文件

     

VS编译构建时间戳服务器

  • 下载项目

  • 修改代码

    编辑:TimeTool/Develop/TimeStamping/Program.cs

    如果要使用伪造服务器,则此处填写true,如果要使用真实时间,应当填写false

  • 编译构建

    输出:TimeTool/Develop/TimeStamping/bin/Debug

Windows部署服务(推荐)

  1. 创建一个CA和时间戳证书,参考XCA自制CA证书并签发时间戳证书

  2. 放置证书文件到当前的运行目录内,需要参考下面的文件说明:

    • TSA.crt 证书Base64编码

    • TSA.key 密钥Base64编码

  3. 双击:TimeStamping.exe即可运行

Ubuntu部署服务(不推荐)

安装Wine

安装.Net

  • 自动安装
  • 手动安装

    1. 下载文件 wine-mono-7.4.0-x86.msi

    2. 安装上一步下载的MSI文件(wine-mono-7.4.0-x86.msi)

  • 运行服务

    创建一个CA和时间戳证书,参考XCA自制CA证书并签发时间戳证书

    放置证书文件到当前的运行目录内,需要参考下面的文件说明:

    • TSA.crt 证书Base64编码

    • TSA.key 密钥Base64编码

构建签名工具 / Build Sign Tool

直接修改hook.ini文件(推荐)

  • 修改文件

VS编译HookSigntool

  • 下载项目

  • 修改代码

    编辑:SignTool/Hooktool/main.cpp

    将里面的http://time.pika.net.cn/fake/RSA/修改为http://你的地址/路径

  • 编译构建

    输出:SignTool/Hooktool/bin/Debug

     

参考资料 / Reference

[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] 数字证书伪造与利用(仅方便用于驱动开发人员的调试,不得非法使用), +

简易使用 / Quick Usage

简易使用方法

  1. 下载时间证书信任工具:数字证书安装工具,双击EXE,根据安装流程信任证书文件

  2. 安装泄露驱动签名证书:我不提供任何证书,你可以去查找(FuckCertVerifyTime

  3. 下载驱动代码签名工具:亚洲诚信签名工具,打开软件选择[自定义时间戳]进行签名

     

  4. Download Time Certificate Trust Tool: Digital Certificate Installation Tool

  5. Install leaked driver signature certificate: I do not provide any certificate (FuckCertVerifiyTime)

  6. Download the driver code signing tool: Asia Integrity Signature Tool, open and select [Custom Timestamp] to sign

驱动生成CAT / Driver Cat Create Usage

添加时间方法 / Time Signature Methods

添加时间示例 / Signature Examples

单独添加时间戳(序号=1)
代码签名时间戳(SHA160)
代码签名时间戳(SHA256)

实现原理 / Principles

 

自建时间服务 / TSA Server

直接修改配置文件(推荐)

VS编译构建时间戳服务器

Windows部署服务(推荐)

  1. 创建一个CA和时间戳证书,参考XCA自制CA证书并签发时间戳证书

  2. 放置证书文件到当前的运行目录内,需要参考下面的文件说明:

    • TSA.crt 证书Base64编码

    • TSA.key 密钥Base64编码

  3. 双击:TimeStamping.exe即可运行

Ubuntu部署服务(不推荐)

安装Wine

安装.Net

构建签名工具 / Build Sign Tool

直接修改hook.ini文件(推荐)

VS编译HookSigntool

参考资料 / Reference

[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/

\ No newline at end of file