electron-ipc-security-audit — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited electron-ipc-security-audit (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Analyze Electron IPC implementations for security vulnerabilities. This skill performs comprehensive security audits of inter-process communication patterns, checking for contextIsolation issues, nodeIntegration risks, preload script security, and IPC channel validation.
{
"type": "object",
"properties": {
"projectPath": {
"type": "string",
"description": "Path to the Electron project root"
},
"auditScope": {
"type": "array",
"items": {
"enum": ["ipc-channels", "preload-scripts", "main-process", "renderer-security", "csp", "all"]
},
"default": ["all"]
},
"severity": {
"enum": ["all", "critical", "high", "medium"],
"default": "all",
"description": "Minimum severity level to report"
},
"includeRecommendations": {
"type": "boolean",
"default": true
}
},
"required": ["projectPath"]
}{
"type": "object",
"properties": {
"success": { "type": "boolean" },
"summary": {
"type": "object",
"properties": {
"totalIssues": { "type": "number" },
"critical": { "type": "number" },
"high": { "type": "number" },
"medium": { "type": "number" },
"low": { "type": "number" }
}
},
"findings": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": { "type": "string" },
"severity": { "enum": ["critical", "high", "medium", "low"] },
"category": { "type": "string" },
"title": { "type": "string" },
"description": { "type": "string" },
"file": { "type": "string" },
"line": { "type": "number" },
"recommendation": { "type": "string" },
"codeExample": { "type": "string" }
}
}
},
"securityScore": {
"type": "number",
"description": "Security score 0-100"
}
},
"required": ["success", "findings"]
}nodeIntegration: true in BrowserWindowcontextIsolation: falsesandbox: falseipcMain.on('*') patternswebSecurity: false// BAD: Exposing ipcRenderer directly
contextBridge.exposeInMainWorld('electron', {
ipcRenderer: ipcRenderer // CRITICAL VULNERABILITY
});
// GOOD: Expose only specific channels
contextBridge.exposeInMainWorld('electron', {
send: (channel, data) => {
const validChannels = ['file:read', 'file:write'];
if (validChannels.includes(channel)) {
ipcRenderer.send(channel, data);
}
}
});// BAD: Context isolation disabled
new BrowserWindow({
webPreferences: {
contextIsolation: false, // CRITICAL
preload: path.join(__dirname, 'preload.js')
}
});
// GOOD: Context isolation enabled
new BrowserWindow({
webPreferences: {
contextIsolation: true,
sandbox: true,
preload: path.join(__dirname, 'preload.js')
}
});// BAD: Executing arbitrary commands
ipcMain.handle('execute', async (event, cmd) => {
return exec(cmd); // HIGH RISK
});
// GOOD: Whitelisted commands only
const ALLOWED_COMMANDS = ['list-files', 'get-info'];
ipcMain.handle('execute', async (event, cmd, args) => {
if (!ALLOWED_COMMANDS.includes(cmd)) {
throw new Error('Command not allowed');
}
return executeWhitelistedCommand(cmd, args);
});electron-main-preload-generator - Generate secure boilerplateelectron-builder-config - Build configurationdesktop-security-auditor agent - Comprehensive security reviewelectron-architect - Architecture guidancedesktop-security-auditor - Security expertise~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.