我目前正在研究一个项目,以评估上载的*.xlsx
文件是否仅是*.xlsx
文件,而不是扩展名已更改的*.xlsm
。
由于*.xlsx
文件或多或少是*.zip
文件,因此我提取了内容并注意到某些文件包含*.bin
文件,而其他文件则不包含。尽管excel文件可能是合法文件,但没有试图通过欺骗用户重命名来注入另一个扩展名。
因此我的问题:xlsx
文件何时包含*.bin
文件?而且此方法是否适合检测xlsx
文件是否包含宏?
我也在检查[content_types].xml
文件的内容以包含以下任一字符串:application/vnd.ms-office.vbaproject
和application/vnd.ms-excel.sheet.macroenabled
。
xlsx文件何时包含* .bin文件?
嗯,不仅要创建具有宏的工作簿,而且还要为其中嵌入了OLE对象的工作簿创建bin文件。
尝试一下。创建一个新的工作簿,然后单击Developer Tab | Insert ActiveX control - Say Commandbutton
。保存并关闭文件为.xlsx
。重命名为.Zip
并检查zip文件
编辑:
也是,有时打印机设置也是如此。快速搜索并发现了THIS链接