phpBB2.de Foren-Übersicht  
[netclusive - internet broadcasting]
 FAQ  •  Suchen  •  Download  •  Lesezeichen  •  Mitgliederliste  •  Benutzergruppen   •  Registrieren  •  Profil  •  Einloggen, um private Nachrichten zu lesen  •  Login
 
        
 
        
 

LinkLift

Nächstes Thema anzeigen
Vorheriges Thema anzeigen

Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.
Autor Nachricht
cback
phpBB2.de User
phpBB2.de User
[KB] Manager


Anmeldungsdatum: 16.01.2004
Beiträge: 3321
Wohnort: Saarland

BeitragVerfasst am: Mi 06 Jul, 2005 16:26 Antworten mit ZitatNach oben 

Temporary fix for security issue in URL BBcode (phpBB 2.0.16)


Actually a new bug into the URL BBcode system of phpBB 2.0.16 was found. The phpBB Group has no fix released at the moment so I give you here a temporary fix for this issue till the official update for phpBB is available.

Please safe your original bbcode.php before doing this change, that you can easily make the offical changes from the phpBB Group if they provide the offical fix for this issue. (Because this is not the offical patch, but a solution for that problem!)



Here the Temporary Code Changes for phpBB 2.0.16 and Plus 1.5.x:


PHP:
<?php #
#-----[ OPEN ]------------------------------------------
#
includes/bbcode.php


#
#-----[ FIND ]------------------------------------------
#
    // matches a xxxx://www.phpbb.com code..
    
$patterns[] = "#\[url\]([\w]+?://[^ \"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url1'];

    
// www.phpbb.com code.. (no xxxx:// prefix).
    
$patterns[] = "#\[url\]((www|ftp)\.[^ \"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url2'];

    
// phpBB code..
    
$patterns[] = "#\[url=([\w]+?://[^ \"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url3'];

    
// code.. (no xxxx:// prefix).
    
$patterns[] = "#\[url=((www|ftp)\.[^ \"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url4'];
    

#
#-----[ REPLACE WITH ]------------------------------------------
#
    // matches a xxxx://www.phpbb.com code..
    
$patterns[] = "#\[url\]([\w]+?://[^ '`\"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url1'];

    
// www.phpbb.com code.. (no xxxx:// prefix).
$patterns[] = "#\[url\]((www|ftp)\.(?![^ '`\"\n\r\t<]*?\[url)[^ \"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url2'];

    
// phpBB code..
    
$patterns[] = "#\[url=([\w]+?://[^ '`\"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url3'];

    
// code.. (no xxxx:// prefix).
    
$patterns[] = "#\[url=((www|ftp)\.[^ '`\"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url4'];
        
        

#
#-----[ SAVE/CLOSE ALL FILES ]------------------------------------------
#
# EoM 



Enjoy. Wink

Update (08.07.2005):

With a combination of a Fix Method from the Users Alcaeus, Christian S. and my Code we have here now a new Solution for this issue which works better.


Important (20.07.2005):

phpBB 2.0.17 is now released and includes now an official FIX! So please don't use our version anymore and Update as fast as possible to the newest phpBB 2.0.17 Version: Click here

_________________
[ Forensoftware | CBACK Software | SYNTACTION ]

Support only in Forum! - Support nur im Forum!


Zuletzt bearbeitet von cback am Mi 20 Jul, 2005 22:30, insgesamt 8-mal bearbeitet
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenWebsite dieses Benutzers besuchen
Google







Verfasst am: Nach oben

TomLeo
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 01.06.2005
Beiträge: 45

BeitragVerfasst am: Mi 06 Jul, 2005 16:35 Antworten mit ZitatNach oben 

Aha, Danke!!

Wenn Du das sagst!! Ich vertraue Dir da blind ... Thanks
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenICQ-Nummer
cback
phpBB2.de User
phpBB2.de User
[KB] Manager


Anmeldungsdatum: 16.01.2004
Beiträge: 3321
Wohnort: Saarland

BeitragVerfasst am: Mi 06 Jul, 2005 16:36 Antworten mit ZitatNach oben 

Vertrauen ist gut, Kontrolle ist besser! Wink

Aber in diesem Fall hab ich die Methoden des Einschleusens in Plus und phpBB 2.0.16 damit erfolgreich verhindern können also ein wesentlicher Unterschied erwarte ich auch nicht beim offiziellen Fix Wink

Mal sehen was die basteln Smile Aber jedenfalls sind die Boards bis dahin schon mal sicher.

_________________
[ Forensoftware | CBACK Software | SYNTACTION ]

Support only in Forum! - Support nur im Forum!
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenWebsite dieses Benutzers besuchen
alsakrah
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 02.12.2003
Beiträge: 125
Wohnort: JUBAIL

BeitragVerfasst am: Mi 06 Jul, 2005 18:08 Antworten mit ZitatNach oben 

Thank you

updating now

_________________
phpBB2 Plus Arabic Language Support Forum
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchenYahoo MessengerMSN Messenger
alcaeus
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.04.2005
Beiträge: 51
Wohnort: Munich, Germany but Italian native

BeitragVerfasst am: Mi 06 Jul, 2005 20:01 Antworten mit ZitatNach oben 

Actually, it can be done a lot easier:

This is the original code:
PHP:
<?php $patterns[] = "#\[url\]([\w]+?://[^ \"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url1'];

    
// www.phpbb.com code.. (no xxxx:// prefix).
    
$patterns[] = "#\[url\]((www|ftp)\.[^ \"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url2'];

    
// phpBB code..
    
$patterns[] = "#\[url=([\w]+?://[^ \"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url3'];

    
// phpBB code.. (no xxxx:// prefix).
    
$patterns[] = "#\[url=((www|ftp)\.[^ \"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is"


And this the new one:
PHP:
<?php $patterns[] = "#\[url\]([\w]+?://[^ '`\"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url1'];

    
// www.phpbb.com code.. (no xxxx:// prefix).
    
$patterns[] = "#\[url\]((www|ftp)\.[^ '`\"\n\r\t<]*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url2'];

    
// phpBB code..
    
$patterns[] = "#\[url=([\w]+?://[^ '`\"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is";
    
$replacements[] = $bbcode_tpl['url3'];

    
// phpBB code.. (no xxxx:// prefix).
    
$patterns[] = "#\[url=((www|ftp)\.[^ '`\"\n\r\t<]*?)\]([^?\n\r\t].*?)\[/url\]#is"

The new regexps only exclude ' and `. This means that the malicious Code won't be parsed at all. This solution was developed by Daniel W. of the Delphi-PRAXiS and Christian S. of the Delphi-Forum

phpBB.com has not yet acknowledged the problem, but it has been reported to the security tracker.

Greetz
alcaeus


Zuletzt bearbeitet von alcaeus am Do 07 Jul, 2005 15:17, insgesamt einmal bearbeitet
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchenICQ-Nummer
cback
phpBB2.de User
phpBB2.de User
[KB] Manager


Anmeldungsdatum: 16.01.2004
Beiträge: 3321
Wohnort: Saarland

BeitragVerfasst am: Mi 06 Jul, 2005 20:14 Antworten mit ZitatNach oben 

With your code I can still execute malicious scripts with the other URL BBCode methods. I just have to use multiple nestings.

And I don't know if that is easyer both snippets have only one find and replace part Wink

_________________
[ Forensoftware | CBACK Software | SYNTACTION ]

Support only in Forum! - Support nur im Forum!


Zuletzt bearbeitet von cback am Mi 06 Jul, 2005 20:15, insgesamt einmal bearbeitet
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenWebsite dieses Benutzers besuchen
Datenbankpasswort
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 28.06.2005
Beiträge: 372

BeitragVerfasst am: Mi 06 Jul, 2005 20:15 Antworten mit ZitatNach oben 

Heisst das jetzt, einfach das über mir ausführen, anstatt all das im ersten post?

_________________
Es ist ärgerlich, wie oft man einige Arbeiten aufschieben muss, um sie endgültig zu vergessen.
OfflineBenutzer-Profile anzeigenPrivate Nachricht senden
cback
phpBB2.de User
phpBB2.de User
[KB] Manager


Anmeldungsdatum: 16.01.2004
Beiträge: 3321
Wohnort: Saarland

BeitragVerfasst am: Mi 06 Jul, 2005 20:16 Antworten mit ZitatNach oben 

Nein, nimm meins. Ganz oben. Wink

Ach ja "all das" es ist in beiden fällen nur eine einzige Ersetzung von Code also der Arbeitsaufwand ist absolut identisch mit dem Unterschied das der Snippet von mir das Problem löst und unten noch weiter geschachtelt werden kann Wink

_________________
[ Forensoftware | CBACK Software | SYNTACTION ]

Support only in Forum! - Support nur im Forum!
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenWebsite dieses Benutzers besuchen
Datenbankpasswort
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 28.06.2005
Beiträge: 372

BeitragVerfasst am: Mi 06 Jul, 2005 20:18 Antworten mit ZitatNach oben 

Okay, danke dir.

_________________
Es ist ärgerlich, wie oft man einige Arbeiten aufschieben muss, um sie endgültig zu vergessen.
OfflineBenutzer-Profile anzeigenPrivate Nachricht senden
cback
phpBB2.de User
phpBB2.de User
[KB] Manager


Anmeldungsdatum: 16.01.2004
Beiträge: 3321
Wohnort: Saarland

BeitragVerfasst am: Mi 06 Jul, 2005 20:20 Antworten mit ZitatNach oben 

Kein Problem Smile

_________________
[ Forensoftware | CBACK Software | SYNTACTION ]

Support only in Forum! - Support nur im Forum!
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenWebsite dieses Benutzers besuchen
alcaeus
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.04.2005
Beiträge: 51
Wohnort: Munich, Germany but Italian native

BeitragVerfasst am: Mi 06 Jul, 2005 20:25 Antworten mit ZitatNach oben 

cback hat folgendes geschrieben:
With your code I can still execute malicious scripts with the other URL BBCode methods. I just have to use multiple nestings.

Achtually, I'd love to see that code, maybe you could PN me one? Both BBCodes that were using that vulnerability are using a ' (style='), therefore I don't know what you're referring to. The nested url-Tags don't get parsed with my method, not even the first one.

Greetz
alcaeus
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchenICQ-Nummer
alcaeus
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.04.2005
Beiträge: 51
Wohnort: Munich, Germany but Italian native

BeitragVerfasst am: Do 07 Jul, 2005 13:50 Antworten mit ZitatNach oben 

After further investigating the issue, I think it's best to apply both fixes, therefore excluding nested tags and my method.
Also, maybe your fix doesn't work all that good, as this link doesn't get parsed, even though BBCode is enabled, and the links in my previous post don't show Wink
As I said, cback, you should contact me via PN or ICQ to let me know about the malicious code that can still me inserted with my method.

Greetz
alcaeus

_________________
Ein Portal für Informatik-Studenten: www.infler.de
Meine Homepage: www.alcaeus.org
Letzter Artikel: Working with phpBB again
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchenICQ-Nummer
cback
phpBB2.de User
phpBB2.de User
[KB] Manager


Anmeldungsdatum: 16.01.2004
Beiträge: 3321
Wohnort: Saarland

BeitragVerfasst am: Do 07 Jul, 2005 13:53 Antworten mit ZitatNach oben 

Zitat:
As I said, cback, you should contact me via PN or ICQ to let me know about the malicious code that can still me inserted with my method.


Sorry, I can only say that it works but I never give out malicious code. Wink To no one.

_________________
[ Forensoftware | CBACK Software | SYNTACTION ]

Support only in Forum! - Support nur im Forum!
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenWebsite dieses Benutzers besuchen
alcaeus
phpBB2.de User
phpBB2.de User



Anmeldungsdatum: 09.04.2005
Beiträge: 51
Wohnort: Munich, Germany but Italian native

BeitragVerfasst am: Do 07 Jul, 2005 13:56 Antworten mit ZitatNach oben 

cback hat folgendes geschrieben:
Sorry, I can only say that it works but I never give out malicious code. Wink To no one.

Rolling Eyes We have my fix running on a couple of forums, so giving me the code would just be a matter of friendlyness, as the malicious code I used to grab autologin keys does not work with my fix anymore.
Given the information present, all malicious code I have found so far use the style=' issue exploitable only in IE, therefore always including one of the stop characters included in my fix. As I said, it's not for me to use that code, it's to protect the forums I'm managing. But I guess your lack of trust will make me find out the hard way Rolling Eyes

Greetz
alcaeus

_________________
Ein Portal für Informatik-Studenten: www.infler.de
Meine Homepage: www.alcaeus.org
Letzter Artikel: Working with phpBB again
HiddenBenutzer-Profile anzeigenPrivate Nachricht sendenWebsite dieses Benutzers besuchenICQ-Nummer
cback
phpBB2.de User
phpBB2.de User
[KB] Manager


Anmeldungsdatum: 16.01.2004
Beiträge: 3321
Wohnort: Saarland

BeitragVerfasst am: Do 07 Jul, 2005 13:59 Antworten mit ZitatNach oben 

I can only tell you that my method in the first post is the solution for that problem without affecting any phpBB Functions and with securing the URL BBcode from any nagging. Wink

But you can use what you want. I don't force someone to use something good Wink

_________________
[ Forensoftware | CBACK Software | SYNTACTION ]

Support only in Forum! - Support nur im Forum!
OfflineBenutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenWebsite dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:      
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.

Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen

Ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
Probleme mit bbcode Parser - Merkwürd... pordox phpBB2.x - Support 2 Fr 27 März, 2009 20:09 Letzten Beitrag anzeigen
wbb auf phpbb2.023 auf phpBB-3.0.4 mö... Torsten68 phpBB2.x - Diskussion 1 Mi 25 März, 2009 21:51 Letzten Beitrag anzeigen
Upgrading from phpBB 2.0.22 to 2.0.23 ndiniz Installation / Upgrading 1 Do 12 Feb, 2009 23:08 Letzten Beitrag anzeigen
Problem mit phpBB 2.0.23 und Advance... cododerdritte phpBB2.x - Support 0 Sa 31 Jan, 2009 01:36 Letzten Beitrag anzeigen
wo finde ich phpbb christian91 phpBB2.x - Support 3 Mo 05 Jan, 2009 22:14 Letzten Beitrag anzeigen