Burp Suite can intercept WebSocket messages ("WebSockets history" under "Proxy" tab) but does not seem to be able to resend (at least not yet, according to this). I was wondering what techniques or tools are available for this, if any. Any suggestions?

  • Is it a simple websocket where you're trying to send a single request? If so try the Chrome Simple Websocket extension chrome.google.com/webstore/detail/simple-websocket-client/…
    – Daisetsu
    Nov 22 '18 at 5:03
  • I couldn't tell whether ZAP supports websocket replay, but it appears the feature request is still open so I'm guessing it doesn't exist yet.
    – Daisetsu
    Nov 22 '18 at 5:04
  • 2
    There is not really a WebSocket request. Compared to HTTP WebSockets are not a request-response protocol but they are a bidirectional message stream where each site can sent data at any time, i.e. more like TCP or UDP. The only request is the initial WebSocket Handshake which is used to establish the connection, i.e. comparable to the TCP triple-handshake at the start of a TCP connection. For me it is unclear what you are trying to ultimately achieve, maybe describe your problem (fuzzing Websocket communication?) instead of your proposed solution (resending modified WebSocket "request"). Nov 22 '18 at 5:24
  • @SteffenUllrich thanks for pointing that out, I updated my post, changed "request" to "message". And yes, the goal is exactly that, to fuzz WebSocket communication or to simply replay messages, much like how Intruder and Repeater works for HTTP requests in Burp.
    – PFrancisco
    Nov 22 '18 at 7:25
  • 1
    @PFrancisco: If you want to fuzz Websockets a simple search for fuzz websocket gives several hits, including how to do this with ZAP or WSSiP. Nov 22 '18 at 7:42