<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.owasp.org/index.php?action=history&amp;feed=atom&amp;title=OWASP_WebScarab_NG_Project_Technical_Info</id>
		<title>OWASP WebScarab NG Project Technical Info - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.owasp.org/index.php?action=history&amp;feed=atom&amp;title=OWASP_WebScarab_NG_Project_Technical_Info"/>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_WebScarab_NG_Project_Technical_Info&amp;action=history"/>
		<updated>2026-04-22T05:28:16Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.27.2</generator>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_WebScarab_NG_Project_Technical_Info&amp;diff=101459&amp;oldid=prev</id>
		<title>Daniel Brzozowski: Updating project leader.</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_WebScarab_NG_Project_Technical_Info&amp;diff=101459&amp;oldid=prev"/>
				<updated>2011-01-23T17:37:48Z</updated>
		
		<summary type="html">&lt;p&gt;Updating project leader.&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='en'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 17:37, 23 January 2011&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l92&quot; &gt;Line 92:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 92:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Project Contributors==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==Project Contributors==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The WebScarab-NG project is run by &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Rogan Dawes of Aspect Security&lt;/del&gt;. He can be contacted at &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;rogan AT dawes&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;za&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;net&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The WebScarab-NG project is run by &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Daniel Brzozowski&lt;/ins&gt;. He can be contacted at &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;[[File:Db&lt;/ins&gt;.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;png]]&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:OWASP WebScarab NG Project]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:OWASP WebScarab NG Project]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Daniel Brzozowski</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_WebScarab_NG_Project_Technical_Info&amp;diff=24401&amp;oldid=prev</id>
		<title>RoganDawes: Recategorise this project</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_WebScarab_NG_Project_Technical_Info&amp;diff=24401&amp;oldid=prev"/>
				<updated>2008-01-14T09:18:47Z</updated>
		
		<summary type="html">&lt;p&gt;Recategorise this project&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='en'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 09:18, 14 January 2008&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l94&quot; &gt;Line 94:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 94:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The WebScarab-NG project is run by Rogan Dawes of Aspect Security. He can be contacted at rogan AT dawes.za.net&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The WebScarab-NG project is run by Rogan Dawes of Aspect Security. He can be contacted at rogan AT dawes.za.net&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;[[Category:OWASP Project]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:OWASP WebScarab &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;NG &lt;/ins&gt;Project]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;[[Category:OWASP Tool]]&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[Category:OWASP WebScarab Project]]&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>RoganDawes</name></author>	</entry>

	<entry>
		<id>https://wiki.owasp.org/index.php?title=OWASP_WebScarab_NG_Project_Technical_Info&amp;diff=15564&amp;oldid=prev</id>
		<title>RoganDawes: Renamed the page to make it more consistent</title>
		<link rel="alternate" type="text/html" href="https://wiki.owasp.org/index.php?title=OWASP_WebScarab_NG_Project_Technical_Info&amp;diff=15564&amp;oldid=prev"/>
				<updated>2007-01-18T17:02:18Z</updated>
		
		<summary type="html">&lt;p&gt;Renamed the page to make it more consistent&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;'''WebScarab (Next Generation) Technical Information'''&lt;br /&gt;
&lt;br /&gt;
==Accessing the HSQL Database==&lt;br /&gt;
&lt;br /&gt;
WebScarab-NG defaults to using the HSQLDB database libraries. If you are interested in digging into the DB manually, here's what you need to know.&lt;br /&gt;
&lt;br /&gt;
===Getting the JAR===&lt;br /&gt;
&lt;br /&gt;
Since WebScarab-NG is only available via Java Web Start at the moment, the HSQLDB libraries are unlikely to be anywhere convenient. So download the [[http://dawes.za.net/rogan/webscarab-ng/webstart/hsqldb-1.8.0.1.jar | jar]], and place it somewhere handy.&lt;br /&gt;
&lt;br /&gt;
===Accessing the DB===&lt;br /&gt;
&lt;br /&gt;
HSQLDB comes with a graphical client that allows you to explore the database, and execute arbitrary SQL.&lt;br /&gt;
&lt;br /&gt;
You can invoke it by running:&lt;br /&gt;
&lt;br /&gt;
    $ java -cp hsqldb-1.8.0.1.jar org.hsqldb.util.DatabaseManager&lt;br /&gt;
&lt;br /&gt;
It will prompt you to connect to the DB, by providing a URL. Simply copy and paste the same URL that you see in the WebScarab-NG dialog.&lt;br /&gt;
&lt;br /&gt;
NOTE: Since it is run &amp;quot;in-process&amp;quot; in WebScarab-NG, it is not possible to access it concurrently from another application. You may be successful running HSQLDB in server mode, and specifying an appropriate URL to WS-NG when it starts, but keep in mind that (at the moment) WS-NG executes &amp;quot;SHUTDOWN&amp;quot; on the DB as it exits, in order to have a clean DB file, and no redo logs, etc. This could be changed if necessary.&lt;br /&gt;
&lt;br /&gt;
===Important tables===&lt;br /&gt;
&lt;br /&gt;
Once you have the DB open, it is just SQL  ;-) &lt;br /&gt;
&lt;br /&gt;
The key table is the &amp;quot;conversations&amp;quot; table.&lt;br /&gt;
&lt;br /&gt;
    conversations.createTable.hsqldb=\&lt;br /&gt;
         CREATE CACHED TABLE conversations (\&lt;br /&gt;
                 session_id INT NOT NULL, \&lt;br /&gt;
                 id INTEGER GENERATED BY DEFAULT AS IDENTITY\&lt;br /&gt;
                         (START WITH 1) PRIMARY KEY,\&lt;br /&gt;
                 source_id INT NOT NULL,\&lt;br /&gt;
                 request_date TIMESTAMP NOT NULL,\&lt;br /&gt;
                 request_method_id INT NOT NULL,\&lt;br /&gt;
                 request_uri_id INT NOT NULL,\&lt;br /&gt;
                 request_version_id INT NOT NULL,\&lt;br /&gt;
                 request_content_id CHAR(32),\&lt;br /&gt;
                 response_version_id INT NOT NULL,\&lt;br /&gt;
                 response_status CHAR(3) NOT NULL,\&lt;br /&gt;
                 response_message_id INT NOT NULL,\&lt;br /&gt;
                 response_content_id CHAR(32)\&lt;br /&gt;
         )&lt;br /&gt;
&lt;br /&gt;
This keeps a record of every conversation that WS-NG knows about. The &lt;br /&gt;
columns should be quite self-explanatory.&lt;br /&gt;
&lt;br /&gt;
This table works in conjunction with the headers and named_values tables &lt;br /&gt;
to record the request and response headers, as well as the blobs table &lt;br /&gt;
to record the request and response content. The blobs table is indexed &lt;br /&gt;
by the MD5 sum of the content.&lt;br /&gt;
&lt;br /&gt;
So it is quite easy to reconstruct a conversation by finding the entry &lt;br /&gt;
in the conversations table, getting the headers from the &lt;br /&gt;
headers/named_values tables, and the content from the blobs table. And &lt;br /&gt;
obviously, the other fields are indexed into appropriate tables &lt;br /&gt;
(method_id -&amp;gt; methods, uri_id -&amp;gt; uris, etc)&lt;br /&gt;
&lt;br /&gt;
Comments on my normalization are welcome - it's been almost 15 years &lt;br /&gt;
since my databases class at university!&lt;br /&gt;
&lt;br /&gt;
===Database schema changes===&lt;br /&gt;
&lt;br /&gt;
Databases created by versions of WebScarab-NG before 20070118 will be incompatible with versions after that date. Certain table columns were renamed to make it easier to accommodate other databases, by avoiding keywords, etc.&lt;br /&gt;
&lt;br /&gt;
If you have an early DB, and would like to regain access to it, you need to run the following script using the DatabaseManager as described above:&lt;br /&gt;
&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN session RENAME TO session_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN source RENAME TO source_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN date RENAME TO request_date;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN request_method RENAME TO request_method_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN request_uri RENAME TO request_uri_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN request_version RENAME TO request_version_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN request_content_key RENAME TO request_content_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN response_version RENAME TO response_version_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN response_message RENAME TO response_message_id;&lt;br /&gt;
 ALTER TABLE conversations ALTER COLUMN response_content_key RENAME TO response_content_id;&lt;br /&gt;
 ALTER TABLE blobs ALTER COLUMN key RENAME TO id;&lt;br /&gt;
 ALTER TABLE blobs ALTER COLUMN size RENAME TO blob_size;&lt;br /&gt;
 ALTER TABLE blobs ALTER COLUMN blob RENAME TO blob_content;&lt;br /&gt;
 ALTER TABLE headers ALTER COLUMN conversation RENAME TO conversation_id;&lt;br /&gt;
&lt;br /&gt;
which will rename the columns for you.&lt;br /&gt;
&lt;br /&gt;
==Feedback==&lt;br /&gt;
&lt;br /&gt;
If you have any comments or suggestions for WebScarab-NG, please feel free to send them to the [http://lists.owasp.org/mailman/listinfo/owasp-webscarab OWASP WebScarab mailing list]&lt;br /&gt;
&lt;br /&gt;
Your feedback is much appreciated, and will be carefully considered for future releases of WebScarab-NG.&lt;br /&gt;
&lt;br /&gt;
==Project Contributors==&lt;br /&gt;
&lt;br /&gt;
The WebScarab-NG project is run by Rogan Dawes of Aspect Security. He can be contacted at rogan AT dawes.za.net&lt;br /&gt;
&lt;br /&gt;
[[Category:OWASP Project]]&lt;br /&gt;
[[Category:OWASP Tool]]&lt;br /&gt;
[[Category:OWASP WebScarab Project]]&lt;/div&gt;</summary>
		<author><name>RoganDawes</name></author>	</entry>

	</feed>