<?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>Mon, 19 Oct 2026 23:15:04 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-5206</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-5206</link>
      <description>EUVD-2026-5206</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-5206</guid>
    </item>
    <item>
      <title>fkie_cve-2024-32880</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2024-32880</link>
      <description>&lt;p&gt;pyload is an open-source Download Manager written in pure Python. An authenticated user can change the download folder and upload a crafted template to the specified folder lead to remote code execution. There is no fix available at the time of publication.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;pyload is an open-source Download Manager written in pure Python. An authenticated user can change the download folder and upload a crafted template to the specified folder lead to remote code execution. There is no fix available at the time of publication.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2024-32880</guid>
    </item>
    <item>
      <title>GHSA-3f7w-p8vr-4v5f — pyLoad allows upload to arbitrary folder lead to RCE</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-3f7w-p8vr-4v5f</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: pyload-ng&lt;/p&gt;
&lt;p&gt;### Summary
An authenticated user can change the download folder and upload a crafted template to the specified folder lead to remote code execution&lt;/p&gt;
&lt;p&gt;### Details
example version: 0.5
file:src/pyload/webui/app/blueprints/app_blueprint.py
```python
@bp.route(&amp;#34;/render/&amp;lt;path:filename&amp;gt;&amp;#34;, endpoint=&amp;#34;render&amp;#34;)
def render(filename):
    mimetype = mimetypes.guess_type(filename)[0] or &amp;#34;text/html&amp;#34;
    data = render_template(filename)
    return flask.Response(data, mimetype=mimetype)
```
So, if we can control file in the path &amp;#34;pyload/webui/app/templates&amp;#34; in latest version and path in &amp;#34;module/web/media/js&amp;#34;(the difference is the older version0.4.20 only renders file with  extension name &amp;#34;.js&amp;#34;), the render_template func will works like SSTI(server-side template injection) when render the evil file we control.&lt;/p&gt;
&lt;p&gt;in /settings page and the choose option general/general, where we can change the download folder. 
![image](https://github.com/pyload/pyload/assets/48705773/0b239138-9aaa-45c4-bf84-c1c3103c452a)&lt;/p&gt;
&lt;p&gt;Also, we can find the pyLoad install folder in /info page
![image](https://github.com/pyload/pyload/assets/48705773/6e9d363a-f0e0-4d25-92b3-b1587188a235)
So, we can change the  value of Download folder to the template path. Then through /json/add_package we can upload a crafted template file to RCE.
```python
@bp.route(&amp;#34;/json/add_package&amp;#34;, methods=[&amp;#34;POST&amp;#34;], endpoint=&amp;#34;add_package&amp;#34;)
# @apiver_check
@login_required(&amp;#34;ADD&amp;#34;)
def add_package():
    api = flask.current_app.config[&amp;#34;PYLOAD_API&amp;#34;]…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: pyload-ng&lt;/p&gt;
&lt;p&gt;### Summary
An authenticated user can change the download folder and upload a crafted template to the specified folder lead to remote code execution&lt;/p&gt;
&lt;p&gt;### Details
example version: 0.5
file:src/pyload/webui/app/blueprints/app_blueprint.py
```python
@bp.route(&amp;#34;/render/&amp;lt;path:filename&amp;gt;&amp;#34;, endpoint=&amp;#34;render&amp;#34;)
def render(filename):
    mimetype = mimetypes.guess_type(filename)[0] or &amp;#34;text/html&amp;#34;
    data = render_template(filename)
    return flask.Response(data, mimetype=mimetype)
```
So, if we can control file in the path &amp;#34;pyload/webui/app/templates&amp;#34; in latest version and path in &amp;#34;module/web/media/js&amp;#34;(the difference is the older version0.4.20 only renders file with  extension name &amp;#34;.js&amp;#34;), the render_template func will works like SSTI(server-side template injection) when render the evil file we control.&lt;/p&gt;
&lt;p&gt;in /settings page and the choose option general/general, where we can change the download folder. 
![image](https://github.com/pyload/pyload/assets/48705773/0b239138-9aaa-45c4-bf84-c1c3103c452a)&lt;/p&gt;
&lt;p&gt;Also, we can find the pyLoad install folder in /info page
![image](https://github.com/pyload/pyload/assets/48705773/6e9d363a-f0e0-4d25-92b3-b1587188a235)
So, we can change the  value of Download folder to the template path. Then through /json/add_package we can upload a crafted template file to RCE.
```python
@bp.route(&amp;#34;/json/add_package&amp;#34;, methods=[&amp;#34;POST&amp;#34;], endpoint=&amp;#34;add_package&amp;#34;)
# @apiver_check
@login_required(&amp;#34;ADD&amp;#34;)
def add_package():
    api = flask.current_app.config[&amp;#34;PYLOAD_API&amp;#34;]…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-3f7w-p8vr-4v5f</guid>
    </item>
    <item>
      <title>gsd-2024-32880</title>
      <link>https://cve.radiocsirt.org/vuln/gsd-2024-32880</link>
      <description>gsd-2024-32880</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/gsd-2024-32880</guid>
    </item>
    <item>
      <title>PYSEC-2026-492 — pyLoad allows upload to arbitrary folder lead to RCE</title>
      <link>https://cve.radiocsirt.org/vuln/pysec-2026-492</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: pyload-ng&lt;/p&gt;
&lt;p&gt;### Summary
An authenticated user can change the download folder and upload a crafted template to the specified folder lead to remote code execution&lt;/p&gt;
&lt;p&gt;### Details
example version: 0.5
file:src/pyload/webui/app/blueprints/app_blueprint.py
```python
@bp.route(&amp;#34;/render/&amp;lt;path:filename&amp;gt;&amp;#34;, endpoint=&amp;#34;render&amp;#34;)
def render(filename):
    mimetype = mimetypes.guess_type(filename)[0] or &amp;#34;text/html&amp;#34;
    data = render_template(filename)
    return flask.Response(data, mimetype=mimetype)
```
So, if we can control file in the path &amp;#34;pyload/webui/app/templates&amp;#34; in latest version and path in &amp;#34;module/web/media/js&amp;#34;(the difference is the older version0.4.20 only renders file with  extension name &amp;#34;.js&amp;#34;), the render_template func will works like SSTI(server-side template injection) when render the evil file we control.&lt;/p&gt;
&lt;p&gt;in /settings page and the choose option general/general, where we can change the download folder. 
![image](https://github.com/pyload/pyload/assets/48705773/0b239138-9aaa-45c4-bf84-c1c3103c452a)
 
Also, we can find the pyLoad install folder in /info page
![image](https://github.com/pyload/pyload/assets/48705773/6e9d363a-f0e0-4d25-92b3-b1587188a235)
 So, we can change the  value of Download folder to the template path. Then through /json/add_package we can upload a crafted template file to RCE.
```python
@bp.route(&amp;#34;/json/add_package&amp;#34;, methods=[&amp;#34;POST&amp;#34;], endpoint=&amp;#34;add_package&amp;#34;)
# @apiver_check
@login_required(&amp;#34;ADD&amp;#34;)
def add_package():
    api = flask.current_app.config[&amp;#34;PYLOAD_API&amp;#34;]…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: pyload-ng&lt;/p&gt;
&lt;p&gt;### Summary
An authenticated user can change the download folder and upload a crafted template to the specified folder lead to remote code execution&lt;/p&gt;
&lt;p&gt;### Details
example version: 0.5
file:src/pyload/webui/app/blueprints/app_blueprint.py
```python
@bp.route(&amp;#34;/render/&amp;lt;path:filename&amp;gt;&amp;#34;, endpoint=&amp;#34;render&amp;#34;)
def render(filename):
    mimetype = mimetypes.guess_type(filename)[0] or &amp;#34;text/html&amp;#34;
    data = render_template(filename)
    return flask.Response(data, mimetype=mimetype)
```
So, if we can control file in the path &amp;#34;pyload/webui/app/templates&amp;#34; in latest version and path in &amp;#34;module/web/media/js&amp;#34;(the difference is the older version0.4.20 only renders file with  extension name &amp;#34;.js&amp;#34;), the render_template func will works like SSTI(server-side template injection) when render the evil file we control.&lt;/p&gt;
&lt;p&gt;in /settings page and the choose option general/general, where we can change the download folder. 
![image](https://github.com/pyload/pyload/assets/48705773/0b239138-9aaa-45c4-bf84-c1c3103c452a)
 
Also, we can find the pyLoad install folder in /info page
![image](https://github.com/pyload/pyload/assets/48705773/6e9d363a-f0e0-4d25-92b3-b1587188a235)
 So, we can change the  value of Download folder to the template path. Then through /json/add_package we can upload a crafted template file to RCE.
```python
@bp.route(&amp;#34;/json/add_package&amp;#34;, methods=[&amp;#34;POST&amp;#34;], endpoint=&amp;#34;add_package&amp;#34;)
# @apiver_check
@login_required(&amp;#34;ADD&amp;#34;)
def add_package():
    api = flask.current_app.config[&amp;#34;PYLOAD_API&amp;#34;]…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/pysec-2026-492</guid>
    </item>
  </channel>
</rss>
