Demystifying Data Discovery and Classification with the EaseFilter SDK
In modern enterprise environments, data sprawl is inevitable. Sensitive information constantly moves across local storage, cloud sync folders, and endpoints. Before an organization can effectively protect its data, it must answer two foundational questions: Where does our sensitive data live? and What kind of data is it?
This is where Data Discovery and Data Classification come in. While many traditional tools rely on periodic, scheduled scans that leave dangerous security blind spots, building a solution with the EaseFilter SDK allows you to shift from passive scanning to real-time, continuous data governance.
Here is a breakdown of how data discovery and classification work, and how you can implement them at the kernel level using EaseFilter.
What Are Data Discovery and Classification?
Though they are deeply interconnected, discovery and classification serve two distinct purposes in a data security posture:
- Data Discovery: The systematic process of finding and identifying sensitive data—such as Personally Identifiable Information (PII), financial records, or intellectual property—across an organization's file systems. It answers the question, "Where is the data?"
- Data Classification: The process of categorizing and labeling the discovered data based on its sensitivity, business value, and regulatory risk (e.g., Public, Internal, Confidential, Restricted). It answers the question, "How should this data be protected?"
A discovered dataset without a classification label cannot drive a security policy, and a classification label applied to data no one can locate is useless. They must work together.
How EaseFilter SDK Enables Real-Time Discovery
The EaseFilter SDK provides a powerful Windows kernel-mode file system filter driver. Instead of waiting for a batch process to index a hard drive at midnight, EaseFilter intercepts file I/O requests (like create, read, write, and rename) at the lowest tier of the operating system. This enables you to build tools that discover data the exact moment it is created or modified.
1. Intercepting Data in Motion
By registering I/O callbacks in your C# or C++ application, you can inspect file contents in real time.
- Content Inspection: When a user or application saves a document, EaseFilter catches the write operation via callbacks like OnPreFileWrite or OnPostFileWrite. You can scan the incoming data stream for sensitive patterns (using regex, keyword matching, or AI/ML integrations) before the data is fully committed to disk.
- Contextual Discovery: Modern discovery requires context. EaseFilter provides rich metadata for every operation, including the User ID, Process ID, and exact file path. This helps your application determine if a file is sensitive based on who created it or which application (e.g., an accounting software process) generated it.
2. Implementing Dynamic Data Classification
Once data is discovered and analyzed, it must be persistently classified. EaseFilter allows you to embed classification tags seamlessly.
- Metadata Tagging: You can use NTFS Alternate Data Streams (ADS) or custom file headers to append classification labels (e.g., Sensitivity=Confidential) directly to the file without altering the primary content.
- Persistent Labels: Because the tag travels with the file, subsequent access requests will immediately recognize the file's risk tier without needing to rescan its contents, drastically improving system performance.
3. Turning Visibility into Enforcement
Discovery and classification are only useful if they empower you to reduce risk. EaseFilter bridges the gap between visibility and control by allowing you to enforce real-time policies based on your classifications:
- Granular Access Control: If a file is classified as "Confidential," you can configure a rule using the File Control Filter Driver SDK to block untrusted processes, AI desktop agents, or unauthorized users from reading, moving, or exfiltrating it.
- Transparent Encryption: By combining your classification logic with EaseFilter's Transparent file Encryption SDK, the moment a file is flagged as containing PII, it can be automatically encrypted on-the-fly. Even if the file is stolen, the payload remains unreadable.
A Typical Implementation Workflow
Integrating these concepts into your application generally follows a straightforward pipeline:
- Initialize the Filter: Set up the FilterControl object to monitor specific directories, network shares, or file extensions.
- Define Rules & Callbacks: Create rules specifying which processes to monitor and register callbacks for file writes and creations.
- Inspect & Classify: Within your callback function, analyze the file buffer. If sensitive data (like a credit card number) is detected, append an ADS tag to classify the file.
- Enforce Policy: Use pre-I/O callbacks (like OnPreFileRead) to check the file's classification tag upon future access attempts. Allow or block the operation based on the requesting user or process.
Conclusion
Data discovery and classification are no longer point-in-time, compliance-box-ticking exercises; they require continuous observation. By leveraging the EaseFilter SDK, developers can build robust, performant data security platforms that not only map the enterprise data landscape but actively defend it at the operating system's core.