安全决策报告
mragent
MRAgent是合法的生物医学MR分析工具,代码质量良好,无恶意行为。唯一风险是README中包含远程脚本安装命令。
为什么得出这个结论
1/4 个维度触发 通过
声明与实际能力
声明资源与推断能力基本一致。
阻止
隐藏执行与外联
提取到 2 个高危 IOC 或外联信号。
通过
攻击链与高危发现
没有形成明确的恶意路径。
通过
依赖与供应链卫生
依赖结构存在,但暂未看到明显高危告警。
风险分是怎么被拉高的
README包含远程脚本执行命令 +15
mrmrmr/README.md:58 包含 `curl -fsSL https://ollama.com/install.sh | sh`,但这是安装说明,非代码执行
硬编码IP地址 +5
mrmrmr/.idea/deployment.xml:33 存在硬编码IP 172.25.18.14,但属于IDE配置,非运行时代码
最关键的证据
中危
README包含远程脚本执行
README.md第58行包含 `curl -fsSL https://ollama.com/install.sh | sh` 命令用于安装Ollama。这是一种危险的安装模式,但属于用户操作指引而非代码自动执行。
mrmrmr/README.md:58 建议改为更安全的安装方式:1) 使用包管理器安装;2) 或分步下载验证后执行
低危
IDE配置文件包含硬编码IP
.idea/deployment.xml中硬编码了IP 172.25.18.14,属于开发环境配置,非运行时风险。
mrmrmr/.idea/deployment.xml:33 在.gitignore中排除IDE配置文件
低危
API密钥处理
代码接受AI_key和gwas_token作为参数,但不存储或外传,仅用于必要的API调用。
mrmrmr/mragent/LLM.py:1 最佳实践:可添加环境变量回退支持
声明能力 vs 实际能力
文件系统 通过
声明 READ
→ 推断 WRITE
SKILL.md声明需要pip install和R包安装 网络访问 通过
声明 READ
→ 推断 READ
仅访问PubMed、OpenGWAS、LLM API 命令执行 通过
声明 WRITE
→ 推断 WRITE
仅调用 Rscript 执行MR分析,范围明确 可疑产物与外联
严重 危险命令
curl -fsSL https://ollama.com/install.sh | sh mrmrmr/README.md:58
高危 IP 地址
172.25.18.14 mrmrmr/.idea/deployment.xml:33
中危 外部 URL
http://www.apache.org/licenses/ mrmrmr/LICENSE.txt:3
中危 外部 URL
http://www.apache.org/licenses/LICENSE-2.0 mrmrmr/LICENSE.txt:195
中危 外部 URL
https://doi.org/10.1093/bib/bbaf140 mrmrmr/README.md:2
中危 外部 URL
https://doi.org/10.5281/zenodo.14184396 mrmrmr/README.md:2
中危 外部 URL
https://huggingface.co/spaces/xuwei1997/MRAgent mrmrmr/README.md:2
中危 外部 URL
https://p1bvxbwjxl0.feishu.cn/docx/L0ogdoDs5ofjIux6W6gct8E4nyd?from=from_copylink mrmrmr/README.md:2
中危 外部 URL
https://www.python.org/ mrmrmr/README.md:27
中危 外部 URL
https://www.anaconda.com/download mrmrmr/README.md:28
中危 外部 URL
https://www.r-project.org/ mrmrmr/README.md:30
中危 外部 URL
https://platform.openai.com/docs/overview mrmrmr/README.md:47
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| pandas | ^1.4.2 | pip | 否 | 已锁定版本 |
| reportlab | ^4.0.9 | pip | 否 | 已锁定版本 |
| openai | ^1.6.1 | pip | 否 | 已锁定版本 |
| biopython | ^1.82 | pip | 否 | 已锁定版本 |
| requests | ^2.27.1 | pip | 否 | 已锁定版本 |
文件构成
33 个文件 · 51721 行
CSV 1 个文件 · 46398 行Python 18 个文件 · 4530 行Markdown 2 个文件 · 414 行Text 2 个文件 · 210 行XML 7 个文件 · 131 行TOML 1 个文件 · 25 行
需关注文件 · 4
mrmrmr/mragent/agent_tool.py https://gwas.mrcieu.ac.uk/datasets/?trait__icontains= · https://www.ncbi.nlm.nih.gov/research/bionlp/RESTful/pmcoa.cgi/BioC_json/[ID · https://www.ncbi.nlm.nih.gov/research/bionlp/RESTful/pmcoa.cgi/BioC_json/ · https://gwas.mrcieu.ac.uk/files/ · https://uts-ws.nlm.nih.gov/rest/search/current?apiKey= · https://uts-ws.nlm.nih.gov/rest/content/current/CUI/ · https://www.ebi.ac.uk/gwas/rest/api/studies/search · https://www.ebi.ac.uk/gwas/rest/api/studies/ · https://api.finngen.fi/api/phenos · https://api.finngen.fi/api/phenos/ · https://gwas-api.mrcieu.ac.uk/search · [email protected]
mrmrmr/web_demo.py https://hm.baidu.com/hm.js?d8a4c130d7263e954bf9df2496e692c3
mrmrmr/README.md README包含远程脚本执行 · curl -fsSL https://ollama.com/install.sh | sh · https://doi.org/10.1093/bib/bbaf140 · https://doi.org/10.5281/zenodo.14184396 · https://huggingface.co/spaces/xuwei1997/MRAgent · https://p1bvxbwjxl0.feishu.cn/docx/L0ogdoDs5ofjIux6W6gct8E4nyd?from=from_copylink · https://www.python.org/ · https://www.anaconda.com/download · https://www.r-project.org/ · https://platform.openai.com/docs/overview · https://markdown.com.cn · https://ollama.com/install.sh · https://api.opengwas.io/ · https://www.dropbox.com/s/5la7y38od95swcf/rf.rdata?dl=0 · https://www.strobe-mr.org/ · https://utexas.box.com/s/vkd36n197m8klbaio3yzoxsee6sxo11v · https://www.flaticon.com/
mrmrmr/LICENSE.txt http://www.apache.org/licenses/ · http://www.apache.org/licenses/LICENSE-2.0
其他文件 · opengwas.csv · agent_workflow.py · step_9_test_prompt.py · template_text.py · run_mragent.py · step_9_test_out.py +2
安全亮点
代码结构清晰,无混淆或反编译迹象
凭证仅作为参数传递,不存储不外传
所有第三方依赖均有版本锁定
无凭证收割、环境变量遍历等恶意行为
网络请求仅访问合法的生物医学API
R脚本执行范围明确,仅用于MR分析
完整的数据处理和PDF报告生成功能
支持多种GWAS数据源(OpenGWAS、GWAS Catalog、FinnGen、UK Biobank)