Friday 26 October 2012

Taking a look at Checkmarx VistaDB database

Following from the VistaDB viewer I developed a while back I just updated it to work on x64.

It was mainly a case of fixing the references to VistaDB.Net20.dll and Checkmarx's CxDB.vdb3 file, like for example:



Once that is done, and the scripts compile ok, the next step is to launch the Util - VistaDB Browser.h2 (with no UAC)


Which looks like this by default (while running the first 'Test/Set SqlConnection string' )


On the 'Execute SQL Commands' tab we can queries directly on the CxDB.vdb3 file:


In the 'Database details viewer' we have metadata about the database:


In the 'Table's schema' we have detailed info about each table:



And finally in the 'Table's Data' we can see a cached version of the data (in red while loading)


In white after loading:


Note that this is different from the CxAudit environment that allows the easy scripting (in C#) of queries against the a number of post-analysis objects (which is really cool and powerful)



The real power is not that we can access the VistaDB directly using this GUI (there is also an VistaDB client that can be downloaded with similar features). What is interesting is that these GUIs are just 'dynamically compiled' scripts and APIs which can be easily modified to allow complex data analysis and visualizations