Repository navigation
[Bug]: 6 vulnerabilities found in bun audit via transitive dependencies (fast-uri, qs) #3313
Description
Activity
- addedbugSomething isn't workingSomething isn't workinginstallInstallation or packagingInstallation or packaging
on Sep 2, 2026 리뷰 · 우선순위 62 / 80
설명
이 이슈는 지금dev(HEADaf314b0a7, package 2.41.0)에서bun audit를 돌리면 취약점 6건(High 4, Moderate 2)이 나온다는 제보입니다. 직접 의존성이 아니라@modelcontextprotocol/sdk@1.30.0아래로 들어오는 전이 패키지입니다. High 네 건은ajv→fast-uri경로이고, Moderate 두 건은express→body-parser→qs경로입니다. 이슈 본문의 재현 명령과 advisory 링크를 같은 checkout에서 다시 돌려 보면, 지금 lock도fast-uri@3.1.5와qs@6.15.3으로 잡혀 있고bun audit결과도 6건 그대로입니다. 제보의 버전 줄(af314b0)과 HEAD가 같습니다.package.json의overrides를 보면 이미"fast-uri": "^3.1.5"가 있습니다. 예전에 올려 둔 핀인데, 고정 하한이 취약 구간 안(>=3.1.3 <3.1.6)에 있어서 lock이3.1.5로 멈춥니다. 고친 버전은>=3.1.6이고, 이슈가 제안한^3.1.7이면 그 위로 올라갑니다.qs는 overrides에 아예 없습니다. lock은6.15.3이고, advisory는 array-limit bypass가>=6.14.2 <=6.15.3, DoS는<6.16.0이라^6.16.0(또는 고정6.16.0)이 필요합니다.@hono/node-server2.1.0,hono4.13.1,ip-address^10.4.0같은 기존 override는 이 이슈와 무관하니 건드리지 않는 게 맞습니다.영향 범위는 “앱이 지금 바로 뚫린다”보다 “감사/릴리스 위생이 빨간불”에 가깝습니다.
fast-uri는 MCP SDK가 JSON Schema 검증용ajv를 쓸 때 URI를 다루는 쪽이고,qs는 express body-parser가 쿼리/폼을 파싱할 때 씁니다. OpenCodex가 MCP SDK를 게이트웨이·툴 경로에 묶고 있으므로, 외부에서 넘어오는 URI·쿼리 입력이 있으면 advisory가 말하는 host confusion / SSRF / array-limit / isBuffer DoS가 이론상 닿을 수 있습니다. 그래도 제품 기능 회귀를 고치는 버그픽스라기보다, overrides + lock 재생성으로 끝내는 짧은 보안 패치 열차입니다. types.ts/config.ts 분할과도 무관하고, 지금devtip의 Cursor/Kiro/release 열차와도 파일이 겹치지 않습니다.고치는 방법은 이슈가 이미 적어 둔 그대로가 가장 싸습니다.
package.jsonoverrides에서fast-uri를^3.1.7(최소^3.1.6)로 올리고,qs를^6.16.0으로 추가한 뒤bun install로bun.lock을 다시 만들고bun audit가 0건이 되는지 확인하면 됩니다. SDK 메이저 업은 이 이슈 범위가 아닙니다.bun audit fix만 돌리면 override 의도(hono 핀 등)와 어긋날 수 있으니, 손으로 overrides를 고치고 lock만 맞추는 PR이 안전합니다. 테스트는 새 유닛이 거의 필요 없고, 기존 CI + audit 클린 출력이 충분합니다. 같은 내용의 열린 PR은 지금 스캔 기준으로 없습니다.우선순위 62는 “싸게 닫을 수 있는 감사 빨간불” 기준입니다. 사용자 대면 기능 장애(#3305 카탈로그 타임아웃 같은 것)보다 낮고, 릴리스 노트에 남기기 좋은 위생 패치보다는 높습니다. 2.41.0 라인에 바로 올려도 되고, preview 태그 전에만 넣어도 됩니다. 다만 overrides를 방치하면 다음
bun audit·의존성 봇·보안 스캔이 같은 6건을 계속 울립니다.package.json overrides -
fast-uri가 지금^3.1.5라 lock이 취약3.1.5에 고정된다.^3.1.7(또는 최소^3.1.6)로 올려야 한다
package.json overrides -qs항목이 없다.^6.16.0을 추가해야 GHSA-x5fp-wj9c-mxmx / GHSA-4mjr-xmp4-gh2g가 사라진다
bun.lockfast-uri@3.1.5-@modelcontextprotocol/sdk→ajv→fast-uri경로. High 4건의 실제 해석 버전이다
bun.lockqs@6.15.3-@modelcontextprotocol/sdk→express→body-parser→qs경로. Moderate 2건의 실제 해석 버전이다
경로@modelcontextprotocol/sdk@1.30.0- 직접 의존성은 유지하고 overrides만 올리는 편이 안전하다. SDK 메이저 업은 이 이슈에 태우지 말 것메인테이너의 판단이 필요한 지점
- overrides만 올린 작은 PR로 바로 머지할지, 아니면 MCP SDK 업그레이드 열차에 묶어 한 번에 정리할지
fast-uri/qs를^로 둘지, 패치 버전을 고정(3.1.7,6.16.0)할지- 2.41.0 안정 라인에 바로 넣을지, 다음 preview 전에만 넣을지
너의 추천
overrides에fast-uri를^3.1.7로 올리고qs^6.16.0을 추가한 뒤 lock을 재생성해bun audit0건을 확인하는 PR을 열고 이 이슈를 그 PR로 닫으세요. SDK 업그레이드나 hono 핀 변경은 이 열차에 넣지 마세요.이 댓글은 grok-bot이 작성했습니다
- added a commit that references this issue
on Sep 3, 2026 Fixed on dev by 2b5a38a (#3346), carrying @agentHits's overrides from #3314 with a Co-authored-by trailer. bun run audit:high is clean at both levels: 143 packages root, 81 GUI, no vulnerabilities. It ships in v2.41.0.
Reacted by agentHits- added a commit that references this issue
on Sep 14, 2026 - added a commit that references this issue
on Sep 17, 2026
Client or integration
Codex App
Area
Installation or packaging
Summary
Running
bun auditon thedevbranch reports 6 vulnerabilities (4 High, 2 Moderate) coming from transitive dependencies of@modelcontextprotocol/sdk:fast-uri(High):Current lockfile resolves to
fast-uri@3.1.4(due to"fast-uri": "^3.1.5"inoverrides). Fixed in>=3.1.6.qs(Moderate):Current lockfile resolves to
qs@6.14.2via@modelcontextprotocol/sdk->express->body-parser->qs. Fixed in>=6.15.4/6.16.0.Reproduction
devbranch:git checkout devbun auditSuggested remediation in
package.jsonoverrides:Version
2.41.0 (dev commit af314b0)
Operating system
macOS 15.5
Logs or error output
Checks