#TRUSTED 74ff4c613700099b3bf88431317f0e68c517eff7d762c6fc97128b0ca1db7ad0b90b713973e64cd21feb002f3122aa1d0c74f59312ecae737cbbe17eb71cafa15a6c2d70159d7bc1abbd274ed8cb99514aea8ad6456608280e23bcce6f45f9fd236fff5e3d9c3b2d1742e085fd8e0a9f91c1702d963e36c9f77b77105a1bc28d7078673dca33613c86335203bd504e586573772f361519caa8fef1a82a0cf1d87c01c603fb98beebf7c00bbae686b52ee8a2162185a622166a6d8895196802d2bc1f5e1f21fdecb86d375be2929f9e6004b20f9c9674e52ef99fc16f8f49b7552e13890cd60d8f5ad4a0261efcd7e7fe44d97f2e5a37e7228878aa52bc05b5d7742e92e8c514392328263f2521c2c8bf7bac3aae8b5e2420106dc6c49120b1abbdee3b1e695e92bc8895a43bda3d890114c403a450ba89300f44e9fb1f588516287092b6c4c2a9aedf984daf7acc8f1883bfc7c5edaaf6b95dbe43189c82d4e7dc675f231189355861e23337393403dfec6c26f110e593daa2d29f66b609f6a0b336864085d5544717fa41a8894153ee2aa0881a6baa3d79b5688e0f184b56969ef9f2d649be89153d85e0e9d64efc6701da02ef10363bfec5f30f1145fe7f2d3408e2228b9c4eef4b5c9c638ca393538dc9b51556beae17a263dc989b87769689af10d3faf770ecb1e25f213666cb5a613be267c6b96a2eac3cc51828981717
#TRUST-RSA-SHA256 95ffddf20e9e24b3d0472cff7f0bbf2cfb0ab612c5e19c540c0447bcd804c1db27cd8b43f3a5745df38516d30d3f3e76259cba53672717dc7dad9756dca26c1d29313363f6b8756cec368b8020ecced3a75677c75a3fb5fc471c605d4690f88944438860adfdbd5918ebb833ea491ab73e37d81669e6ce4a078e53c22d549862229e8a195bf22be5f48b8acf67b9de8a30d26934f6153df931026d890cbe18a0068c596d1d555b6ff0d7c00a8ca17cc9c385ec0c964022783edeb728eee7378ac5807bf3ffa2a0990ca67c6036116eb65b8f274bed5d675d71173fd689a34791f1a5827ac85001e3aace02b12358773550f81355b8d4c339a66a721ae06efabc8ba52203c4c37e6d0dbe01cb97f19fa4210e76a18f090a31c67ce009cb0401c68af1adaa4610588a3908dae2244066e12f3daf3ad1e0e0fe9e3a6e9fbdb91715622cf53d68875acb4fe57923d1dcb091e851e9f67f167dd574d181ee8c11d7a515074584d4149c182ba93560685a4311ce9b1d47c2237461128e877a16214ce762fd01fe35eebed78ba27cb197cb0651225eefd62a92e8dc49e760fab44a80b3d70e4cfb176d3301852dc3830215654d369f857b4c26b5bb5f0d1cf725844f264cc288cc95f1b626636208ab8cd7969d2b3e4c673b27a7c1a6071002a181474f09b77333ef540aa910f596d8335a0aae37e92c624d461717f0834303630ee518
#%NASL_MIN_LEVEL 80900
#TRUST-RSA-SHA256
#
# (C) Tenable Network Security, Inc.
#
include('compat.inc');
if (description)
{
script_id(269245);
script_version("1.2");
script_set_attribute(attribute:"plugin_modification_date", value:"2026/04/06");
script_name(english:"Gathers structured vuln data from plugins that fork");
script_set_attribute(attribute:"synopsis", value:
"Reports vuln data from forking plugins as internal host tags.");
script_set_attribute(attribute:"description", value:
"This plugin generates internal host tags for vulnerability data
from plugins that fork. It queries scratchpad tables, aggregates the
vulnerability data by plugin ID, port and protocol, then attaches the
data to the scan as internal host tags. This plugin does not create
a scan vulnerability report.");
script_set_attribute(attribute:"solution", value:"n/a");
script_set_attribute(attribute:"plugin_publication_date", value:"2025/10/07");
script_set_attribute(attribute:"plugin_type", value:"summary");
script_set_attribute(attribute:"agent", value:"all");
script_set_attribute(attribute:"always_run", value:"TRUE");
script_end_attributes();
script_category(ACT_END);
script_family(english:"General");
script_copyright(english:"This script is Copyright (C) 2025-2026 and is owned by Tenable, Inc. or an Affiliate thereof.");
exit(0);
}
include("structured_data_vulnerability_finding.inc");
include("structured_vuln_queries.inc");
var table = query_scratchpad(structured_vuln_queries::VULN_DATA_QUERY_TABLE_EXISTS);
if (empty_or_null(ref:table))
exit(0, "Could not find the scratchpad vulnerability table.");
var tag_data = query_scratchpad(structured_vuln_queries::VULN_DATA_QUERY_PPP);
if (empty_or_null(ref:tag_data))
exit(0, "No vulnerability data was stored for reporting.");
var vuln_data, vuln_raw, sd_vuln_finding;
foreach (var ppp in tag_data)
{
vuln_data = query_scratchpad(structured_vuln_queries::VULN_DATA_QUERY_VULNS, ppp.plugin, ppp.port, ppp.proto);
if (empty_or_null(ref:vuln_data))
continue;
sd_vuln_finding = create_structured_data_vulnerability_finding_obj(port:ppp.port, protocol:ppp.proto, plugin_id:ppp.plugin);
foreach (var vuln in vuln_data)
{
vuln_raw = deserialize(vuln.vulnerability);
sd_vuln_finding.append("vulnerability", vuln_raw);
}
sd_vuln_finding.report_internal();
}
exit(0, "This plugin does not produce output.");
Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation