[2.1] RedireX für wBB 2.1

Dieses Thema im Forum "hacks von rellek" wurde erstellt von rellek, 17 August 2004.

  1. rellek

    rellek relativ sensationell Mitarbeiter

    Was macht dieser Hack?
    Er fügt einen Redirektor an jeden Link, der den Forenserver verlässt. Dieser passt sich
    sogar dem eingestellten Style an.
    Wofür ist sowas gut?
    -> Referrer verstecken
    -> Definition für "fremde Inhalte", nämlich alles, was über den Redir gepuffert is :)

    Welcher Server gehört zum Forum?
    Das wird während der Installation festgelegt. In der acp/lib/class_parse.php, Zeile 320 [Nach Einbau]
    Alle verfügbaren Domains sollten reingeschrieben werden, mit und ohne www.
    $boardurls = array("domain.de","www.domain.de","board.domain.de");
    beispielsweise...
    Der Redir an sich ist übrigens auch aus dem wBB :)

    Update 18/08/2004
    Readme-Fehler korrigiert...

    Update 09/09/2004
    Der gleiche Fehler schonwieder.. naja :D



    Für anonym.to-Nutzer:
    Wer statt des mitgelieferten Redirektors lieber den Redirektor-Dienst anonym.to nutzen möchte, der geht wie folgt vor:
    - Einbau des Hacks in der normalen Version
    - Wenn er funktioniert, gehe in die Datei ./acp/lib/class_parse.php und suche nach:
    Code:
    redir.php?url=".urlencode($url)."
    und ersetze diesen Abschnitt durch:
    Code:
    [URL]http://anonym.to/[/URL]?".urlencode($url)."

    WICHTIG!!!
    Am 29.04.2010 wurde eine XSS-Sicherheitslücke gefunden. Fix: http://board.rellek.org/328994-post19.html
     

    Anhänge:

    Zuletzt bearbeitet: 29 April 2010
  2. Mr.Pink

    Mr.Pink Neuer Benutzer

  3. rellek

    rellek relativ sensationell Mitarbeiter

    es geht über dein board, aber der ziel admin sieht eben nur den redirektor als referrer.

    es geht bei diesem hack auch mehr um das "verschleiern" des richtigen referrers und um den rechtlichen aspekt als um das "anonyme" weiterleiten.

    um anonym.to zu verwenden, und damit das funktionieren der links von fremdanbietern abhängig zu machen, ersetze die beiden redir.php?url= durch http://anonym.to/? in der class_parse.php
     
  4. Mr.Pink

    Mr.Pink Neuer Benutzer

    hm..
    blick ich grad net :nachdenk:


    was ist das denn?

    und einfach erklärt..
    also es kann jetzt nix zu meinem forum zurückverfolgt werden? :angle:
     
  5. rellek

    rellek relativ sensationell Mitarbeiter

    Wenn du auf den Link klickst:
    http://www.google.de

    dann wird bei Google auf dem Webserver registriert, dass du da bist, wann, was du wolltest (nämlich die startseite), welche ip und welcher Referrer. Der Referrer gibt die jeweils letzte Seite an.
    Das heißt, ohne Redirektor heißt der Referrer, der bei Google gespeichert wird:
    RedireX für wBB 2.1
    und dann können die Admins, falls sie sich die Mühe machen, den Link eingeben und sehen, dass du auf die Seite gekommen bist, weil ich dir Referrer erklärt habe.

    Wenn der Redirektor aber an ist, dann sehen die bei Google nur:
    http://board.rellek.org/redir.php?url=http://www.google.de
    Also nur, dass von dem server rellek.org auf die Google-Seite verwiesen wurde. - Mehr nicht.
     
  6. Mr.Pink

    Mr.Pink Neuer Benutzer

    hm..
    aber dann blicken sie ja auf jeden von wo das kommt..und wenn ich das anonym anfüge sehen sie nur das anonym.to..
     
  7. rellek

    rellek relativ sensationell Mitarbeiter

    Wie gesagt, es ging mir bei dem Hack mehr um die rechtliche Seite und weniger um das eigentliche Verschleiern - auch wenn das ein kleiner Nebeneffekt ist.

    Es steht dir natürlich frei, trotzdem safeurl oder anonym.to oder sonstwas zu nehmen.
     
  8. Mr.Pink

    Mr.Pink Neuer Benutzer

    WBB-Version: 2.1.5


    Wie geht das weg?



    Code:
    Warning: parse_url([URL]ftp://leech:wizdom[/URL]): Unable to parse url in /home/fileagency/wbb2/acp/lib/class_parse.php on line 343
    ‹xì½ÙvÛH²6z]^k¿C–z•-‹ ÁI¢d¹Ššlµ5mIªêxq$HÂ"6jêîý?êÿçj_œ/2‘@'Yf‹.ªÊ 䜑‘‘_D¾þõ¶×eצëYŽ½½¢k¹fÚ §iÙíí•Ën:7^FÏ—ò+¿¾yöúç½ÓÝËßÏöYÇG¶³;G‡»l%“Í~*ìf³{—{ìó»Ëã#†rØ¥kØžå£\£›Í°•Žï÷7³Ù››í¦ 9n;{yž½¥²tÊ|ÌøJN é7WP3¯mµ½í”bôJ¥"r¯°¦ån¯t}w…u êDÓ\aȸ~£ÒL£‰?¾åwÍ7ÚæAu‡e؁Õ5«môþnÇ1Üæ¦ÆþÅèÍîùþ'|üd¸æ=ØMvà÷Ÿony¯³¢Œg¯{¦o`Xü~ÆüÇÀºÞ^Ùulß´ýÌå]-hˆoÛ+¾yëg©7[¬Ñ1\Ïô·cÃ̲hXײ¯˜kv·W0æí ë¸f+ø¢õ;ý_=«¹])˜•fÁܨ+ùB£¨ÒF±kVò•|i£°’(ªcvû²¤žå5xAFƒfh»eüã¹Ñëo=¤\Ï4ÜFG
    –,¾=¸‘ƒ°‰_kÃk¸VßßôÌnKÃg§Û½tVsk¹—[ÉÎ5œþkµ;¾l‡JkN×ïu(FW”Ê|LL0Q]+ÌsÛ+_½
    l«kxí«·òæuVä ¬þ]×Ts6<$xÆ^ÿœÉ<«;Í;öÏg˜ë®ãn²¿åøÏÖ3V7Wm×ídä»r¾\*ïâ] „‘i=«{·É|£ãôŒ5ÌÔµé[ ïŸýû™(ØØ$ªXc¼cóÚÂâ2›áwšÈkS ¾rP]ßÉ£"¹LÓl8®A“½IDlº(Íå%v µ€ƒJIßK+ÀvdÞgøÑz†e÷6¯=¥¯ÅR®TÞ¢ž ä¾Qïš–]w\4ƒ*LÉ£ïäsy‘GóAýF“Ú«¶NIñLãEò¥¨&ÙßÅԁ” òù|‘*PßY=tÃãvWùG/ë;mÓï˜n¶av»}«¡µ ÖKÑ¥ÎZ«‘V-õWÃÈ8žÏÛ7¢«…Ja¯H-¡RJerÆãω?–óÏ"úMÑüÅ H@)c4 $ˆè™æõŒn—È™úÉÉÚ³î1œºÞ¿Eïb„~)ýBèrelä7Ê"[>¶ã¢Ø´R ßP*ŸŽ†Á[Ö›ÛX¯Po ±õb©H«UÐlÆwúXߥÒn9ÏÐ=æ9]«¹õ_X©DÓ™®ÙòÓ % †µ'Èf#h'›°…q" 6+k?, %®´M÷õ®Õ0¯éñ?C ´Á7®¾k]¾™LQï©ëY [û'šÝ7štÞÚ̉^ô ·mÙÁ·ÿ׳ÿzbžœ Ù³Lj–‹¨ožý4^ÌEJY}£]ë»N¯ï³m¶òÖ¬›6»°Lñ Ÿ.A]ôqse µ±aÑnìû¦;E&œ¨d֍á˜GHc=TˆºØªÓ‡Æ—T-ρ,5{-½Æ¡ÀdÕ¦kzžÉš¦Ç¨8O6›ç7! ¦—@ýdû™c¼G¼ˆ ¿]ËóktDPjþdx¬õ¿.Tãù&ëýŽy4h¿²hü^è/xgÂÔö ×3]Ët‘‡ç\c/Œ²4ftû£™ßktÌ5æ`Ü6\f[(^©kHÂÎö•Om45>Jh,Ž=¥±Qc¨“¶¨Ëù¨iÚÿkG)‚j XTÝtÿ·q…
     
  9. rellek

    rellek relativ sensationell Mitarbeiter

    das ist keine gültige url, daher kommt der fehler. gz ausstellen im acp und den link reparieren.
     
  10. Magandhi

    Magandhi Neuer Benutzer

    Danke für den Hack! Welche "beiden" meinst du ... ich konnte nur eine finden in der php datei.

    Gruss Magandhi
     
  11. rellek

    rellek relativ sensationell Mitarbeiter

    es müsste eigentlich 2x voekommwn, denn es gibt 2 arten. links zu posten, einmal mit

    text..

    und einmal mit
    ##die url
     
  12. Magandhi

    Magandhi Neuer Benutzer

    In deinem zu ersetzenden Code kommt es aber nur einmal vor:
    Code:
    ...ersetze dies durch:
     function formaturl($url, $title="", $maxwidth=60, $width1=40, $width2=-15) {
      $boardurls = array("www.domain1.de","www.domain2.de"); // Hier alle Domains reinschreiben!
      $host = parse_url($url); 
    	$host = $host['host']; 
      if(!trim($title)) $title=$url;
      if(!preg_match("/[a-z]:\/\//si", $url)) $url = "http://$url";
      if($this->cuturls==1 && strlen($title)>$maxwidth && !strstr(strtolower($title),"[img]") && !strstr(strtolower($title),"<img")) $title = substr($title,0,$width1)."...".substr($title,$width2);
      if(in_array($host, $boardurls)) {
       return "<a href=\"$url\" target=\"_blank\">".str_replace("\\\"", "\"", $title)."</a>";
      } else {
       return "<a href=\"redir.php?url=".urlencode($url)."\" target=\"_blank\">".str_replace("\\\"", "\"", $title)."</a>";
      }
     }
     
  13. rellek

    rellek relativ sensationell Mitarbeiter

    der zu ersetzende code geht noch ein stückel weiter:
    Code:
    	function formaturl($url, $title = '', $maxwidth = 60, $width1 = 40, $width2 = -15) {
    		global $boardurls;
    		$test = str_replace("http://", "", $boardurls);
    		$test = preg_replace('!\/(.*)!', '', $test); 
    		$this->boardurls = explode("\n",$test);
    		if (!wbb_trim($title)) {
    			$title = rehtmlconverter($url);
    			if (!preg_match("/[a-z]:\/\//si", $url)) $url = "http://$url";
    			$host = parse_url($url); 
    			$host = $host['host']; 
    			if ($this->cuturls == 1 && wbb_strlen($title) > $maxwidth) $title = wbb_substr($title, 0, $width1)."...".wbb_substr($title, $width2);
    			if (in_array($host, $this->boardurls)) {
    			return "<a href=\"$url\" target=\"_blank\">".htmlconverter(str_replace("\\\"", "\"", $title))."</a>";
    			} else {
    			return "<a href=\"redir.php?url=".urlencode($url)."\" target=\"_blank\">".htmlconverter(str_replace("\\\"", "\"", $title))."</a>";
    			}
    			
    		}
    		else {
    			if (!preg_match("/[a-z]:\/\//si", $url)) $url = "http://$url";
    			$host = parse_url($url); 
    			$host = $host['host']; 
    			if (in_array($host, $this->boardurls)) {
    			return "<a href=\"$url\" target=\"_blank\">".$title."</a>";
    			} else {
    			return "<a href=\"redir.php?url=".urlencode($url)."\" target=\"_blank\">".$title."</a>";
    			}
    		}
    	}
    
     
  14. Magandhi

    Magandhi Neuer Benutzer

  15. Magandhi

    Magandhi Neuer Benutzer

    hallo ... ich spiele mit dem Gedanken nun auf die 2er Version des wBB umzusteigen. Wenn ich nun wieder nur über anonym.to verlinken möchte, muss ich dann trotzdem den neuen code von dir (rellek) mit redir.php verwenden?

    Gruss Magandhi
     
  16. rellek

    rellek relativ sensationell Mitarbeiter

    Moin,

    du musst bloß den 2.3er Code für die ./acp/lib/class_parse.php eintragen und statt dem redire.php?url= halt wieder den Link zu anonym.to reinsetzen... Wie bei 2.1 auch schon -- die redirex.php brauchst du nicht, wenn du einen externen Redirektor verwenden willst.

    HTH
     
  17. Bertel

    Bertel Neuer Benutzer

    ich finde leider keiner der gesuchten Zeilen
     
  18. rellek

    rellek relativ sensationell Mitarbeiter

    Also die Funktion, die gemäß Readme-Datei zu finden ist, fängt in einem nakten wBB 2.1.6 in Zeile 326 an und geht bis Zeile 337.
     
  19. rellek

    rellek relativ sensationell Mitarbeiter

    AW: RedireX für wBB 2.1

    Es wurde eine XSS-Sicherheitslücke gefunden, die es theoretisch möglich macht, dass Javascript-Code ausgeführt werden kann.

    Bemerkt wurde die Lücke von Kugelfisch, die Huldigungen für den Fix gehen bitte an das Forum von onesworld.

    Ihr müsst die redir.php ersetzen mit folgendem Inhalt:
    PHP:
    <?php
    $filename
    ="redir.php"
    require(
    "./global.php"); 
    $lang->load('GLOBAL'); 
     
    function 
    is_url($url) { 
        if (!
    preg_match('#^http\\:\\/\\/[a-z0-9\-]+\.([a-z0-9\-]+\.)?[a-z]+#i'$url)) { 
            return 
    false;
        } else {
            return 
    true;
        }
    }  
     
    if(isset(
    $_REQUEST['url']) && is_url($_REQUEST['url'])) { 
    redirect($lang->get("LANG_GLOBAL_REDIR_URL"), urldecode($_REQUEST['url']), 1); 
    exit; 
    } else { 
         die(
    "syntax beachten"); 

    ?>

    WICHTIG:
    Wenn ihr anonym.to nutzt (und deshalb die redir.php nicht hochgeladen habt), dann seid ihr nicht betroffen.
    Wenn die redir,php existiert, sollte dies jedoch behoben werden!
     

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deinem Erleben anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden