How to stop unapproved installs, remote access tools, and shadow IT from ever launching, instead of finding them after the fact.
Unauthorized software doesn't announce itself. An employee installs a free file-transfer tool to send a large attachment, a contractor sets up an unapproved remote access client for "just this once," or a department quietly adopts a cloud storage app IT never signed off on. None of that shows up as a security alert, because nothing was technically breached. It's just software running that shouldn't be, and every instance is a gap in your inventory, your license compliance, and potentially your attack surface.
Blocking unauthorized software before it runs, rather than discovering it after the fact, is what a block-list-based application control policy is built for.
Traditional approaches to this problem rely on discovering unauthorized software after installation, through periodic scans, help desk tickets, or a security review. That works, but it's always after the fact. By the time you find it, the software has already been running, potentially for weeks, with no policy governing what it can do or how it got there in the first place.
A block-list enforcement policy flips that sequence. Instead of finding unauthorized software after it's installed, you define what's prohibited in advance and the policy stops it from launching, every time, on every device it's assigned to.
Not every unauthorized application carries the same risk. A practical starting list typically includes:
Unauthorized remote access tools that weren't provisioned by IT, a common vector for both data exfiltration and social-engineering-driven support scams.
Unsanctioned cloud storage and file-sync clients that move company data outside approved, audited storage.
Unlicensed or cracked software, which carries both legal exposure and a materially higher malware risk since it often bypasses vendor integrity checks.
Peer-to-peer file sharing applications, still a common source of bandwidth abuse and malware exposure on corporate networks.
Browser or utility software with known abuse patterns in your environment, tools that show up repeatedly in your shadow IT findings.
A block list policy is the inverse of an allowlist: everything runs by default except the applications explicitly named on the list. NIST SP 800-167 frames this as the more familiar, lower-friction enforcement model, since it mirrors how traditional antivirus signature lists work, though it only stops threats already on the list rather than anything unrecognized. That makes it the practical option for broad deployment across a fleet, since you're only restricting a defined set of known problem applications rather than requiring approval for every piece of software an employee might legitimately need. For a full comparison of when a block list makes more sense than a default-deny allowlist, see the Application Control overview.
In Zecurit Endpoint Manager, this starts with creating an Application Group and setting its Access Type to Block List. From there, you associate rules using whichever method fits the application: a Product/Software rule to block a named title outright, a Vendor rule to block everything from a specific publisher, an Executable rule to target a specific binary, a File Hash rule for precise version control, or a Folder Path rule to block anything launching from a commonly abused, user-writable directory. Rules can be added individually, pulled from an existing rule library, or imported in bulk via CSV, useful when you're standing up a block list against a known category of prohibited applications across dozens of entries at once.
Each Application Group also carries a Risk Level, so a block list targeting high-risk categories (unauthorized remote access, unlicensed software) can be tagged and prioritized differently from a lower-risk group.
Once your block list is built, the Deployment Policy determines what happens when someone tries to run a blocked application:
Block & Notify stops execution and shows the user a message explaining why, useful when you want the block to double as a policy reminder.
Block Execution silently prevents the app from launching with no user interaction, appropriate for clear-cut prohibited categories where no explanation is needed.
Notify Only lets the application run but warns the user, a useful staging step before moving to a hard block.
Audit Only logs the attempt without blocking it, the right starting point if you want to confirm how often a given application actually gets used before committing to enforcement.
Blocking is only half the workflow. Zecurit's violations dashboard shows every blocked attempt broken down by device, user, application, application version, group, policy, and reported time, so you can confirm the block list is actually catching what it's supposed to catch, spot repeat offenders, and build the case for formally sanctioning an application if the same "unauthorized" tool keeps showing up because it's solving a real business need. For a deeper look at detecting and eliminating prohibited software across your fleet, see our page on prohibited software detection with ITAM.
Build a block list in minutes, target it by product, vendor, executable, hash, or folder path, and see every blocked attempt on a live violations dashboard, device, user, and policy included.
• No credit card required • 14 day free trial
That's what an Audit Only period is for. Run your proposed block list in audit mode first, review what actually gets flagged, and confirm nothing on the list is serving a legitimate, undocumented business need before switching to active blocking.
A block list only restricts the specific applications you name, everything else runs freely, which makes it faster to deploy against a known category of prohibited software. An allowlist blocks everything except what's explicitly approved, which is stronger security but requires more upfront policy work. Most teams use a block list for broad-fleet unauthorized software control and reserve allowlisting for their highest-risk device groups.
Start with an audit-mode policy across your fleet, or pull from existing software inventory data to see what's currently installed. Both approaches give you a real baseline instead of building a block list from assumptions.