A simple DLP (Data Loss Prevention) testing site. Upload or POST sensitive test data to verify your DLP solution blocks it correctly.
- HTTP/HTTPS POST Testing: Submit sensitive data and verify DLP blocks the request
- Sample Test Data: Pre-generated fake SSN, credit card, and PII data
- Instant Feedback: See immediately if DLP blocked or allowed the transfer
- Mobile Responsive: Works on all devices
# Install dependencies
npm install
# Run development server
npm run devDocker makes it easy to deploy Data Leak Detector anywhere - locally, on the internet, or behind a VPN/ZTNA solution.
docker build -t dataleakdetector .docker run -p 3000:3000 dataleakdetector# Login and create resources
az login
az group create --name dlp-rg --location eastus
az acr create --resource-group dlp-rg --name dlpregistry --sku Basic
az acr login --name dlpregistry
# Push image
docker tag dataleakdetector dlpregistry.azurecr.io/dataleakdetector:latest
docker push dlpregistry.azurecr.io/dataleakdetector:latest
# Deploy
az containerapp up --name dataleakdetector \
--resource-group dlp-rg \
--image dlpregistry.azurecr.io/dataleakdetector:latest \
--target-port 3000 \
--ingress external# Push to ECR and deploy with ECS
aws ecr create-repository --repository-name dataleakdetector
aws ecr get-login-password | docker login --username AWS --password-stdin <account>.dkr.ecr.<region>.amazonaws.com
docker tag dataleakdetector <account>.dkr.ecr.<region>.amazonaws.com/dataleakdetector:latest
docker push <account>.dkr.ecr.<region>.amazonaws.com/dataleakdetector:latest
# Then create ECS service via console or CLI# On your target server
docker run -d -p 80:3000 --restart unless-stopped dataleakdetector| Scenario | How to Deploy |
|---|---|
| Internet | Deploy to Azure, AWS, or any public cloud |
| VPN/ZTNA | Deploy to private network accessible via VPN |
| Local | Run on localhost for offline testing |
# Install Vercel CLI
npm i -g vercel
# Deploy
vercel- Push this repo to GitHub
- Import in Vercel dashboard
- Vercel will auto-deploy on push
- User copies sample data from
/sample-data - User submits data via
/http-postor/https-post - If DLP is working: The request is blocked before reaching this server
- If DLP failed: Server receives data and shows a warning banner
| Route | Description |
|---|---|
/ |
Landing page with DLP explanation |
/http-post |
HTTP POST test form |
/https-post |
HTTPS POST test form |
/sample-data |
Sample data index |
/sample-data/namessndob |
SSN test data |
/sample-data/nameccnzip |
Credit card test data |
/sample-data/namedobemail |
PII test data |
/contact |
Contact form |
- Next.js 14+ (App Router)
- TypeScript
- Vanilla CSS (dark mode)
MIT