Sanitize untrusted variables from message previews before translation
Fixes https://github.com/vector-im/element-web/issues/18314
This commit is contained in:
parent
1efd226896
commit
0923dd37ab
2 changed files with 14 additions and 1 deletions
|
@ -17,7 +17,7 @@ limitations under the License.
|
|||
import { IPreview } from "./IPreview";
|
||||
import { TagID } from "../models";
|
||||
import { MatrixEvent } from "matrix-js-sdk/src/models/event";
|
||||
import { _t } from "../../../languageHandler";
|
||||
import { _t, sanitizeForTranslation } from "../../../languageHandler";
|
||||
import { getSenderName, isSelf, shouldPrefixMessagesIn } from "./utils";
|
||||
import ReplyThread from "../../../components/views/elements/ReplyThread";
|
||||
import { getHtmlText } from "../../../HtmlUtils";
|
||||
|
@ -58,6 +58,8 @@ export class MessageEventPreview implements IPreview {
|
|||
body = getHtmlText(body);
|
||||
}
|
||||
|
||||
body = sanitizeForTranslation(body);
|
||||
|
||||
if (msgtype === 'm.emote') {
|
||||
return _t("* %(senderName)s %(emote)s", { senderName: getSenderName(event), emote: body });
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue