我想将十六进制数据作为 GET 请求发送,例如 somesite.com/page.php?test=hex_string。数据是在硬件中生成的数据,然后将 GET 请求发送到 php 文件。
但是当我在请求中有0x00 (NULL)字符时,它会失败并显示 400 错误请求消息。
有没有办法可以在 GET 请求中发送 NUL 字符?
我想将十六进制数据作为 GET 请求发送,例如 somesite.com/page.php?test=hex_string。数据是在硬件中生成的数据,然后将 GET 请求发送到 php 文件。
但是当我在请求中有0x00 (NULL)字符时,它会失败并显示 400 错误请求消息。
有没有办法可以在 GET 请求中发送 NUL 字符?
是的。/?hexdecimal_nullbyte=%00
它失败了,因为另一端的 Web 服务器阻止了null-byte attacks
. 所以,网络服务器说你是一个400 bad request
,不要这样做:)
我以前也有同样的问题。我找到的唯一解决方案是在page.php读取之前将这些空字节转换为十进制,然后在page.php 中将其转换回字节,然后再将其发送到硬件。