我收到以下代码的hp fortify警告:
FileStream fs = null;
StreamWriter writer = null;
try
{
fs = new FileStream(sFileName, FileMode.Open, FileAccess.Write);// Path Manipulation error
writer = new StreamWriter(fs);
我没有删除我的代码中的文件,所以如果用户提供某些配置的路径,我的代码是安全的,所以我不确定为什么会发出警告?
任何人都可以建议我任何替代方案吗?
答案 0 :(得分:1)
Fortify不知道文件是什么,它在哪里或其他任何东西。以Fortify可以看到应用程序受到恶意用户保护的方式编写代码。
验证路径,以便我无法传递名为c::f2
的文件,不依赖于文件系统权限。我假设稍后您想要阅读该文件,请在那里进行相同的验证。
我还会验证MIME类型,文件大小,并检查奇怪的字符。