Kerentanan  ·  2026-10-21

Kebingungan OAuth MCP Python SDK memungkinkan server MCP jahat mencuri kredensial klien (bypass PKCE)

KerentananHigh dampakGlobal
Cycode mendokumentasikan cacat pada SDK Python MCP resmi (1.9.1–1.29.1 dan 2.0.0–2.1.1, CVSS 7.5 untuk penyedia mesin-ke-mesin): selama penemuan OAuth, server MCP jahat dapat mengembalikan 404, memaksa SDK ke jalur fallback lama di mana ia mempercayai konfigurasi OAuth server tanpa memvalidasi issuer yang dideklarasikan. SDK mengirim kode otorisasi, client secret, dan verifier PKCE ke endpoint token yang dikendalikan penyerang, mengalahkan PKCE dan menghasilkan token yang valid untuk akun agen AI. Diperbaiki pada 1.30.0 dan 2.2.0, yang memvalidasi issuer server otorisasi.
Klien MCP berbasis HTTP yang menggunakan OAuth (Google, Okta, Entra ID) dapat ditipu untuk menyerahkan kredensial berumur panjang ke server nakal. Ini sangat berbahaya bagi agen yang secara otonom memilih server MCP, di mana entri registry yang dibajak, typosquat, pembajakan DNS, atau pilihan yang dipengaruhi injeksi prompt dapat mengalihkan klien. Versi yang ditambal memerlukan penerusan issuer= secara eksplisit untuk ClientCredentialsOAuthProvider/PrivateKeyJWTOAuthProvider; peningkatan saja tidak cukup.
Server MCP jahat/disusupi mendorong klien ke fallback penemuan OAuth lama, lalu menerima kode otorisasi, client secret, dan verifier PKCE
SDK Python MCP resmi 1.9.1–1.29.1 dan 2.0.0–2.1.1 (klien MCP berbasis HTTP yang menggunakan OAuth)
Tingkatkan ke SDK Python MCP 1.30.0 (1.x) atau 2.2.0 (2.x), tetapkan parameter issuer= yang diharapkan, rotasi client secret yang terekspos dan cabut token untuk aplikasi mana pun yang terhubung ke server tidak tepercaya
NeuralTrust — MCP authentication OAuth security guide
Lihat di umpan langsung Jelajahi temuan keamanan dan tata kelola AI terkait — diperbarui setiap pagi.
Buka umpan →