AOSSIE-Org / AOSSIE-Org/Resonate-Website

Security Vulnerability & Accessibility: External links missing rel="noopener" and aria-labels

Abierto
#124 6 comentarios 0 reacciones 1 asignado Reclamado por @JaiswalShivang Ver en GitHub
enhancement good first issue
Lenguaje dominante
TypeScript
Estrellas
43
Forks
154
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

### 🐛 Describe the bug

## Description
Several external links in [Footer.js](cci:7://file:///c:/Users/jaisw/OneDrive/Desktop/gsoc/Resonate-Website/src/components/Footer/Footer.js:0:0-0:0) and [About.js](cci:7://file:///c:/Users/jaisw/OneDrive/Desktop/gsoc/Resonate-Website/src/components/About/About.js:0:0-0:0) leverage `target="_blank"` without the accompanying `rel="noopener noreferrer"` attribute. Additionally, icon-only links (using React Icons) lack descriptive labels for screen readers.

## Vulnerability (Security)
When using `target="_blank"` without `rel="noopener noreferrer"`, the destination page receives partial access to the linking page via the `window.opener` object. This exposes the application to **reverse tabnabbing** attacks, where a malicious destination page could redirect the user's original tab to a phishing site.

## Accessibility Issue
The social media links contain only SVG icons (e.g., ``) with no text content. Screen readers will effectively be silent or announce them as "link" or "unlabeled graphic," making navigation impossible for visually impaired users.

## Locations
- [src/components/Footer/Footer.js](cci:7://file:///c:/Users/jaisw/OneDrive/Desktop/gsoc/Resonate-Website/src/components/Footer/Footer.js:0:0-0:0)
- [src/components/About/About.js](cci:7://file:///c:/Users/jaisw/OneDrive/Desktop/gsoc/Resonate-Website/src/components/About/About.js:0:0-0:0)

## Suggested Fix
1. Add `rel="noopener noreferrer"` to all external links.
2. Add `aria-label="Description"` to all icon-only anchor tags.

**Example:**
```jsx


Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.