返回首页

一周热榜

1作者: arcadianalpaca3 天前原帖
嘿,HN!我最近在使用了15年的iPhone后切换到了Android。切换后我最想念的就是我以前的有声书播放器,但我找不到一个合适的。所以我决定自己来制作一个。 这个播放器叫做Earleaf,可以播放你本地的有声书文件。 我最兴奋的功能是页面同步。你可以拍摄实体书(或电子书)中的一页照片,应用程序会找到有声书中的对应位置并跳转到那里。它通过在设备上进行书籍转录来实现,当你拍照时,应用会使用ML Kit进行OCR扫描,并将文本与转录内容进行匹配。初次转录需要一些时间,但这只是一次性的,完成后,实际搜索在我的设备上大约只需两秒钟。而且所有操作都是在本地进行的。 除了页面同步之外,它还是一个功能齐全的播放器,具有嵌套收藏、独立的听书进度跟踪以及相当不错的统计功能。无需账户、无需互联网,也没有广告。 欢迎大家提问关于这个应用及其功能的任何问题!
1作者: ultrafox423 天前原帖
我是一个MCP服务器的开发者(AiDex — 使用Tree-sitter进行代码索引,github.com/CSCSoftware/AiDex)。我最近发现一个名为iflow-mcp的组织正在系统性地在GitHub上分叉数百个MCP服务器,并在他们自己的npm命名空间(@iflow-mcp/)和PyPI上重新发布这些项目,同时通过他们自己的“市场”进行分发——而从未联系过原作者。 但真正的问题并不是分叉本身,而是安全性。 --- *发生了什么* 这些分叉以@iflow-mcp/originalauthor-projectname的模式发布。原作者的熟悉名称创造了信任——但用户实际获得的代码完全在第三方的控制之下。没有任何东西可以阻止该第三方在发布之前修改代码。 *为什么MCP服务器特别危险* MCP服务器并不是一个无害的插件。根据设计,它具有深层访问权限: - 它读取你的源代码,浏览你的文件系统,接收文件内容 - 它可以看到.env文件、API密钥、SSH密钥、凭证和专有代码 - 它通过标准输入输出直接与AI客户端通信——这意味着它可以操控工具的响应 - 它通常以与用户相同的权限运行 一个被植入木马的MCP服务器可以在正常执行其功能(如索引或分析你的代码)的同时,悄悄地提取敏感数据。你看到工具正常工作,但却看不到数据的流出。 更糟的是,一个被操控的服务器可能故意向AI助手提供虚假信息——建议不安全的代码模式、隐藏漏洞,或者将AI引导到错误的文件。 *信任链的破裂* 这个问题是系统性的: 1. 开发者A将一个MCP服务器作为开源项目发布 2. 组织X对其进行分叉,并在他们自己的命名空间下重新发布 3. 用户在X的市场中找到该包,认出熟悉的名称并安装它 4. 用户认为他们正在运行原版——但实际上他们运行的是X可能以任何方式修改过的代码 这是一种经典的供应链攻击。而且它特别有效,因为MCP服务器是新的,许多用户尚未学会验证他们的工具实际来源。 --- *作为MCP服务器开发者你可以做什么* 1. *启动时的来源检查:* 检查你自己的包名(package.json,process.env.npm_package_name)和安装路径(__dirname)。如果出现外部命名空间,显示明确的警告: ``` 这似乎是[项目]的非官方再分发。 官方包:npm install [original-package] 仓库:[original-url] ``` 2. *构建签名:* 在构建过程中嵌入哈希或签名标识符。一个不复制你确切构建流程的再发布者无法重现它。 3. *注册表检查:* 启动时向npm注册表发送快速HTTP请求,可以揭示该包是否在外部命名空间下运行。 *作为用户你可以做什么* - 始终直接从原始项目安装MCP服务器,绝不要通过第三方市场 - 检查npm命名空间:@iflow-mcp/cscsoftware-aidex与aidex-mcp并不相同 - 查看GitHub以验证一个仓库是否是分叉,以及实际作者是谁 - 对具有深层文件系统访问权限的MCP服务器特别谨慎 --- *请分享这篇帖子。* 越多的MCP开发者和用户了解这种攻击方式,利用它的难度就越大。MCP生态系统正在快速增长——但如果没有对供应链安全的意识,我们就是在沙子上构建。 如果你受到影响:请发声。检查你的项目是否出现在github.com/iflow-mcp/下。声音越多,npm和GitHub采取行动的速度就越快。 原始项目:https://github.com/CSCSoftware/AiDex 他们在npm上的分叉:https://www.npmjs.com/package/@iflow-mcp/cscsoftware-aidex —— Uwe Chalas,AiDex的作者(npm上的aidex-mcp)