ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

19.05.2009, 17:15
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме: 2769640
Репутация:
1304
|
|
bxN5 $_GET - суперглобальный массив
Код:
index.php?mod=1&id=11
Это если 1.php инклудится, а не хитро извращается
|
|
|

19.05.2009, 17:33
|
|
Постоянный
Регистрация: 08.01.2006
Сообщений: 865
Провел на форуме: 3279330
Репутация:
343
|
|
не работает в таком виде
обычно инклудится , только перед инклудом проверочка стоит для не хороших людей
if (!isset($mod) || ($mod=="") || (!file_exists ("mods/$mod.php"))
а вот в таком виде index.php?mod=1&id=11 скрипт тупо игнорирует &id=11
Последний раз редактировалось bxN5; 19.05.2009 в 17:50..
|
|
|

19.05.2009, 19:15
|
|
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
Провел на форуме: 2769640
Репутация:
1304
|
|
bxN5 Не используйте register_globals.
Для примера, файл one.php
PHP код:
<?
echo 'Before include: <hr>';
if (isset($_GET['mod'])) include 'two.php';
echo '<hr>After include';
?>
Файл two.php:
PHP код:
<?
echo '<h1>id = '.$_GET['id'].'</h1>';
?>
При обращении к http://localhost/one.php?mod=1&id=1234567 Выводится все правильно
З.Ы, ваш код уязвим к локальному инклуду
|
|
|

21.05.2009, 17:28
|
|
Banned
Регистрация: 19.06.2006
Сообщений: 1,239
Провел на форуме: 1469161
Репутация:
142
|
|
Сообщение от Gifts
З.Ы, ваш код уязвим к локальному инклуду
Его к инклуду,а твой - к XSS    .
|
|
|

19.05.2009, 19:49
|
|
Постоянный
Регистрация: 08.01.2006
Сообщений: 865
Провел на форуме: 3279330
Репутация:
343
|
|
спс
а насчет инклуда в курсе )
|
|
|

19.05.2009, 22:26
|
|
Новичок
Регистрация: 18.05.2009
Сообщений: 6
Провел на форуме: 5871
Репутация:
3
|
|
Снова не могу найти ошибку ^^. Задача перенести переменную в другой сценарий.
вот код первого сценария:
<?php
if (session_start())
{
echo("Session started");
}
$user=$UserName;
session_register("user");
if (isset($_GET["UserName"]))
{
echo "<P> Ваше имя пользователя:";
echo $_GET["UserName"];
}
?>
<html>
<head></head>
<body>
<form action="session.php" method="GET">
Имя пользователя: <input type="text" name="UserName">
<input type="submit" name="sub" value="Go">
</form>
<a href="session1.php">link</a>
</body>
</html>
во втором сценарии
<?php
session_start();
echo $user;
?>
|
|
|

19.05.2009, 22:31
|
|
Флудер
Регистрация: 21.06.2006
Сообщений: 3,193
Провел на форуме: 12702287
Репутация:
4738
|
|
$user - объяви глобальной или в сессию запиши.
|
|
|

19.05.2009, 22:42
|
|
Новичок
Регистрация: 18.05.2009
Сообщений: 6
Провел на форуме: 5871
Репутация:
3
|
|
session_register("user"); - это разве не оно?
|
|
|

19.05.2009, 22:56
|
|
Флудер
Регистрация: 21.06.2006
Сообщений: 3,193
Провел на форуме: 12702287
Репутация:
4738
|
|
Сообщение от Cruo
session_register("user"); - это разве не оно?
session_register - регистрирует одну или более переменных в текущей сессии.
Просто тупо присвой значение массиву и не парься:
$_SESSION['user']=$user и юзай его где тебе нужно.
|
|
|

19.05.2009, 23:07
|
|
Новичок
Регистрация: 18.05.2009
Сообщений: 6
Провел на форуме: 5871
Репутация:
3
|
|
ок, спасибо.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|