Как уберечься от подлога в <img src="...">

  • Автор темы Автор темы alpha
  • Дата начала Дата начала

alpha

Новичок
Как уберечься от подлога в <img src="...">

Вобщем есть поле, куда юзер может заносить свои комментарии. Там все на bb кодах.
Но вот с картинками вопрос.
Так вот, ведь можно сделать так что после всех обработок будет
<img src="http://www.xxx.com/1.jpg">
а на самом xxx.com будет стоять в настройках
application/x-httpd-php phtml php jpeg jpg jpe
а вот и сам текст 1.jpg
PHP:
<?
	include("inc/sql.php");
	$ses = 0;
	if(!isset($_SESSION))
	{
		session_start();
		$ses = serialize($_SESSION);
	}
	$db->query("INSERT INTO .... $ses");
	Header("Location: /3.php");
?>
текст 3.php
PHP:
<?
	Header("Content-Type: image/gif");
	$src = imagecreatefromgif($_SERVER['DOCUMENT_ROOT']."/i/bg-blogs.gif");		
	imagegif($src);
?>
[.PHP]

Вот таким вот блин способом я сам у себя украл сессию. Как с этим бороться?
Это комментарии, ведь не буду же я при при выборке 20 комментариев искать у каждого [IMG] и проверять, является ли это картинкой. :( 
Помогите пожалуйста.
 
Ржу шопесдец) В юмор!

Альфа, понимаешь, тебе не должно быть никакого дела до процессов xxx.com там может быть что угодно, кстати выполнение сценария вовсе не мешает показу вполне миловидного изображения. Ты не украл у себя сессию, ты запустил какую-то приблуду на другом конце света.

-~{}~ 06.10.06 00:45:

З.Ы. особенно порадовал Location и наитупейший скрипт 3.php :D
 
Блин, но юзер, который залил картинку, получит сессию того кто зашел на сайт!
Уже попробовал не родном форуме!
Я написал что украл у себя сессию потому что стали бы орать что взлом и т.д. сдесь запрещен.
А мне нужна защита от этого взлома.
 
> получит сессию того кто зашел на сайт!
После дождичка в четверг? Он получит сессию на xxx.com - новую и никак не связанную с форумной.
 
Мдя, это очень хорошо.
Тоесть так ниче не украдут. Или возможно с помощью картинки каким либо образом украсть сессию? Ведь как-то же крадут.
Только не говорить опять что это тут не обсуждается, оч стремно выкладывать незная могут ли через это поломать.
Просто до этого все проекты были исключительо информационные, т.е. админ заходил под одними правами, а юзер имел только селект, а тут надо все давать.
 
Не будь параноиком, тут модеры не звери. Можно украсть id сессии из Referer'а. Но обычно делается проверка по IP. А cookie с сохраненным паролем украсть можно через XSS. Картинка на другом хосте ничего не даст.
 
храню md5 логина , md5( пароля + ччч) c переставленными буквами , mp5 ip.
Если сопрут админский доступ будет плохо, т.к. админу разрешен upload любых файлов, т.е. снесут и сопрут все. И рядом лежачее тоже наверное.
 
Во-первых если нет XSS, то не сопрут. Во-вторых достаточно сделать проверку IP, чтоб если IP текущего запроса отличается от IP первого запроса сессии - нах.
 
вот теперь более внииательно переписываю свои реги для "просеивания" bb кодов :)
 
я б разделил вобще админскую и юзерскую части, чтоб не только к сессии, но и к таблицам авторизации с юзерским коннектом доступа небыло. да и вобще, к таблицам авторизации, пхп доступ не нужен :). требования к поролю конечно другие тоже. ну и, чтоб не параноило, в сессии достаточно хранить UID, hash(UID + password_hash_from_db). тоже самое можно вешать в куки, только не админу конечно :)
 
Жуть какая. В сессии - md5 логина, md5 ip, хеш от хеша от пароля...
Вот что бывает, когда статьи по безопасности на ночь читаешь.

Если вы будете защищаться от взломов там, где они в принципе невозможны, тем больше вероятность не заметить действительно существенное: просто психика не выдержит и даст сбой.
 
dr-sm
За увод тему в сторону буду бить по рукам.
По вопросу, КОТОРЫЙ БЫЛ ЗАДАН, нечего сказать? Помолчи в сторонке. Язык чешется? пойди, почеши в другом месте.

alpha
Ещё вопросы остались?
 
Да, но все они уже по взлому и к данной теме не относятся, про инх я почитаю еще где - нибудь. Спасибо большле всем.
 
читай-читай, болезный.
правда, о том, что при чтении надо ещё и думать, тебя, судя по всему, не предупредили.
 
Сверху