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