Bugfix für das 2.1.x

MrMind
So, da net alle es vielleicht mitbekommen haben, möchte ich hier auchnochmal einen Bugfix zur Sicherheit posten:

XSS in der thread.php

öffne die thread.php

Suche nach:

code:
1:
if (isset($_REQUEST['hilight'])) $hilight = urldecode($_REQUEST['hilight']);


Ersetze durch:

code:
1:
if (isset($_REQUEST['hilight'])) $hilight = $_REQUEST['hilight'];



Was macht diese Sicherheitslücke

Mit Hilfe dieser Sicherheitslücke können mutwillige Angreifer Cookie Daten etc. eines Users auslesen und missbrauchen.

Daher ist dringend zu empfehlen, diese Sicherheitslücke zu schließen.

Mfg
MrMind
Bräke
Fehler in Funktion: Massenverschiebung mit Eingabe im Feld "Antworten weniger als".

bis 2.1.1
Suche acp/threads.php:

code:
1:
if(isset($_POST['replies_lessthen']) && $_POST['replies_lessthen']!="") add2where("replycount < '".intval($_POST['replies_morethen'])."'");
Ersetze durch:
code:
1:
if(isset($_POST['replies_lessthen']) && $_POST['replies_lessthen']!="") add2where("replycount < '".intval($_POST['replies_lessthen'])."'");


ab 2.1.2
Suche acp/threads.php:

code:
1:
if(isset($_POST['replies_lessthan']) && $_POST['replies_lessthan']!="") add2where("replycount < '".intval($_POST['replies_morethan'])."'");
Ersetze durch:
code:
1:
if(isset($_POST['replies_lessthan']) && $_POST['replies_lessthan']!="") add2where("replycount < '".intval($_POST['replies_lessthan'])."'");



(Der Fehler zieht sich von Version 2.1.0 Beta1 bis zur Version 2.3.6pl2 durch)
Bräke
Im UserCP unter Favoriten werden die Ordnersymbole / Themenicons nicht korrekt gezeigt. Zur Verdeutlichung ein Screen:
[attach]31951[/attach]


suche in usercp.php:
code:
1:
2:
3:
4:
5:
  if($threads['pollid']!=0) $foldericon="poll";
  else $foldericon=(($threads['userid']) ? ("dot") : ("")).(($threads['lastposttime']>$threads['threadlastvisit']) ? ("new") : ("")).(($threads['replycount']>=$board['hotthread_reply'] || $threads['views']>=$board['hotthread_view']) ? ("hot") : ("")).(($threads['closed']!=0) ? ("lock") : (""))."folder";
  if($threads['lastposttime']>$threads['threadlastvisit']) $firstnew=1;
  if($threads['iconid']) $threadicon=makeimgtag($threads['iconpath'],$threads['icontitle']);
  else $threadicon="&nbsp;";

ersetze mit:
code:
1:
2:
3:
4:
5:
6:
7:
  if($threads['important']==2) $foldericon="announce";
  else $foldericon=(($threads['userid']) ? ("dot") : ("")).(($threads['lastposttime']>$threads['threadlastvisit']) ? ("new") : ("")).(($threads['replycount']>=$board['hotthread_reply'] || $threads['views']>=$board['hotthread_view']) ? ("hot") : ("")).(($threads['closed']!=0) ? ("lock") : (""))."folder";
  if($threads['lastposttime']>$threads['threadlastvisit']) $firstnew=1;

  if($threads['pollid']!=0) $threadicon=makeimgtag($style['imagefolder']."/poll.gif","");
  elseif($threads['iconid']) $threadicon=makeimgtag($threads['iconpath'],$threads['icontitle']);
  else $threadicon="&nbsp;";
Bräke
Leider ist ein Bug in allen wBB2-Versionen (2.1 - 2.3) der es erlaubt eine PHP-Datei hochzuladen die einen "PHP.Shell"-Virus enthält.
Leider prüft das wBB2 nicht, das bei einem Style-Import, eine PHP-Datei nicht hoch geladen werden darf.

Es wird allen DRINGEND empfholen die folgende Änderung zu machen.


Editiere die Datei "acp/style.php".

Suche:
code:
1:
2:
					if(!isset($data['images'][$image]) || !$data['images'][$image]) continue;
Füge darunter ein:
code:
1:
2:
3:
					if(strtolower(substr($image, - 4)) == ".php") continue;


Danke an Viktor, Original