我正在尝试为流行的开源安全应用程序ZAP构建基本的下载文件扫描扩展程序。使用内置的嗅探器,我可以访问HTTP响应消息。我无法确定正在下载的文件的文件类型。尽管关于HTTP的Mozilla blog讨论了使用“ Content-Type”标头中的MIME类型来确定文件类型,但是我发现我收到的响应消息中没有application/json
或text/html
或application/octet-stream
。如何确定相应的HTTP响应正文是否包含任何特定的文件类型? 。因此,我陷入了死胡同!
我是该领域的初学者,可能有些东西让我望而却步。任何帮助或指示,将不胜感激。
答案 0 :(得分:2)
Content-Type实体标头字段指示发送给接收者的实体主体的媒体类型,或者,对于HEAD方法,如果请求是GET,则应发送的媒体类型。 / p>
来自https://tools.ietf.org/html/rfc2616,位于“ 14.17 Content-Type”下
他们以这个为例:
Content-Type: text/html; charset=ISO-8859-4
此HTTP请求或响应包含HTML正文形式的文本。
如果您不信任此标头(大多数情况下可以),那么下一步将是分析文件内容。例如,如果文件包含打开和关闭HTML标记,则很有可能该文件是HTML文件。如果文件以[
或{
开头并以]
或}
结尾,则很有可能是JSON文件。当然,实际分析应该而且应该更加详细。