<?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://cve.radiocsirt.org</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>Thu, 22 Oct 2026 09:28:47 +0000</lastBuildDate>
    <item>
      <title>cnvd-2020-44875</title>
      <link>https://cve.radiocsirt.org/vuln/cnvd-2020-44875</link>
      <description>cnvd-2020-44875</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/cnvd-2020-44875</guid>
    </item>
    <item>
      <title>EUVD-2026-42659</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-42659</link>
      <description>EUVD-2026-42659</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-42659</guid>
    </item>
    <item>
      <title>fkie_cve-2020-15120</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2020-15120</link>
      <description>&lt;p&gt;In &amp;#34;I hate money&amp;#34; before version 4.1.5, an authenticated member of one project can modify and delete members of another project, without knowledge of this other project&amp;#39;s private code. This can be further exploited to access all bills of another project without knowledge of this other project&amp;#39;s private code. With the default configuration, anybody is allowed to create a new project. An attacker can create a new project and then use it to become authenticated and exploit this flaw. As such, the exposure is similar to an unauthenticated attack, because it is trivial to become authenticated. This is fixed in version 4.1.5.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;In &amp;#34;I hate money&amp;#34; before version 4.1.5, an authenticated member of one project can modify and delete members of another project, without knowledge of this other project&amp;#39;s private code. This can be further exploited to access all bills of another project without knowledge of this other project&amp;#39;s private code. With the default configuration, anybody is allowed to create a new project. An attacker can create a new project and then use it to become authenticated and exploit this flaw. As such, the exposure is similar to an unauthenticated attack, because it is trivial to become authenticated. This is fixed in version 4.1.5.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2020-15120</guid>
    </item>
    <item>
      <title>GHSA-67j9-c52g-w2q9 — Authorization Bypass in I hate money</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-67j9-c52g-w2q9</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: ihatemoney&lt;/p&gt;
&lt;p&gt;### Impact
An authenticated member of one project can modify and delete members of another project, without knowledge of this other project&amp;#39;s private code. This can be further exploited to access all bills of another project without knowledge of this other project&amp;#39;s private code.&lt;/p&gt;
&lt;p&gt;With the default configuration, anybody is allowed to create a new project. An attacker can create a new project and then use it to become authenticated and exploit this flaw. As such, the exposure is similar to an unauthenticated attack, because it is trivial to become authenticated.&lt;/p&gt;
&lt;p&gt;### Patches
```diff
 ihatemoney/models.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)&lt;/p&gt;
&lt;p&gt;diff --git a/ihatemoney/models.py b/ihatemoney/models.py
index fe7b519..5691c75 100644
--- a/ihatemoney/models.py
+++ b/ihatemoney/models.py
@@ -380,7 +380,7 @@ class Person(db.Model):
         def get_by_name(self, name, project):
             return (
                 Person.query.filter(Person.name == name)
-                .filter(Project.id == project.id)
+                .filter(Person.project_id == project.id)
                 .one()
             )
 
@@ -389,7 +389,7 @@ class Person(db.Model):
                 project = g.project
             return (
                 Person.query.filter(Person.id == id)
-                .filter(Project.id == project.id)
+                .filter(Person.project_id == project.id)
                 .one()
             )
 
```&lt;/p&gt;
&lt;p&gt;### Workarounds&lt;/p&gt;
&lt;p&gt;To limit the impact, it is possible to…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: ihatemoney&lt;/p&gt;
&lt;p&gt;### Impact
An authenticated member of one project can modify and delete members of another project, without knowledge of this other project&amp;#39;s private code. This can be further exploited to access all bills of another project without knowledge of this other project&amp;#39;s private code.&lt;/p&gt;
&lt;p&gt;With the default configuration, anybody is allowed to create a new project. An attacker can create a new project and then use it to become authenticated and exploit this flaw. As such, the exposure is similar to an unauthenticated attack, because it is trivial to become authenticated.&lt;/p&gt;
&lt;p&gt;### Patches
```diff
 ihatemoney/models.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)&lt;/p&gt;
&lt;p&gt;diff --git a/ihatemoney/models.py b/ihatemoney/models.py
index fe7b519..5691c75 100644
--- a/ihatemoney/models.py
+++ b/ihatemoney/models.py
@@ -380,7 +380,7 @@ class Person(db.Model):
         def get_by_name(self, name, project):
             return (
                 Person.query.filter(Person.name == name)
-                .filter(Project.id == project.id)
+                .filter(Person.project_id == project.id)
                 .one()
             )
 
@@ -389,7 +389,7 @@ class Person(db.Model):
                 project = g.project
             return (
                 Person.query.filter(Person.id == id)
-                .filter(Project.id == project.id)
+                .filter(Person.project_id == project.id)
                 .one()
             )
 
```&lt;/p&gt;
&lt;p&gt;### Workarounds&lt;/p&gt;
&lt;p&gt;To limit the impact, it is possible to…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-67j9-c52g-w2q9</guid>
    </item>
    <item>
      <title>gsd-2020-15120</title>
      <link>https://cve.radiocsirt.org/vuln/gsd-2020-15120</link>
      <description>gsd-2020-15120</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/gsd-2020-15120</guid>
    </item>
    <item>
      <title>PYSEC-2020-264</title>
      <link>https://cve.radiocsirt.org/vuln/pysec-2020-264</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: ihatemoney&lt;/p&gt;
&lt;p&gt;In &amp;#34;I hate money&amp;#34; before version 4.1.5, an authenticated member of one project can modify and delete members of another project, without knowledge of this other project&amp;#39;s private code. This can be further exploited to access all bills of another project without knowledge of this other project&amp;#39;s private code. With the default configuration, anybody is allowed to create a new project. An attacker can create a new project and then use it to become authenticated and exploit this flaw. As such, the exposure is similar to an unauthenticated attack, because it is trivial to become authenticated. This is fixed in version 4.1.5.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: ihatemoney&lt;/p&gt;
&lt;p&gt;In &amp;#34;I hate money&amp;#34; before version 4.1.5, an authenticated member of one project can modify and delete members of another project, without knowledge of this other project&amp;#39;s private code. This can be further exploited to access all bills of another project without knowledge of this other project&amp;#39;s private code. With the default configuration, anybody is allowed to create a new project. An attacker can create a new project and then use it to become authenticated and exploit this flaw. As such, the exposure is similar to an unauthenticated attack, because it is trivial to become authenticated. This is fixed in version 4.1.5.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/pysec-2020-264</guid>
    </item>
  </channel>
</rss>
