I am trying to convert a nessus file to a more useful report, something like this: Severity, Finding, Hosts, Associated CVEs

Critical, RHSA-2012-0465: libsmbclient, (ip1, ip2), CVE-20xx-yyyy

 

Query: for $x in //Report/ReportHost/ReportItem

               let $finding := string-join(data($x/cve),", ")

               where $x/risk_factor = "Critical"

               group by $finding

               order by $finding

               return

                              for $x in //Report/ReportHost/ReportItem

                                             let $finding1 := string-join(data($x/cve),", ")

                                             let $host := data($x/../@name)

                                             where $finding1=$finding

                                             group by $finding1

                                             order by $finding1

                                             return

                                             <finding>

                                                            <cve>{$finding1}</cve>

                                                            <host>{$host}</host>

                                             </finding>

Error: Improper use? Potential bug? Your feedback is welcome:

Contact: basex-talk@mailman.uni-konstanz.de

Version: BaseX 7.2.1

Java: Oracle Corporation, 1.7.0

OS: Windows 7, amd64

Stack Trace:

java.lang.ClassCastException: org.basex.query.item.DBNodeSeq cannot be cast to org.basex.query.item.ANode

  org.basex.query.path.AxisPath.iter(AxisPath.java:273)

  org.basex.query.QueryContext.iter(QueryContext.java:275)

  org.basex.query.flwor.For$1.init(For.java:120)

  org.basex.query.flwor.For$1.next(For.java:84)

  org.basex.query.flwor.GFLWOR.iter(GFLWOR.java:320)

  org.basex.query.flwor.GFLWOR.iter(GFLWOR.java:295)

  org.basex.query.QueryContext.iter(QueryContext.java:275)

  org.basex.query.expr.ParseExpr.value(ParseExpr.java:69)

  org.basex.query.QueryContext.value(QueryContext.java:286)

  org.basex.query.flwor.Order.add(Order.java:76)

  org.basex.query.flwor.GroupPartition.ret(GroupPartition.java:148)

  org.basex.query.flwor.GFLWOR.iter(GFLWOR.java:302)

  org.basex.query.QueryContext.iter(QueryContext.java:275)

  org.basex.query.QueryContext.iter(QueryContext.java:229)

  org.basex.query.QueryContext.execute(QueryContext.java:448)

  org.basex.query.QueryProcessor.execute(QueryProcessor.java:94)

  org.basex.core.cmd.AQuery.query(AQuery.java:86)

  org.basex.core.cmd.XQuery.run(XQuery.java:22)

  org.basex.core.Command.run(Command.java:325)

  org.basex.core.Command.exec(Command.java:304)

  org.basex.core.Command.execute(Command.java:76)

  org.basex.gui.GUI.exec(GUI.java:390)

  org.basex.gui.GUI$6.run(GUI.java:342)

 

v/r,

David Brown

Fully Qualified Navy Certification Agent

LSS Certified Blackbelt, CISSP, NSA-IAM/IEM, MSCIS

SPAWARSYSCEN ATLANTIC ISS LOB SSC Lead

Email: david.k.brown1@navy.mil

Phone: 843.218.6227  DSN: 588.6227 Fax: 843.218.5461

“Let us not look back in anger or forward in fear, but around in awareness.” James Thurber