FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本


FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本
文章图片
Digital-Signature-HijackDigital-Signature-Hijack是一款针对数字签名劫持攻击的PowerShell脚本 。
在现代Windows操作系统中 , 代码签名技术用于帮助用户识别来自不可信源的可信二进制文件 。 二进制文件通过使用数字证书进行签名 , 数字证书包含有关发布者 , 嵌入的私钥和公钥的信息 。 该脚本专为安全研究人员设计 , 开发人员通常会对其代码进行签名 , 以便向用户保证他们的软件是可信的 , 而且没有被恶意修改 。 这都通过使用数字签名来完成的 。 因此 , 签名代码是一种验证文件的真实性和完整性的方法 。
功能介绍1、以微软身份对目标主机中所有的可执行文件进行数字签名;
2、以微软身份对目标主机中所有的PowerShell脚本文件进行数字签名;
3、验证所有可移植可执行文件的数字签名;
4、验证所有PowerShell脚本文件的数字签名Digital-Signature-Hijack通过劫持注册表并添加必要的值 , 以及利用MattGraeber开发的自定义SIPDLL文件来实现其功能 。 因此 , 用户需要将MySIP.dll文件的路径修改为对应的本地路径:MySIP.dll-https://github.com/mattifestation/PoCSubjectInterfacePackage
工具下载广大研究人员可以使用下列命令将该项目文件克隆至本地:
gitclonehttps://github.com/netbiosX/Digital-Signature-Hijack.git工具演示对可执行文件进行签名:
FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本
文章图片
验证签名有效性:ValidateSignaturePE
FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本
文章图片
对PowerShell脚本文件进行签名:
SignPS
FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本
文章图片
验证签名有效性:
ValidateSignaturePS【FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本】
FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本
文章图片
项目地址Digital-Signature-Hijack:【GitHub传送门】
参考资料1、https://pentestlab.blog/2017/11/06/hijacking-digital-signatures/
2、http://www.exploit-monday.com/2017/08/application-of-authenticode-signatures.html
3、https://specterops.io/assets/resources/SpecterOps_Subverting_Trust_in_Windows.pdf
4、https://www.*******.com/watch?v=wxmxxgL6Nz8
5、https://blog.conscioushacker.io/index.php/2017/09/27/borrowing-microsoft-code-signing-certificates/
参考来源thelinuxchoice
FreeBuf|Digital-Signature-Hijack:一款针对数字签名劫持的PowerShell脚本
文章图片