---
title: "Links in Extension mit CSRF-Token versehen - Wie?"
url: "https://www.typo3.net/d/119075-links-in-extension-mit-csrf-token-versehen-wie"
source: "typo3.net"
tags: ["Extensions","Entwicklung","Frage","Sicherheit"]
created: "2014-10-24"
last_reply: "2016-01-12"
replies: 3
solved: false
page: 1
pages: 1
lang: "de"
---

# Links in Extension mit CSRF-Token versehen - Wie?

Extensions › Entwicklung · 3 Antworten · gestartet 2014-10-24

## Eröffnungsbeitrag

**shibuyaku** · 2014-10-24 · [Beitrag #1](https://www.typo3.net/d/119075-links-in-extension-mit-csrf-token-versehen-wie/1)

Typo3 Version 6.2. LTS

Moin,

ich schreibe gerade an einer Erweiterung für und verzweifle etwas an der ab 6.2 geänderten mod.php, die CSRF-Token erzwingt ("if(!formprotection.....)". Weiß jemand wie ich folgenden, in Typo3 <= 4.7 funktionierenden, Link korrekt in 6.2 erzeuge?

$links .= '<a class="showLink" href="mod.php?M=web_txideaM1&listpage='.$this->listPage.'&show='.$row['uid'].'">'.$pen_com_num.'</a>';

Wenn ich den Link wie oben setze wird in der mod.php der nicht vorhandene CSRF Token überprüft und eine <http://wiki.typo3.org/Exception/CMS/1392409507> geschmissen.

Momentan habe ich, Asche über mein Haupt, einfach die entsprechende Prüfung in der mod.php deaktivert aber das will ich ungern so abgeben :P

Besten Dank für sachdienliche Hinweise!

## Antworten

### [#2](https://www.typo3.net/d/119075-links-in-extension-mit-csrf-token-versehen-wie/2) · shibuyaku · 2014-10-24

Da es keine Hinweise gab, aber ich die Lösung mittlerweile erarbeitet habe (wie schlecht ist das denn bitte dokumentiert, ich musste mir den benötigten Code aus Dev-Stories heraussuchen?) dokumentiere ich das hier mal.

Lösung

4.7 Code - Direkter Call von mod.phh - Löst in 6.2 eine Cross Site Scripting Protection Exception aus

```php
$linkToMother = '<a href="mod.php?M=web_txideaM1&listpage'.$this->listPage.'&show='.$rowMother['uid'].'">'.$rowMother['title'].'</a>';
```

6.2 Code - Macht was der Einzeiler aus 4.7 tut, nur mit Cross Site Scripting Protection Token

```php
$urlParameters = array(
   'listpage' => $this->listPage,
   'show' => $rowMother['uid']
);
$aHref = \TYPO3\CMS\Backend\Utility\BackendUtility::getModuleUrl('web_txideaM1', $urlParameters); 
$linkToMother = '<a href="'. htmlspecialchars($aHref) .'">'.$rowMother['title'].'</a>';
```

### [#3](https://www.typo3.net/d/119075-links-in-extension-mit-csrf-token-versehen-wie/3) · jenses · 2014-10-25

Du bist lustig - in dem von dir verlinkten wiki-Artikel steht doch die Lösung?

### [#4](https://www.typo3.net/d/119075-links-in-extension-mit-csrf-token-versehen-wie/4) · Setzling · 2016-01-12

Bei mir wars auch eine andere Lösung. Ich habe die Links dann so an das php herankonkateniert:

```php
<form action="' . \TYPO3\CMS\Backend\Utility\BackendUtility::getModuleUrl('web_txtxekatoversandkostenM1', array('target' => '', 'SET[function]' => $this->MOD_SETTINGS['function'], 'id' => $this->id, 'returnUrl=' => htmlspecialchars($this->returnUrl), 'name' => 'editform')) . '" method="post" name="asd">
```

---

Quelle: „Links in Extension mit CSRF-Token versehen - Wie?“, typo3.net, https://www.typo3.net/d/119075-links-in-extension-mit-csrf-token-versehen-wie
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
