Apa yang terjadi
Daftar denylist SSRF di pengunduh URL file fast-mcp-telegram dapat dilewati karena hanya memvalidasi string hostname literal; penyerang dapat memasok domain yang meresolusi ke alamat loopback atau privat (ditunjukkan dalam pengujian dengan getaddrinfo yang dimock untuk localtest.me → 127.0.0.1 dan internal-service.local → 10.x). Diperbaiki di 30.1 dengan menambahkan validasi resolusi DNS.
Mengapa penting
Server MCP Telegram umumnya dijalankan di mesin analis/ops dengan jangkauan jaringan ke infrastruktur internal; SSRF yang dapat dijangkau melalui alat MCP yang dapat dipanggil agen memungkinkan prompt beracun atau agen yang dikompromikan berpindah dari server alat ke layanan internal dan endpoint metadata cloud.
Vektor serangan
Alat send_message menerima daftar URL file yang diambil server dan dilampirkan ke pesan Telegram keluar; _validate_url_security memblokir string localhost/privat literal tetapi tidak meresolusi domain yang meresolusi ke 127.0.0.1 atau 10.x.x.x (mis. localtest.me → 127.0.0.1), memungkinkan SSRF ke layanan internal dan metadata cloud.
Sistem yang terdampak
leshchenko1979/fast-mcp-telegram < 30.1 (alat send_message / send_message_to_phone)
Mitigasi
Tingkatkan ke fast-mcp-telegram >= 30.1 (commit e6b3032), yang menambahkan pemeriksaan resolusi DNS socket.getaddrinfo sehingga validasi URL cocok dengan alamat yang diresolusi, bukan hanya string hostname.