|
| Voir le sujet précédent :: Voir le sujet suivant |
| Auteur |
Message |
Ab£L Membre expérimenté

Inscrit le: 13 Aoû 2003 Messages: 642 Localisation: Strasbourg
|
Posté le: 11 Sep 2003 11:42 Sujet du message: Vulnérabilité dans includes/bbcode.php |
|
|
J' ai été averti d'une faille sur phpBB 2.0.6 (qui affecte aussi les versions 2.0.4 et 2.0.5).
Cette faille a été découverte suite aux changements effectués sur le BBcode url, cette faille permettrait à un utilisateur malveillant de récupérer les cookies.
De ce fait, cette faille est classée comme sérieuse.
Il faut faire une modif' de la files includes/bbcode.php
Le package 2.0.6 va être bientot mis à jour afin de corriger cette faille pour tous les nouveaux téléchargements.
Le changement est facile et ne prends que 2-3 minutes chrono.
Détails :
Cherchez :
| Code: | $bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
$bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\5', $bbcode_tpl['url4']); |
Remplacez par :
| Code: | $bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
$bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\3', $bbcode_tpl['url4']); |
Cherchez :
| Code: | // matches a [url]xxxx://www.phpbb.com[/url] code..
$patterns[] = "#\[url\]([\w]+?://.*?[^ \"\n\r\t<]*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url1'];
// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url\]((www|ftp)\.([\w\-]+\.)*?[\w\-]+\.[a-z]{2,4}(:?[0-9]*?/[^ \"\n\r\t<]*)?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url2'];
// [url=xxxx://www.phpbb.com]phpBB[/url] code..
$patterns[] = "#\[url=([\w]+?://.*?[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url3'];
// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url=((www|ftp)\.([\w\-]+\.)*?[\w\-]+\.[a-z]{2,4}(:?[0-9]*?/[^ \"\n\r\t<]*)?)\](.*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url4']; |
Remplacez par :
| Code: | // matches a [url]xxxx://www.phpbb.com[/url] code..
$patterns[] = "#\[url\]([\w]+?://[^ \"\n\r\t<]*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url1'];
// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url\]((www|ftp)\.[^ \"\n\r\t<]*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url2'];
// [url=xxxx://www.phpbb.com]phpBB[/url] code..
$patterns[] = "#\[url=([\w]+?://[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url3'];
// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url=((www|ftp)\.[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url4'];
|
Cherchez :
| Code: | // matches an "xxxx://yyyy" URL at the start of a line, or after a space.
// xxxx can only be alpha characters.
// yyyy is anything up to the first space, newline, comma, double quote or <
$ret = preg_replace("#(^|[\n ])([\w]+?://.*?[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret);
// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
// zzzz is optional.. will contain everything up to the first space, newline,
// comma, double quote or <.
$ret = preg_replace("#(^|[\n ])((www|ftp)\.[\w\-]+\.[\w\-.\~]+(?:/[^ \"\t\n\r<]*)?)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret); |
Remplacez par :
| Code: | //matches an "xxxx://yyyy" URL at the start of a line, or after a space.
// xxxx can only be alpha characters.
// yyyy is anything up to the first space, newline, comma, double quote or <
$ret = preg_replace("#(^|[\n ])([\w]+?://[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret);
// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
// zzzz is optional.. will contain everything up to the first space, newline,
// comma, double quote or <.
$ret = preg_replace("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r<]*)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret); |
Sauvez les files et upload via votre FTP.
Je vous laisse également en download, le fichier bbcode.php modifié Ici. Fichier à uploader que si vous n y avait jamais touché,rajouté des lines,etc...
Utilisez cette partie de ce forum pour les support. _________________ Comment Faire une Demande Graphique ?
Merci de rajouté "Réglé" dans le titre de votre sujet une fois ce dernier résolu. |
|
| Revenir en haut |
|
 |
|
|
ZoliveR VIP

Inscrit le: 09 Aoû 2003 Messages: 479 Localisation: Sur Paint Shop Pro (quelque part à Bruxelles)
|
Posté le: 11 Sep 2003 12:45 Sujet du message: |
|
|
Merci pour ta contrib (ouais je sais j'aurais pu le poster aussi sur ce forum
A noter que le fix est différent pour la 2.0.4 (et uniquement pour la 2.0.4)
Ouvrir
includes/bbcode.php
Chercher
| Code: | $bbcode_tpl['url1'] = str_replace('{URL}', '\1\2', $bbcode_tpl['url']);
$bbcode_tpl['url1'] = str_replace('{DESCRIPTION}', '\1\2', $bbcode_tpl['url1']);
$bbcode_tpl['url2'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
$bbcode_tpl['url2'] = str_replace('{DESCRIPTION}', '\\1', $bbcode_tpl['url2']);
$bbcode_tpl['url3'] = str_replace('{URL}', '\\1\\2', $bbcode_tpl['url']);
$bbcode_tpl['url3'] = str_replace('{DESCRIPTION}', '\\6', $bbcode_tpl['url3']);
$bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
$bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\5', $bbcode_tpl['url4']); |
Remplacer par
| Code: | //-- fix : faille bbcode url psoTFX 10/09/2003 -----------------------------------------------------
//-- delete
// $bbcode_tpl['url1'] = str_replace('{URL}', '\1\2', $bbcode_tpl['url']);
// $bbcode_tpl['url1'] = str_replace('{DESCRIPTION}', '\1\2', $bbcode_tpl['url1']);
//
// $bbcode_tpl['url2'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
// $bbcode_tpl['url2'] = str_replace('{DESCRIPTION}', '\\1', $bbcode_tpl['url2']);
//
// $bbcode_tpl['url3'] = str_replace('{URL}', '\\1\\2', $bbcode_tpl['url']);
// $bbcode_tpl['url3'] = str_replace('{DESCRIPTION}', '\\6', $bbcode_tpl['url3']);
//
// $bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
// $bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\5', $bbcode_tpl['url4']);
//-- add
$bbcode_tpl['url1'] = str_replace('{URL}', '\\1', $bbcode_tpl['url']);
$bbcode_tpl['url1'] = str_replace('{DESCRIPTION}', '\\1', $bbcode_tpl['url1']);
$bbcode_tpl['url2'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
$bbcode_tpl['url2'] = str_replace('{DESCRIPTION}', '\\1', $bbcode_tpl['url2']);
$bbcode_tpl['url3'] = str_replace('{URL}', '\\1', $bbcode_tpl['url']);
$bbcode_tpl['url3'] = str_replace('{DESCRIPTION}', '\\2', $bbcode_tpl['url3']);
$bbcode_tpl['url4'] = str_replace('{URL}', 'http://\\1', $bbcode_tpl['url']);
$bbcode_tpl['url4'] = str_replace('{DESCRIPTION}', '\\3', $bbcode_tpl['url4']);
//-- end : faille bbcode url psoTFX 10/09/2003 ----------------------------------------------------- |
Chercher
| Code: | // [url]xxxx://www.phpbb.com[/url] code..
$patterns[] = "#\[url\]([a-z0-9]+?://){1}([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url1'];
// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url\]((www|ftp)\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*?)?)\[/url\]#si";
$replacements[] = $bbcode_tpl['url2'];
// [url=xxxx://www.phpbb.com]phpBB[/url] code..
$patterns[] = "#\[url=([a-z0-9]+://)([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*?)?)\](.*?)\[/url\]#si";
$replacements[] = $bbcode_tpl['url3'];
// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url=(([\w\-]+\.)*?[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)\](.*?)\[/url\]#si";
$replacements[] = $bbcode_tpl['url4'];
|
Remplacer par
| Code: | //-- fix : faille bbcode url psoTFX 10/09/2003 -----------------------------------------------------
//-- delete
// // [url]xxxx://www.phpbb.com[/url] code..
// $patterns[] = "#\[url\]([a-z0-9]+?://){1}([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)\[/url\]#is";
// $replacements[] = $bbcode_tpl['url1'];
//
// // [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
// $patterns[] = "#\[url\]((www|ftp)\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*?)?)\[/url\]#si";
// $replacements[] = $bbcode_tpl['url2'];
//
// // [url=xxxx://www.phpbb.com]phpBB[/url] code..
// $patterns[] = "#\[url=([a-z0-9]+://)([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*?)?)\](.*?)\[/url\]#si";
// $replacements[] = $bbcode_tpl['url3'];
//
// // [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
// $patterns[] = "#\[url=(([\w\-]+\.)*?[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)\](.*?)\[/url\]#si";
// $replacements[] = $bbcode_tpl['url4'];
//-- add
// matches a [url]xxxx://www.phpbb.com[/url] code..
$patterns[] = "#\[url\]([\w]+?://[^ \"\n\r\t<]*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url1'];
// [url]www.phpbb.com[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url\]((www|ftp)\.[^ \"\n\r\t<]*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url2'];
// [url=xxxx://www.phpbb.com]phpBB[/url] code..
$patterns[] = "#\[url=([\w]+?://[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url3'];
// [url=www.phpbb.com]phpBB[/url] code.. (no xxxx:// prefix).
$patterns[] = "#\[url=((www|ftp)\.[^ \"\n\r\t<]*?)\](.*?)\[/url\]#is";
$replacements[] = $bbcode_tpl['url4'];
//-- end : faille bbcode url psoTFX 10/09/2003 ----------------------------------------------------- |
Chercher
| Code: | // matches an "xxxx://yyyy" URL at the start of a line, or after a space.
// xxxx can only be alpha characters.
// yyyy is anything up to the first space, newline, comma, double quote or <
$ret = preg_replace("#([\t\r\n ])([a-z0-9]+?){1}://([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="\2://\3" target="_blank">\2://\3</a>', $ret);
// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
// zzzz is optional.. will contain everything up to the first space, newline,
// comma, double quote or <.
$ret = preg_replace("#([\t\r\n ])(www|ftp)\.(([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="http://\2.\3" target="_blank">\2.\3</a>', $ret); |
Remplacer par
| Code: | //-- fix : faille bbcode url psoTFX 10/09/2003 -----------------------------------------------------
//-- delete
// // matches an "xxxx://yyyy" URL at the start of a line, or after a space.
// // xxxx can only be alpha characters.
// // yyyy is anything up to the first space, newline, comma, double quote or <
// $ret = preg_replace("#([\t\r\n ])([a-z0-9]+?){1}://([\w\-]+\.([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="\2://\3" target="_blank">\2://\3</a>', $ret);
//
// // matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
// // Must contain at least 2 dots. xxxx contains either alphanum, or "-"
// // zzzz is optional.. will contain everything up to the first space, newline,
// // comma, double quote or <.
// $ret = preg_replace("#([\t\r\n ])(www|ftp)\.(([\w\-]+\.)*[\w]+(:[0-9]+)?(/[^ \"\n\r\t<]*)?)#i", '\1<a href="http://\2.\3" target="_blank">\2.\3</a>', $ret);
//-- add
// matches an "xxxx://yyyy" URL at the start of a line, or after a space.
// xxxx can only be alpha characters.
// yyyy is anything up to the first space, newline, comma, double quote or <
$ret = preg_replace("#(^|[\n ])([\w]+?://[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $ret);
// matches a "www|ftp.xxxx.yyyy[/zzzz]" kinda lazy URL thing
// Must contain at least 2 dots. xxxx contains either alphanum, or "-"
// zzzz is optional.. will contain everything up to the first space, newline,
// comma, double quote or <.
$ret = preg_replace("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r<]*)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $ret);
//-- end : faille bbcode url psoTFX 10/09/2003 |
Merci de votre attention.
(merci qui pour l'info? Merci moi, Fly |GIAT pour avoir envoyé la faille, et merci keupon pour l'avoir découverte)
Source FR - Source EN _________________ ZoliveR qui n'est plus là. |
|
| Revenir en haut |
|
 |
Ab£L Membre expérimenté

Inscrit le: 13 Aoû 2003 Messages: 642 Localisation: Strasbourg
|
Posté le: 11 Sep 2003 12:49 Sujet du message: |
|
|
j t avoue que je savais pas si je pouvais poster l info ici... _________________ Comment Faire une Demande Graphique ?
Merci de rajouté "Réglé" dans le titre de votre sujet une fois ce dernier résolu. |
|
| Revenir en haut |
|
 |
ZoliveR VIP

Inscrit le: 09 Aoû 2003 Messages: 479 Localisation: Sur Paint Shop Pro (quelque part à Bruxelles)
|
Posté le: 11 Sep 2003 12:51 Sujet du message: |
|
|
Etant donné que c'est le seul forum phpBB sur phpbb-graph, c'est donc dans le bon forum _________________ ZoliveR qui n'est plus là. |
|
| Revenir en haut |
|
 |
Ab£L Membre expérimenté

Inscrit le: 13 Aoû 2003 Messages: 642 Localisation: Strasbourg
|
Posté le: 11 Sep 2003 12:52 Sujet du message: |
|
|
nan jparle au niveau de l info, vu qu elle est de 2037.biz _________________ Comment Faire une Demande Graphique ?
Merci de rajouté "Réglé" dans le titre de votre sujet une fois ce dernier résolu. |
|
| Revenir en haut |
|
 |
ZoliveR VIP

Inscrit le: 09 Aoû 2003 Messages: 479 Localisation: Sur Paint Shop Pro (quelque part à Bruxelles)
|
Posté le: 11 Sep 2003 13:46 Sujet du message: |
|
|
Ah non jte signale que l'info vient de moi. J'ai traduit l'annonce de phpBB.com dans les 20 minutes sur phpBB-fr.org (rendons à César ce qui appartient à César) _________________ ZoliveR qui n'est plus là. |
|
| Revenir en haut |
|
 |
Ab£L Membre expérimenté

Inscrit le: 13 Aoû 2003 Messages: 642 Localisation: Strasbourg
|
|
| Revenir en haut |
|
 |
Blaster Administrateur

Inscrit le: 08 Aoû 2003 Messages: 2891 Localisation: Vesoul ( proche besançon )
|
Posté le: 13 Sep 2003 0:52 Sujet du message: |
|
|
| ZoliveR a écrit: | | Ah non jte signale que l'info vient de moi. J'ai traduit l'annonce de phpBB.com dans les 20 minutes sur phpBB-fr.org (rendons à César ce qui appartient à César) |
lol oui ca viens de toi mais tu la mise aussi sur 2037
bref , frank qd tu poste une info , essai d'avoir l'accord de l'auteur de la traduction dans ce cas , zoliver n'aurais pas refuser je pense , au pire si tu sais pas qui a traduit , met les sources FR et EN  _________________ Cordialement , Julien .
Administrateur et webmaster phpBB-Graph.com
Votre problème est résolu ? Ajouter [Réglé] dans le titre de votre message . |
|
| Revenir en haut |
|
 |
ZoliveR VIP

Inscrit le: 09 Aoû 2003 Messages: 479 Localisation: Sur Paint Shop Pro (quelque part à Bruxelles)
|
Posté le: 13 Sep 2003 3:12 Sujet du message: |
|
|
Moi en général je ne refuse rien mais ca fait tj plaisir de voir qu'on a mis les sources  _________________ ZoliveR qui n'est plus là. |
|
| Revenir en haut |
|
 |
Griphix Modérateur


Inscrit le: 10 Aoû 2003 Messages: 505 Localisation: Charleroi [Belgium]
|
Posté le: 13 Sep 2003 8:53 Sujet du message: |
|
|
de l'aide c'est tros comlliqué pour moi  |
|
| Revenir en haut |
|
 |
ZoliveR VIP

Inscrit le: 09 Aoû 2003 Messages: 479 Localisation: Sur Paint Shop Pro (quelque part à Bruxelles)
|
Posté le: 13 Sep 2003 17:25 Sujet du message: |
|
|
Pourtant c'est bien expliqué. Ouvre le fichier, cherche le code et remplace le par l'autre code _________________ ZoliveR qui n'est plus là. |
|
| Revenir en haut |
|
 |
Ab£L Membre expérimenté

Inscrit le: 13 Aoû 2003 Messages: 642 Localisation: Strasbourg
|
Posté le: 10 Oct 2003 16:07 Sujet du message: |
|
|
Par contre quelles sont les réélles conséquences si on ne modifie pas? _________________ Comment Faire une Demande Graphique ?
Merci de rajouté "Réglé" dans le titre de votre sujet une fois ce dernier résolu. |
|
| Revenir en haut |
|
 |
ZoliveR VIP

Inscrit le: 09 Aoû 2003 Messages: 479 Localisation: Sur Paint Shop Pro (quelque part à Bruxelles)
|
Posté le: 12 Oct 2003 23:54 Sujet du message: |
|
|
Conséquence: Qqun de mal intentionné peut récupérer les cookies de ceux qui veulent. Donc peuvent accéder aux comptes de n'importe qui. C'est expliqué dans le premier post _________________ ZoliveR qui n'est plus là. |
|
| Revenir en haut |
|
 |
Ab£L Membre expérimenté

Inscrit le: 13 Aoû 2003 Messages: 642 Localisation: Strasbourg
|
Posté le: 13 Oct 2003 7:38 Sujet du message: |
|
|
Oui j' avais vu...
Mais comment ils peuvent récupérer les cookies ? via le serveur ? via le forum directement et comment ? Ca craint qd même  _________________ Comment Faire une Demande Graphique ?
Merci de rajouté "Réglé" dans le titre de votre sujet une fois ce dernier résolu. |
|
| Revenir en haut |
|
 |
ZoliveR VIP

Inscrit le: 09 Aoû 2003 Messages: 479 Localisation: Sur Paint Shop Pro (quelque part à Bruxelles)
|
Posté le: 13 Oct 2003 19:44 Sujet du message: |
|
|
Je ne sais pas comment, et je pense pas que tu le saura. _________________ ZoliveR qui n'est plus là. |
|
| Revenir en haut |
|
 |
|
|
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum Vous ne pouvez pas joindre des fichiers Vous ne pouvez pas télécharger des fichiers
|
Powered by phpBB © 2001, 2005 phpBB Group
|