Search

Find a vulnerability

Search criteria

    4 vulnerabilities found for Data::ReqRep::Shared by EGOR

    CVE-2026-65061 (GCVE-0-2026-65061)

    Vulnerability from nvd – Published: 2026-07-21 19:07 – Updated: 2026-07-21 19:07
    VLAI
    Title
    Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW
    Summary
    Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW. The segment is created in reqrep.h with open(path, O_RDWR | O_CREAT, 0666), for both the request-reply and the integer-variant segments. The mode is 0666, so under the default umask 022 the file is created mode 0644 (world-readable). O_NOFOLLOW is absent, so a symlink planted at the path is followed, and O_EXCL is absent, so the open silently uses a pre-planted file instead of failing. A "Shared" segment naturally lives in a shared directory such as /tmp or /dev/shm, where any local user can read the IPC payloads stored in the world-readable segment, and a pre-planted file or symlink at the path lets a local attacker win a pre-creation race or redirect the open.
    Severity
    No CVSS data available.
    CWE
    • CWE-732 - Incorrect Permission Assignment for Critical Resource
    • CWE-59 - Improper Link Resolution Before File Access
    Assigner
    Impacted products
    Vendor Product Version
    EGOR Data::ReqRep::Shared Affected: 0 , < 0.05 (custom)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "collectionURL": "https://cpan.org/modules",
              "defaultStatus": "unaffected",
              "packageName": "Data-ReqRep-Shared",
              "product": "Data::ReqRep::Shared",
              "programFiles": [
                "reqrep.h"
              ],
              "repo": "https://github.com/vividsnow/perl5-data-reqrep-shared",
              "vendor": "EGOR",
              "versions": [
                {
                  "lessThan": "0.05",
                  "status": "affected",
                  "version": "0",
                  "versionType": "custom"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW.\n\nThe segment is created in reqrep.h with open(path, O_RDWR | O_CREAT, 0666), for both the request-reply and the integer-variant segments. The mode is 0666, so under the default umask 022 the file is created mode 0644 (world-readable). O_NOFOLLOW is absent, so a symlink planted at the path is followed, and O_EXCL is absent, so the open silently uses a pre-planted file instead of failing.\n\nA \"Shared\" segment naturally lives in a shared directory such as /tmp or /dev/shm, where any local user can read the IPC payloads stored in the world-readable segment, and a pre-planted file or symlink at the path lets a local attacker win a pre-creation race or redirect the open."
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-732",
                  "description": "CWE-732 Incorrect Permission Assignment for Critical Resource",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            },
            {
              "descriptions": [
                {
                  "cweId": "CWE-59",
                  "description": "CWE-59 Improper Link Resolution Before File Access",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-21T19:07:41.644Z",
            "orgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
            "shortName": "CPANSec"
          },
          "references": [
            {
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/diff/EGOR/Data-ReqRep-Shared-0.04#reqrep.h"
            },
            {
              "tags": [
                "release-notes"
              ],
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/changes"
            }
          ],
          "solutions": [
            {
              "lang": "en",
              "value": "Upgrade to Data::ReqRep::Shared 0.05 or later, which creates the backing file mode 0600 (owner-only) with O_EXCL and O_NOFOLLOW."
            }
          ],
          "source": {
            "discovery": "UNKNOWN"
          },
          "title": "Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW",
          "workarounds": [
            {
              "lang": "en",
              "value": "For deployments that cannot upgrade to 0.05, set a restrictive umask so the backing file is not world-readable and place it in a directory only the owning user can access."
            }
          ],
          "x_generator": {
            "engine": "cpansec-cna-tool 0.1"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
        "assignerShortName": "CPANSec",
        "cveId": "CVE-2026-65061",
        "datePublished": "2026-07-21T19:07:41.644Z",
        "dateReserved": "2026-07-21T15:29:37.116Z",
        "dateUpdated": "2026-07-21T19:07:41.644Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-59139 (GCVE-0-2026-59139)

    Vulnerability from nvd – Published: 2026-07-21 19:02 – Updated: 2026-07-21 19:02
    VLAI
    Title
    Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked
    Summary
    Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked. The attach-time validator reqrep_validate_header checks the header scalars and region layout against the file size, but does not validate the array contents it then trusts. reqrep_recv_locked does memcpy(copy_buf, req_arena + arena_off, len) with arena_off and len read raw from the mmap'd segment and never bounded against the arena capacity (req_arena_cap). A local peer that can write the backing file can leave the header valid while poisoning a request slot's offset and length, so receiving the request copies a file-controlled offset and length out of the arena, reading adjacent memory or crashing the process.
    Severity
    No CVSS data available.
    CWE
    Assigner
    Impacted products
    Vendor Product Version
    EGOR Data::ReqRep::Shared Affected: 0 , < 0.05 (custom)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "collectionURL": "https://cpan.org/modules",
              "defaultStatus": "unaffected",
              "packageName": "Data-ReqRep-Shared",
              "product": "Data::ReqRep::Shared",
              "programFiles": [
                "reqrep.h"
              ],
              "programRoutines": [
                {
                  "name": "reqrep_recv_locked"
                }
              ],
              "repo": "https://github.com/vividsnow/perl5-data-reqrep-shared",
              "vendor": "EGOR",
              "versions": [
                {
                  "lessThan": "0.05",
                  "status": "affected",
                  "version": "0",
                  "versionType": "custom"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked.\n\nThe attach-time validator reqrep_validate_header checks the header scalars and region layout against the file size, but does not validate the array contents it then trusts. reqrep_recv_locked does memcpy(copy_buf, req_arena + arena_off, len) with arena_off and len read raw from the mmap\u0027d segment and never bounded against the arena capacity (req_arena_cap).\n\nA local peer that can write the backing file can leave the header valid while poisoning a request slot\u0027s offset and length, so receiving the request copies a file-controlled offset and length out of the arena, reading adjacent memory or crashing the process."
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-125",
                  "description": "CWE-125 Out-of-bounds Read",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-21T19:02:43.033Z",
            "orgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
            "shortName": "CPANSec"
          },
          "references": [
            {
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/diff/EGOR/Data-ReqRep-Shared-0.04#reqrep.h"
            },
            {
              "tags": [
                "release-notes"
              ],
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/changes"
            }
          ],
          "solutions": [
            {
              "lang": "en",
              "value": "Upgrade to Data::ReqRep::Shared 0.05 or later, which bounds the arena offset and length against the arena capacity before the copy."
            }
          ],
          "source": {
            "discovery": "UNKNOWN"
          },
          "title": "Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked",
          "workarounds": [
            {
              "lang": "en",
              "value": "For deployments that cannot upgrade to 0.05, place the backing file in a directory writable only by the owning user, so a local peer cannot tamper with the segment contents the read path trusts."
            }
          ],
          "x_generator": {
            "engine": "cpansec-cna-tool 0.1"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
        "assignerShortName": "CPANSec",
        "cveId": "CVE-2026-59139",
        "datePublished": "2026-07-21T19:02:43.033Z",
        "dateReserved": "2026-07-02T16:24:17.912Z",
        "dateUpdated": "2026-07-21T19:02:43.033Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-65061 (GCVE-0-2026-65061)

    Vulnerability from cvelistv5 – Published: 2026-07-21 19:07 – Updated: 2026-07-21 19:07
    VLAI
    Title
    Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW
    Summary
    Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW. The segment is created in reqrep.h with open(path, O_RDWR | O_CREAT, 0666), for both the request-reply and the integer-variant segments. The mode is 0666, so under the default umask 022 the file is created mode 0644 (world-readable). O_NOFOLLOW is absent, so a symlink planted at the path is followed, and O_EXCL is absent, so the open silently uses a pre-planted file instead of failing. A "Shared" segment naturally lives in a shared directory such as /tmp or /dev/shm, where any local user can read the IPC payloads stored in the world-readable segment, and a pre-planted file or symlink at the path lets a local attacker win a pre-creation race or redirect the open.
    Severity
    No CVSS data available.
    CWE
    • CWE-732 - Incorrect Permission Assignment for Critical Resource
    • CWE-59 - Improper Link Resolution Before File Access
    Assigner
    Impacted products
    Vendor Product Version
    EGOR Data::ReqRep::Shared Affected: 0 , < 0.05 (custom)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "collectionURL": "https://cpan.org/modules",
              "defaultStatus": "unaffected",
              "packageName": "Data-ReqRep-Shared",
              "product": "Data::ReqRep::Shared",
              "programFiles": [
                "reqrep.h"
              ],
              "repo": "https://github.com/vividsnow/perl5-data-reqrep-shared",
              "vendor": "EGOR",
              "versions": [
                {
                  "lessThan": "0.05",
                  "status": "affected",
                  "version": "0",
                  "versionType": "custom"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW.\n\nThe segment is created in reqrep.h with open(path, O_RDWR | O_CREAT, 0666), for both the request-reply and the integer-variant segments. The mode is 0666, so under the default umask 022 the file is created mode 0644 (world-readable). O_NOFOLLOW is absent, so a symlink planted at the path is followed, and O_EXCL is absent, so the open silently uses a pre-planted file instead of failing.\n\nA \"Shared\" segment naturally lives in a shared directory such as /tmp or /dev/shm, where any local user can read the IPC payloads stored in the world-readable segment, and a pre-planted file or symlink at the path lets a local attacker win a pre-creation race or redirect the open."
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-732",
                  "description": "CWE-732 Incorrect Permission Assignment for Critical Resource",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            },
            {
              "descriptions": [
                {
                  "cweId": "CWE-59",
                  "description": "CWE-59 Improper Link Resolution Before File Access",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-21T19:07:41.644Z",
            "orgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
            "shortName": "CPANSec"
          },
          "references": [
            {
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/diff/EGOR/Data-ReqRep-Shared-0.04#reqrep.h"
            },
            {
              "tags": [
                "release-notes"
              ],
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/changes"
            }
          ],
          "solutions": [
            {
              "lang": "en",
              "value": "Upgrade to Data::ReqRep::Shared 0.05 or later, which creates the backing file mode 0600 (owner-only) with O_EXCL and O_NOFOLLOW."
            }
          ],
          "source": {
            "discovery": "UNKNOWN"
          },
          "title": "Data::ReqRep::Shared versions before 0.05 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW",
          "workarounds": [
            {
              "lang": "en",
              "value": "For deployments that cannot upgrade to 0.05, set a restrictive umask so the backing file is not world-readable and place it in a directory only the owning user can access."
            }
          ],
          "x_generator": {
            "engine": "cpansec-cna-tool 0.1"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
        "assignerShortName": "CPANSec",
        "cveId": "CVE-2026-65061",
        "datePublished": "2026-07-21T19:07:41.644Z",
        "dateReserved": "2026-07-21T15:29:37.116Z",
        "dateUpdated": "2026-07-21T19:07:41.644Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-59139 (GCVE-0-2026-59139)

    Vulnerability from cvelistv5 – Published: 2026-07-21 19:02 – Updated: 2026-07-21 19:02
    VLAI
    Title
    Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked
    Summary
    Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked. The attach-time validator reqrep_validate_header checks the header scalars and region layout against the file size, but does not validate the array contents it then trusts. reqrep_recv_locked does memcpy(copy_buf, req_arena + arena_off, len) with arena_off and len read raw from the mmap'd segment and never bounded against the arena capacity (req_arena_cap). A local peer that can write the backing file can leave the header valid while poisoning a request slot's offset and length, so receiving the request copies a file-controlled offset and length out of the arena, reading adjacent memory or crashing the process.
    Severity
    No CVSS data available.
    CWE
    Assigner
    Impacted products
    Vendor Product Version
    EGOR Data::ReqRep::Shared Affected: 0 , < 0.05 (custom)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "collectionURL": "https://cpan.org/modules",
              "defaultStatus": "unaffected",
              "packageName": "Data-ReqRep-Shared",
              "product": "Data::ReqRep::Shared",
              "programFiles": [
                "reqrep.h"
              ],
              "programRoutines": [
                {
                  "name": "reqrep_recv_locked"
                }
              ],
              "repo": "https://github.com/vividsnow/perl5-data-reqrep-shared",
              "vendor": "EGOR",
              "versions": [
                {
                  "lessThan": "0.05",
                  "status": "affected",
                  "version": "0",
                  "versionType": "custom"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked.\n\nThe attach-time validator reqrep_validate_header checks the header scalars and region layout against the file size, but does not validate the array contents it then trusts. reqrep_recv_locked does memcpy(copy_buf, req_arena + arena_off, len) with arena_off and len read raw from the mmap\u0027d segment and never bounded against the arena capacity (req_arena_cap).\n\nA local peer that can write the backing file can leave the header valid while poisoning a request slot\u0027s offset and length, so receiving the request copies a file-controlled offset and length out of the arena, reading adjacent memory or crashing the process."
            }
          ],
          "problemTypes": [
            {
              "descriptions": [
                {
                  "cweId": "CWE-125",
                  "description": "CWE-125 Out-of-bounds Read",
                  "lang": "en",
                  "type": "CWE"
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-07-21T19:02:43.033Z",
            "orgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
            "shortName": "CPANSec"
          },
          "references": [
            {
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/diff/EGOR/Data-ReqRep-Shared-0.04#reqrep.h"
            },
            {
              "tags": [
                "release-notes"
              ],
              "url": "https://metacpan.org/release/EGOR/Data-ReqRep-Shared-0.05/changes"
            }
          ],
          "solutions": [
            {
              "lang": "en",
              "value": "Upgrade to Data::ReqRep::Shared 0.05 or later, which bounds the arena offset and length against the arena capacity before the copy."
            }
          ],
          "source": {
            "discovery": "UNKNOWN"
          },
          "title": "Data::ReqRep::Shared versions before 0.05 for Perl allow an out-of-bounds read via an unvalidated arena offset and length in reqrep_recv_locked",
          "workarounds": [
            {
              "lang": "en",
              "value": "For deployments that cannot upgrade to 0.05, place the backing file in a directory writable only by the owning user, so a local peer cannot tamper with the segment contents the read path trusts."
            }
          ],
          "x_generator": {
            "engine": "cpansec-cna-tool 0.1"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "9b29abf9-4ab0-4765-b253-1875cd9b441e",
        "assignerShortName": "CPANSec",
        "cveId": "CVE-2026-59139",
        "datePublished": "2026-07-21T19:02:43.033Z",
        "dateReserved": "2026-07-02T16:24:17.912Z",
        "dateUpdated": "2026-07-21T19:02:43.033Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }