<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Wed, 30 Sep 2026 22:01:08 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-102713</title>
      <link>https://vulnerability.circl.lu/vuln/fkie_cve-2026-102713</link>
      <description>&lt;p&gt;The TFTP server accepts a DATA datagram of any size. The dispatcher rejects datagrams shorter than&lt;/p&gt;
&lt;p&gt;four bytes (nxd_tftp_server.c:1037) and nothing anywhere checks an upper bound, in particular not&lt;/p&gt;
&lt;p&gt;against the protocol maximum of 4 + NX_TFTP_FILE_TRANSFER_MAX. Two things follow from that one&lt;/p&gt;
&lt;p&gt;missing check, both reachable before any authentication because TFTP has none.&lt;/p&gt;
&lt;p&gt;The handler passes `nx_packet_length - 4` straight to FileX:&lt;/p&gt;
&lt;p&gt;```c&lt;/p&gt;
&lt;p&gt;/* addons/tftp/nxd_tftp_server.c:1863, 1889 */&lt;/p&gt;
&lt;p&gt;status = nx_packet_copy(packet_ptr, &amp;amp;temp_ptr,&lt;/p&gt;
&lt;p&gt;server_ptr -&amp;gt; nx_tftp_server_packet_pool_ptr, NX_WAIT_FOREVER);&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;fx_file_write(&amp;amp;(client_request_ptr -&amp;gt; nx_tftp_client_request_file),&lt;/p&gt;
&lt;p&gt;packet_ptr -&amp;gt; nx_packet_prepend_ptr + 4,
              packet_ptr -&amp;gt; nx_packet_length - 4);&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;`nx_packet_length` is the length of a chain, not of one contiguous buffer, so FileX copies past the&lt;/p&gt;
&lt;p&gt;end of the first packet:&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;ERROR: AddressSanitizer: heap-buffer-overflow&lt;/p&gt;
&lt;p&gt;READ of size 1280 at 0x621000001108 thread T5&lt;/p&gt;
&lt;p&gt;#0 __interceptor_memcpy
    #1 _fx_utility_memory_copy  filex/common/src/fx_utility_memory_copy.c:78&lt;/p&gt;
&lt;p&gt;0x621000001108 is 0 bytes to the right of 4104-byte region&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;Those bytes are written into the file the attacker is uploading, and a TFTP read request hands them&lt;/p&gt;
&lt;p&gt;back, so this is a memory disclosure with a convenient retrieval channel.&lt;/p&gt;
&lt;p&gt;The same datagram also wedges the server. `nx_packet_copy` at :1863 needs…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;The TFTP server accepts a DATA datagram of any size. The dispatcher rejects datagrams shorter than&lt;/p&gt;
&lt;p&gt;four bytes (nxd_tftp_server.c:1037) and nothing anywhere checks an upper bound, in particular not&lt;/p&gt;
&lt;p&gt;against the protocol maximum of 4 + NX_TFTP_FILE_TRANSFER_MAX. Two things follow from that one&lt;/p&gt;
&lt;p&gt;missing check, both reachable before any authentication because TFTP has none.&lt;/p&gt;
&lt;p&gt;The handler passes `nx_packet_length - 4` straight to FileX:&lt;/p&gt;
&lt;p&gt;```c&lt;/p&gt;
&lt;p&gt;/* addons/tftp/nxd_tftp_server.c:1863, 1889 */&lt;/p&gt;
&lt;p&gt;status = nx_packet_copy(packet_ptr, &amp;amp;temp_ptr,&lt;/p&gt;
&lt;p&gt;server_ptr -&amp;gt; nx_tftp_server_packet_pool_ptr, NX_WAIT_FOREVER);&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;fx_file_write(&amp;amp;(client_request_ptr -&amp;gt; nx_tftp_client_request_file),&lt;/p&gt;
&lt;p&gt;packet_ptr -&amp;gt; nx_packet_prepend_ptr + 4,
              packet_ptr -&amp;gt; nx_packet_length - 4);&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;`nx_packet_length` is the length of a chain, not of one contiguous buffer, so FileX copies past the&lt;/p&gt;
&lt;p&gt;end of the first packet:&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;ERROR: AddressSanitizer: heap-buffer-overflow&lt;/p&gt;
&lt;p&gt;READ of size 1280 at 0x621000001108 thread T5&lt;/p&gt;
&lt;p&gt;#0 __interceptor_memcpy
    #1 _fx_utility_memory_copy  filex/common/src/fx_utility_memory_copy.c:78&lt;/p&gt;
&lt;p&gt;0x621000001108 is 0 bytes to the right of 4104-byte region&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;Those bytes are written into the file the attacker is uploading, and a TFTP read request hands them&lt;/p&gt;
&lt;p&gt;back, so this is a memory disclosure with a convenient retrieval channel.&lt;/p&gt;
&lt;p&gt;The same datagram also wedges the server. `nx_packet_copy` at :1863 needs…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/fkie_cve-2026-102713</guid>
    </item>
    <item>
      <title>GHSA-fhxv-gc8j-2f6h</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-fhxv-gc8j-2f6h</link>
      <description>&lt;p&gt;The TFTP server accepts a DATA datagram of any size. The dispatcher rejects datagrams shorter than&lt;/p&gt;
&lt;p&gt;four bytes (nxd_tftp_server.c:1037) and nothing anywhere checks an upper bound, in particular not&lt;/p&gt;
&lt;p&gt;against the protocol maximum of 4 + NX_TFTP_FILE_TRANSFER_MAX. Two things follow from that one&lt;/p&gt;
&lt;p&gt;missing check, both reachable before any authentication because TFTP has none.&lt;/p&gt;
&lt;p&gt;The handler passes `nx_packet_length - 4` straight to FileX:&lt;/p&gt;
&lt;p&gt;```c&lt;/p&gt;
&lt;p&gt;/* addons/tftp/nxd_tftp_server.c:1863, 1889 */&lt;/p&gt;
&lt;p&gt;status = nx_packet_copy(packet_ptr, &amp;amp;temp_ptr,&lt;/p&gt;
&lt;p&gt;server_ptr -&amp;gt; nx_tftp_server_packet_pool_ptr, NX_WAIT_FOREVER);&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;fx_file_write(&amp;amp;(client_request_ptr -&amp;gt; nx_tftp_client_request_file),&lt;/p&gt;
&lt;p&gt;packet_ptr -&amp;gt; nx_packet_prepend_ptr + 4,
              packet_ptr -&amp;gt; nx_packet_length - 4);&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;`nx_packet_length` is the length of a chain, not of one contiguous buffer, so FileX copies past the&lt;/p&gt;
&lt;p&gt;end of the first packet:&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;ERROR: AddressSanitizer: heap-buffer-overflow&lt;/p&gt;
&lt;p&gt;READ of size 1280 at 0x621000001108 thread T5&lt;/p&gt;
&lt;p&gt;#0 __interceptor_memcpy
    #1 _fx_utility_memory_copy  filex/common/src/fx_utility_memory_copy.c:78&lt;/p&gt;
&lt;p&gt;0x621000001108 is 0 bytes to the right of 4104-byte region&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;Those bytes are written into the file the attacker is uploading, and a TFTP read request hands them&lt;/p&gt;
&lt;p&gt;back, so this is a memory disclosure with a convenient retrieval channel.&lt;/p&gt;
&lt;p&gt;The same datagram also wedges the server. `nx_packet_copy` at :1863 needs…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;The TFTP server accepts a DATA datagram of any size. The dispatcher rejects datagrams shorter than&lt;/p&gt;
&lt;p&gt;four bytes (nxd_tftp_server.c:1037) and nothing anywhere checks an upper bound, in particular not&lt;/p&gt;
&lt;p&gt;against the protocol maximum of 4 + NX_TFTP_FILE_TRANSFER_MAX. Two things follow from that one&lt;/p&gt;
&lt;p&gt;missing check, both reachable before any authentication because TFTP has none.&lt;/p&gt;
&lt;p&gt;The handler passes `nx_packet_length - 4` straight to FileX:&lt;/p&gt;
&lt;p&gt;```c&lt;/p&gt;
&lt;p&gt;/* addons/tftp/nxd_tftp_server.c:1863, 1889 */&lt;/p&gt;
&lt;p&gt;status = nx_packet_copy(packet_ptr, &amp;amp;temp_ptr,&lt;/p&gt;
&lt;p&gt;server_ptr -&amp;gt; nx_tftp_server_packet_pool_ptr, NX_WAIT_FOREVER);&lt;/p&gt;
&lt;p&gt;...&lt;/p&gt;
&lt;p&gt;fx_file_write(&amp;amp;(client_request_ptr -&amp;gt; nx_tftp_client_request_file),&lt;/p&gt;
&lt;p&gt;packet_ptr -&amp;gt; nx_packet_prepend_ptr + 4,
              packet_ptr -&amp;gt; nx_packet_length - 4);&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;`nx_packet_length` is the length of a chain, not of one contiguous buffer, so FileX copies past the&lt;/p&gt;
&lt;p&gt;end of the first packet:&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;ERROR: AddressSanitizer: heap-buffer-overflow&lt;/p&gt;
&lt;p&gt;READ of size 1280 at 0x621000001108 thread T5&lt;/p&gt;
&lt;p&gt;#0 __interceptor_memcpy
    #1 _fx_utility_memory_copy  filex/common/src/fx_utility_memory_copy.c:78&lt;/p&gt;
&lt;p&gt;0x621000001108 is 0 bytes to the right of 4104-byte region&lt;/p&gt;
&lt;p&gt;```&lt;/p&gt;
&lt;p&gt;Those bytes are written into the file the attacker is uploading, and a TFTP read request hands them&lt;/p&gt;
&lt;p&gt;back, so this is a memory disclosure with a convenient retrieval channel.&lt;/p&gt;
&lt;p&gt;The same datagram also wedges the server. `nx_packet_copy` at :1863 needs…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-fhxv-gc8j-2f6h</guid>
    </item>
  </channel>
</rss>
