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

  #11  
Старый 29.12.2007, 21:14
Аватар для _Great_
_Great_
Флудер
Регистрация: 27.12.2005
Сообщений: 2,372
Провел на форуме:
5339610

Репутация: 4360


Отправить сообщение для _Great_ с помощью ICQ
По умолчанию

Цитата:
Сообщение от ShAnKaR  
про HEADER имеется ввиду- такой к примеру скрипт edit.php в админке, в начале проверяется залогинился ли ты под админом , если нет идет редирект, но после функции header не стоит exit, поэтому можно использовать этот скрипт дальше невзираю на права.
А ну дык ) Это неинтересно
 
Ответить с цитированием

  #12  
Старый 18.02.2008, 06:25
Аватар для c411k
c411k
Reservists Of Antichat - Level 6
Регистрация: 16.07.2005
Сообщений: 653
Провел на форуме:
8854279

Репутация: 2727


По умолчанию

Цитата:
Сообщение от Tem  
Вообшем прочитал всё 3 раза, был в шоке, после пива очнулся. Но малекий шок остался, после того как прочитал про inval() я думал что кроме числовых значей он больше нечего не берёт , но окозалось не так жаль. Вот иди после всего этого и пиши скрипт.
она и не берет, просто надо ее правильно юзать.
PHP код:
$id intval($_REQUEST['id']);
 
sql_query("select $id from table_name"); 
Elekt, спасибо! статья ммм супер )

зы. фишку с header понял.
__________________
ПИУ-ПИУ...
 
Ответить с цитированием

  #13  
Старый 22.02.2008, 23:12
Аватар для +toxa+
+toxa+
[Лишённый самовыражени
Регистрация: 16.01.2005
Сообщений: 1,787
Провел на форуме:
9751379

Репутация: 3812


Отправить сообщение для +toxa+ с помощью ICQ Отправить сообщение для +toxa+ с помощью AIM
По умолчанию

Есть ещё несколько забавных вещичек связанных с переменной $_SERVER['PHP_SELF']

например кодес
PHP код:
echo "<form action='".$_SERVER['PHP_SELF']."'>"
при обращении к скрипту как
Код:
http://localhost/script.php/">lalala
вы увидем выход за пределы тега etc, т.е. потенциальная xss)
При этом возможно передавать переменные через GET, например
PHP код:
echo "<a href='".$_SERVER['PHP_SELF']."?lalala'>link</a>";
if(
$_GET['hek']=='4') echo 'тынц-тынц'
Код:
http://localhost/script.php/"><script>alert(/XSS/)</script>?hek=4
на выходе мы получим наш алерт и надпись "тынц-тынц" =)

Далее если $_SERVER['PHP_SELF'] используется при перенаправлении путём посылки хэдера, то можно вызвать раскрытие пути
PHP код:
    header("Location: {$_SERVER['PHP_SELF']}"); 
Код:
http://localhost/script.php/%0ALocation:%20http://www.google.com
Цитата:
Warning: Header may not contain more than a single header, new line detected. in X:\home\localhost\www\script.php on line 4
Так же можно обойти некоторые ограничение безопасности, например в wp-ids

файл wpids-css.php
PHP код:
<?php
if(eregi("^wpids\-css\.php"basename($_SERVER['PHP_SELF']))) {
    die(
'You cannot call this file directly.');
}
?>
        <style type="text/css">
         #wpids_wrapper {
            padding:20px;
            background-color:#fbfbfb;
         }
...
обходится элементарно
Код:
http://localhost/wp-ids/wpids-css.php/lalala
PHP код:
basename($_SERVER['PHP_SELF'])='lalala' 
PS ничё особенного в файле нет, но всё-таки) но если брать конкретно wp-ids, то главным образом обламывает .htaccess +)

линк
__________________

Последний раз редактировалось +toxa+; 06.04.2009 в 16:15..
 
Ответить с цитированием

  #14  
Старый 22.03.2008, 19:21
Аватар для Elekt
Elekt
Banned
Регистрация: 05.12.2005
Сообщений: 982
Провел на форуме:
4839935

Репутация: 1202


Отправить сообщение для Elekt с помощью ICQ
По умолчанию


To nerezus, [ cash ]
совершенно верно, не претендую на первоткрывателя.
Это обзор того что известно, только все вместе с моими коментариями и некоторыми доработками.


[ _REQUEST {variables_order} OVERWRITE ]

Глобальный массив реквеста формируется по принципу последней перезаписи переменных из других глобальных массивов в порядке, заданном директивой php.ini :

variables_order = EGPCS (по дефолту)

где
E - $_ENV[]
G - $_GET[]
P - $_POST[]
C - $_COOKIE[]
S - $_SERVER[]


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

Тоесть в данном порядке конечные значения $_REQUEST будут переписаны содержимым куков в последнюю очередь.

Это можно использовать при криво поставленных фильтрах безопасности со всеми вытекающими.
Примерно как и импортреквест для инклуда в слаеде.
Кстати дайте мне в ПМ последнюю его версию, потестим.


Пример, есть код:

PHP код:
<?php

print "variables_order : ".ini_get('variables_order')."<br>";

print 
"<br>GET   : ";print_r($_GET);
print 
"<br>POST  : ";print_r($_POST);
print 
"<br>COOKIE: ";print_r($_COOKIE);

print 
"<br><br>REQUEST: ";print_r($_REQUEST);

?>
Шлем пакет на скрипт:

Код:
POST /1.php?a=1 HTTP/1.0
Host: localhost
Cookie: a=3;
Content-Length: 3
Content-Type: application/x-www-form-urlencoded

a=2
Наблюдаем:

Код:
variables_order : EGPCS

GET : Array ( [a] => 1 ) 
POST : Array ( [a] => 2 ) 
COOKIE: Array ( [a] => 3 ) 

REQUEST: Array ( [a] => 3 )


Последний раз редактировалось Elekt; 01.04.2008 в 14:48..
 
Ответить с цитированием

  #15  
Старый 06.04.2008, 19:27
Аватар для truelamer
truelamer
Участник форума
Регистрация: 06.11.2007
Сообщений: 143
Провел на форуме:
350782

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

Я в шоке как так всегда использовал ereg и ereg_replace!!
только что дома на 2008 denver попробовал все ок уязвимости с %00 нет. У меня php версии 5.2.4. Скажите в каких версиях ereg уязвима?????
 
Ответить с цитированием

  #16  
Старый 06.04.2008, 19:55
Аватар для nerezus
nerezus
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме:
6490435

Репутация: 2290


Отправить сообщение для nerezus с помощью ICQ
По умолчанию

жесть... на самом деле тут нет ничего страшного, ну кроме ereg, просто ошибки вызваны нереальной кривостью рук программиста или админа, а более-менее знающий пхп(больше 2-3 дней) так уже не напишет.
 
Ответить с цитированием

  #17  
Старый 22.04.2008, 04:56
Аватар для zerling
zerling
Новичок
Регистрация: 04.01.2008
Сообщений: 21
Провел на форуме:
22522

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

Цитата:
Сообщение от nerezus  
многие пункты типа "intval" и "urldecode после addslashes" ,addslashes_deep - вообще бред. В документации ясно все про это написано. А последняя функция - вообще непонятно что.
"urldecode после addslashes" - на этой ошибке построена blind SQL injection в wordpress2.1
intval - вполне возможно такое встретить
addslashes_deep - не понял что тебе тут не понятно
header() - не знаешь что за ф-ция или не знаешь к чему может привести ее использование без die(); ?
Думай в следующий раз прежде чем что то пукнуть.
Цитата:
Сообщение от madnet  
Хорошая статья, Элек на высоте, но вот только мое ИМХО, журнал Х не стоит таких мыслей и такой Pr ачату не нужен, все разработки, подобные этой, должны оставаться внутри закрытых комунити.
Все это уже старо и всем давно известно. В анонсе написано "Поиск уязвимостей медленно но верно переходит на новую качественную ступень - исследование платформы/интерпретатора, изучение особеностей работы критичных для безопасности функций, пограничные состояния, переполнения буфера." Вот бага с оператором unset() из первой части это что то качественно новое, а фичи из 2 части никак не тянут на новую ступень...
 
Ответить с цитированием

  #18  
Старый 22.04.2008, 08:42
Аватар для nerezus
nerezus
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме:
6490435

Репутация: 2290


Отправить сообщение для nerezus с помощью ICQ
По умолчанию

Цитата:
intval - вполне возможно такое встретить
Понимаешь, если человек забивает гвозди латексовым членом говорит, что член от этого портится - то это не член хреновый, а человек хреновый.
Так что пукаешь тут ты, покрывая такого человека )
Посмотри на форумы по пхп. Ну нету там таких тем. А вот в мануал посылают

Цитата:
не знаешь что за ф-ция или не знаешь к чему может привести ее использование без die();
с чего ты взял?

Дело в том, что я ориентировался на первую тему(роковые ошибки), где были показаны ошибки пхп. А в этой теме именно ошибки админов и программистов, но чтобы не допускать их достаточно лишь немного думать и знать предметную область.
В то время как ошибки самого пхп - это реально ошибки.
 
Ответить с цитированием

  #19  
Старый 22.04.2008, 09:44
Аватар для zerling
zerling
Новичок
Регистрация: 04.01.2008
Сообщений: 21
Провел на форуме:
22522

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

ну если называшь бредом именно несоответсвие анонсу, то это так, автор проперся, т.к. все это документированные возможности. Надеялся узнать что то новое об ошибках уровня платформы, а все что в статье уже практически в двигах не встречается (
 
Ответить с цитированием

  #20  
Старый 06.06.2008, 18:41
Аватар для Buffalon
Buffalon
Постоянный
Регистрация: 22.03.2008
Сообщений: 325
Провел на форуме:
1208132

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

О половине `фичах ` написанно напрямую в книгах о ПХП
допустим что переписывается сначало Get=>post=>cookie,
а 2 половина была оч.полезной... .Автору +
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Books PHP FRAGNATIC PHP, PERL, MySQL, JavaScript 186 21.02.2010 02:41
Безопасность в Php, Часть Iii k00p3r Чужие Статьи 0 11.07.2005 19:02
Пишем Php код, устойчивый к ошибкам k00p3r Чужие Статьи 0 10.07.2005 22:34
Защищаем Php. Шаг за шагом. k00p3r Чужие Статьи 0 13.06.2005 11:31
Аудит аутентификации на Web-сайтах. Часть вторая k00p3r Чужие Статьи 0 13.06.2005 11:20



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


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




ANTICHAT.XYZ