[DPDK/other Bug 1748] Clarification on Possible Buffer Overflow Issues Reported by Fortify Tool

bugzilla at dpdk.org bugzilla at dpdk.org
Mon Jul 7 11:12:57 CEST 2025


https://bugs.dpdk.org/show_bug.cgi?id=1748

            Bug ID: 1748
           Summary: Clarification on Possible Buffer Overflow Issues
                    Reported by Fortify Tool
           Product: DPDK
           Version: 23.11
          Hardware: All
                OS: All
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: other
          Assignee: dev at dpdk.org
          Reporter: nagendra.balagani at oracle.com
  Target Milestone: ---

Hello Team,

While running Fortify static analysis on our code base that uses DPDK, we
observed some potential buffer overflow issues being reported within DPDK
library calls. At first glance, these instances appear to be false positives,
but we would like to confirm with the community and maintainers to ensure there
are no hidden risks.
Could you please help review these findings or suggest if there are any known
false positives in this area?

here are the detailed Fortify reports with exact file paths and line numbers
for your reference.

### Instance 1:  rte_crypto.h Line 207
memset(op->asym, 0, sizeof(struct rte_crypto_asym_op));

Tool Description : The function __rte_crypto_op_reset() in rte_crypto.h writes
outside the bounds of asym on line 207, which could corrupt data, cause the
program to crash, or lead to the execution of malicious code.

Analysis Trace
rte_crypto.h:181 - Buffer asym Declared
rte_crypto.h:207 - memset()
Buffer Size: 0 bytes Write Length: 168 bytes


### Instance 2: rte_crypto_sym.h: 885
memset(op, 0, sizeof(*op));

Tool Description: The program writes outside the bounds of allocated memory,
which could corrupt data, crash the program, or lead to the execution of
malicious code.

Analysis Trace
rte_crypto.h:204 - Caller: __rte_crypto_op_reset
Buffer Size: 0
rte_crypto_sym.h:885 - memset()
Buffer Size: 0 bytes Write Length: 64 bytes [var 0] op.$offset: 0


### Instance3: rte_lpm.h: 347
            tbl24_indexes[i] = ips[i] >> 8;

Tool Description: The function rte_lpm_lookup_bulk_func() in rte_lpm.h writes
outside the bounds of tbl24_indexes on line 347, which could corrupt data,
cause the program to crash, or lead to the execution of malicious code.

Analysis Trace
rte_lpm.h:339 - Buffer tbl24_indexes Allocated
rte_lpm.h:347 - Assignment to tbl24_indexes
Buffer Size: 262143 bytes Write Length: 1048572 bytes [var 0]
tbl24_indexes.$offset: 0 [var 1] i: 262142


Thank you in advance for your support and guidance.

Regards,
Nagendra

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mails.dpdk.org/archives/dev/attachments/20250707/302d4ee9/attachment.htm>


More information about the dev mailing list