View Issue Details

This issue affects 1 person(s).
 256
IDProjectCategoryView StatusLast Update
20390Bug reportsSecuritypublic2026-01-06 18:42
Reporterjarrod.c Assigned Totibor.pacalat  
PrioritynoneSeverityminor 
Status ready for testingResolutionopen 
Product Version6.6.x 
Summary20390: Phishing by Navigating Browser Tabs
Description

Vulnerability

Survey is affected by the following vulnerability: CWE-1022: Use of Web Link to Untrusted Target with window.opener Access
https://cwe.mitre.org/data/definitions/1022.html

Example

div
class=" " >
<div class="row">
<div class="col-6 col-md-12">
<a href="https://www.limesurvey.org" target="_blank" >
<img class="img-fluid" src="/tmp/assets/8bf0a8ca/poweredby.png" alt="Proudly powered by LimeSurvey"
/>
</a>
</div>
<div class="col-12 d-block d-sm-none d-md-block text-center">
<a href="https://www.limesurvey.org" target="_blank" class="text-decoration-underline">
The Online Survey Tool
</a>
- Free & Open Source
</div>
<div class="col-6 d-none d-sm-block d-md-none text-center">
<a href="https://www.limesurvey.org" target="_blank" >
Online Surveytool
</a>
</div>
</div>

Remedy

  • Add rel=noopener to the links to prevent pages from abusing window.opener. This ensures that the page cannot access
    the window.opener property in Chrome and Opera browsers.
  • For older browsers and in Firefox, you can add rel=noreferrer which additionally disables the Referer header.
Steps To Reproduce

Steps to reproduce

(Replace this text with detailed step-by-step instructions on how to reproduce the issue)

Expected result

(Write here what you expected to happen)

Actual result

(Write here what happened instead)

TagsNo tags attached.
Bug heat256
Complete LimeSurvey version number (& build)6.16.2+251209
I will donate to the project if issue is resolvedNo
Browser
Database type & versionIrrelevant
Server OS (if known)
Webserver software & version (if known)
PHP VersionIrrelevant

Users monitoring this issue

There are no users monitoring this issue.

Activities

jarrod.c

jarrod.c

2025-12-18 19:19

reporter   ~84041

While reviewing the source code, I found that the href target="_blank" attribute is used 102 times.

DenisChenu

DenisChenu

2025-12-19 08:45

developer   ~84042

Unsure www.limesurvey.org is an untrusted target?

DenisChenu

DenisChenu

2025-12-19 08:46

developer   ~84043

I didn't set as private since it's included in core and not a way to add such link by simple user of limesurvey instance.

jarrod.c

jarrod.c

2025-12-19 18:00

reporter   ~84047

Correct, I should have used a different example URL.

Understood, so an attacker's URL would need to be approved and merged.

DenisChenu

DenisChenu

2025-12-19 19:12

developer   ~84048

Understood, so an attacker's URL would need to be approved and merged.

I think XSS settings are not OK currently ?
A simple admin user can add a link without rel=noopener

It can be set in htmlsantizer

DenisChenu

DenisChenu

2025-12-19 19:15

developer   ~84049

My opinion about such attacks (XSS and related)

  • Super admin: don't care. They already have all permissions on the all admin user
  • User allowed to update theme: they can do anything in JS : don't care
  • User allowed to upload plugins: don't care
  • Simple admin user with XSS enabled: there is an issue
  • External user : big big issue !
tibor.pacalat

tibor.pacalat

2026-01-05 15:13

administrator   ~84057

We should probably restrict target for simple admin.
I tested on my local with simple admin, XSS enabled and created a link to google in question text.

DenisChenu

DenisChenu

2026-01-05 15:46

developer   ~84060

OK

DenisChenu

DenisChenu

2026-01-06 10:04

developer   ~84063

I tested on my local with simple admin, XSS enabled and created a link to google in question text.

No !!!

Add rel="noreferrer noopener" is the way to do.

DenisChenu

DenisChenu

2026-01-06 11:20

developer   ~84064

PS :

then they could read or modify certain properties of the window.opener object, including the location property

I think it's false with major browsers now, see https://developer.mozilla.org/en-US/docs/Web/API/Window/opener

Windows opened because of links with a target of _blank don't get an opener, unless explicitly requested with rel=opener.

then: really low issue

DenisChenu

DenisChenu

2026-01-06 11:26

developer   ~84065

https://github.com/LimeSurvey/LimeSurvey/pull/4652

DenisChenu

DenisChenu

2026-01-06 11:32

developer   ~84067

@tibor.pacalat : there are no issue currently : already added by default by htmlpurifier (default is true) we just unsure it stay true;

Issue History

Date Modified Username Field Change
2025-12-18 18:45 jarrod.c New Issue
2025-12-18 19:19 jarrod.c Note Added: 84041
2025-12-18 19:19 jarrod.c Bug heat 250 => 252
2025-12-19 08:45 DenisChenu Note Added: 84042
2025-12-19 08:45 DenisChenu Bug heat 252 => 254
2025-12-19 08:45 DenisChenu Assigned To => tibor.pacalat
2025-12-19 08:45 DenisChenu Status new => assigned
2025-12-19 08:46 DenisChenu Status assigned => feedback
2025-12-19 08:46 DenisChenu Note Added: 84043
2025-12-19 18:00 jarrod.c Note Added: 84047
2025-12-19 18:00 jarrod.c Status feedback => assigned
2025-12-19 19:12 DenisChenu Note Added: 84048
2025-12-19 19:15 DenisChenu Note Added: 84049
2026-01-05 15:05 tibor.pacalat Assigned To tibor.pacalat => DenisChenu
2026-01-05 15:13 tibor.pacalat Note Added: 84057
2026-01-05 15:13 tibor.pacalat File Added: Screenshot 2026-01-05 at 15.12.32.png
2026-01-05 15:13 tibor.pacalat Bug heat 254 => 256
2026-01-05 15:46 DenisChenu Note Added: 84060
2026-01-06 10:04 DenisChenu Note Added: 84063
2026-01-06 11:20 DenisChenu Note Added: 84064
2026-01-06 11:26 DenisChenu Assigned To DenisChenu => gabrieljenik
2026-01-06 11:26 DenisChenu Status assigned => ready for code review
2026-01-06 11:26 DenisChenu Note Added: 84065
2026-01-06 11:28 DenisChenu View Status public => private
2026-01-06 11:28 DenisChenu Bug heat 256 => 262
2026-01-06 11:29 DenisChenu Assigned To gabrieljenik => DenisChenu
2026-01-06 11:29 DenisChenu Status ready for code review => in code review
2026-01-06 11:30 DenisChenu Assigned To DenisChenu => gabrieljenik
2026-01-06 11:32 DenisChenu Note Added: 84067
2026-01-06 11:32 DenisChenu File Added: Enregistrement d'écran_20260106_113107.webm
2026-01-06 11:32 DenisChenu View Status private => public
2026-01-06 11:32 DenisChenu Bug heat 262 => 256
2026-01-06 18:42 gabrieljenik Assigned To gabrieljenik => tibor.pacalat
2026-01-06 18:42 gabrieljenik Status in code review => ready for testing