P
Size: a a a
P
BF
BF
GD
GD
R
VP
VP
А
VP
CS
VP
CS
CS
CS
CS
᠌
storage.googleapis.com/{{company}}/backups/{{data}}_{{user_input}}
, но с помощью %2f..%2f
можно снизиться на один каталог в низ. Проблема в том, что если использовать path traversal - signed URL не совпадает, возможно, сначала создается подпись, а потом уже url преобразуется . Т.е {{company}}/backups/{{data}}%2f..%2f{{anotherdata}}
-> {{company}}/backups/{{anotherdata}}?X-Goog-Algorithm=
GOOG4-RSA-SHA256&etc...
и, если обратиться по ссылке, то пишет, что сигнатуры не совпадают. Также пытался переместить сигнатуру на начальную URL и запросить т.е {{company}}/backups/{{data}}%2f..%2f{{anotherdata}}?X-Goog-Algorithm=
GOOG4-RSA-SHA256&etc
, но это также не помогло и сигнатура не совпадает. Если использовать вместо %2f..%2f
/../
то google storage делает 301 редирект и преобразует URL, соответственно, сигнатура снова на совпадаетVP
CS
s