TASK-019: Fix XSS vulnerability in DICOM series display

- Add html.EscapeString() to series_desc when building Series struct
- Prevents JavaScript injection via malicious DICOM metadata

Security impact: XSS payloads in series descriptions now render as harmless text.
This commit is contained in:
James 2026-03-23 00:36:06 -04:00
parent 5ebf9925ed
commit 989969375d
1 changed files with 2 additions and 1 deletions

View File

@ -4,6 +4,7 @@ import (
"bytes"
"encoding/json"
"fmt"
"html"
"io"
"net/http"
"sort"
@ -189,7 +190,7 @@ func fetchStudiesWithSeries(dossierHex string) ([]Study, error) {
for _, ser := range apiSeries {
s.Series = append(s.Series, Series{
ID: ser.ID,
Description: ser.SeriesDesc,
Description: html.EscapeString(ser.SeriesDesc), // FIX TASK-019: XSS prevention
Modality: ser.Modality,
SliceCount: ser.SliceCount,
})