Platform

Platform overview How it works Authorization testing Evidence & reports Private scanning Integrations

Solutions

Security agencies Product teams Regulated industries Partner programme

Learn

Blog Knowledge hub Compare

Resources

Pricing Documentation Help centre FAQ Security & data What we haven’t proved

Company

About Contact Careers Sign in to the platform Start a $199 pilot →

Home / Blog / Tutorials / Export vulnerability findings to csv

Tutorials

How to export vulnerability findings to CSV or JSON

You can export findings and targets as JSON or CSV, and a scan's sitemap as CSV. This guide shows where each button sits and what to do with the files.

Cyberlop Labs · Updated · 9 min read

Illustration for How to export vulnerability findings to CSV or JSON
Quick answer

To export vulnerability findings to CSV or JSON in Cyberlop, open Issues, set any filters, then click Export CSV or Export JSON. Targets has the same two buttons, and a scan's Sitemap tab has Export CSV. Use CSV for spreadsheets and JSON for scripts and importers.

Quick how-to
  1. Open Issues Click Issues in the sidebar to see all findings across scans.
  2. Narrow the list Use search, the four filters and the triage chips to select the findings you need.
  3. Choose a format Click Export JSON for programs or Export CSV for spreadsheets.
  4. Check the file Open it and compare the row count with the list.
  5. Read the header Note the real column or field names before mapping them to a tracker.
  6. Import or share Load the file into a spreadsheet or tracker, keeping it limited to people who need it.
  7. Update status in Cyberlop Record triage decisions with Update status so the history stays in one place.
Key takeaways
  • Issues exports findings as JSON or CSV; Targets exports the application list; the Sitemap tab exports endpoints as CSV.
  • Choose CSV for people and JSON for programs and importers.
  • Compare the row count in the file with the list before you share it.
  • Exporting findings needs the issue:export permission.
  • Treat the file as sensitive, and open CSVs carefully because cells starting with =, +, - or @ can run as formulas.

To export findings from Cyberlop as JSON or CSV, open Issues and click Export JSON or Export CSV. The same two buttons sit on the Targets list, and the Sitemap tab of a scan has Export CSV for discovered endpoints. Use JSON when another system will read the data, and CSV when a person will sort it in a spreadsheet.

Four steps: open Issues, narrow the list, click Export JSON or CSV, check the row count
The export route for findings.

What can you export from Cyberlop?

An export is a file download of the data you see in a list. Cyberlop offers three: findings from Issues, applications from Targets, and discovered endpoints from a scan's Sitemap tab. Each lets you move results into the tools your team already uses, such as a spreadsheet or an issue tracker.

ExportWhere to find itFormatsBest for
FindingsIssues, top rightJSON or CSVTriage sheets, ticket import, audit evidence, dashboards
TargetsTargets, beside + New targetJSON or CSVAn inventory of applications, owners and environments
EndpointsScan detail, Sitemap tabCSVChecking coverage and reviewing the attack surface a scan discovered

A findings export is the raw data. If you want a document to hand to a manager or customer, use the branded PDF instead: see download PDF reports.

Issues list with search box, four filters, triage chips and a findings table
Issues: search, filters and triage chips set what you see before you export. 1 Search findings: Type a title or location to narrow the list. 2 Severity and class filters: Filter by severity, confidence, class or target. 3 Triage chips: Show only New, Regression, Fixed and more.. Sensitive details are blurred.

How do you export findings as JSON or CSV?

Narrow the Issues list to the findings you need, then click Export JSON or Export CSV. The browser downloads the file.

  1. Click Issues in the sidebar. The page title reads "All findings across scans".
  2. Use the search box ("Search findings by title or location...") to find a specific weakness or file.
  3. Set the four filters if you want a slice: severity, confidence, class and target.
  4. Set the triage chips. The first chip switches between Hiding and Showing only; the chips are New, Regression, Fixed, False Positive and Accepted Risk.
  5. Click Export JSON or Export CSV.
  6. Open the file and compare its row count with the list before you share it.

The list is sorted by severity, Critical first, and its columns are Severity, Title, Class, Confidence, Triage, Target and Location. For what each filter and chip does, read the Issues list guide.

Do the filters change what you export?

The API Reference describes the findings export as "Export issues as JSON or CSV with filters". The captured screens do not show whether the buttons pass your on-screen filters to the file. Test it: set a filter, export, and count the rows against the list.

Check the row count every time

A two-minute check beats a wrong number in a report. If the file holds more rows than the list, the filters were not applied. Export everything and filter inside the spreadsheet instead.

Who can export?

Exporting findings needs the issue:export permission. If the buttons are missing or refused, ask an administrator to check your role. See API tokens and permissions for how permission keys work.

How do you export targets and sitemap endpoints?

Targets and sitemaps use the same pattern: open the list, then click the export button. The target export suits an asset register; the sitemap export suits coverage reviews.

Export the targets list

  1. Click Targets in the sidebar.
  2. Optionally search by name, URL or tag.
  3. Click Export JSON or Export CSV.

The list itself shows name, URL, results, tags, creator and environment. Use the export to feed your vulnerability management routine, and to answer "which applications do we test, and who owns them?" See manage targets for the list in full.

Targets list with search, Export JSON and Export CSV buttons, severity dots and environment badges
Targets has its own Export JSON and Export CSV buttons. 1 + New target: Click to register an application. 2 Search targets: Filter by name, URL or tag. 3 Scan: Start a scan on this target.. Sensitive details are blurred.

Export a scan's sitemap

  1. Open a scan from Recent Scans.
  2. Click the Sitemap tab ("Discovered endpoints").
  3. Type in Filter by URL or method... if you only want some endpoints.
  4. Click Export CSV.

Endpoints are grouped by host. Each row has a method, a path, any parameters, a short note from the scan and a role chip. Hand the file to whoever owns the application and ask them to mark routes they did not expect to exist. The scan sitemap guide explains how to read these rows.

Scan Sitemap tab showing discovered endpoints grouped by host with method badges and role chips
The Sitemap tab lists discovered endpoints and has Export CSV. 1 Sitemap (118): Open endpoints found during the scan. 2 Filter by URL or method: Type to narrow discovered endpoints. 3 Export CSV: Download the endpoint list.. Sensitive details are blurred.

JSON or CSV: which should you choose?

Choose CSV for people and JSON for programs. CSV opens in any spreadsheet; JSON keeps nested data, such as a list of reproduction steps, in one record.

QuestionCSVJSON
Who reads it?A person in a spreadsheetA script, importer or dashboard
StructureFlat rows and columnsObjects and lists; can nest
Sorting and filteringImmediateNeeds a tool or a few lines of code
Long text such as evidenceCan get awkward in a cellStays intact
StandardRFC 4180 describes the common formatRFC 8259 defines the format

Two standards explain most import failures. RFC 4180 says a field that holds a line break, a double quote or a comma should be wrapped in double quotes, and any double quote inside it is doubled. RFC 8259 says JSON text exchanged between systems outside a closed ecosystem must be encoded as UTF-8. If an import fails, those are the first two things to check.

We have not documented the exact column or field names in the files, so inspect the header row (CSV) or the first object (JSON) once, and map those names in your importer. Do not guess them from the on-screen table.

How do you use an export in a spreadsheet or tracker?

Treat the export as a snapshot: filter it, add an owner and a due date, then feed it to the place where work is tracked. Do the real status changes back in Cyberlop so the history stays in one place.

A spreadsheet triage workflow

  1. Export CSV from Issues and open it in your spreadsheet tool.
  2. Freeze the header row and filter by severity, then by confidence. Read severity and confidence first so you rank on both.
  3. Add columns for owner, due date and ticket link, so each security finding has someone responsible.
  4. Share the sheet with the team that will fix the findings.
  5. Record each decision in Cyberlop with Update status, as described in triage findings. Good finding triage marks each false positive there, not in the sheet.

Getting findings into an issue tracker

Most trackers accept a CSV import and let you map columns to fields. Import only the findings your team will act on, usually Critical and High at Medium confidence or above, and put the finding's ID and its Location in the ticket so the engineer can find the evidence. The ID has a class prefix and a number, for example INJ-VULN-02.

Keep the link both ways. Put the ticket link in the spreadsheet, and when the fix ships, re-run the scan and let the Triage column show Fixed. This is the fix verification loop described in fixed and regressed issues.

What to put in the ticket

Include the title, severity, confidence, class, target and Location. Link back to the finding rather than pasting the full request and response into a place with wider access.

What to leave out

Leave out evidence you do not need to share. Payloads, requests and responses can contain sensitive data, so give them only to the people fixing the issue.

Reporting on progress

A dated export is useful evidence in an audit, next to the audit log kept in the Activity feed. Save one per release or per month and you can show how many findings were open then, and how many moved to Fixed since. To track mean time to remediate, compare two exports on finding ID. For a live view, the Dashboard Remediation card already shows Open, Fixed, Regressed and False positives. See the dashboard overview.

GoalExport to useWhat to do with it
Weekly triage meetingIssues CSVFilter to New, sort by severity, assign owners
Ticket creationIssues CSV or JSONImport High and Critical findings with ID and Location
Release evidenceIssues JSON, datedStore with the release record; compare with the previous one
Application inventoryTargets CSVCheck owners, environments and tags are right
Coverage reviewSitemap CSVAsk owners to flag unexpected routes

Is it safe to open a findings CSV in a spreadsheet?

Mostly yes, but handle it with care. Findings contain text that came from the application under test, such as payloads and titles, and a spreadsheet may treat a cell starting with a formula character as a formula.

OWASP describes this as CSV Injection, also called formula injection: it happens when websites "embed untrusted input inside CSV files". The characters that matter are equals (=), plus (+), minus (-) and at (@), plus tab, carriage return and line feed. Read the knowledge-hub entry on CSV injection for the plain-English version.

Safe habits for exported files

  • Open the file in a protected or read-only view if your spreadsheet tool offers one.
  • Do not enable macros, external links or "update links" prompts for a findings file.
  • If a cell starts with one of the characters above, read it as text and do not click through a warning.
  • For automated imports, prefer JSON and parse it as data.

OWASP's most reliable fix for Excel is a tab character at the start of any cell that begins with =, +, - or @, placed inside the quoted field. The tab stays in the data and can trip a later programmatic import, so apply it only if you re-export the data yourself.

Treat the export as sensitive

An export holds vulnerabilities that have not been fixed. Store it where only the right people can read it, do not email it to a wide list, and delete old copies. The same applies to the PDF.

Can you automate exports with the API?

Yes. The API Reference lists two export endpoints, and both return a file.

EndpointWhat it returnsPermission
GET /api/export/issuesIssues as JSON or CSV, with filtersissue:export
GET /api/export/targetsTargets as JSON or CSV (?format=json|csv)target:read

Authenticate with a session cookie or a Bearer API token. Tokens are issued by an administrator and carry the owner's permissions, so ask for one whose role has only the permissions the job needs. See the API reference guide and API tokens and permissions. To run scans from a pipeline too, read CI/CD integration.

The page also has JSON and OpenAPI download buttons that give the specification. That is a description of the API, not your findings. Do not confuse the two.

Troubleshooting: why is the export empty or wrong?

SymptomLikely causeWhat to do
No Export buttons, or a refusalYour role lacks issue:exportAsk an administrator to review your role
File has fewer rows than expectedTriage chips hiding statuses, or a filter is setClear the chips and filters, export again, then check the count
File has more rows than the listFilters were not applied to the fileFilter inside the spreadsheet
Strange charactersWrong encoding when openedImport as UTF-8 through the spreadsheet import wizard
Columns split across linesLong text with commas or line breaksUse the import wizard with double quotes as the text qualifier, or use JSON
No Sitemap exportScan found no endpoints or has not finishedOpen a Completed scan. See failed or cancelled scans
Importer rejects field namesNames guessed from the screenRead the real header row and map those names

If a scan failed, it can still hold the findings found before it stopped, and those appear in the lists and exports. Read failed or cancelled scans before you trust a count.

Next step

Exports are easier to hand out when profiles are organised by team or environment. Read groups and tags to organise profiles by team or environment, so each team's slice is easy to find. See how to read a finding for what each field in the evidence means, and our evidence page for how proof is recorded.

Questions people ask

Export vulnerability findings to csv: FAQs

How do I export findings from Cyberlop?

Open Issues and click Export JSON or Export CSV. Set the search, filters and triage chips first if you want a slice, then compare the row count in the file with the list.

Can I export findings from one scan only?

The Issues export covers findings across scans. A scan's Findings tab lists that scan's findings, but the export buttons we documented are on Issues, Targets and the Sitemap tab. To isolate one scan, filter the file by target or Location, or use the PDF report from that scan.

What is the difference between the PDF report and a JSON or CSV export?

The PDF is a branded document for people to read, in three modes: Open issues only, Include fixed & accepted, and Fixed issues only. The exports are raw data for spreadsheets, trackers and scripts.

Which permission do I need to export findings?

Exporting findings needs the issue:export permission, and exporting targets needs target:read. Permission keys follow the area:action pattern. An administrator can adjust your role.

Can I export the sitemap?

Yes, as CSV. Open a scan, click the Sitemap tab and click Export CSV. Use the filter box first if you only want certain URLs or methods.

Is a CSV export safe to open in a spreadsheet?

Usually, but cells that start with =, +, - or @ can be read as formulas. OWASP calls this CSV injection. Open the file in a protected view, avoid enabling links or macros, and use JSON for automated imports.

Can I export findings automatically?

Yes. GET /api/export/issues returns issues as JSON or CSV and needs issue:export. Authenticate with a session cookie or a Bearer API token issued by an administrator.

Cyberlop mark

Need findings in your tracker?

Cyberlop reports what it actually exploited, with the request, the response and the line of code, and you can download it as data. Ask us to run it on one of your applications.

Or start with a $199 pilot on one application: thirty days, success criteria agreed before day one, credited against the annual if you convert.