[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Прошу потестить на прочность.
Vorchun
Доброго всем времени суток.

Прошу по пинать мою первую работу. На диз не смотрите, скачал бесплатный шаблон, в общем-то он мне самому не очень нравится. Основной вопрос по защищенности скрипта. Поскольку я не то что защищать, я и программировать толком пока не научился.
Прошу, кому не в лом, указать на дыры в скрипте, и направление в котором искать способы/методы их латания.
Не надо брутить логин/пароль (в том смысле что сейчас я на это не смотрю). В тестовом режиме они очень простые. И в оригинале будут намного сложнее (если кому-то понадобится, я их и сам дам). Меня интересуют именно РНР-уязвимости.

Теперь немного вводных данных:
простая CMS
только РНР, БД не используются
основная задача: создание сателита с возможностью затачивания каждой отдельной страницы под определенный keyword.
управление каждой страницей (<title>, meta "description" "keywords") осуществляется через админку сайта.
Если нужны дополнительные "развед-данные" - задавайте вопросы, я по мере своих знаний, отвечу.

Если кто-то решит что я прошу взломать не мой сайт, то там в футере специально поставлен мой местный ник. Если этого мало, готов по требованию предъявить любое доказательство владения этим сайтом и скриптом.

Ps: Поскольку до окончания тестов и в целях общей будущей безопасности скрипт висит на моем старом сателите, огромная просьба не ломать основной домен, т.к. сателит висящий там написан давно и абсолютно точно уязвим. Больших потерь я не понесу, но буду несколько расстроен. Спасибо за понимание.

ну и теперь сам сайт http://dviglo.myqwe.com/

Буду благодарен за любой совет...



Спустя 19 минут, 45 секунд (4.12.2008 - 10:28) kirik написал(а):
Как говорится "Нет человека - нет проблем". И к твоему сайту это относится..=)
Нет БД - нет SQL инъекций, нет загрузки файлов - нет загрузки исполняемых файлов, нет добавления инфы (от юзера) - нет юзерсайд эксплоитов. Тоесть главное проверь чтобы файлы инклюдились ровно, и прежде чем инклюдить какую-нибудь страницу проверяй ее наличие через file_exists();
А по сайту - при отправке емэйла, сам емэил не проверяется на валидность.. и еще былоб неплохо, еслиб ошибка выводилась вверху формы, а не на другой странице

Спустя 16 минут, 22 секунды (4.12.2008 - 10:44) Vorchun написал(а):
Цитата (kirik @ 4.12.2008 - 10:28)
Тоесть главное проверь чтобы файлы инклюдились ровно, и прежде чем инклюдить какую-нибудь страницу проверяй ее наличие через file_exists();

Понял, спасибо. smile.gif
Цитата (kirik @ 4.12.2008 - 10:28)
А по сайту - при отправке емэйла, сам емэил не проверяется на валидность.. и еще былоб неплохо, еслиб ошибка выводилась вверху формы, а не на другой странице

Данные из формы обратной связи я вообще никак не проверяю (что-то я даже не подумал об этом). На счет емэйла спс, где-то недавно как раз видел статью как проверять емэил на валидность.
И совсем не понял про ошибку. huh.gif сорри если туплю...

Спустя 1 час, 23 секунды (4.12.2008 - 11:45) Vorchun написал(а):
Цитата (Vorchun @ 4.12.2008 - 10:44)
И совсем не понял про ошибку. huh.gif сорри если туплю...

а-а-а... кажись догнал.
В смысле проверяю мыло на валидность, и если мыло фуфел, то даже не передаю данные в mail.php а прямо в contacts.php выдаю ошибку.
Верно?

Спустя 1 час, 31 минута, 52 секунды (4.12.2008 - 13:17) kirik написал(а):
Цитата
В смысле проверяю мыло на валидность, и если мыло фуфел, то даже не передаю данные в mail.php а прямо в contacts.php выдаю ошибку.
Верно?

Ага..тоесть чтоб у тебя принятием/проверкой/отсылкой емэйла занимался один скрипт.. И если данные не верны, то выводится ошибка, и ниже форма уже с введенными пользователем данными. А то бывает, что нажимаешь "Назад" в браузере, а данные в форме пропадают =)

Спустя 1 минута, 54 секунды (4.12.2008 - 13:19) kirik написал(а):
По поводу проверки адреса эл. почты погляди в примерах тут или тут

Спустя 1 час, 1 минута, 33 секунды (4.12.2008 - 14:20) Vorchun написал(а):
Ага. большое спасибо. Воспользовался ereg(). Правда пока оставил проверку и отправку все же в mail.php Но в будущем, постараюсь перетащить всё в один файл.

Сейчас возник еще вопрос: поскольку я никак не проверяю данные полученные из формы обратной связи (кроме мыла и то только на валидность), и передаю их из contacts.php в mail.php методом post, может ли это каким-то образом способствовать взломщику? или можно не париться?... Просто я как-то не догоняю как это можно использовать для взлома... Видимо потому и оставил без проверки.

Спустя 7 часов, 10 минут, 37 секунд (4.12.2008 - 21:31) Vorchun написал(а):
Ага... от вас прилетели пара писем через форму обр. связи с html тегами. в одном был даже ява-скрипт:
Цитата
<script>alert("ЕБАНУЦЦА!");</script>

Спасибо, по крайней мере, как я понял этот намек, надо обрабатывать данные хотя бы:
htmlspecialchars()

Спустя 1 час, 37 минут, 32 секунды (4.12.2008 - 23:08) kirik написал(а):
Цитата
передаю их из contacts.php в mail.php методом post, может ли это каким-то образом способствовать взломщику? или можно не париться?

Не думаю что это будет уязвимость..)

Цитата
Спасибо, по крайней мере, как я понял этот намек, надо обрабатывать данные хотя бы:
htmlspecialchars()

Если вам уходят письма в обычном текстовом формате, а не в ХТМЛе, то можно и не фильтровать=)

Спустя 10 часов, 21 минута, 48 секунд (5.12.2008 - 09:30) Vorchun написал(а):
Цитата (kirik @ 4.12.2008 - 23:08)
Если письма уходят в обычном текстовом формате, а не в ХТМЛе, то можно и не фильтровать=)
Понял. Большое спасибо за помощь и советы. wink.gif


_____________
<?
If (you wanna shoot) {shoot "don't talk";}
?>
© The Good, The Bad & The Ugly
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.