Недавно залился на один ресурс и получил интересную ситуацию. Допустим в каталоге /var/www/user1/ существует папка tmp, на нее полные права (0777). Но как только пытаюсь достучаться с к этой папке с user2 получаю permission denied. Причем если выполнить file /var/www/user1/ выведет -- directory, но если file /var/www/user1/tmp -- permission denied. Даже на те файлы которых не существует получаю отказ. Как такое возможно? И есть ли способы с этим бороться?
интересует такой вопрос: на сайте есть функция восстановления пароля, после запроса на новый пароль на почту приходит письмо с ссылкой вида site.com/resetpass/key/ZOmj13vAouddy97p%2B2evcLnE7B1S7g1ACezVUhYUt4h%2BHiiL5hbkcS64EBswt2nmQKzES8Z5RvYF0GASmAOR5CdGwV%2FMO4Y0WrbP8%2F5Oqv8yVwcB3VyQWuvcsiNlWyaqKRkT5zIVOQHQyc6aHGTbyDWmpS84ylEZQlc6i7ib8Io%3D исходников к сожалению нет. подскажите плс какова вероятность того что значение параметра key хранится в бд? на основании чего формируется ключ тоже не понятно.
ключ всегда разный? это base64, посмотрите, разной ли он длинны, если сменить почту. вероятность есть, но самая простая реализация возможна и без этого
Ключ разный если ввести другую почту и отличается при повторном запросе даже если почта та же самая (включая ip, браузер). тоже думал что base64 но ничего раскодировать так и не вышло. три ключа (два - одно мыло, еще 1 - тестовый с другого): wvB5ZVWZXhDGoI1XkcJBfHlAlMNg66awBEA0kNasXtyVW7LmvtV8AawkESYDXivXomhAW9%2Fob4gL0JJkFF88DdFXISPFZP0nXVTIV2fJ0CNSy6K3PDiyoXie0hg5zmh1gmGwBPsZtUJLFym0gFzyYOQMIgeKIYqd517dapbJdko%3D ZOmj13vAouddy97p%2B2evcLnE7B1S7g1ACezVUhYUt4h%2BHiiL5hbkcS64EBswt2nmQKzES8Z5RvYF0GASmAOR5CdGwV%2FMO4Y0WrbP8%2F5Oqv8yVwcB3VyQWuvcsiNlWyaqKRkT5zIVOQHQyc6aHGTbyDWmpS84ylEZQlc6i7ib8Io%3D e89PzSq50NLMJm8w6tY9X5BjPY5hlg%2BwuYw0y8GghI3ynHtkbsUzwkSvmHZyyTgrdmtSk1shFTw2%2BgmPwHCcTBAnDyvC65ydZyUvHcXM6R0YBnJ1ij2P07tvvpr%2BHLbDEDiKa3Gd1aySwyV4Z2LPB1IPouKF56c53R75hDzXvNc%3D
Всем привет, пару вопросов. почему такое происходит, заливаю через sql null,<?phpinfo();?> В файл записывается <?phpinfo();?><?phpinfo();?> Два раза записывается. Залил шел не выполняется cat /etc/passd а так load_file('/etc/passwd') читается. можно что-то сделать такое, что бы команда cd / выполнилась от мускуля ))) ssi шел 403 (( курул ману, всё в УДФ пост эксплуатации сводится, есть другие варианты?
ну да, тут опечатка, но в шеле не выполняется не одна команда , ls . cd. cat обычно ssi шел помогал. чтение через уязвимость есть, а на шеле нету, у меня только одна мысль и она такая. Мускул на общем хостинге имеет выше права чем шел работающий от юзера которому выделили место на сервере. Если такое может быть )) копирование Хм.. как вариант. но не выполнится
непонятно: у вас проблема в том, что не выполняется PHP, или выполняется, но не работают системные команды?
Посмотри disable_functions, safe_mode, open_basedir, если вариантов нет, попробуй выполнить через баги в самом PHP: rdot.org/forum/showthread.php?t=3309 или https://www.google.com/search?q=disable_functions+bypass Так же если стоит Apache можно попробовать через mod_include, mod_perl, mod_cgi
Спасибо, про апачь я забыл, курим в сторону УДФ safe_mode= офф open_basedir=выключена disable_functions exe system shell итд выключены. за апачь спасибо
Все привет. Нашел ошибку mysql. Вызывается вот так: http://site.com/main/id[]/1/page/'1 Сама ошибка: Code: Invalid SQL: SELECT * FROM site_main WHERE main_active='Y' ORDER BY main_date DESC, main_id DESC LIMIT -18,18 1064: (You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-18,18' at line 1) Если убрать массив - то ошибка пропадает и все нормально работает. Пробовал вместо кавычки пихать все, что знаю - ошибка не меняется. Вместо кавычки можно поставить все, кроме цифр - тогда ошибка сохраняется. Куда копать?
PHP: '-18,18' at line 1) Судя по этому нету инъекции. Ну как ты и сказал, нашёл ошибку, будь внимателен к словам, они материализуются