mirror of
https://github.com/v2fly/v2ray-core.git
synced 2025-12-25 11:35:34 -05:00
test case for anti reply attack
This commit is contained in:
@@ -41,6 +41,9 @@ func TestRequestSerialization(t *testing.T) {
|
|||||||
client := NewClientSession(protocol.DefaultIDHash)
|
client := NewClientSession(protocol.DefaultIDHash)
|
||||||
client.EncodeRequestHeader(expectedRequest, buffer)
|
client.EncodeRequestHeader(expectedRequest, buffer)
|
||||||
|
|
||||||
|
buffer2 := buf.New()
|
||||||
|
buffer2.Append(buffer.Bytes())
|
||||||
|
|
||||||
ctx, cancel := context.WithCancel(context.Background())
|
ctx, cancel := context.WithCancel(context.Background())
|
||||||
userValidator := vmess.NewTimedUserValidator(ctx, protocol.DefaultIDHash)
|
userValidator := vmess.NewTimedUserValidator(ctx, protocol.DefaultIDHash)
|
||||||
userValidator.Add(user)
|
userValidator.Add(user)
|
||||||
@@ -55,5 +58,10 @@ func TestRequestSerialization(t *testing.T) {
|
|||||||
assert.Address(expectedRequest.Address).Equals(actualRequest.Address)
|
assert.Address(expectedRequest.Address).Equals(actualRequest.Address)
|
||||||
assert.Port(expectedRequest.Port).Equals(actualRequest.Port)
|
assert.Port(expectedRequest.Port).Equals(actualRequest.Port)
|
||||||
assert.Byte(byte(expectedRequest.Security)).Equals(byte(actualRequest.Security))
|
assert.Byte(byte(expectedRequest.Security)).Equals(byte(actualRequest.Security))
|
||||||
|
|
||||||
|
_, err = server.DecodeRequestHeader(buffer2)
|
||||||
|
// anti reply attack
|
||||||
|
assert.Error(err).IsNotNil()
|
||||||
|
|
||||||
cancel()
|
cancel()
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user