bug: Quoting a message with a photo in iOS breaks encryption and stops web clients from loading messages

Aperta
#6,783 3 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
ios, react-native, typescript
Ambito
mobile, security

Direzione di ricerca

Inizia riproducendo il problema nel client iOS con un team crittografato, un messaggio citato e una foto dalla galleria del telefono. Esamina l'issue correlata RocketChat/Rocket.Chat.ReactNative#6817 per i dettagli tecnici. Il lavoro è completato quando il messaggio con foto citato rimane crittografato e i client web continuano a caricare i messaggi nel canale.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

🐛 bug Tasked
Describe the Bug

When you send an image while quoting someone’s message in an encrypted team, the iOS client sends the msg field as plain text (! unencrypted !), likely truncated at the newline character. This causes base64 decoding errors in browsers and prevents web clients from continuing to use the channel. More technical details about this can be found in issue RocketChat/Rocket.Chat.ReactNative#6817. I created two separate issues because the server side requires validation of incoming data, while the iOS application needs a fix for the described bug.

Steps to Reproduce

In the RocketChat iOS client, you need to quote someone’s message and attach a photo from the phone’s gallery as your own text.

Expected Behavior

No response

Actual Behavior

I prepared a short video demonstrating the bug:
https://www.youtube.com/shorts/zdxIQAOWQg8

Rocket.Chat Server Version

7.12.0

// EDIT: after update to 7.12.1 the problem still exists

Rocket.Chat App Version

4.66.1.107672

Device Name

iPhone 17

OS Version

iOS 26.1

Additional Context

No response

Lingua principale
TypeScript
Stelle
2.4k
Fork
1.5k
Merge medio
1g 15h
PR unite (30g)
29

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di RocketChat/Rocket.Chat.ReactNative

Tutte le issue di RocketChat/Rocket.Chat.ReactNative

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.