<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://cve.radiocsirt.org/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-07T07:09:34.850257+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>csirt@opendfir.org</email>
  </author>
  <link href="https://cve.radiocsirt.org" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/euvd-2026-275185</id>
    <title>EUVD-2026-275185</title>
    <updated>2026-10-07T07:09:34.895423+00:00</updated>
    <content>EUVD-2026-275185</content>
    <link href="https://cve.radiocsirt.org/vuln/euvd-2026-275185"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/fkie_cve-2026-30920</id>
    <title>fkie_cve-2026-30920</title>
    <updated>2026-10-07T07:09:34.895461+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>OneUptime is a solution for monitoring and managing online services. Prior to 10.0.19, OneUptime's GitHub App callback trusts attacker-controlled state and installation_id values and updates Project.gitHubAppInstallationId with isRoot: true without validating that the caller is authorized for the target project. This allows an attacker to overwrite another project's GitHub App installation binding. Related GitHub endpoints also lack effective authorization, so a valid installation ID can be used to enumerate repositories and create CodeRepository records in an arbitrary project. This vulnerability is fixed in 10.0.19.</p>
      </div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/fkie_cve-2026-30920"/>
  </entry>
  <entry>
    <id>https://cve.radiocsirt.org/vuln/ghsa-656w-6f6c-m9r6</id>
    <title>GHSA-656w-6f6c-m9r6 — OneUptime has broken access control in GitHub App installation flow that allows unauthorized project binding</title>
    <updated>2026-10-07T07:09:34.895498+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> npm: @oneuptime/common</p>
<p>### Summary</p>
<p>OneUptime's GitHub App callback trusts attacker-controlled `state` and `installation_id` values and updates `Project.gitHubAppInstallationId` with `isRoot: true` without validating that the caller is authorized for the target project. This allows an attacker to overwrite another project's GitHub App installation binding.</p>
<p>Related GitHub endpoints also lack effective authorization, so a valid installation ID can be used to enumerate repositories and create `CodeRepository` records in an arbitrary project.</p>
<p>### Details</p>
<p>The callback decodes unsigned base64 JSON from `state` and uses the embedded `projectId` directly:</p>
<p>- https://github.com/OneUptime/oneuptime/blob/master/Common/Server/API/GitHubAPI.ts#L34-L112</p>
<p>It then writes the supplied `installation_id` into the target project with root privileges:</p>
<p>```ts
await ProjectService.updateOneById({
  id: new ObjectID(projectId),
  data: { gitHubAppInstallationId: installationId },
  props: { isRoot: true },
});
```</p>
<p>The `userId` in `state` is only checked for presence, not authenticity:</p>
<p>- https://github.com/OneUptime/oneuptime/blob/master/Common/Server/API/GitHubAPI.ts#L73-L79</p>
<p>The install flow also generates `state` as plain base64 JSON, not a signed or session-bound token:</p>
<p>- https://github.com/OneUptime/oneuptime/blob/master/Common/Server/API/GitHubAPI.ts#L127-L165</p>
<p>The follow-on endpoints are also vulnerable:</p>
<p>- Repository listing: https://github.com/OneUptime/oneuptime/blob/master/Common/Server/API/GitHubAPI.ts#L…</p></div>
    </content>
    <link href="https://cve.radiocsirt.org/vuln/ghsa-656w-6f6c-m9r6"/>
  </entry>
</feed>
