analyzing-golang-malware-with-ghidra
使用 Ghidra 及专用脚本对 Go 编译的恶意软件进行逆向工程,包括函数恢复、字符串提取和去符号表 Go 二进制文件的类型重建。
Skill by killvxk
Chalk Labs
Need help deploying analyzing-golang-malware-with-ghidra?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
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/killvxk-analyzing-golang-malware-with-ghidra
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
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/analyzing-golang-malware-with-ghidra
What's inside
- Skill name
analyzing-golang-malware-with-ghidra- Description
- 使用 Ghidra 及专用脚本对 Go 编译的恶意软件进行逆向工程,包括函数恢复、字符串提取和去符号表 Go 二进制文件的类型重建。
- License
- Apache-2.0
- Instructions
- 281 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (8)
- LICENSE
- SKILL.md
- template.md · assets/
- api-reference.md · references/
- standards.md · references/
- workflows.md · references/
- agent.py · scripts/
- process.py · scripts/
SKILL.md (first lines)
# 使用 Ghidra 分析 Golang 恶意软件
## 概述
Go(Golang)因其跨平台编译能力、生成自包含二进制文件的静态链接以及逆向工程的复杂性,成为恶意软件作者的热门语言。Go 二进制文件包含整个运行时、标准库和所有依赖项的静态链接,产生大型二进制文件(通常 5-15MB),包含数千个函数。Ghidra 在处理 Go 特有的字符串格式(非空终止符)、去符号的函数名和 goroutine 并发模式时存在困难。Volexity 开发的 GoResolver 等专用工具使用控制流图相似性在去符号或混淆的 Go 二进制文件中自动去混淆并恢复函数名。
## 前置条件
- Ghidra 11.0+,配合 JDK 17+
- GoResolver 插件(用于函数名恢复)
- Go 逆向工程工具包(go-re.tk)
- Python 3.9+(用于辅助脚本)
- 了解 Go 运行时内部机制(goroutine、channel、interface)
- 熟悉 Go 二进制文件结构(pclntab、moduledata、itab)
## 核心概念
### Go 二进制文件结构
Go 二进制文件在 `pclntab`(PC 行表)结构中嵌入了丰富的元数据,将程序计数器映射到函数名、源文件和行号。即使去符号表的二进制文件也保留此元数据。`moduledata` 结构包含指向类型信息、itab(接口表)和 pclntab 本身的指针。Go 字符串以指针-长度对的形式存储,而非以空字符结尾的 C 字符串。
### 去符号表二进制文件中的函数恢复
尽管去除了符号表,Go 二进制文件仍在 pclntab 中保留函数名。然而,garble 等混淆工具会将函数重命名为随机字符串。GoResolver 通过计算混淆函数的控制流图签名,并与已知 Go 标准库和第三方包函数的数据库进行匹配来解决此问题。
### 包/依赖项提取
Go 的依赖管理将模块路径和版本字符串嵌入二进制文件。提取这些信息可揭示恶意软件的第三方依赖(HTTP 库、加密包、C2 框架),在不进行完整逆向工程的情况下了解其能力。
## 实操步骤
### 步骤 1:初始二进制分析
```python
#!/usr/bin/env python3
"""分析 Go 二进制文件元数据用于恶意软件分析。"""
import struct
import sys
import re
def find_go_build_info(data):
"""从二进制文件提取 Go 构建信息。"""
# Go buildinfo 魔数:\xff Go buildinf:
magic = b'\xff Go buildinf:'
offset = data.find(magic)
if offset == -1:
return None
print(f"[+] Go 构建信息位于偏移 0x{offset:x}")
# 提取附近的 Go 版本字符串
go_version = re.search(rb'go\d+\.\d+(?:\.\d+)?', data[offset:offset+256])
if go_version:
print(f" Go 版本:{go_version.group().decode()}")
return offset
def find_pclntab(data):
"""定位 pclntab(PC 行表)结构。"""
# pclntab 魔数字节随 Go 版本而变化
magics = {
b'\xfb\xff\xff\xff\x00\x00': "Go 1.2-1.15",
b'\xfa\xff\xff\xff\x00\x00': "Go 1.16-1.17",
b'\xf1\xff\xff\xff\x00\x00': "Go 1.18-1.19",
b'\xf0\xff\xff\xff\x00\x00': "Go 1.20+",
}
for magic, version in magics.items():
offset = data.find(magic)
if offset != -1:
print(f"[+] pclntab 位于 0x{offset:x}({version})")
return offset, version
return None, None
def extract_function_names(data, pclntab_offset):
"""从 pclntab 提取函数名。"""
if pclntab_offset is None:
return []
functions = []
# 函数名字符串遵循特定模式
func_pattern = re.compile(
rb'(?:main|runtime|fmt|net|os|crypto|encoding|io|sync|'
rb'syscall|reflect|strings|bytes|path|time|math|sort|'
rb'github\.com|golang\.org)[/\.][\w/.]+',
)
for match in func_pattern.finditer(data):
name = match.group().decode('utf-8', errors='replace')
if len(name) > 4 and len(name) < 200:
functions.append(name)
return sorted(set(functions))
def extract_go_strings(data):
"""提取 Go 风格字符串(指针+长度对)。"""
# Go 字符串不以空字符结尾;提取可读序列
strings = []
ascii_pattern = re.compile(rb'[\x20-\x7e]{10,}')
for match in ascii_pattern.finditer(data):
s = match.group().decode('ascii')
# 过滤出有趣的恶意软件字符串
interesting = [
'http', 'https', 'tcp', 'udp', 'dns',
'cmd', 'shell', 'exec', 'upload', 'download',
'encrypt', 'decrypt', 'key', 'token', 'password',
'c2', 'beacon', 'agent', 'implant', 'bot',
'mutex', 'persist', 'registry', 'scheduled',
]
if any(kw in s.lower() for kw in interesting):
strings.append(s)
return stringsFrom killvxk/cybersecurity-skills-zh, Apache-2.0.
More from killvxk/cybersecurity-skills-zh
- 0.512score
analyzing-cyber-kill-chain
killvxk
根据 Lockheed Martin Cyber Kill Chain 框架分析入侵活动,识别对手已完成的阶段、防御成功或失败的位置,以及哪些控制措施本可在更早阶段中断攻击。适用于事后分析、构建以预防为中心的安全控制,或将检测差距映射到杀伤链阶段时使用。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-kubernetes-audit-logs
killvxk
解析 Kubernetes API server 审计日志(JSON lines 格式),检测 exec 进入 Pod、 Secret 访问、RBAC 修改、特权 Pod 创建以及匿名 API 访问行为。 从审计事件模式构建威胁检测规则。适用于调查 Kubernetes 集群入侵 或构建 k8s 专用 SIEM…
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-cloud-storage-access-patterns
killvxk
通过分析 CloudTrail Data Events、GCS 审计日志和 Azure Storage Analytics,检测 AWS S3、GCS 和 Azure Blob Storage 中的异常访问模式。识别非工作时间的批量下载、来自新 IP 地址的访问、异常 API 调用(GetObject…
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-command-and-control-communication
killvxk
分析恶意软件命令与控制(C2)通信协议,以了解 beacon 模式、命令结构、数据编码和基础设施。 涵盖 HTTP、HTTPS、DNS 和自定义协议 C2 分析,用于检测规则开发和威胁情报。 适用于 C2 分析、beacon 检测、C2 协议逆向工程或命令与控制基础设施绘图相关请求。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-indicators-of-compromise
killvxk
分析失陷指标(IOC),包括 IP 地址、域名、文件哈希、URL 和电子邮件工件,以确定恶意置信度、攻击活动溯源归因和封锁优先级。适用于对来自钓鱼邮件、安全告警或外部威胁情报的 IOC 进行分诊;使用多源情报对原始 IOC 进行富化;或作出封锁/监控/白名单决策时使用。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-ios-app-security-with-objection
killvxk
使用基于 Frida 的工具包 Objection 对 iOS 应用程序进行运行时移动安全探测, 无需越狱即可与应用内部交互。适用于评估 iOS 应用安全态势、绕过客户端防护措施、 转储 Keychain 条目、检查文件系统存储以及评估运行时行为。当请求涉及 iOS 安全测试、 Objection 运行时分析、基于…
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-azure-activity-logs-for-threats
killvxk
通过 azure-monitor-query 查询 Azure Monitor 活动日志和登录日志,检测可疑管理操作、不可能的地理旅行(Impossible Travel)、权限提升和资源修改。为 Azure 环境的威胁狩猎构建 KQL 查询。适用于调查可疑的 Azure 租户活动或构建云 SIEM 检测规则。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-bootkit-and-rootkit-samples
killvxk
分析感染主引导记录(MBR)、卷引导记录(VBR)或 UEFI 固件以在操作系统底层获取持久化的 bootkit 和高级 rootkit 恶意软件。 涵盖引导扇区分析、UEFI 模块检查和反 rootkit 检测技术。 适用于 bootkit 分析、MBR 恶意软件调查、UEFI 持久化分析或 OS…
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-cobalt-strike-malleable-profiles
killvxk
使用 pyMalleableC2 解析 Cobalt Strike 可延展 C2 配置文件,提取 Beacon 配置、HTTP 通信模式以及休眠/抖动设置。结合 JARM TLS 指纹识别在网络上检测 C2 服务器。适用于调查疑似 Cobalt Strike 基础设施或为 C2 流量构建检测签名。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-campaign-attribution-evidence
killvxk
攻击活动溯源归因分析涉及系统性地评估证据,以确定哪个威胁行为者或组织对某次网络行动负责。本技能涵盖使用 Diamond Model 和 ACH(竞争假设分析)收集并加权溯源归因指标、分析基础设施重叠、TTP 一致性、恶意软件代码相似性、操作时序模式和语言痕迹,以构建置信度加权的溯源归因评估。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-api-gateway-access-logs
killvxk
解析 API 网关访问日志(AWS API Gateway、Kong、Nginx),检测 BOLA/IDOR 攻击、速率限制绕过、凭据扫描和注入尝试。使用 pandas 进行请求模式的统计分析和异常检测。适用于调查 API 滥用或构建 API 专项威胁检测规则。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-linux-elf-malware
killvxk
分析恶意 Linux ELF(可执行和可链接格式)二进制文件,包括针对 Linux 服务器、容器和云基础设施的僵尸网络、 挖矿程序、勒索软件和 rootkit。涵盖 x86_64 和 ARM ELF 样本的静态分析、动态追踪和逆向工程。 适用于 Linux 恶意软件分析、ELF 二进制文件调查、Linux…
SkillDFreshness: D★ 57Claude Code +9
Signals
- Stars
- 57
- Forks
- 14
- Open issues
- 1
- Last commit (this folder)
- Mar 18, 2026 (7 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from killvxk
- 0.512score
analyzing-api-gateway-access-logs
killvxk
解析 API 网关访问日志(AWS API Gateway、Kong、Nginx),检测 BOLA/IDOR 攻击、速率限制绕过、凭据扫描和注入尝试。使用 pandas 进行请求模式的统计分析和异常检测。适用于调查 API 滥用或构建 API 专项威胁检测规则。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-azure-activity-logs-for-threats
killvxk
通过 azure-monitor-query 查询 Azure Monitor 活动日志和登录日志,检测可疑管理操作、不可能的地理旅行(Impossible Travel)、权限提升和资源修改。为 Azure 环境的威胁狩猎构建 KQL 查询。适用于调查可疑的 Azure 租户活动或构建云 SIEM 检测规则。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-bootkit-and-rootkit-samples
killvxk
分析感染主引导记录(MBR)、卷引导记录(VBR)或 UEFI 固件以在操作系统底层获取持久化的 bootkit 和高级 rootkit 恶意软件。 涵盖引导扇区分析、UEFI 模块检查和反 rootkit 检测技术。 适用于 bootkit 分析、MBR 恶意软件调查、UEFI 持久化分析或 OS…
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-campaign-attribution-evidence
killvxk
攻击活动溯源归因分析涉及系统性地评估证据,以确定哪个威胁行为者或组织对某次网络行动负责。本技能涵盖使用 Diamond Model 和 ACH(竞争假设分析)收集并加权溯源归因指标、分析基础设施重叠、TTP 一致性、恶意软件代码相似性、操作时序模式和语言痕迹,以构建置信度加权的溯源归因评估。
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-cloud-storage-access-patterns
killvxk
通过分析 CloudTrail Data Events、GCS 审计日志和 Azure Storage Analytics,检测 AWS S3、GCS 和 Azure Blob Storage 中的异常访问模式。识别非工作时间的批量下载、来自新 IP 地址的访问、异常 API 调用(GetObject…
SkillDFreshness: D★ 57Claude Code +9 - 0.512score
analyzing-cobalt-strike-malleable-profiles
killvxk
使用 pyMalleableC2 解析 Cobalt Strike 可延展 C2 配置文件,提取 Beacon 配置、HTTP 通信模式以及休眠/抖动设置。结合 JARM TLS 指纹识别在网络上检测 C2 服务器。适用于调查疑似 Cobalt Strike 基础设施或为 C2 流量构建检测签名。
SkillDFreshness: D★ 57Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get analyzing-golang-malware-with-ghidra running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
analyzing-golang-malware-with-ghidra skill. Agent Mart. https://agentmart.dev/skills/killvxk-analyzing-golang-malware-with-ghidra (last updated 2026-10-24)