From 0a45f5e71a1f55740c40e2a1be5e5426788300ed Mon Sep 17 00:00:00 2001 From: teidesu Date: Tue, 15 Jun 2021 03:11:52 +0300 Subject: [PATCH] fix(core): check for correct padding --- packages/core/src/network/mtproto-session.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/packages/core/src/network/mtproto-session.ts b/packages/core/src/network/mtproto-session.ts index 3d0b0e14..3878db23 100644 --- a/packages/core/src/network/mtproto-session.ts +++ b/packages/core/src/network/mtproto-session.ts @@ -187,6 +187,17 @@ export class MtprotoSession { } const content = innerReader.object() + + const paddingSize = innerData.length - innerReader.pos + + if (paddingSize < 12 || paddingSize > 1024) { + debug( + 'warn: ignoring message with invalid padding size: %d', + paddingSize + ) + return null + } + return { messageId, seqNo,