【发布时间】:2010-11-15 10:01:04
【问题描述】:
我开始为我们的应用程序评估 symantec scanengine 5.2。它是一个用户可以上传文件的门户网站。
我目前正在使用扫描引擎附带的 C# API 并使用 StreamScanRequest 来扫描流,因为我们正在传递用户上传的字节数组(文件)。但在文档和示例中提到我们需要调用 3 种不同的方法来设置和扫描文件,即 start、send 和 finish。
通过定义StreamScanRequest,抽象了流文件扫描机制。这用于扫描扫描引擎无法访问的文件。
那为什么需要将文件名发送到 start() 方法
public abstract bool Start(
string fileToScan,
string fileNameOnDisk
)
我们只是将用户收到的字节直接发送到扫描引擎以获取完整 保护。如果我们需要先将字节写入文件,然后将其发送到扫描引擎,那么安全的重点是什么。
有人能解释一下 start 方法的确切用途以及提供给它的文件名的原因吗??
【问题讨论】:
-
如果您使用 StreamScanRequest,似乎为这两个参数传递 null 是合法的。在我的测试中,传递 null 似乎没有任何不良影响。仍会检测到受感染的流。