Burp Suite User Forum

Create new post

Multiple extensions give me a java error

Gabi | Last updated: Nov 03, 2022 09:13AM UTC

Hi all, I use the latest version of Burp Professional on macOS Ventura. I notice that since yesterday some extensions don't work anymore and give me this error: Header Analyzer: at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.Arrays.stream(Arrays.java:5428) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at burp.ihl.requestResponses(Unknown Source) at java.base/java.lang.Thread.run(Thread.java:833) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.ihl.requestResponses(Unknown Source) at burp.kpf.getHttpMessages(Unknown Source) at burp.enx.<init>(Unknown Source) at burp.lm.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) Can anyone help me with some advice on how to fix this error? Thank you Info from Burp Diagnostic: java.runtime.name OpenJDK Runtime Environment java.runtime.version 17.0.2+8-86 java.specification.name Java Platform API Specification java.specification.vendor Oracle Corporation java.specification.version 17 java.vendor Oracle Corporation java.vendor.url https://java.oracle.com/ java.vendor.url.bug https://bugreport.java.com/bugreport/ java.version 17.0.2 java.version.date 2022-01-18 java.vm.compressedOopsMode Zero based java.vm.info mixed mode java.vm.name OpenJDK 64-Bit Server VM java.vm.specification.name Java Virtual Machine Specification java.vm.specification.vendor Oracle Corporation java.vm.specification.version 17 java.vm.vendor Oracle Corporation java.vm.version 17.0.2+8-86 jdk.debug release jdk.tls.allowUnsafeServerCertChange true jdk.tls.maxCertificateChainLength 30 native.encoding US-ASCII org.bouncycastle.jsse.client.dh.minimumPrimeBits 1024 org.bouncycastle.jsse.client.dh.unrestrictedGroups true os.arch x86_64 os.name Mac OS X os.version 13.0

Hannah, PortSwigger Agent | Last updated: Nov 03, 2022 09:55AM UTC

Hi. Is this just happening for Python-based extensions? Does this issue occur when you try to use the extension or when you load the extension into Burp?

Gabi | Last updated: Nov 03, 2022 11:05AM UTC

Hi, For example this error is made by BurpBounty extension: And the errors come when I try to use these extensions java.lang.UnsupportedOperationException: Not supported yet. at burpbountypro.BurpBountyExtension.scopeChanged(BurpBountyExtension.java) at burp.tj8.lambda$registerScopeChangeListener$8(Unknown Source) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at burp.q0t.invoke(Unknown Source) at jdk.proxy2/jdk.proxy2.$Proxy29.scopeChanged(Unknown Source) at burp.qoy.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.UnsupportedOperationException: Not supported yet. at burpbountypro.BurpBountyExtension.scopeChanged(BurpBountyExtension.java) at burp.tj8.lambda$registerScopeChangeListener$8(Unknown Source) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at burp.q0t.invoke(Unknown Source) at jdk.proxy2/jdk.proxy2.$Proxy29.scopeChanged(Unknown Source) at burp.qoy.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833)

Gabi | Last updated: Nov 03, 2022 11:44AM UTC

It seems that the problem is with these extensions, because other colleagues in the company are experiencing exactly the same errors. And errors started to appear after the last Burp update

Gabi | Last updated: Nov 03, 2022 02:40PM UTC

I can confirm that even using Burp v2022.9.4 from Windows 10 gives me the same error from Headers Analyzer Extension: at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException: Cannot read the array length because "array" is null at java.base/java.util.Arrays.stream(Arrays.java:5428) at burp.d61.requestResponses(Unknown Source) at burp.a_w.getHttpMessages(Unknown Source) at burp.at6.<init>(Unknown Source) at burp.s_.run(Unknown Source) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:833) java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException java.lang.NullPointerException

Gabi | Last updated: Nov 04, 2022 01:25PM UTC

Doesn't anyone have any answers as to why this is happening and how to fix it? I can tell you two more extensions in the Bapp Store no longer work and give a lot of errors. Software Version Reporter and. Software Vulnerability Scanner. java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at burp.q0t.invoke(Unknown Source) at jdk.proxy2/jdk.proxy2.$Proxy143.isInScope(Unknown Source) at burp.tj8.isInScope(Unknown Source) at burp.ehb.isInScope(Unknown Source) at burp._cz.isInScope(Unknown Source) at burp.uq5.isInScope(Unknown Source) at burp.BurpExtender.processHttpMessage(BurpExtender.java:222) at burp.jp4.handleHttpResponse(Unknown Source) at jdk.internal.reflect.GeneratedMethodAccessor57.invoke(Unknown Source) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at burp.q0t.invoke(Unknown Source) at jdk.proxy2/jdk.proxy2.$Proxy112.handleHttpResponse(Unknown Source) at burp.q8e.i(Unknown Source) at burp.tsp.i(Unknown Source) at burp.es5.k(Unknown Source) at burp.ilz.Q(Unknown Source

Hannah, PortSwigger Agent | Last updated: Nov 04, 2022 02:50PM UTC

Hi. Can you drop us an email at support@portswigger.net with your diagnostics information? You can find this by going to "Help > Diagnostics" in Burp. Can you confirm that you are seeing this issue with our latest release, v2022.9.5? We've tried to replicate your issue but have not been successful.

Gabi | Last updated: Nov 10, 2022 08:15AM UTC

Back to v2022.8.5 and everything is working properly again

Hannah, PortSwigger Agent | Last updated: Nov 10, 2022 12:11PM UTC

We've had a major change in the Extender API in versions greater than v2022.8.5. This has resulted in some extension-related issues. Could you drop us an email at support@portswigger.net with your diagnostics information? You can find this by going to "Help > Diagnostics" in Burp. Do these errors appear when you load the extension into Burp, or after you have performed a specific action with them?

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