【问题标题】:Prevent malicious code embedding防止恶意代码嵌入
【发布时间】:2019-02-01 04:37:45
【问题描述】:

开发人员可以采取哪些措施来防止将恶意代码嵌入到他们的可执行文件中。

与 msfvenom 一样,metasploit 可以将有效负载嵌入到任何可执行文件中。

【问题讨论】:

    标签: c# .net windows shellcode metasploit


    【解决方案1】:

    不多。

    1. 购买证书并签署您的可执行文件。 exe 中的任何更改都会破坏数字签名,因此至少最终用户可以看到更改。

    2. 遵循安全最佳实践。例如,仅将您的可执行文件安装到 C:\Program Files 中,如果您愿意,尝试修改安装目录中的任何内容都需要提升。不要在用户的个人资料文件夹中安装任何二进制文件(谷歌浏览器会这样做,而且非常糟糕)。

    3. 最重要的是,将您的应用转换为 UWP 平台并通过 Windows 商店发布。那里的安全模型比 Windows 桌面应用要好得多。

    【讨论】:

    • 不幸的是,默认情况下,Windows 甚至不检查应用程序的签名。您必须自己检查应用程序签名的有效性。此外,这并不能防止恶意代码被注入到应用程序的内存副本中。
    • @PMF 是的,我知道(除非它是设备驱动程序)。但至少最终用户可以看到更改,右键单击,属性,“数字签名”选项卡,“详细信息”将显示“此数字签名无效”。至于仅 RAM 注入,如果您的 PC 上运行有 SeDebugPrivilege 帐户下的恶意代码,那么担心在可执行文件中嵌入代码为时已晚,整个 PC 已经搞砸了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多