【问题标题】:Running Fortify on .dll files as well as .cs在 .dll 文件和 .cs 上运行 Fortify
【发布时间】:2014-05-15 02:30:41
【问题描述】:

现有问题的.NET 版本Can I run fortify on .jar files instead of .java?

我的团队正在使用 Fortify 5.15.0.0060。我们正在 Visual Studio 中扫描 .NET 项目,项目设置显示以下命令行参数:

-vsversion 10.0 "-b" "project" "-machine-output" "-scan" "-f" "C:\Users\user\AppData\Local\Fortify\VS2010-3.80\project\Scan.fpr" "-format" "fpr" 

这突出了我们的 .cs 源代码文件中的问题,但似乎没有查看构成我们解决方案一部分的 DLL(并且这些 DLL 与我们的二进制文件一起复制到我们的输出目录)。对于其中许多库,我们无法访问 .pdb 文件,但希望 Fortify 能够进行有限的扫描。

是否可以添加命令行参数来包含 DLL 文件,有/没有 PDB 文件?

【问题讨论】:

  • Afaik,Fortify 只有源代码扫描器,没有反编译器。您可以使用 Reflector 或 ILSpy 等工具自己帮助和反编译 DLL。请注意收到无法修复的警告的可疑好处。

标签: c# security dll fortify


【解决方案1】:

对于 .Net,Fortify 只能扫描具有 .pdb 的程序集,因为它使用 ildasm.exe 反编译程序集,然后使用 .pdb 匹配源文件。不幸的是,您无法扫描这些额外的程序集。

如果您有 .pdb 文件,您可以让 Fortify 扫描它们,但是您可能无法在结果中看到完整的源代码。要包含这些程序集,您需要在翻译选项中指定它们。如果你是从命令行做这一切,那么你会这样做:

sourceanalyzer -b project -vsversion 10.0 projectPath\Additional.Assembly.1.dll projectPath\Additional.Assembly.2.dll projectPath\Additional.Assembly.3.dll
sourceanalyzer -b project -scan -f MyResults.fpr

如果您尚未更新您的 Fortify 版本,我强烈建议您这样做。

【讨论】:

  • 我可以使用 **/**/*.dll**/*.dll 这样的东西来查找所有 .dll 文件吗?
猜你喜欢
  • 1970-01-01
  • 2013-04-23
  • 2013-12-04
  • 2017-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-10
相关资源
最近更新 更多