From 82ec3871a4aad96b6c4c1ca9da992399796d82bf Mon Sep 17 00:00:00 2001 From: 9seconds Date: Tue, 20 Aug 2019 20:51:09 +0300 Subject: [PATCH] Modified antireplay --- client/direct.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/client/direct.go b/client/direct.go index 81a5e16..5ee0a39 100644 --- a/client/direct.go +++ b/client/direct.go @@ -45,10 +45,12 @@ func DirectInit(ctx context.Context, cancel context.CancelFunc, socket net.Conn, return nil, nil, errors.Annotate(err, "Cannot parse obfuscated frame") } - if antiReplayCache.Has([]byte(frame)) { + var replayPart = []byte(frame) + + if antiReplayCache.Has(replayPart[4:60]) { return nil, nil, errors.New("Replay attack is detected") } - antiReplayCache.Add([]byte(frame)) + antiReplayCache.Add(replayPart[4:60]) connOpts.ConnectionProto = mtproto.ConnectionProtocolAny connOpts.ClientAddr = conn.RemoteAddr()