For the “SMB::FILE OPEN” action, I believe you would see this action when viewing a network shared folder. The SMB::FILE OPEN action applies to both files and directories, and I believe there is a flag in one of the SMB headers that specifies if it is a folder.
For the “extracted files” issue, that sounds strange, but if the files appear in the “extracted” folder, then those executables are being transferred across the wire. I don’t think Zeek could collect those files otherwise. The only thing I can think of at the moment is that Microsoft Windows has a feature called AutoRun or AutoPlay. Best practice is to disable it, but if it is enabled on your Windows machines, then perhaps it could explain the behavior.
Microsoft article on how to disable AutoRun/AutoPlay:
I have tested this scenario from 2 clients - one a VM running Win10 (1909) and the other a physical machine. Both displayed the same symptoms on Zeek even with AutoRun/ Play disabled.
In the “bro_smb_files” event type, an action of “SMB::FILE OPEN” is observed for all the executables in the folder.
In the “bro_files” event type, these files are extracted.
Referencing previous queries on action “SMB::FILE OPEN”, is it possible that this action caused executables to be extracted “on the fly”?
As a troubleshooting measure, perhaps you could add SMB::FILE_READ and SMB::FILE_WRITE to the list of logged file actions. Per the zeek article, the SMB::FILE_OPEN action alone is not representative of a file being transferred. The workstation would need to execute a READ action or a WRITE action. That may help narrow it down.