Tranzacții cripto neautorizate permise de serverul thirdweb MCP
Autor: Evan Harris
Risc: Ridicat
Componentă afectată: thirdweb MCP Server
Introducere
Ca parte a cercetării noastre continue de securitate asupra serverelor Model Context Protocol (MCP), am identificat o vulnerabilitate de securitate semnificativă în serverul thirdweb MCP care permite tranzacții cripto neautorizate prin acces la rețea neautentificat.
Prezentarea vulnerabilității
Serverul thirdweb MCP, atunci când este pornit cu flag-ul --transport sse, expune o interfață Server-Sent Events (SSE) neautentificată care, în mod implicit, se leagă la 0.0.0.0:8000. Această configurație permite atacatorilor de la distanță să execute tranzacții cripto neautorizate din portofelele victimelor.
Detalii tehnice
Problema
Când este configurat cu transport SSE, serverul:
- Se leagă la
0.0.0.0:8000, făcându-se accesibil de la orice gazdă din rețea - Nu oferă niciun mecanism de autentificare pentru endpoint-ul
/sse - Are încredere în orice client conectat pentru a executa operațiuni privilegiate, inclusiv tranzacții cripto
Scenariu de atac
Un atacator poate:
- Descoperi endpoint-ul expus la
http://victim_ip:8000/sse - Se conecta folosind instrumente MCP standard precum MCP Inspector
- Executa tranzacții neautorizate folosind instrumentul
send_transaction - Transfera criptomonede din portofelul victimei către propria adresă
Dovadă a conceptului
Configurație vulnerabilă
thirdweb-mcp \
--transport sse \
--secret-key=sk_... \
--engine-url=railway_hosted_engine_url \
--engine-auth-jwt=eyJ... \
--engine-backend-wallet-address=0xVictimWallet
Executarea unei tranzacții neautorizate
Folosind MCP Inspector, un atacator se poate conecta la http://victim_ip:8000/sse și poate executa instrumentul send_transaction cu parametrii corespunzători pentru a transfera criptomonede din portofelul victimei către o adresă controlată de atacator.
[Detalii tehnice redactate în așteptarea disponibilității unui patch]
Acest lucru duce la transferul neautorizat de criptomonede din portofelul victimei fără nicio autentificare sau consimțământ al utilizatorului.
Evaluarea impactului
Această vulnerabilitate permite:
- Furtul direct de criptomonede din portofelele victimelor fără consimțământul utilizatorului
- Expunerea la nivelul întregii rețele care afectează cafenele, birouri, rețele publice și orice rețea privată compromisă
Factori de risc
- Expunere în rețea: Legarea implicită la
0.0.0.0face serviciul accesibil la nivelul întregii rețele - Fără autentificare: Orice client se poate conecta și executa operațiuni privilegiate
- Țintă de mare valoare: Acces direct la tranzacții cripto
- Operare silențioasă: Atacurile pot avea loc fără ca utilizatorul să fie conștient
Măsuri de atenuare recomandate
Pentru utilizatori (imediat)
- Evitați utilizarea
--transport sseîn medii de rețea partajate - Folosiți legarea la localhost modificând configurația implicită
- Implementați restricții la nivel de rețea (firewall-uri, VPN-uri)
Pentru dezvoltatori (pe termen lung)
- Schimbați legarea implicită de la
0.0.0.0la127.0.0.1 - Implementați autentificarea pentru toate interfețele de transport
- Adăugați avertismente de securitate în documentație și în output-ul CLI
- Luați în considerare modele de securitate specifice transportului
Această vulnerabilitate a fost raportată echipei thirdweb prin practici de divulgare responsabilă. Recomandăm utilizatorilor să actualizeze la cea mai recentă versiune odată ce patch-urile devin disponibile.
Implicații mai ample
Această constatare evidențiază considerații importante de securitate pentru serverele MCP:
- Mecanismele de autentificare sunt esențiale pentru orice serviciu MCP accesibil prin rețea
- Valorile implicite de legare în rețea ar trebui să prioritizeze securitatea în detrimentul comodității
- Securitatea la nivelul transportului ar trebui folosită pentru a atenua atacurile bazate pe http
- Documentația de securitate ar trebui să prezinte riscurile de implementare
Cronologia divulgării
- 2025-05-23: Vulnerabilitate descoperită și raportată echipei thirdweb
- 2025-07-18: E-mail de urmărire solicitând confirmarea primirii divulgării
- 2025-09-02: Verificare finală confirmând că raportul va fi făcut public
- 2025-09-03: Divulgare publică și publicarea buletinului
Concluzie
Capacitatea de tranzacționare neautorizată din serverul thirdweb MCP demonstrează importanța critică a valorilor implicite sigure în instrumentele de dezvoltare care integrează blockchain și AI.
Pe măsură ce adoptarea MCP crește, implementarea unor măsuri de securitate robuste este cu atât mai esențială pentru a proteja activele digitale ale utilizatorilor și a menține încrederea în ecosistem.
Organizațiile și persoanele care implementează servere MCP ar trebui să efectueze analize amănunțite de securitate, să aplice strategii de apărare în profunzime și să mențină conștientizarea riscurilor de expunere în rețea.