KamoCRM

Auth pada titik akhir yang dapat mengambil sekarang, ffmpeg / Batik hardening pada sisanya

FixConversionService
Dikirim
23 September 2026 pukul 10.34 UTC
Penulis
Kamo
Commit
cb37067

Sumber Daya ServerConfig mengijinkan setiap permintaan (layanan ini dapat dihubungi secara anonim di conversion- api.kamocrm.com), dan tak satu pun dari pengendali ImageOpsController atau pengendali percakapan memeriksa sesi atau rahasia internal mereka sendiri - ffmpeg dan LibreOffice berlari, dan Batik transkode mentah SVG, pada upload anonim. Ditempa setiap penelepon di seluruh armada sebelum menyentuh auth, karena sebagian besar titik akhir memiliki Layanan - ke - layanan penelepon (layanan dokter, layanan keamanan) yang mengirim NO kredensial hari ini: - / image / resize-height: gated on a staff session (extratK Token, gerbang yang sama Gambar UploadController berlaku) - pemanggil satu, halaman badge tanda email-signature, adalah itu sendiri tidak bisa dicapai tanpa satu, jadi ini biaya apa-apa. - / convert -to -pdf -with- password: gated on the * * * * * * * * * * * shared secret (same Konstant- waktu, pola fail- tertutup sebagai Transcription Controller) - a full repo grep found NO caller di mana saja, jadi mengadakannya gratis. - / gambar / resize-bg, / favicon / generasi, / converts -to-pdf, / generate- thumbnails, / page- count, / baca-halaman: TIDAK digated. Masing-masing memiliki setidaknya satu layanan Java-to-layanan penelepon yang mengirimkan tidak X- Internall-Auth hari ini (layanan keamanan * * * * * * * * * * * * * * * ConversionPageClient, Doctsservice 's Dokuments Service). Perlu auth di sini akan 401 bahwa lalu lintas Segera di menyebarkan - sebuah produk / keputusan cross- repo, bukan menebak perubahan ini membuat sepihak. Peta pemanggil penuh, dan properti * * * * * * * * * * * * * * * * / * * * * * * * * * * * * * * * telah dipasang di pod ini setiap commit sebelumnya) setiap penelepon perlu mulai mengirim, masuk Laporan perbaikan. Dikeraskan secara independen dari kesenjangan auth, karena tidak ada yang tergantung pada koordinasi penelepon: - ImageRevizeService: baik ffprobe maupun ffmpeg pernah diberitahu format masukan - baik auto- terdeteksi across ffmpeg 's full demuxer set from file content. Now sniffed from magic bytes against a fixed allowlist (PNG / JPEG / WebP / GIF / BMP: pencocokan * _ pipe demuxer) dan disematkan pada kedua doa; sesuatu yang lain ditolak sebelum proses melahirkan. - FaviconGeneratorService: masukan SVG melalui sebuah kunci-down PNGTranscoder (Keamanan Sumber Daya LoadExternall + NoLoadSkrip Keamanan, daripada mengandalkan kebijakan baku Batik sendiri untuk bentuk masukan ini - Diverifikasi dengan tangan bahwa Batik 1.17 sudah default baik di sini, tapi itu sekarang jaminan ini berkas state dan sebuah test pin, bukan sebuah properti dependensi-versi yang tidak disebutkan) dan menolak sebuah DOCTYPE Langsung (vektor XXE; diverifikasi yang satu ini tidak penting - Batik tidak menolaknya sendiri). Tambahkan cap pixel pre- decode (~ 100MP, via pembaca ImageIO -only) dan konkueces batas (2 dalam penerbangan) akhir ukuran sudah dimiliki, ditambah topi 2MB pada markup SVG itu sendiri. Tes terbaru: ImageRevizeServiceTest (format allowlist), FaviconGeneratorServiceTest (SSRF via a server HTTP lokal yang harus melihat nol hits, penolakan DOCTYPE, oversized- SVG penolakan), * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Mutasi - diperiksa: DOCTYPE, format -allowlist dan kedua gerbang auth baru semua akan merah ketika dinonaktifkan; tes SSRF tidak (lihat docstring - Batik sudah membela bentuk masukan ini) tetapi disimpan sebagai regresi disematkan Penjaga.

Semua perubahan

Seperti apa yang Anda lihat pengiriman?

Semua itu tiba di ruang kerjamu sendiri. Mulailah dengan rencana gratis dan baca halaman ini lagi dalam sebulan.

Mulai Bebas SelamanyaTampilkan Harga