CSV-Import allows arbitrary file uploads #61
Labels
No labels
Security
TeX
auto-update
board
done
board
ready
board
todo
check
delete-eslint-rc-js
check
update-builddeps-package-json
check
update-eslint-rc-js
check
update-gitignore
check
update-merge-request-template
check
update-prettier-ignore
check
update-pyproject-toml
check
update-renovate-json
check
update-tox-ini
part
backend
part
ci
part
docs
part
frontend
part
i18n
part
non-technical
part
packaging
prio
1
prio
2
prio
3
release-mr-5.x
size
large
size
medium
size
small
source
customer
source
customer::fsmw
source
customer::fss
source
customer::teckids
source
downstream
type
breaking
type
bug
type
feature
type
refactoring
workflow
blocked
workflow
confirmed
workflow
current-todo
workflow
discussing
workflow
new-app
workflow
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
aleksis/AlekSIS-App-CSVImport#61
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
CLN-009 — CSV-Import allows arbitrary file uploads
Vulnerability ID: CLN-009
Vulnerability type: File Upload
Threat level: Low
Description:
Arbitrary files can be uploaded through the CSV-Import app.
Technical description:
The CSV-Import app allows users to import site data using a .zip file containing .csv files and corresponding image
files for user Avatars and photos. Elsewhere in AlekSIS, photo uploads are subject to file validation filters to prevent
users from uploading other file types. However, the CSV-Import app does not perform any validation on attached image
files and arbitrary file types can be uploaded.
AlekSIS will attempt to render files as images when referenced in user avatars or photos via img src= or as the
background of a CSS element. An HTML file containing malicious Javascript can be uploaded in this way, but this file will
only be loaded by a user (as in a cross-site scripting attack) if the user searches out the direct link in the page source. In
testing we were unable to meaningfully exploit this arbitrary file upload.
Impact:
in ways that enable cross-site scripting attacks.
Recommendation:
assigned to @yuha
Action to take: Ensure that model validation runs (
full_clean, https://docs.djangoproject.com/en/5.1/ref/models/instances/#django.db.models.Model.full_clean), this should also check filesassigned to @hansegucker and unassigned @yuha
made the issue visible to everyone
created branch
61-csv-import-allows-arbitrary-le-uploadsto address this issuementioned in merge request !253
mentioned in commit
1f5ec35cdd