Re: [TYPO3-german] Ist realurl ein DB-Killer? Wie kann man bestimmte Einträge ausschließen?

2017-02-19 Diskussionsfäden Dr. Dieter Porth

Hallo Alexander

You can specify a range of valid values by appending a () after each 
value. If this range does not match, the variable won't be appended to 
links. This is very important to prevent that the cache system gets 
flooded with forged values.


https://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Config/Index.html#linkvars

Mit besten Grüßen
Dieter

Am 19.02.2017 um 19:29 schrieb Alexander Averbuch:

bei mir sieht es so aus:

linkVars = L(0-1)

aber meiner Meinung nach ist linkVars für was anderes gedacht


___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german


___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Re: [TYPO3-german] Ist realurl ein DB-Killer? Wie kann man bestimmte Einträge ausschließen?

2017-02-19 Diskussionsfäden Ralf-Rene Schröder
du hast aber deine Installation schon mit config.linkvars so abgesichert
das nur die von dir gewollten Parameter ausgewertet werden ( bei mir ist
es z.B.: config.linkVars = L(1-2), print ) ??? siehe:
https://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Config/Index.html#linkvars

Am 19.02.2017 um 18:21 schrieb Alexander Averbuch:
> Hallo zusammen,
> 
> Ich habe mir die Tabelle  tx_realurl_urldata angeschaut und habe
> festgestellt, dass ein Angreifer relativ einfach die DB mit
> Spam-Einträgen überfluten kann, so dass die gesamte Website nicht mehr
> funktionieren wird. Ein paar Beispiele:
> 
> Fall 1.
> 
> Ich habe eine Website in 2 Sprachen mit dem Sprachmenü: de und en.
> Rufe ich die Seite /de/change-userdata/ mit dem GET-Parameter asd=123 auf
> 
> /de/change-userdata/?asd=123
> wird von TYPO3 die entsprechende Verlinkung zur en-Seite erstellt
> /en/change-userdata/?asd=123. Da ich beim Sprachmenü addQueryString = 1
> setze, werden alle GET-Parameter immer übernommen. Realurl erzeugt 2
> Einträge in der Tabelle tx_realurl_urldata:
> 
> /de/change-userdata/?asd=123=6f2fa4abfaa1a23ba7044c2bb3b4fd0b
> /en/change-userdata/?asd=123=2342304980ad2837fadec803234234
> 
> Der Angreifer kann beliebig viele GET-Parameter mit unterschiedlichen
> Werten an die URL Anhängen, alle werden in die DB geschrieben.
> 
> Fall 2.
> 
> Ich benutze auf einer Seite den Fluid-Paginator . Die
> von ihm generierten Links sehen etwa so aus:
> 
> /en/listing-for-transaction/?tx_gbaccount_transactions[@widget_0][currentPage]=2
> 
> 
> Füge ich dem Link den GET-Parameter asd=123 hinzu, bekommen ihn alle vom
> Paginator erzeugten Links. Auch hier kann Angreifer mit den
> GET-Parametern manipulieren. Dadurch, dass die generierten Links in die
> Tabelle tx_realurl_urldata geschrieben werden, kann sie schnell voll
> werden.
> 
> Habt ihr ähnliche Probleme gehabt? Habt ihr schon Gedanken darüber
> gemacht? Könnt ihr eure bestehenden Projekte prüfen? Was könnte die
> Abhilfe schaffen?
> 
> Viele Grüße,
> Alexander
> 
> 


-- 
image[FORMAT] - Ralf-René Schröder
http://www.image-format.eu ... Wir geben Ihrem Image das richtige Format
___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

[TYPO3-german] Ist realurl ein DB-Killer? Wie kann man bestimmte Einträge ausschließen?

2017-02-19 Diskussionsfäden Alexander Averbuch

Hallo zusammen,

Ich habe mir die Tabelle  tx_realurl_urldata angeschaut und habe festgestellt, 
dass ein Angreifer relativ einfach die DB mit Spam-Einträgen überfluten kann, 
so dass die gesamte Website nicht mehr funktionieren wird. Ein paar Beispiele:

Fall 1.

Ich habe eine Website in 2 Sprachen mit dem Sprachmenü: de und en.
Rufe ich die Seite /de/change-userdata/ mit dem GET-Parameter asd=123 auf

/de/change-userdata/?asd=123 


wird von TYPO3 die entsprechende Verlinkung zur en-Seite erstellt 
/en/change-userdata/?asd=123. Da ich beim Sprachmenü addQueryString = 1 setze, 
werden alle GET-Parameter immer übernommen. Realurl erzeugt 2 Einträge in der 
Tabelle tx_realurl_urldata:

/de/change-userdata/?asd=123=6f2fa4abfaa1a23ba7044c2bb3b4fd0b
/en/change-userdata/?asd=123=2342304980ad2837fadec803234234

Der Angreifer kann beliebig viele GET-Parameter mit unterschiedlichen Werten an 
die URL Anhängen, alle werden in die DB geschrieben.

Fall 2.

Ich benutze auf einer Seite den Fluid-Paginator . Die von 
ihm generierten Links sehen etwa so aus:

/en/listing-for-transaction/?tx_gbaccount_transactions[@widget_0][currentPage]=2

Füge ich dem Link den GET-Parameter asd=123 hinzu, bekommen ihn alle vom 
Paginator erzeugten Links. Auch hier kann Angreifer mit den GET-Parametern 
manipulieren. Dadurch, dass die generierten Links in die Tabelle 
tx_realurl_urldata geschrieben werden, kann sie schnell voll werden.

Habt ihr ähnliche Probleme gehabt? Habt ihr schon Gedanken darüber gemacht? 
Könnt ihr eure bestehenden Projekte prüfen? Was könnte die Abhilfe schaffen?

Viele Grüße,
Alexander 




___
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german