Lab: Exploiting HTTP request smuggling to bypass front-end security controls, CL.TE vulnerability

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ก.ย. 2024

ความคิดเห็น • 15

  • @netletic
    @netletic  8 หลายเดือนก่อน +1

    Hey everyone! Check out this playlist for all my solutions to the HTTP Request Smuggling labs from PortSwigger - 👀
    th-cam.com/play/PLGb2cDlBWRUX1_7RAIjRkZDYgAB3VbUSw.html
    Here are the timestamps for this video - ⏱
    00:00 - Intro
    00:23 - Set up an Attack Request and a Normal Request
    02:07 - Trigger a Differential Response
    02:26 - Why we add a Request Header
    03:29 - Try and smuggle a GET request for /admin
    03:50 - Work around 'Admin Interface only for local users'
    04:24 - Why we get a Duplicate Header names error
    04:54 - How to fix the duplicate host header
    05:37 - Why we need to set a Content-Length
    06:30 - What is the minimum Content Length?

  • @arianamiri7821
    @arianamiri7821 3 หลายเดือนก่อน

    why did we need "Content-Type: application/x-www-form-urlencoded" in the smuggled request?

  • @tarekradwan8661
    @tarekradwan8661 8 หลายเดือนก่อน +1

    But when you add the content-length to the smuggled request, shouldn't it be ignored because that request is in the backend which uses TE and not CL?

    • @netletic
      @netletic  7 หลายเดือนก่อน

      hey @tarekradwan8661, the backend follows the RFC, which states that if both the Content-Length header and Transfer-Encoding header are present, the Transfer-Encoding header should be given precedence.
      In our smuggled request we don't set a Transfer-Encoding header, so the backend is using Content-Length for the smuggled request.

  • @kallikantzaros
    @kallikantzaros 8 หลายเดือนก่อน +1

    Holy crap these labs are way harder than anything else on the academy. For someone who have never worked with request smuggling, these labs require some good amount of real-world practice and reading/studying before trying to solve them.

    • @netletic
      @netletic  7 หลายเดือนก่อน +2

      hey @kallikantzaros, yeah they're definitely a step up from some of the other topics! 😅 I found that watching James Kettle's talks and reading the white papers he wrote on the subject helped me a lot when I started learning about request smuggling.

  • @_ILunar
    @_ILunar 11 หลายเดือนก่อน +1

    If you do this, it will separate the smuggled request from the normal request, rather than putting the normal request in the body of the smuggled request? That is, here we will have 2 separate requests, one is a smuggled request, the other is a normal request.

    • @_ILunar
      @_ILunar 11 หลายเดือนก่อน

      so i write:
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 114
      Transfer-Encoding: chunked
      0
      GET /admin HTTP/1.1
      Host: localhost
      Content-Type: application/x-www-form-urlencoded
      Content-Length: 2
      0
      its also okey

    • @_ILunar
      @_ILunar 11 หลายเดือนก่อน +1

      am sorrry,
      i udstanded

  • @conanngan645
    @conanngan645 หลายเดือนก่อน

    at 7:00 it's trippy that we can send data in the body of the get request because if we try to do the same thing as a normal request it's denied

    • @conanngan645
      @conanngan645 หลายเดือนก่อน

      Ig the check is also only in the application layer. Is that normal?

  • @kamalsharma2839
    @kamalsharma2839 ปีที่แล้ว +2

    You got one more subscriber. You deserve more

    • @netletic
      @netletic  ปีที่แล้ว +2

      thank you @kamalsharma2839! That's very nice to hear ☺️

  • @ardiasx
    @ardiasx ปีที่แล้ว +1

    Love your explanation very helpful me to understand http reqeust smuggler. +sub

    • @netletic
      @netletic  ปีที่แล้ว +1

      thanks a mil @ardiasx! glad it was helpful and thanks for the sub!