MSDN: “The FILE_FLAG_BACKUP_SEMANTICS flag specified in the call to CreateFile gives the backup application process permission to read the access-control settings of the file or directory. With this permission, the backup application process can then call GetKernelObjectSecurity and SetKernelObjectSecurity to read and than reset the access-control settings.”.
However there is another (undocumented) behavour of FILE_FLAG_BACKUP_SEMANTICS flag. It allows non-privileged user to flush buffers on a volume.
The documentation for FlushFileBuffers function contradicts the found undocumented behavour: “To flush all open files on a volume, call FlushFileBuffers with a handle to the volume. The caller must have administrative privileges.”
Read this discussion on kernel NG.