Name is required.
Email address is required.
Invalid email address
Answer is required.
Exceeding max length of 5KB

Sqlite-jdbc and jython

DPeter Apr 23, 2015 03:45PM UTC

Hello,

I am trying to do a Python Burp Suite extension (with jython 2.7) and I want to use sqlite to save some data.

I have some code examples to use "sqlite.JDBC" working properly with "jython" through the following commands:
- export CLASSPATH=/tmp/sqlite-jdbc-3.7.2.jar:$CLASSPATH
- jython example.py

I have a problem when I try to use this examples like Burp Suite extensions, because of the extension is crashing with the following error message: "java.lang.ClassNotFoundException: java.lang.ClassNotFoundException: org.sqlite.JDBC"

The error occurs when jython is parsing the following line: Class.forName("org.sqlite.JDBC").newInstance()

I have executed Burp Suite on the following ways:
- java -XX:MaxPermSize=1G -classpath ".:sqlite-jdbc-3.7.2.jar" -jar burpsuite.jar
or
- export CLASSPATH=/tmp/sqlite-jdbc-3.7.2.jar:$CLASSPATH ; java -XX:MaxPermSize=1G -jar burpsuite.jar

But it have never found the class. I dont know what I am doing wrong.

Thanks,


Dafydd Stuttard Apr 24, 2015 08:27AM UTC Support Center agent

Extensions run within Burp in a sandboxed classloader that is independent from Burp’s classloader and those used by other extensions. This is done to prevent naming collisions and other problems that might lead to extensions impacting each other in unexpected ways.

There is an option at Extender / Options / Python environment where you can specify a folder for loading modules that your extension needs. This might enable you to access your external JAR file.


Post Your public answer

Your name
Your email address
Answer