Skip to content

Conversation

@jtof-fap
Copy link
Collaborator

Improving the list of proto/scheme headers:

  • Specific rule for header 'Forwarded: proto='
Forwarded: proto=[protocol]
  • Standard headers ending with "-Proto" or "-Scheme"
CloudFront-Forwarded-Proto: [protocol]
X-Forwarded-Proto: [protocol]
X-Forwarded-Scheme: [protocol]
X-Protocol-Scheme: [protocol]
X-Sp-Edge-Scheme: [protocol]
X-Url-Scheme: [protocol]
  • Non-standard headers that take 'on' value (Ex: Microsoft)
Front-End-Https: on
X-Forwarded-HTTPS: on
X-Forwarded-SSL: on

Sources:

@jtof-fap jtof-fap added the enhancement New feature or request label Sep 15, 2022
@jtof-fap
Copy link
Collaborator Author

Diff of bup-payloads-2022-09-15.lst file with previous version:

diff --git a/tests-history/bup-payloads-2022-09-11.lst b/tests-history/bup-payloads-2022-09-15.lst
index 8e9903b..cd2a2d7 100644
--- a/tests-history/bup-payloads-2022-09-11.lst
+++ b/tests-history/bup-payloads-2022-09-15.lst
@@ -1,5 +1,5 @@

-Bypasser has generated 1880 payloads for 'http://127.0.0.1:8000/foo/bar' url:
+Bypasser has generated 1913 payloads for 'http://127.0.0.1:8000/foo/bar' url:
 [case_substitution] http://127.0.0.1:8000/Foo/bar
 [case_substitution] http://127.0.0.1:8000/fOo/bar
 [case_substitution] http://127.0.0.1:8000/foO/bar
@@ -879,11 +879,44 @@ Bypasser has generated 1880 payloads for 'http://127.0.0.1:8000/foo/bar' url:
 [http_headers_port] -H X-Forwarded-Port: 80 http://127.0.0.1:8000/foo/bar
 [http_headers_port] -H X-Forwarded-Port: 8080 http://127.0.0.1:8000/foo/bar
 [http_headers_port] -H X-Forwarded-Port: 8443 http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H CloudFront-Forwarded-Proto: foo http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H CloudFront-Forwarded-Proto: ftp http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H CloudFront-Forwarded-Proto: http http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H CloudFront-Forwarded-Proto: https http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H CloudFront-Forwarded-Proto: webdav http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H Forwarded: proto=foo http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H Forwarded: proto=ftp http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H Forwarded: proto=http http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H Forwarded: proto=https http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H Forwarded: proto=webdav http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H Front-End-Https: on http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Forwarded-HTTPS: on http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Forwarded-Proto: foo http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Forwarded-Proto: ftp http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Forwarded-Proto: http http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Forwarded-Proto: https http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Forwarded-Proto: webdav http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Forwarded-SSL: on http://127.0.0.1:8000/foo/bar
 [http_headers_scheme] -H X-Forwarded-Scheme: foo http://127.0.0.1:8000/foo/bar
 [http_headers_scheme] -H X-Forwarded-Scheme: ftp http://127.0.0.1:8000/foo/bar
 [http_headers_scheme] -H X-Forwarded-Scheme: http http://127.0.0.1:8000/foo/bar
 [http_headers_scheme] -H X-Forwarded-Scheme: https http://127.0.0.1:8000/foo/bar
 [http_headers_scheme] -H X-Forwarded-Scheme: webdav http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Protocol-Scheme: foo http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Protocol-Scheme: ftp http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Protocol-Scheme: http http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Protocol-Scheme: https http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Protocol-Scheme: webdav http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Sp-Edge-Scheme: foo http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Sp-Edge-Scheme: ftp http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Sp-Edge-Scheme: http http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Sp-Edge-Scheme: https http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Sp-Edge-Scheme: webdav http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Url-Scheme: foo http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Url-Scheme: ftp http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Url-Scheme: http http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Url-Scheme: https http://127.0.0.1:8000/foo/bar
+[http_headers_scheme] -H X-Url-Scheme: webdav http://127.0.0.1:8000/foo/bar
 [http_methods] -X ACL http://127.0.0.1:8000/foo/bar
 [http_methods] -X BIND http://127.0.0.1:8000/foo/bar
 [http_methods] -X CHECKIN http://127.0.0.1:8000/foo/bar

@jtof-fap jtof-fap requested a review from laluka September 15, 2022 22:09
Copy link
Owner

@laluka laluka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Small neats to adress, then all good ! :)

@jtof-fap jtof-fap merged commit 83f255e into main Sep 18, 2022
@jtof-fap jtof-fap deleted the jtof-fap-header-schemes branch September 18, 2022 12:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants