deobfuscating-javascript-malware
Deobfuscates malicious JavaScript code used in web-based attacks, phishing pages, and dropper scripts by reversing encoding layers, eval chains, string…
Skill by adriannoes
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/adriannoes-deobfuscating-javascript-malware
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/deobfuscating-javascript-malware
What's inside
- Skill name
deobfuscating-javascript-malware- Description
- Deobfuscates malicious JavaScript code used in web-based attacks, phishing pages, and dropper scripts by reversing encoding layers, eval chains, string manipulation, and control flow obfuscation to reveal the original malicious logic. Activates for requests involving JavaScript malware analysis, script deobfuscation, web skimmer analysis, or obfuscated dropper investigation.
- License
- Apache-2.0
- Instructions
- 335 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Instructions call the network
Files (4)
- LICENSE
- SKILL.md
- api-reference.md · references/
- agent.py · scripts/
SKILL.md (first lines)
# Deobfuscating JavaScript Malware
## When to Use
- Investigating a phishing page with obfuscated JavaScript that performs credential harvesting or redirect
- Analyzing a web skimmer (Magecart-style) injected into an e-commerce site
- Deobfuscating a JavaScript dropper that downloads and executes second-stage malware
- Examining malicious email attachments containing HTML files with embedded obfuscated scripts
- Analyzing browser exploit kits that use heavy JavaScript obfuscation to hide exploit delivery
**Do not use** for obfuscated JavaScript that is merely minified production code; use a standard beautifier instead.
## Prerequisites
- Node.js 18+ installed for executing and debugging JavaScript in a controlled environment
- Python 3.8+ with `jsbeautifier` library for code formatting
- Browser developer tools (Chrome DevTools) for controlled execution in an isolated browser
- CyberChef (https://gchq.github.io/CyberChef/) for encoding/decoding operations
- de4js or JStillery for automated JavaScript deobfuscation
- Isolated analysis VM with no access to production systems or sensitive data
## Workflow
### Step 1: Safely Extract and Examine the Obfuscated Script
Isolate the malicious JavaScript without executing it:
```bash
# Extract JavaScript from HTML file
python3 << 'PYEOF'
from html.parser import HTMLParser
class ScriptExtractor(HTMLParser):
def __init__(self):
super().__init__()
self.in_script = False
self.scripts = []
self.current = ""
def handle_starttag(self, tag, attrs):
if tag == "script":
self.in_script = True
self.current = ""
def handle_endtag(self, tag):
if tag == "script":
self.in_script = False
if self.current.strip():
self.scripts.append(self.current)
def handle_data(self, data):
if self.in_script:
self.current += data
with open("malicious_page.html") as f:
parser = ScriptExtractor()
parser.feed(f.read())
for i, script in enumerate(parser.scripts):
with open(f"script_{i}.js", "w") as f:
f.write(script)
print(f"Extracted script_{i}.js ({len(script)} bytes)")
PYEOF
# Beautify the extracted JavaScript
npx js-beautify script_0.js -o script_0_pretty.js
```
### Step 2: Identify Obfuscation Techniques
Categorize the obfuscation methods used:
```
Common JavaScript Obfuscation Techniques:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
String Encoding:
- Hex encoding: "\x68\x65\x6c\x6c\x6f" -> "hello"
- Unicode escapes: "\u0068\u0065\u006c\u006c\u006f" -> "hello"
- Base64: atob("aGVsbG8=") -> "hello"
- charCodeAt/fromCharCode: String.fromCharCode(104,101,108,108,111)
- Array-based lookup: var _0x1234 = ["hello","world"]; _0x1234[0]
Eval Chains:
- eval(atob("..."))
- eval(unescape("..."))
- new Function("return " + decoded)()
- document.write("<script>" + decoded + "</script>")
- setTimeout(decoded, 0)
Control Flow:
- Switch-case dispatcher with shuffled case order
- Opaque predicates (always-true/false conditions)
- Dead code insertion
- Variable name mangling (_0x4a3b, _0xab12)
Anti-Analysis:
- Debugger traps: setInterval(function(){debugger;}, 100)
- Console detection: overriding console.log
- Timing checks: performance.now() deltas
- DevTools detection: window.outerWidth - window.innerWidth > 100
```
### Step 3: Remove Anti-Analysis Protections
Neutralize anti-debugging and anti-analysis traps:
```javascript
// Remove debugger traps before analysis
// Replace in the obfuscated script:
// Before:
setInterval(function() { debugger; }, 100);
// After (neutralized):
setInterval(function() { /* debugger removed */ }, 100);
// Neutralize DevTools detection
// Before:
if (window.outerWidth - window.innerWidth > 160) { window.location = "about:blank"; }From adriannoes/awesome-agentic-ai, Apache-2.0.
More from adriannoes/awesome-agentic-ai
- 0.674score
analyzing-cloud-storage-access-patterns
adriannoes
Detect abnormal access patterns in AWS S3, GCS, and Azure Blob Storage by analyzing CloudTrail Data Events, GCS audit logs, and Azure Storage Analytics.
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
building-incident-response-playbook
adriannoes
Designs and documents structured incident response playbooks that define step-by-step procedures for specific incident types aligned with NIST SP 800-61r3 and…
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
conducting-cloud-incident-response
adriannoes
Responds to security incidents in cloud environments (AWS, Azure, GCP) by performing identity-based containment, cloud-native log analysis, resource…
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
skill-security-auditor
adriannoes
Security audit and vulnerability scanner for AI agent skills before installation.
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
detecting-ai-model-prompt-injection-attacks
adriannoes
Detects prompt injection attacks targeting LLM-based applications using a multi-layered defense combining regex pattern matching for known attack signatures…
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
building-cloud-siem-with-sentinel
adriannoes
This skill covers deploying Microsoft Sentinel as a cloud-native SIEM and SOAR platform for centralized security operations.
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
analyzing-bootkit-and-rootkit-samples
adriannoes
Analyzes bootkit and advanced rootkit malware that infects the Master Boot Record (MBR), Volume Boot Record (VBR), or UEFI firmware to gain persistence below…
SkillAFreshness: A★ 72Claude Code +9 - 0.671score
analyzing-ransomware-network-indicators
adriannoes
Identify ransomware network indicators including C2 beaconing patterns, TOR exit node connections, data exfiltration flows, and encryption key exchange via…
SkillAFreshness: A★ 72Claude Code +9 - 0.671score
building-devsecops-pipeline-with-gitlab-ci
adriannoes
Design and implement a comprehensive DevSecOps pipeline in GitLab CI/CD integrating SAST, DAST, container scanning, dependency scanning, and secret detection.
SkillAFreshness: A★ 72Claude Code +9 - 0.671score
analyzing-browser-forensics-with-hindsight
adriannoes
Analyze Chromium-based browser artifacts using Hindsight to extract browsing history, downloads, cookies, cached content, autofill data, saved passwords, and…
SkillAFreshness: A★ 72Claude Code +9 - 0.671score
analyzing-persistence-mechanisms-in-linux
adriannoes
Detect and analyze Linux persistence mechanisms including crontab entries, systemd service units, LD_PRELOAD hijacking, bashrc modifications, and…
SkillAFreshness: A★ 72Claude Code +9 - 0.671score
analyzing-android-malware-with-apktool
adriannoes
Perform static analysis of Android APK malware samples using apktool for decompilation, jadx for Java source recovery, and androguard for permission analysis…
SkillAFreshness: A★ 72Claude Code +9
Signals
- Stars
- 72
- Forks
- 19
- Open issues
- 0
- Last commit (this folder)
- Aug 28, 2026 (2 months ago)
- Last release
- Oct 24, 2026 (4 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/adriannoes/awesome-agentic-ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from adriannoes
- 0.674score
building-cloud-siem-with-sentinel
adriannoes
This skill covers deploying Microsoft Sentinel as a cloud-native SIEM and SOAR platform for centralized security operations.
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
building-incident-response-playbook
adriannoes
Designs and documents structured incident response playbooks that define step-by-step procedures for specific incident types aligned with NIST SP 800-61r3 and…
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
skill-security-auditor
adriannoes
Security audit and vulnerability scanner for AI agent skills before installation.
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
analyzing-cloud-storage-access-patterns
adriannoes
Detect abnormal access patterns in AWS S3, GCS, and Azure Blob Storage by analyzing CloudTrail Data Events, GCS audit logs, and Azure Storage Analytics.
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
analyzing-bootkit-and-rootkit-samples
adriannoes
Analyzes bootkit and advanced rootkit malware that infects the Master Boot Record (MBR), Volume Boot Record (VBR), or UEFI firmware to gain persistence below…
SkillAFreshness: A★ 72Claude Code +9 - 0.674score
conducting-cloud-incident-response
adriannoes
Responds to security incidents in cloud environments (AWS, Azure, GCP) by performing identity-based containment, cloud-native log analysis, resource…
SkillAFreshness: A★ 72Claude Code +9
Cite this page
deobfuscating-javascript-malware skill. Agent Mart. https://agentmart.dev/skills/adriannoes-deobfuscating-javascript-malware (last updated 2026-10-24)