在 Manus 中运行任何 Skill
一键导入
一键导入
一键在 Manus 中运行任何 Skill
开始使用rpc-server-analysis
星标26
分支3
更新时间2026年3月13日 06:46
RPC 程序漏洞挖掘
安装
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
SKILL.md
readonly菜单
RPC 程序漏洞挖掘
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
IVAgent 测试与评估工作流。修改代码后运行回归测试、LLM 语义评测和日志分析。当用户要求测试、验证、评估或回归检查时使用。
系统测试通用 workflow:对 IDA 伪代码视图执行自主漏洞挖掘
系统测试 workflow: baseband_nas_tft_overflow_01
系统测试 workflow: baseband_rlc_reassembly_01
系统测试 workflow: bluetooth_gatt_underflow_01
系统测试 workflow: bt_l2cap_fragment_uaf_01
| name | rpc-server-analysis |
| description | RPC 程序漏洞挖掘 |
| engine | ida |
| target_type | binary |
| strategy_hints | {"max_depth":"建议调用链深度为 3-5 层","concurrency":"可根据函数数量动态决定并发度"} |
| taint_sources | ["payload (攻击者控制的消息数据)","payload_len (数据长度)"] |
| tags | ["rpc","binary","message_handler"] |
从二进制中分析 handle_type_xxx (由于是 c++ 程序,实际搜索应该为 .*handle_type.*) 命名的函数,他们会处理用户输入,挖掘其中的漏洞
// ============================================
void dispatch_message(const RpcMessage* msg) {
size_t payload_len = msg->header.data_len;
const uint8_t* payload = msg->payload;
switch (msg->header.msg_type) {
case MSG_TYPE_1: handle_type_1(payload, payload_len); break;
case MSG_TYPE_2: handle_type_2(payload, payload_len); break;
case MSG_TYPE_3: handle_type_3(payload, payload_len); break;
case MSG_TYPE_4: handle_type_4(payload, payload_len); break;
case MSG_TYPE_5: handle_type_5(payload, payload_len); break;
case MSG_TYPE_6: handle_type_6(payload, payload_len); break;
case MSG_TYPE_7: handle_type_7(payload, payload_len); break;
case MSG_TYPE_8: handle_type_8(payload, payload_len); break;
case MSG_TYPE_9: handle_type_9(payload, payload_len); break;
case MSG_TYPE_10: handle_type_10(payload, payload_len); break;
case MSG_TYPE_11: handle_type_11(payload, payload_len); break;
case MSG_TYPE_12: handle_type_12(payload, payload_len); break;
case MSG_TYPE_13: handle_type_13(payload, payload_len); break;
case MSG_TYPE_14: handle_type_14(payload, payload_len); break;
case MSG_TYPE_15: handle_type_15(payload, payload_len); break;
case MSG_TYPE_16: handle_type_16(payload, payload_len); break;
case MSG_TYPE_17: handle_type_17(payload, payload_len); break;
case MSG_TYPE_18: handle_type_18(payload, payload_len); break;
case MSG_TYPE_19: handle_type_19(payload, payload_len); break;
case MSG_TYPE_20: handle_type_20(payload, payload_len); break;
default:
printf("Unknown message type: %u\n", msg->header.msg_type);
break;
}
}