Notice
Recent Posts
Recent Comments
Link
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 |
Tags
- ubuntu
- SBX
- Elasticsearch
- PyMuPDF
- docker
- 도커마운트
- Synology
- 17.6.3
- dsm
- promethues
- CVE-2025-55182
- pillow
- 우분투
- Github
- react
- Timezone
- Nas
- pdfminer
- nodeexporter
- Python
- IP변경
- VMware
- 닌텐도
Archives
- Today
- Total
보조기억장치
CVE-2025-55182 취약점 위치 본문
파일 :react-server-dom-webpack/cjs/react-server-dom-webpack-server.node.development.js
취약한 기능 : requireModule(v19.0.0의 ~2546-2558번째 줄)
function requireModule(metadata) {
var moduleExports = __webpack_require__(metadata[0]);
if (4 === metadata.length && "function" === typeof moduleExports.then)
if ("fulfilled" === moduleExports.status)
moduleExports = moduleExports.value;
else throw moduleExports.reason;
return "*" === metadata[2]
? moduleExports
: "" === metadata[2]
? moduleExports.__esModule
? moduleExports.default
: moduleExports
: moduleExports[metadata[2]]; // VULNERABLE LINE
}
문제는 moduleExports[metadata[2]]이 대괄호 표기법 액세스가 자체 속성뿐만 아니라 프로토타입 체인도 확인한다는 것입니다.
코드 흐름 분석
HTTP POST /formaction
↓
decodeAction(formData, serverManifest)
↓
decodeBoundActionMetaData(body, serverManifest, formFieldPrefix)
↓
loadServerReference(serverManifest, value.id, value.bound)
↓
resolveServerReference(bundlerConfig, id) // Parses module#export
↓
requireModule(metadata) // VULNERABLE
↓
moduleExports[metadata[2]] // Prototype chain access!
'IT > React' 카테고리의 다른 글
| Winston and Morgan 적용하기 (0) | 2025.09.26 |
|---|---|
| eslint 설치하기 (0) | 2025.09.25 |
| 캐러셀(Carousel) 적용해보기 (0) | 2023.09.14 |
| NextJS 13.4 Server Actions 사용 (0) | 2023.05.14 |
| Prisma 설치 (0) | 2023.05.12 |