[IntelMQ-dev] IEP009 (was: Shadowserver parser extract_cve_from_tag)
Thomas Hungenberg
th at cert-bund.de
Tue Feb 6 11:04:55 CET 2024
Hi Kamil,
I like your proposal very much!
However, "product.product" sounds a bit confusing.
Maybe this can be changed to "product.cpename" or something like that?
- Thomas
On 05.02.24 10:12, Kamil Mankowski via IntelMQ-dev wrote:
> Hey,
>
> We definitely need to handle vulnerabilities in IntelMQ better. I have already proposed an IEP to introduce a vulnerability field in the
> harmonization, together with related product information: https://github.com/certtools/ieps/pull/10/files What do you think about that proposal?
>
> We currently use a little different approach than just copy CVE numbers: we have an additional bot to split events and create them in the way one CVE
> = one event, with a CVE as identifier. This is later used to compare with other sources, so we can get the information about vulnerability from
> different sources, but send just a one notification.
>
> Best regards
>
> // Kamil Mańkowski <mankowski at cert.at> - T: +43 676 898 298 7204
> // CERT Austria - https://www.cert.at/
> // CERT.at GmbH, FB-Nr. 561772k, HG Wien
>
> On 2/5/24 10:03, Thomas Hungenberg via IntelMQ-dev wrote:
>> Hi,
>>
>> like for other Shadowserver reports, we are sending email notifications to
>> affected network owners in Germany based on the Vulnerable-HTTP report.
>> Unlike other reports (like Open-Portmapper), the Vulnerable-HTTP report
>> contains information on different kinds of software/systems.
>> So we are sending the notifications with a different template for each
>> software/system.
>>
>> For some software/systems (like Fortinet or VMWare), the report contains
>> information on different vulnerabilities (CVEs) and each host included in
>> the report can be affected by one or more of them as listed in "tag", e.g.
>>
>> "cve-2019-5544;cve-2020-3992;cve-2021-21974;vmware"
>> "cve-2020-3992;cve-2021-21974;vmware"
>> "cve-2019-5544;vmware"
>> "cve-2021-21974;vmware"
>> "cve-2021-21972;cve-2023-34048;vcenter-dcerpc-exposed;vmware"
>> "cve-2021-21972;cve-2023-20892;cve-2023-34048;vmware"
>>
>> So we need to tell the recipients of our notifications to which of the
>> vulnerabilities their host is exactly vulnerable to.
>> We do this by adding a column "cve" in addition to "ip", "port", etc.
>> to the CSV data included with our notifications.
>>
>> However, including the raw "tag" attribute from the Shadowserver report
>> would confuse the recipients as "tag" often includes additional information
>> not relevant in the context of the specific report like "ssl-poodle", e.g.
>>
>> "cve-2024-23897;jenkins;ssl;ssl-poodle"
>> "cve-2023-46805;cve-2024-21887;ivanti-connect-secure;ssl;ssl-freak;vpn"
>>
>> So we added a function "extract_cve_from_tag" to our local Shadowserver parser
>> _config.py (included with IntelMQ 3.2.1) which returns a sorted comma separated
>> list of CVEs included in "tag", e.g.
>>
>> extract_cve_from_tag("cve-2023-46805;cve-2024-21887;ivanti-connect-secure;ssl;ssl-freak;vpn")
>> -> "cve-2023-46805,cve-2024-21887"
>>
>> The result is stored in "extra.cve" by the parser
>>
>> scan_http_vulnerable = {
>> 'optional_fields': [
>> ('protocol.transport', 'protocol'),
>> ('source.reverse_dns', 'hostname'),
>> ('extra.', 'tag', validate_to_none),
>> ('extra.cve', 'tag', extract_cve_from_tag),
>>
>> and this way can later easily be included in the CSV data generated for
>> the notifications.
>>
>> I think this might be useful for others as well and would be glad if it
>> could be added to the parser code and schema for the next release
>> so we would not need to patch it locally after each update of the parser/schema.
>>
>> I have just created a pull request for this:
>> https://github.com/certtools/intelmq/pull/2457
>>
>>
>> @elsif: If the PR is accepted, would you like to change the schema
>> for scan_http_vulnerable and scan6_http_vulnerable like this?
>>
>> [
>> "extra.",
>> "tag",
>> "validate_to_none"
>> ],
>> + [
>> + "extra.cve",
>> + "tag",
>> + "extract_cve_from_tag"
>> + ],
>>
>>
>> Kind regards
>> Thomas
>> _______________________________________________
>> IntelMQ-dev mailing list
>> https://lists.cert.at/cgi-bin/mailman/listinfo/intelmq-dev
>> https://intelmq.readthedocs.io/
>
> _______________________________________________
> IntelMQ-dev mailing list
> https://lists.cert.at/cgi-bin/mailman/listinfo/intelmq-dev
> https://intelmq.readthedocs.io/
More information about the IntelMQ-dev
mailing list