Annoying Problems with third party FS encryptors

This is an Inter-OP issue with a third party FS encryptor product which
aparantly seems to be violating some rules.

When this software is installed the File Properties ->Advanced -> Encrypt
Contents check box gets greyed out and one cannot use EFS. However, going
through the local policy settings makes us believe that they are not
creating any such policy, but instead their filter driver is removing the
encryption bit (and maybe something more).

Our product wants that a particular directory remain unencrypted through EFS
or other wise. So we were calling the EncryptionDisable API to achieve
this.

With the third party product installed, this API starts failing, reason :
the desktop.ini file created by this API is being encrypted by this product
and this probably confuses EFS.

The error returned is generic (end of file reached). So we cannot even do
handling on it.

The problem is, if we remove the call to this API, and some where down the
line the user uninstalls the third party encryptor, then our folder will be
available of encryption and this will break functionality.

I have tried this:

Use IoCreateFileSpecifyDeviceHint and created the desktop.ini file
(bypassing all filters) with the right settings, but I am not sure, whether
the original API does something more which I am not doing. Things seem to
work, but I am unhappy about bending the rules here…

Earlier, to avoid our files (in this specific folder) to be encrypted by
such third party products we had to use teh same api instead of
ZwCreateFile.
BTW, we are at volume level, and not a file system filter.

Any suggestions on how to better bypass this issue? No we cannot contact
this third party vendor.

  • amitr0

“amitr0” wrote in message news:xxxxx@ntfsd…
>Any suggestions on how to better bypass this issue? No we cannot contact
>this third party vendor.

It’s not unreasonable to believe that whatever product this is has its own
proprietary interface to manage encryption on its file. Also not
unreasonable to find out that they are not compatible with EFS.

However, if using EFS is a requirement for your product and this product
doesn’t support EFS semantics, then I’m not sure how you work something out
if you can’t/won’t contact the other developer. About the only things you
can do are to document the restriction or bypass it and work out any bugs
that might show up.

As an aside, how to you deal with the case of someone marking the file as
unencrypted via EFS? Presumably this would require the same amount of
privilege as removing the other encryption product and decrypting the file
in the process.

-scott


Scott Noone
Consulting Associate and Chief System Problem Analyst
OSR Open Systems Resources, Inc.
http://www.osronline.com