implementing-honeypot-for-ransomware-detection
Deploys canary files, honeypot shares, and decoy systems to detect ransomware activity at the earliest possible stage. Configures canary tokens embedded in strategic file locations that trigger alerts when ransomware attempts encryption, uses honeypot network shares that mimic high-value targets, and deploys Thinkst Canary appliances for comprehensive deception-based detection. Activates for requests involving ransomware honeypots, canary files, deception technology for ransomware, or early ransomware alerting.
What this skill does
# Implementing Honeypot for Ransomware Detection
## When to Use
- Deploying early-warning detection for ransomware encryption attempts using canary files
- Creating honeypot file shares that detect lateral movement and data staging before encryption
- Supplementing EDR and SIEM-based detection with deception-layer alerts that have near-zero false positives
- Detecting ransomware variants that evade signature-based detection by triggering on file modification behavior
- Validating that ransomware detection capabilities work by testing with controlled encryption tools
**Do not use** as the sole ransomware detection mechanism. Honeypots are a high-confidence supplementary layer, not a replacement for EDR, network monitoring, and backup protection.
## Prerequisites
- File server or NAS infrastructure where canary files can be deployed
- Windows File Server Resource Manager (FSRM) or equivalent file activity monitoring
- Thinkst Canary or similar deception platform (optional, for advanced deployment)
- SIEM platform for centralizing honeypot alerts
- Administrative access to deploy canary files across file shares
- Network segment for honeypot systems (if deploying full honeypot servers)
## Workflow
### Step 1: Deploy Canary Files on File Shares
Place canary files in strategic locations that ransomware will encounter during encryption:
```powershell
# Deploy canary files across all file shares
# Files are named to appear early in alphabetical and directory order
# Ransomware typically encrypts alphabetically or by directory traversal
$shares = @("\\fileserver01\finance", "\\fileserver01\hr", "\\fileserver01\engineering")
$canaryNames = @(
"!_IMPORTANT_DO_NOT_DELETE.docx",
"000_Budget_2026_FINAL.xlsx",
"_Confidential_Employee_Records.pdf",
"AAAA_Quarterly_Report.docx"
)
foreach ($share in $shares) {
foreach ($name in $canaryNames) {
$targetPath = Join-Path $share $name
# Create a legitimate-looking file with canary content
# The file contains a unique token that triggers on access
$content = "This document contains confidential financial data.`n"
$content += "Q4 2025 Revenue: $42.3M | Q1 2026 Forecast: $45.1M`n"
$content += "Prepared by: Finance Department`n"
Set-Content -Path $targetPath -Value $content
# Set file as hidden system to avoid user interaction
$file = Get-Item $targetPath
$file.Attributes = [System.IO.FileAttributes]::Hidden
}
}
# Also deploy in subdirectories (ransomware traverses recursively)
$subDirs = Get-ChildItem -Path "\\fileserver01\finance" -Directory -Recurse | Select-Object -First 20
foreach ($dir in $subDirs) {
$canaryPath = Join-Path $dir.FullName "!_Budget_Summary.xlsx"
Set-Content -Path $canaryPath -Value "Canary file for ransomware detection"
(Get-Item $canaryPath).Attributes = [System.IO.FileAttributes]::Hidden
}
```
### Step 2: Configure File Integrity Monitoring on Canary Files
**Windows FSRM approach:**
```powershell
# Configure FSRM to monitor for ransomware file extensions
# and canary file modifications
Install-WindowsFeature -Name FS-Resource-Manager -IncludeManagementTools
# Create file screen for known ransomware extensions
$ransomExtensions = @(
"*.encrypted", "*.locked", "*.crypto", "*.crypt",
"*.locky", "*.cerber", "*.zepto", "*.thor",
"*.aesir", "*.zzzzz", "*.wallet", "*.onion",
"*.wncry", "*.wcry", "*.lockbit", "*.BlackCat",
"*.ALPHV", "*.rhysida", "*.play"
)
# Create file group for ransomware extensions
New-FsrmFileGroup -Name "Ransomware_Extensions" -IncludePattern $ransomExtensions
# Create file screen template
New-FsrmFileScreenTemplate -Name "Ransomware_Screen" `
-IncludeGroup "Ransomware_Extensions" `
-Active:$false # Passive mode: alert without blocking
# Apply to all monitored shares
$monitoredPaths = @("D:\Shares\Finance", "D:\Shares\HR", "D:\Shares\Engineering")
foreach ($path in $monitoredPaths) {
New-FsrmFileScreen -Path $path -Template "Ransomware_Screen"
}
```
**Canary file modification monitoring with PowerShell FileSystemWatcher:**
```powershell
# Real-time canary file monitoring service
$canaryPaths = @(
"D:\Shares\Finance\!_IMPORTANT_DO_NOT_DELETE.docx",
"D:\Shares\HR\000_Budget_2026_FINAL.xlsx",
"D:\Shares\Engineering\_Confidential_Employee_Records.pdf"
)
$watcher = New-Object System.IO.FileSystemWatcher
$watcher.Path = "D:\Shares"
$watcher.Filter = "*"
$watcher.IncludeSubdirectories = $true
$watcher.EnableRaisingEvents = $true
$action = {
$path = $Event.SourceEventArgs.FullPath
$changeType = $Event.SourceEventArgs.ChangeType
$timestamp = $Event.TimeGenerated
# Check if modified file is a canary
$isCanary = $false
foreach ($canary in $canaryPaths) {
if ($path -eq $canary) { $isCanary = $true; break }
}
if ($isCanary -or $changeType -eq "Renamed") {
$alertMsg = "RANSOMWARE ALERT: Canary file modified! Path: $path | Change: $changeType | Time: $timestamp"
# Log to Windows Event Log
Write-EventLog -LogName Application -Source "RansomwareCanary" `
-EventID 9999 -EntryType Error -Message $alertMsg
# Send SIEM alert via syslog
# Trigger automated containment
}
}
Register-ObjectEvent $watcher "Changed" -Action $action
Register-ObjectEvent $watcher "Deleted" -Action $action
Register-ObjectEvent $watcher "Renamed" -Action $action
```
### Step 3: Deploy Honeypot Network Shares
Create decoy file shares that appear to contain high-value data:
```powershell
# Create honeypot share on dedicated server
# This server monitors ALL file access and alerts on any activity
New-Item -Path "D:\HoneypotShares\Executive_Compensation" -ItemType Directory
New-Item -Path "D:\HoneypotShares\M&A_Documents" -ItemType Directory
New-Item -Path "D:\HoneypotShares\Board_Meeting_Notes" -ItemType Directory
New-Item -Path "D:\HoneypotShares\Customer_Database_Exports" -ItemType Directory
# Share with broad read access (enticing to attackers)
New-SmbShare -Name "Executive_Compensation" `
-Path "D:\HoneypotShares\Executive_Compensation" `
-FullAccess "DOMAIN\Domain Users" `
-Description "Executive Compensation Files - Restricted"
# Populate with realistic-looking but fake documents
# Use document templates that look legitimate
$docContent = @"
CONFIDENTIAL - Executive Compensation Summary
FY 2026 Base Salary and Bonus Structures
CEO: [REDACTED] | CFO: [REDACTED] | CTO: [REDACTED]
Total Compensation Package: See Appendix A
"@
Set-Content -Path "D:\HoneypotShares\Executive_Compensation\FY2026_Comp_Summary.txt" -Value $docContent
# Enable detailed audit logging on honeypot share
$acl = Get-Acl "D:\HoneypotShares"
$auditRule = New-Object System.Security.AccessControl.FileSystemAuditRule(
"Everyone", "ReadAndExecute,Write,Delete", "ContainerInherit,ObjectInherit",
"None", "Success,Failure"
)
$acl.AddAuditRule($auditRule)
Set-Acl "D:\HoneypotShares" $acl
# Enable object access auditing via GPO
auditpol /set /subcategory:"File System" /success:enable /failure:enable
```
### Step 4: Deploy Thinkst Canary Tokens
For organizations using Thinkst Canary or the free canarytokens.org service:
```bash
# Generate canary tokens via API (Thinkst Canary)
# These trigger alerts when documents are opened or URLs are accessed
# Word document token
curl -X POST "https://CONSOLE.canary.tools/api/v1/canarytoken/create" \
-d "auth_token=YOUR_API_TOKEN" \
-d "memo=Finance_Share_Canary" \
-d "kind=doc-msword" \
-o /tmp/canary_budget_report.docx
# PDF document token
curl -X POST "https://CONSOLE.canary.tools/api/v1/canarytoken/create" \
-d "auth_token=YOUR_API_TOKEN" \
-d "memo=HR_Share_Canary" \
-d "kind=pdf-acrobat-reader" \
-o /tmp/canary_employee_handbook.pdf
# Windows folder token (alerts when folder is browsed)
curl -X POST "https://CONSOLE.canary.tools/api/v1/canarytoken/create" \
-d "auth_token=YOUR_API_TOKEN" \
-d "memoRelated in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.