| imho.ws |
![]() |
|
|
|
# 1 |
|
Guest
Сообщения: n/a
|
Я тут что то много наслышан о такой вот проблемме(хакерства), то что сайт написанный с использованием РНР технологии, легко ломается данной прослойкой населения нашей планеты Вот и решил написать этой пост, который бы был целиком и полностью был бы посвящен этой теме.
ЗЫ Очень бы хотелось услышать, как усложнить работу хакерам, что надо использовать, что не надо и т.д. Кстате, на сколько лучше выносить РНР файл(чисто РНР), и интегрировать его в индех.РНР, т.е. что бы было 2 разных файла??? С уважением, не сочтите за оффтоп. |
|
|
# 4 |
|
::VIP::
Регистрация: 05.05.2003
Адрес: Hell
Сообщения: 1 377
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Лазейку всегда можно найти... Если защитить грамотно (почитать литературу по этому вопросу), то малолетки, начитавшиеся Баг-Траков, тебе будут не страшны. А серьезный хакер едва ли возьмется за дефейс первого встречного сайта, если ему не сделают заказ. Для этого нужно кому-то сильно насолить.
__________________
Доказать - значит громко повторить сказанное... |
|
|
|
|
# 7 | |
|
NetMOD
Регистрация: 19.05.2003
Адрес: МосПодЛод - НачВод-АккОт
Сообщения: 2 376
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
Написано не занудно и очень понятно.
__________________
Красная точка лазерного прицела на вашем лбу это тоже чья-то точка зрения... --------- Репутация – это то, без чего могут жить люди с характером
|
|
|
|
|
|
# 8 |
|
::VIP::
Регистрация: 15.12.2002
Адрес: Spain
Сообщения: 500
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
dlya nachala chitaem vot eto: http://www.php.net/manual/en/security.index.php
__________________
hm. I've lost a machine.. literally _lost_. it responds to ping, it works completely, I just can't figure out where in my apartment it is. |
|
|
|
|
# 10 |
|
NetMOD
Регистрация: 19.05.2003
Адрес: МосПодЛод - НачВод-АккОт
Сообщения: 2 376
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Рад стараться
Вот держи еще один http://www.infosec.ru/press/pub_main.html Этот чуть понуднее, но тоже ничего
__________________
Красная точка лазерного прицела на вашем лбу это тоже чья-то точка зрения... --------- Репутация – это то, без чего могут жить люди с характером
|
|
|
|
|
# 11 |
|
::VIP::
IMHO Молодожен-2006 Регистрация: 14.06.2002
Адрес: Moscow
Сообщения: 2 921
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
что-то я немного не догоняю.. точнее совсем не догоняю:
зачем делать проверку переменных $_POST['act'] ... она не работает... if ($_POST['act']=="delete") unlink("file.txt"); по идее должно работать только если переменная послана методом post из формы. Но набирая в адресной строке index.php?act=delete удаляет файл начисто... просветите пожалуйста. меня это очень волнует.! Спасибо. |
|
|
|
|
# 12 |
|
Full Member
Регистрация: 29.05.2002
Сообщения: 544
![]() ![]() ![]() ![]() ![]() |
а вот я бы посоветовал взять что-нибудь от wrox серии professional(там даже примеры кода написаны весьма проффесионально). ну а самые распрастраненные ошибки вы можете найти в многочисленных статьях, на соответствующих сайтах.
2hempsmoke а register_globals=0ff ? и какая версия php. если в php.ini register_globals=off Код:
if (isset($HTTP_POST_VARS['act']) && $HTTP_POST_VARS['act']) == "delete") |
|
|
|
|
# 14 |
|
::VIP::
IMHO Молодожен-2006 Регистрация: 14.06.2002
Адрес: Moscow
Сообщения: 2 921
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Sheryld
rgister_globals = off но причем здесь это? эта директива не объявляет переменные как глобальные, их к ним надо обращаться через массивы _POST _GET _SerVER и т.д. важна суть. Т.е. я так понимаю, что если нет аутентификации, то пользователь, знающий, что по такому -то адресу произойдет удаление, но доступа к форме с кнопкой delete у него нет, он легко может снесьти все к черту через адресную строку... VIRT Одно и тоже. $HTTP_POST_VARS['act'] - более древний подход. |
|
|
|
|
# 15 |
|
Full Member
Регистрация: 29.05.2002
Сообщения: 544
![]() ![]() ![]() ![]() ![]() |
это смотря в какой версии(я про длинные и короткие имена массивов).
register-globals=off нельзя обращаться к переменным как к глобальным. пример: myindex.php?param=1 Код:
echo $param1 //ничего Код:
echo $param1 //1 про get если знать имена переменных которые идут через get(а это раз плюнуть) и скрипт написан так, что никто не проверяет пользователя, а просто делает свое дело, то естественно любой может через адресную строку сделать все-что угодно. про post метод можно проверять так: $HTTP_SERVER_VARS['REQUEST_METHOD'] == 'POST' - но это при условии, что у вас apache, хотя все нормальные серверы по идее должны поддерживать эту переменную. если все удаляется через POST метод, то GET здесь не прокатит в любом случае. если только у вас где-то ошибка. но аутентификацию нужно сделать обязательно. больше того, обязательно нужно проверять ещё и откуда к вам пришли, т.е. IP и REFERRER. но и этому не стоит доверять(хотя ипользовать нужно). лучше сделать классический mixed mode или аутентификацию на базе средств ОС. mixed mode заключается в том, что после успешной проверки логина и пароля(например через базу), вам выдается и записывается(в базу) уникальный ID. а когда вы "ходите" по страницам, он каждый раз проверяется(например как скрытое поле в форме). т.е. значения и на странице и в базе должны совпадать. а когда вы делаете "выход" значение в базе аннулируется. Последний раз редактировалось Sheryld; 31.05.2004 в 15:25. |
|
|
|
|
# 16 | ||
|
::VIP::
IMHO Молодожен-2006 Регистрация: 14.06.2002
Адрес: Moscow
Сообщения: 2 921
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Цитата:
Цитата:
аутентификация есть. |
||
|
|
|
|
# 17 |
|
Junior Member
Регистрация: 22.05.2004
Сообщения: 112
![]() |
анонимные прокси тоже имеют ip, и вот с них то запускать когото оч даже нежелательно ....
а еще есть такая штука как бан, где тоже адрес роль играет ... и кстати реферер не обязательно будет показан. как гласит дока к пхп, ета штука сильно зависит от браузера ... |
|
|