Уязвимост Π² ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° React позволява изпълнСниС Π½Π° ΠΊΠΎΠ΄ ΠΎΡ‚ страна Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π°.

Π’ ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ Π½Π° React web framework (RSC) Π΅ отстранСна уязвимост (CVE-2025-55182), която ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ изпълнСниС Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π΅Π½ ΠΊΠΎΠ΄ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π° Ρ‡Ρ€Π΅Π· ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Π½Π΅ Π½Π° заявка към ΡΡŠΡ€Π²ΡŠΡ€Π΅Π½ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ‚ΠΎΡ€. Уязвимостта Π΅ ΠΎΡ†Π΅Π½Π΅Π½Π° ΠΊΠ°Ρ‚ΠΎ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π° (10 ΠΎΡ‚ 10). Уязвимостта засяга СкспСримСнталнитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ react-server-dom-webpack, react-server-dom-parcel ΠΈ react-server-dom-turbopack, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° изпълнСниС Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° интСрфСйсни Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€Π°, Π° Π½Π΅ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ ΠΎΡ‚ опасна дСсСриализация Π½Π° Π΄Π°Π½Π½ΠΈ, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈ Π² HTTP заявки към ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ "vm#runInThisContext", "vm#runInNewContext", "child_process#execFileSync" ΠΈ "child_process#execSync" ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° изпълнСниС Π½Π° систСмни ΠΊΠΎΠΌΠ°Π½Π΄ΠΈ ΠΈΠ»ΠΈ JavaScript ΠΊΠΎΠ΄ Π² контСкста Π½Π° тСкущия процСс (заобикаляйки изолацията Π½Π° sandbox). Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ ΡΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ "fs#readFileSync" ΠΈ "fs#writeFileSync" Π·Π° Ρ‡Π΅Ρ‚Π΅Π½Π΅ ΠΈ запис Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π½Π° ΡΡŠΡ€Π²ΡŠΡ€, Π΄ΠΎΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ позволяват настоящитС ΠΏΡ€Π°Π²Π° Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ. Атаката Π½Π΅ изисква удостовСряванС. НаличСн Π΅ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏ Π½Π° Сксплойт. # Π˜Π·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° whoami curl -X POST http://localhost:3002/formaction \ -F '$ACTION_REF_0=' \ -F '$ACTION_0:0={"id":"child_process#execSync","bound":["whoami"]}' # Π˜Π·ΠΏΡŠΠ»Π½Π΅Ρ‚Π΅ JavaScript ΠΊΠΎΠ΄ 1+1 curl -X POST http://localhost:3002/formaction \ -F '$ACTION_REF_0=' \ -F '$ACTION_0:0={"id":"vm#runInThisContext","bound":["1+1"]}' # ΠŸΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ Ρ„Π°ΠΉΠ»Π° /etc/passwd curl -X POST http://localhost:3002/formaction \ -F '$ACTION_REF_0=' \ -F '$ACTION_0:0={"id":"fs#readFileSync","bound":["/etc/passwd","utf8β€³]}'

Уязвимостта Π½Π° систСмата зависи ΠΎΡ‚ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° уязвими ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ react-server-dom-webpack, react-server-dom-parcel ΠΈ react-server-dom-turbopack. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ‚Π°, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ react-server, Π½Π΅ са засСгнати. Π‘Ρ‚Π΅ΠΏΠ΅Π½Ρ‚Π°, Π΄ΠΎ която уязвимостта засяга производствСнитС систСми, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ React, Π½Π΅ Π΅ ясна. React Π΅ Π΅Π΄Π½Π° ΠΎΡ‚ Π½Π°ΠΉ-популярнитС ΡƒΠ΅Π± Ρ€Π°ΠΌΠΊΠΈ (ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° ΠΎΡ‚ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ 6% ΠΎΡ‚ уСбсайтовСтС), Π° уязвимитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ Π² основното Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΈ са Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈ Π² изданията. УязвимитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΈ Π² Π±Π°Π·ΠΈΡ€Π°Π½ΠΈ Π½Π° React Ρ€Π°ΠΌΠΊΠΈ, ΠΊΠ°Ρ‚ΠΎ Next.js ΠΈ react-router. Π‘ΠΏΠΎΡ€Π΅Π΄ Wiz Research, уязвими случаи са ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π°Π½ΠΈ Π² 39% ΠΎΡ‚ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ ΠΎΠ±Π»Π°Ρ‡Π½ΠΈ срСди.

ΠžΡ‚ Π΄Ρ€ΡƒΠ³Π° страна, Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Π½ΠΈΠ΅ ΡΡŠΡ€Π²ΡŠΡ€ Ρ‡Ρ€Π΅Π· React Server ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ Π½Π΅ са чСсто ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° функция (ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ уСбсайтовС, Ρ€Π°Π±ΠΎΡ‚Π΅Ρ‰ΠΈ с React, Ρ€Π΅Π½Π΄ΠΈΡ€Π°Ρ‚ потрСбитСлския интСрфСйс само ΠΎΡ‚ страна Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°), Π° уязвимитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ са ΠΌΠ°Ρ€ΠΊΠΈΡ€Π°Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ СкспСримСнтални ΠΈ Π½Π΅ Π΅ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°Π½ΠΎ, Ρ‡Π΅ Ρ‰Π΅ работят ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ. Π’Π΅Π·ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ ΠΈΠΌΠ°Ρ‚ относитСлно малък Π±Ρ€ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚Π½ΠΈ изтСгляния ΠΎΡ‚ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅Ρ‚ΠΎ Π½Π° NPM: react-server-dom-webpack - 670 000 Π½Π° сСдмица, react-server-dom-parcel - 7 000 ΠΈ react-server-dom-turbopack - 32 000. Π—Π° сравнСниС, ΠΏΠ°ΠΊΠ΅Ρ‚ΡŠΡ‚ React NPM ΠΈΠΌΠ° 45 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° изтСгляния Π½Π° сСдмица.

Уязвимостта Π΅ Π½Π°Π»ΠΈΡ‡Π½Π° във вСрсии 9.0.0, 19.1.0, 19.1.1 ΠΈ 19.2.0 Π½Π° React ΠΈ Π΅ Π±ΠΈΠ»Π° ΠΏΠΎΠΏΡ€Π°Π²Π΅Π½Π° Π² 19.0.1, 19.1.2 ΠΈ 19.2.1. УязвимитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΈ Π² ΠΏΠ°ΠΊΠ΅Ρ‚ΠΈΡ‚Π΅ Next.js (16 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° изтСгляния сСдмично), react-router (20 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° изтСгляния сСдмично), waku, @parcel/rsc, @vitejs/plugin-rsc ΠΈ rwsdk.

Уязвимост (CVE-2025-66478) Π² Ρ€Π°ΠΌΠΊΠ°Ρ‚Π° Next.js засяга прилоТСния, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ App Router ΠΈ Next.js 15.x ΠΈ 16.x. Π’Π²ΡŠΡ€Π΄ΠΈ сС, Ρ‡Π΅ уязвимостта засяга конфигурацията ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° Next.js (ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅, създадСно ΠΎΡ‚ ΠΏΠΎΠΌΠΎΡ‰Π½Π°Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ° create-next-app, Π΅ уязвимо). На ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ сС ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π° Π΄Π° инсталират актуализацията Next.js 15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 ΠΈΠ»ΠΈ 16.0.7 възмоТно Π½Π°ΠΉ-скоро.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с DDoS Π·Π°Ρ‰ΠΈΡ‚Π°, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ ΡƒΠ΅Π± хостинг със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS Π°Ρ‚Π°ΠΊΠΈ, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster