xsscx/research

GitHub: xsscx/research

针对ICC色彩配置文件的专业安全研究工具集,集成启发式分析、模糊测试和AI辅助分析能力。

Stars: 1 | Forks: 0

# ICC 色彩配置文件安全研究工具 最后更新:2026-02-24 21:24:00 UTC,作者:David Hoyt ## 工具 | Tool | LOC | Description | |------|-----|-------------| | **iccanalyzer-lite** | 7,100+ | 54启发式安全分析器,支持 ASAN/UBSAN,OOM 保护,Ninja 模式 | | **cfl** (17 fuzzers) | 4,537 | 针对 iccDEV 的 LibFuzzer harnesses (deep_dump, roundtrip, spectral 等) | | **colorbleed_tools** | 224 | 用于变异测试的不安全 ICC↔XML 转换器 | | **mcp-server** | — | 带有 Web UI 的 ICC Profile MCP 服务器 | ## 安全态势 | Check | Status | Details | |-------|--------|---------| | **CodeQL** | 0 警报 | v4, 3 个目标 × 14 个自定义查询 + security-and-quality | | **scan-build** | 0 bugs | 14 个模块 (12 iccanalyzer-lite + 2 colorbleed_tools) | | **Action Pinning** | 100% | 所有 actions 已 SHA-pinned (actions/checkout v4.2.2: `11bd7190`) | | **Fuzzers** | 17/17 | 构建 + 冒烟测试通过,与项目工具范围对齐 | | **OOM Patches** | 60 个补丁 | cfl/patches/ 中的安全修复 | ## 构建 ``` # iccanalyzer-lite (ASAN + UBSAN + 覆盖率) cd iccanalyzer-lite && ./build.sh # CFL fuzzers (自动向 iccDEV 应用 OOM 补丁) cd cfl && ./build.sh # colorbleed_tools cd colorbleed_tools && make setup && make ``` ## Fuzzing (内存盘) ``` cd cfl && ./ramdisk-fuzz.sh # automated tmpfs workflow cat .github/scripts/ramdisk-cheatsheet.sh # copy-paste one-liners ``` ## OOM 补丁包 `cfl/patches/` 目录包含 60 个针对 iccDEV 的安全补丁(OOM caps, OOB reads, UBSAN fixes, null-deref guards, heap-buffer-overflow fixes, stack-overflow fixes)。由 `cfl/build.sh` 自动应用。有关完整目录,请参阅 `cfl/patches/README.md`。 ## Fuzzer → 工具映射 | Fuzzers | Project Tool | API Scope | |---------|-------------|-----------| | dump, deep_dump, profile, calculator, multitag | IccDumpProfile | Describe, Validate, FindTag | | io, roundtrip | IccRoundTrip | Read, Write, EvaluateProfile | | apply, applyprofiles | IccApplyProfiles | CIccCmm: AddXform, Begin, Apply | | applynamedcmm | IccApplyNamedCmm | CIccNamedColorCmm: all Apply variants | | link | IccApplyToLink | CIccCmm 2-profile link | | spectral, v5dspobs | IccV5DspObsToV4Dsp | MPE: Begin, GetNewApply, Apply | | fromxml, toxml | XML tools | LoadXml, ToXml, Validate | | specsep | IccSpecSepToTiff | CTiffImg pipeline | | tiffdump | IccTiffDump | CTiffImg, OpenIccProfile, FindTag | ## CodeQL 3 个目标 × 14 个自定义查询 + security-and-quality + security-experimental = 共 42 个查询。 通过 Actions → CodeQL Security Analysis 运行。 ## iccAnalyzer Web UI ``` docker pull ghcr.io/xsscx/icc-profile-mcp:dev docker run --rm -p 8080:8080 ghcr.io/xsscx/icc-profile-mcp:dev web ``` 打开 http://localhost:8080/ image ## 开发者演示容器 包含交互式 HTML 报告、实时 API 和预加载测试配置文件的独立演示: ``` docker pull ghcr.io/xsscx/icc-profile-demo:latest docker run --rm -p 8080:8080 ghcr.io/xsscx/icc-profile-demo # Custom port: docker run --rm -p 8083:8083 ghcr.io/xsscx/icc-profile-demo --port 8083 ``` 路由:`/`(演示报告),`/ui`(交互式 WebUI),`/api`(端点索引),`/api/*`(分析)。 ``` curl http://localhost:8080/api/health curl 'http://localhost:8080/api/security?path=sRGB_D65_MAT.icc' ``` 其他模式:`api`(位于 `/` 的 WebUI + REST API),`mcp`(用于 AI 代理的 stdio 服务器)。 完整用法请参见 [dev-demo/README.md](dev-demo/README.md)。 ## 可复用 Prompts 位于 [`.github/prompts/`](.github/prompts/) 的 AI 辅助分析预构建 prompt 模板: - **analyze-icc-profile** — 完整的 54 项启发式安全扫描 - **compare-icc-profiles** — 并排结构差异对比 - **triage-cve-poc** — CVE PoC 分析及 CVE 交叉引用 - **health-check** — MCP 服务器验证
标签:ASAN, ASN解析, C/C++, CI/CD安全, CISA项目, CodeQL, Fuzzer, Go语言工具, ICCanalyzer, ICC颜色配置文件, LibFuzzer, Llama, MCP服务器, OOM保护, TCP SYN 扫描, UBSAN, UML, Web UI, 事务性I/O, 云安全监控, 变异测试, 图形安全, 堆溢出, 堆缓冲区溢出, 安全补丁, 安全评估工具, 开源安全工具, 文件格式安全, 栈溢出, 样本生成, 模糊测试框架, 空指针解引用, 解析器安全, 请求拦截, 越界读写, 逆向工程平台, 静态分析, 颜色管理