[GH-ISSUE #740] [Request] Support Scripting, Breakpoint and Others tools for Websocket protocol #734

Open
opened 2026-03-03 19:21:25 +03:00 by kerem · 14 comments
Owner

Originally created by @4nif on GitHub (Dec 23, 2020).
Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/740

Originally assigned to: @NghiaTranUIT on GitHub.

Proxyman version? (Ex. Proxyman 2.15.1)

macOS Version? (Ex. mac 10.15.7)

Steps to reproduce

Expected behavior

  • Support scripting, breakpoint and other tools such as map local, remote for Websocket protocol

Screenshots (optional)

Originally created by @4nif on GitHub (Dec 23, 2020). Original GitHub issue: https://github.com/ProxymanApp/Proxyman/issues/740 Originally assigned to: @NghiaTranUIT on GitHub. ### Proxyman version? (Ex. Proxyman 2.15.1) ### macOS Version? (Ex. mac 10.15.7) ### Steps to reproduce ### Expected behavior - Support scripting, breakpoint and other tools such as map local, remote for Websocket protocol ### Screenshots (optional)
Author
Owner

@NghiaTranUIT commented on GitHub (Dec 23, 2020):

Hi @4nif, I would like to collect more requests from other users in order to start implementing this feature since it’s quite challenging to support debugging tools with Websocket 🧐

Thank you for opening this ticket 👍

<!-- gh-comment-id:750043670 --> @NghiaTranUIT commented on GitHub (Dec 23, 2020): Hi @4nif, I would like to collect more requests from other users in order to start implementing this feature since it’s quite challenging to support debugging tools with Websocket 🧐 Thank you for opening this ticket 👍
Author
Owner

@NghiaTranUIT commented on GitHub (Dec 23, 2020):

I might support Breakpoint for WS since it might be easier I believe.

Can you share with me what tasks you would like to achieve with WS?

<!-- gh-comment-id:750044295 --> @NghiaTranUIT commented on GitHub (Dec 23, 2020): I might support Breakpoint for WS since it might be easier I believe. Can you share with me what tasks you would like to achieve with WS?
Author
Owner

@4nif commented on GitHub (Dec 25, 2020):

@NghiaTranUIT for starter

  • ability to breakpoint websocket tcp handshake (changes payload or header, etc)
  • modify/update websocket messages after websocket connection established

additionally I want to be able to perform local mock and streaming websocket message payload from proxyman to the client app 💯

<!-- gh-comment-id:751208593 --> @4nif commented on GitHub (Dec 25, 2020): @NghiaTranUIT for starter - ability to breakpoint websocket tcp handshake (changes payload or header, etc) - modify/update websocket messages after websocket connection established additionally I want to be able to perform local mock and streaming websocket message payload from proxyman to the client app 💯
Author
Owner

@NghiaTranUIT commented on GitHub (Dec 25, 2020):

ability to breakpoint websocket tcp handshake (changes payload or header, etc)

This feature seems to be easy because, behind the scene, the WS/WSS will make an HTTP/HTTPS request (with Upgrade: websocket header), so I can modify the Breakpoint to capture it.

modify/update websocket messages after websocket connection established

It's a huge task as I estimate, let me collect more feature requests and consider soon 👍

<!-- gh-comment-id:751219623 --> @NghiaTranUIT commented on GitHub (Dec 25, 2020): > ability to breakpoint websocket tcp handshake (changes payload or header, etc) This feature seems to be easy because, behind the scene, the WS/WSS will make an HTTP/HTTPS request (with `Upgrade: websocket` header), so I can modify the Breakpoint to capture it. > modify/update websocket messages after websocket connection established It's a huge task as I estimate, let me collect more feature requests and consider soon 👍
Author
Owner

@Floperoid commented on GitHub (Sep 21, 2021):

Also map remote for websocket connection would be great feature. It's working in Charles now, might give you some ideas

<!-- gh-comment-id:923819015 --> @Floperoid commented on GitHub (Sep 21, 2021): Also map remote for websocket connection would be great feature. It's working in Charles now, might give you some ideas
Author
Owner

@phaseOne commented on GitHub (Apr 29, 2022):

I too would like to use map remote, so that when developing locally, I can redirect connections in my browser from our dev RabbitMQ instance wss://broker.dev.example.com to a local instance at ws://locahost:15675.

Can also confirm that this works in Charles today if you need it.

<!-- gh-comment-id:1113847415 --> @phaseOne commented on GitHub (Apr 29, 2022): I too would like to use map remote, so that when developing locally, I can redirect connections in my browser from our dev RabbitMQ instance `wss://broker.dev.example.com` to a local instance at `ws://locahost:15675`. Can also confirm that this works in Charles today if you need it.
Author
Owner

@zh-d-d commented on GitHub (May 14, 2022):

This is a great feature

<!-- gh-comment-id:1126595465 --> @zh-d-d commented on GitHub (May 14, 2022): This is a great feature
Author
Owner

@helsonxiao commented on GitHub (Jul 6, 2022):

I need scripting to add query params for ws. Hope this can be implemented soon.

<!-- gh-comment-id:1176000744 --> @helsonxiao commented on GitHub (Jul 6, 2022): I need scripting to add query params for ws. Hope this can be implemented soon.
Author
Owner

@phaseOne commented on GitHub (Jul 6, 2022):

If you need this feature right now, it’s possible with mitmproxy addons, though you will have to accept using an app other than Proxyman.

<!-- gh-comment-id:1176329988 --> @phaseOne commented on GitHub (Jul 6, 2022): If you need this feature right now, it’s possible [with mitmproxy addons](https://docs.mitmproxy.org/stable/addons-examples/#websocket-simple), though you will have to accept using an app other than Proxyman.
Author
Owner

@NghiaTranUIT commented on GitHub (Jul 6, 2022):

Thanks for all your requests. It seems it's reasonable to start implementing the Breakpoint for WS. I will checkout 👍

<!-- gh-comment-id:1176377931 --> @NghiaTranUIT commented on GitHub (Jul 6, 2022): Thanks for all your requests. It seems it's reasonable to start implementing the Breakpoint for WS. I will checkout 👍
Author
Owner

@mprice-banno commented on GitHub (Aug 11, 2022):

Adding my vote for breakpoint, and if possible scripting, for Websockets. Currently using Burp when I have to play with Websockets and it's not up to Proxyman's standard! Scripting would be really nice, as in my use case I need to use the request in part of the response.

<!-- gh-comment-id:1211422059 --> @mprice-banno commented on GitHub (Aug 11, 2022): Adding my vote for breakpoint, and if possible scripting, for Websockets. Currently using Burp when I have to play with Websockets and it's not up to Proxyman's standard! Scripting would be really nice, as in my use case I need to use the request in part of the response.
Author
Owner

@4nif commented on GitHub (Sep 30, 2022):

Hopefully this feature can be implemented soon @NghiaTranUIT

<!-- gh-comment-id:1263624288 --> @4nif commented on GitHub (Sep 30, 2022): Hopefully this feature can be implemented soon @NghiaTranUIT
Author
Owner

@rilham97 commented on GitHub (Oct 5, 2023):

I hope this feature can be add soon, so I just paid to your product only

Here their feature https://portswigger.net/burp/documentation/desktop/testing-workflow/websockets/manipulating-websocket-messages

<!-- gh-comment-id:1749630369 --> @rilham97 commented on GitHub (Oct 5, 2023): I hope this feature can be add soon, so I just paid to your product only Here their feature https://portswigger.net/burp/documentation/desktop/testing-workflow/websockets/manipulating-websocket-messages
Author
Owner

@NghiaTranUIT commented on GitHub (Oct 6, 2023):

Hey folks, thanks for all input here 👍

I suppose that I can implement the WebSocket Repeater like what Burp does at: https://portswigger.net/burp/documentation/desktop/testing-workflow/websockets/manipulating-websocket-messages


To @Floperoid and @phaseOne Map Remote for Websocket is already done: https://github.com/ProxymanApp/Proxyman/issues/1218

<!-- gh-comment-id:1749880259 --> @NghiaTranUIT commented on GitHub (Oct 6, 2023): Hey folks, thanks for all input here 👍 I suppose that I can implement the WebSocket Repeater like what Burp does at: https://portswigger.net/burp/documentation/desktop/testing-workflow/websockets/manipulating-websocket-messages --------- To @Floperoid and @phaseOne Map Remote for Websocket is already done: https://github.com/ProxymanApp/Proxyman/issues/1218
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/Proxyman#734
No description provided.