Extension ID Leak/Suspicious Checker
HTML
<h1>Extension ID Checker - Go to chrome://extensions/ , ctrl+a , ctrl+c (select all and copy)</h1>
<div id="input-area">
<label for="input">Paste your extension list here:</label><br>
<textarea id="input" placeholder="Paste the text containing 'ID: ' lines..."></textarea>
</div>
<div id="result-container">
<div class="panel" id="extensions-panel">
<h2>All Found Extensions</h2>
<div id="extensions-list"></div>
</div>
<div class="panel" id="matches-panel">
<h2>Leaking / Suspicious Matches</h2>
<div id="matches-list"></div>
</div>
</div>
CSS
body {
font-family: system-ui, sans-serif;
margin: 0;
padding: 12px;
background: #f8f9fa;
color: #111;
}
h1 {
margin-top: 0;
font-size: 1.4rem;
}
#input-area {
margin-bottom: 16px;
}
textarea {
width: 100%;
height: 260px;
font-family: 'Consolas', 'Monaco', monospace;
font-size: 13px;
padding: 10px;
border: 1px solid #ccc;
border-radius: 6px;
resize: vertical;
}
#result-container {
display: flex;
gap: 16px;
min-height: 320px;
}
.panel {
flex: 1;
border: 1px solid #ddd;
border-radius: 6px;
background: white;
padding: 12px;
overflow-y: auto;
}
.panel h2 {
margin-top: 0;
font-size: 1.1rem;
border-bottom: 1px solid #eee;
padding-bottom: 6px;
}
.extension {
margin: 10px 0;
padding: 8px;
background: #f0f7ff;
border-radius: 6px;
font-family: monospace;
}
.id-only {
background: #fff3e0;
}
.match-leak {
background: #ffebee;
border-left: 4px solid #d32f2f;
padding-left: 10px;
}
.match-suspicious {
background: #fff3e0;
border-left: 4px solid #f57c00;
padding-left: 10px;
}
.match-both {
background: linear-gradient(to right, #ffebee 50%, #fff3e0 50%);
border-left: 4px solid #c2185b;
}
.no-match {
color: #555;
}
JavaScript
// === Static lists – edit here if needed =====================================
const leaking = new...