Burp Suite User Forum

Create new post

Send to repeater failing

Dan | Last updated: Oct 25, 2023 02:52PM UTC

I can't reliably reproduce it but it seems that sometimes when sending requests to repeater from the proxy history they aren't populated correctly. This has occurred perhaps 4 or 5 times in a day of testing and speaking to colleagues they have seen the same behaviour recently themselves. A new tab in repeater is created and the target info is populated, but the request window is just empty of content. Resending the request will create another repeater tab which is correctly populated. I've not noticed anything that seems to be common between when it is happening. I'm on Windows 11 using v2023.10.2.3 currently, this is first testing I've done in a while so can't say if issue existed in any previous versions.

Michelle, PortSwigger Agent | Last updated: Oct 25, 2023 02:59PM UTC

Hi Thanks for getting in touch to report this. Do you have any extensions installed? If so, do you see the same behavior with the extensions disabled? Have you noticed any patterns with the types of requests you're sending? For example, are they all a certain type of request, or could they have been modified by match and replace rules?

Dan | Last updated: Oct 25, 2023 03:24PM UTC

Requests are unmodified, no rules on. Have several extensions on but also there's at least three or four others in company saying they have same behaviour. I'll try disabling everything and see if it happens again, currently can't replicate but will update if it occurs.

Michelle, PortSwigger Agent | Last updated: Oct 25, 2023 03:34PM UTC

Thanks for the update. It's worth making sure an extension isn't impacting this in some way, so if you can get your colleagues to look out for this and try disabling extensions, too, that would be great. If the issue does reoccur, can you send the output from Help > Diagnostics to support@portswigger.net, along with as much detail as you can remember about the steps you were taking leading up to the point where it occurred, and we can try to replicate it here. Also, how many Repeater tabs are you creating when this happens? We've not had any other reports of this yet, but I'll keep an eye out for them and let you know if I can replicate it here.

Dan | Last updated: Oct 25, 2023 04:18PM UTC

Just happened again, have mailed diagnostics, no extensions running, no request modification, left clicked on top request in HTTP History listing, right clicked send to repeater, behaved as described above, did it again and sent to repeater fine, did it again and failed again, did it again sent fine, repeated repeatedly (getting very repeaty now) and did it again on 9th, 16th, 19th times. Request is a fairly normal, was a PATCH request but when it's happened previously has been with other request types too iirc. Now back to can't reproduce.

Dan | Last updated: Oct 26, 2023 08:47AM UTC

Just had this happen again twice in a row, selected with left click, right click send to repeater, POST request this time, redacted below: POST /w/x/1/y-z HTTP/1.1 Host: xxx User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/118.0 Accept: application/json, text/plain, */* Accept-Language: en-GB,en;q=0.5 Accept-Encoding: gzip, deflate, br Content-Type: application/json Authorization: Bearer xxx Content-Length: 27 Origin: https://xxx Referer: https://xxx Sec-Fetch-Dest: empty Sec-Fetch-Mode: cors Sec-Fetch-Site: same-site Te: trailers Connection: close {"xxx":"yyy"}

Michelle, PortSwigger Agent | Last updated: Oct 26, 2023 09:23AM UTC

Thanks for sending over your diagnostics. We'll take a look through those and see if they help us replicate your environment. Can you enable Settings > Suite > Performance feedback > 'Log performance to a local directory' for me? Then, the next time this happens, can you close Burp and send me the resulting log file, please? In the meantime, I'll run some more tests here to try and replicate the issue. Are you seeing this both in temporary projects and disk-based projects?

Dan | Last updated: Oct 26, 2023 09:43AM UTC

It's disk based project, I just had it happen again but this time I right clicked inside the request in HTTP History, not in the list.

Michelle, PortSwigger Agent | Last updated: Oct 26, 2023 10:14AM UTC

Did you have a chance to set up the exception logging before this happened? Do you also see this if you use the keyboard shortcut (Ctrl+R) to send requests?

Dan | Last updated: Oct 26, 2023 01:28PM UTC

Hi Michelle, It's just happened when using the Ctrl + R shortcut, this time from repeater I used CTRL + R to send it to a new repeater tab. I've done it several times and it has happened on both requests where I have previously sent it and requests that haven't been sent. Log 1: 26-10-2023 14:21:08 BST | 8192 | Read timed out | java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:273) java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:299) java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:340) java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:789) java.base/java.net.Socket$SocketInputStream.read(Socket.java:1025) java.base/java.io.InputStream.read(InputStream.java:217) burp.Zh1s.Zu(Unknown Source) burp.Zh1s.ZQ(Unknown Source) burp.Zh1s.ZV(Unknown Source) burp.Zh1s.ZA(Unknown Source) burp.Zh1j.ZW(Unknown Source) burp.Zlx6.ZL(Unknown Source) burp.Zexp.Zv(Unknown Source) burp.Zexp.ZH(Unknown Source) burp.Zovf.Zc(Unknown Source) burp.Zovf.run(Unknown Source) java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) java.base/java.lang.Thread.run(Thread.java:1589) 26-10-2023 14:21:08 BST | 8192 | Read timed out | java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:273) java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:299) java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:340) java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:789) java.base/java.net.Socket$SocketInputStream.read(Socket.java:1025) java.base/java.io.InputStream.read(InputStream.java:217) burp.Zh1s.Zu(Unknown Source) burp.Zh1s.ZQ(Unknown Source) burp.Zh1s.ZV(Unknown Source) burp.Zh1s.ZA(Unknown Source) burp.Zh1j.ZW(Unknown Source) burp.Zlx6.ZL(Unknown Source) burp.Zexp.Zv(Unknown Source) burp.Zexp.ZH(Unknown Source) burp.Zovf.Zc(Unknown Source) burp.Zovf.run(Unknown Source) java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) java.base/java.lang.Thread.run(Thread.java:1589) Log 2: 26-10-2023 14:22:28 BST | 8192 | Read timed out | java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:273) java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:299) java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:340) java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:789) java.base/java.net.Socket$SocketInputStream.read(Socket.java:1025) java.base/java.io.InputStream.read(InputStream.java:217) burp.Zh1s.Zu(Unknown Source) burp.Zh1s.ZQ(Unknown Source) burp.Zh1s.ZV(Unknown Source) burp.Zh1s.ZA(Unknown Source) burp.Zh1j.ZW(Unknown Source) burp.Zlx6.ZL(Unknown Source) burp.Zexp.Zv(Unknown Source) burp.Zexp.ZH(Unknown Source) burp.Zovf.Zc(Unknown Source) burp.Zovf.run(Unknown Source) java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) java.base/java.lang.Thread.run(Thread.java:1589) 26-10-2023 14:22:28 BST | 8192 | Read timed out | java.base/sun.nio.ch.NioSocketImpl.timedRead(NioSocketImpl.java:273) java.base/sun.nio.ch.NioSocketImpl.implRead(NioSocketImpl.java:299) java.base/sun.nio.ch.NioSocketImpl.read(NioSocketImpl.java:340) java.base/sun.nio.ch.NioSocketImpl$1.read(NioSocketImpl.java:789) java.base/java.net.Socket$SocketInputStream.read(Socket.java:1025) java.base/java.io.InputStream.read(InputStream.java:217) burp.Zh1s.Zu(Unknown Source) burp.Zh1s.ZQ(Unknown Source) burp.Zh1s.ZV(Unknown Source) burp.Zh1s.ZA(Unknown Source) burp.Zh1j.ZW(Unknown Source) burp.Zlx6.ZL(Unknown Source) burp.Zexp.Zv(Unknown Source) burp.Zexp.ZH(Unknown Source) burp.Zovf.Zc(Unknown Source) burp.Zovf.run(Unknown Source) java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) java.base/java.lang.Thread.run(Thread.java:1589) 26-10-2023 14:23:07 BST | 8192 | Socket closed | java.base/sun.nio.ch.NioSocketImpl.endAccept(NioSocketImpl.java:675) java.base/sun.nio.ch.NioSocketImpl.accept(NioSocketImpl.java:748) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:690) java.base/java.net.ServerSocket.platformImplAccept(ServerSocket.java:655) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:631) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:588) java.base/java.net.ServerSocket.accept(ServerSocket.java:546) burp.Zra.run(Unknown Source) java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) java.base/java.lang.Thread.run(Thread.java:1589) Log 3: 26-10-2023 14:27:10 BST | 8192 | Socket closed | java.base/sun.nio.ch.NioSocketImpl.endAccept(NioSocketImpl.java:675) java.base/sun.nio.ch.NioSocketImpl.accept(NioSocketImpl.java:748) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:690) java.base/java.net.ServerSocket.platformImplAccept(ServerSocket.java:655) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:631) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:588) java.base/java.net.ServerSocket.accept(ServerSocket.java:546) burp.Zra.run(Unknown Source) java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) java.base/java.lang.Thread.run(Thread.java:1589)

Dan | Last updated: Oct 26, 2023 01:31PM UTC

Also just to test, I made a new repeater tab, didn't fill in any of the info, just put the string "ANYTHING" in the request window and hit CTRL + R several times until it happened.

Dan | Last updated: Oct 26, 2023 01:34PM UTC

Further testing, repeated exercise above in new temporary project with burp default config, on 13th tab created it was blank. 26-10-2023 14:33:02 BST | 8192 | Socket closed | java.base/sun.nio.ch.NioSocketImpl.endAccept(NioSocketImpl.java:675) java.base/sun.nio.ch.NioSocketImpl.accept(NioSocketImpl.java:748) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:690) java.base/java.net.ServerSocket.platformImplAccept(ServerSocket.java:655) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:631) java.base/java.net.ServerSocket.implAccept(ServerSocket.java:588) java.base/java.net.ServerSocket.accept(ServerSocket.java:546) burp.Zra.run(Unknown Source) java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:577) java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144) java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642) java.base/java.lang.Thread.run(Thread.java:1589)

Michelle, PortSwigger Agent | Last updated: Oct 26, 2023 03:09PM UTC

Thanks for the updates. Although I've not replicated this yet, one of my colleagues has seen the same behavior, so I've raised a bug ticket here to try and gather more information on this issue. When it happens again, can you email me the full exception log so I can attach it to the bug ticket, please? Also please let me know of you spot any further patterns with the behavior. Have all the occurrences today happened in the same project file?

Dan | Last updated: Oct 27, 2023 08:29AM UTC

Hi Michelle, Those posted above were the full logs that it create. As I said in the posts I recreated it in a temporary project also.

Michelle, PortSwigger Agent | Last updated: Oct 27, 2023 08:46AM UTC

Hi Dan Thanks for the confirmation. I'll continue to try and find out more about this here and replicate it in more cases. As one of our developers has also seen the behavior, we can see an intermittent issue. As we're still in the early stages of finding out what's happening with this, I can't promise any timescales on a fix for this, but we now have it logged and will look into it further. Please bear with us while we do this. This thread is linked to the bug report so we'll be able to post back here when we have an update. Thank you again for taking the time to report this :)

Michael | Last updated: Nov 26, 2023 07:18PM UTC

I'm kind of surprised this is now just being reported. I noticed it several months back around June or July and thought it was an issue with my VM running on a laptop until I noticed it was happening on several different machines. Seems to have persisted between at least two updates that I know of. The last post was about a month ago, any news on a fix?

Michelle, PortSwigger Agent | Last updated: Nov 27, 2023 11:19AM UTC

Hi This is quite a tricky one, as we've been investigating it here. It seems to be a race condition when the Repeater tabs are being created, so at this stage, we're still evaluating the best option for resolving this. To help us make sure you're seeing the same as we are can you email support@portswigger.net with a copy of the output from Help > Diagnostics from your installation along with any additional details about the situations when this has occurred?

Peter | Last updated: Mar 19, 2024 05:38PM UTC

Has there been any progress on this? I've also noted this behavior for a while now and it happens all the time. I never reported it because I figured it had to have already been reported and a fix would have been deployed by now, but that's not the case. This happens surprisingly often and is a real PITA at times, especially when I send a multiple requests to repeater and don't find out that some of them didn't make it until later. I'm running v2024.1.1.6 on Windows 10 x64.

Michelle, PortSwigger Agent | Last updated: Mar 20, 2024 11:33AM UTC

Hi We haven't forgotten about this one. The developers are actively working on performance improvements to Repater to resolve this and other issues, meaning this has become part of a larger piece of work. You should see the results of their work by this summer. Please let me know if you have any questions.

You must be an existing, logged-in customer to reply to a thread. Please email us for additional support.