Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   переход по заданному адресу [PHP] (https://forum.antichat.xyz/showthread.php?t=132209)

Lionis 31.07.2009 01:38

переход по заданному адресу [PHP]
 
http://dl1.filehoster.ru/files/f4fd3...fa316da/go.png

Здравствуйте !
Помогите решить проблему .
Есть поле ввода , и кнопка ok .
хочу сделать так чтобы при вводе определенного текста в поле переходило по заданному адресу .
например :
под словом - test - у нас переход по ссылке - http://www.google.com , а под словом test2 - www.yandex.ru , т.е. - после ввода test и нажатие ok мы переходим на http://www.google.com , ну естественно test2 - на Яндекс . А если такого не существует - переход на страницицу ... допустим - http://www.google.ru/error,
помогите правильно запрограмить . спасибо ! + всем кто ответит

rushter 31.07.2009 01:54

PHP код:

<form>
<input type="text" name="url">
</form>
<?php
if(isset($_GET['url']))
 {
 switch(
$_GET['url'])
  {
    case 
"test":
    
header("location:http://google.ru");
    break;
    case 
"test2":
    
header("location:http://yandex.ru");
            break;
    default:
    
header("location:http://google.ru?error");
    break;
}
}
?>


Pashkela 31.07.2009 01:58

сразу 4 дыры - тему в болталку :D

Lionis 31.07.2009 02:01

Вы бы не могли дописать до конца ... т.к. сам додумать не смогу ...
спасибо .

rushter 31.07.2009 02:02

Цитата:

Сообщение от Pashkela
сразу 4 дыры - тему в болталку :D

Правда ? Научишь юзать ?

Pashkela 31.07.2009 02:04

2 rushter:

Кривда. Только школьники уже не знают, что после

header("location:http://google.ru?error");

надо писать

or die('Ошибон');

дальше сам додумкаешь

br3k 31.07.2009 02:06

CRLF Injection

Lionis 31.07.2009 02:07

чет страница пустая ; (
PHP код:

<?php 
switch($_GET['url'])
{
    case 
"test":
    
header("location:http://google.ru");
    break;
    case 
"test2":
    
header("location:http://yandex.ru");
    default:
    
header("location:http://google.ru?error");
    or die(
'Ошибон');
    break;
}
?>
<form name="form1" method="post" action="">
  <label>
  <input type="text" name="url" id="url">
  </label>
  <label>
  <input type="submit" name="button" id="button" value="Submit">
  </label>
</form>


Pashkela 31.07.2009 02:08

<form name="form1" method="post" action="">
switch($_GET['url'])

ыыыы

немножко не так

GET на POST замени + если reg glob = off, то сначала присвой переменной значение:

$a = $_POST['url']

плюс почитай про isset:

http://ru2.php.net/isset

rushter 31.07.2009 02:09

Цитата:

Сообщение от Pashkela
2 rushter:

Кривда. Только школьники уже не знают, что после

header("location:http://google.ru?error");

надо писать

or die('Ошибон');

дальше сам додумкаешь

Ты же сказал что это дыра,научи юзать!Зачем die юзать ,если есть default и в header ничего не передаётся ?

Spyder 31.07.2009 02:12

я конечно извиняюсь за оффтоп
НО ЭТО ПИЗДЕЦ

пашкела, я твой фанат

delete from posts where username='Pashkela'

Pashkela 31.07.2009 02:14

2 rushter:

Да не вопрос, первый пост темы:

http://forum.antichat.ru/thread56756-header(%22location.html

CTRL+F 'header("location' - два ENTER:))))

2 Spyder:

А тож:)

Lionis 31.07.2009 02:15

ребят , ну help пж , выложить готовый кусок ... т.к. - не могу собрать все до кучи ... пустая страница .
спасибо .

rushter 31.07.2009 02:16

Цитата:

Сообщение от Lionis
ребят , ну help пж , выложить готовый кусок ... т.к. - не могу собрать все до кучи ... пустая страница .
спасибо .

Я поправил свой пост...
Цитата:

Сообщение от Pashkela
2 rushter:

Да не вопрос, первый пост темы:

http://forum.antichat.ru/thread56756-header(%22location.html

CTRL+F 'header("location' - два ENTER:))))

2 Spyder:

А тож:)

Продемострируй на данном коде эту язвимость.

Spyder 31.07.2009 02:19

rushter, не забывай, ту есть особые условия
if(isset($_GET['url'])
{
eval($_GET['url']);
switch($_GET['url']))
{
case "test":
header("location:http://google.ru");
break;
case "test2":
header("location:http://yandex.ru");
default:
header("location:http://google.ru?error");
break;
}

Lionis 31.07.2009 02:22

rushter но страница все еще пуста ... =(

Pashkela 31.07.2009 02:25

Спроси у Спайдера, он точно знает :D :D :D

Lionis 31.07.2009 02:27

Spyder , хел ситуэйшн =) плз , с меня + ; )
дай код

n0ne 31.07.2009 02:28

Он просто пропустил скобочку одну, а одну лишнюю написал. Юзай error_reporting(E_ALL)

Цитата:

<form>
<input type="text" name="url">
</form>
<?php
if(isset($_GET['url']))
{
switch($_GET['url'])//)
{
case "test":
header("location:http://google.ru");
break;
case "test2":
header("location:http://yandex.ru");
default:
header("location:http://google.ru?error");
break;
}
}
?>

m0Hze 31.07.2009 02:28

Цитата:

Сообщение от Spyder
я конечно извиняюсь за оффтоп
НО ЭТО ПИЗДЕЦ

пашкела, я твой фанат

delete from posts where username='Pashkela'

А я твой :D

Spyder 31.07.2009 02:30

я пшп не знаю)

n0ne 31.07.2009 02:31

И ещё, вместо header(), здесь лучше юзай js:

Цитата:

<script type="text/javascript">
window.location = "http://www.google.com/"
</script>

Pashkela 31.07.2009 02:31

да, js наше всё, особенно когда он отключен

n0ne 31.07.2009 02:33

Цитата:

да, js наше всё, особенно когда он отключен
Наверняка это особые условия =(

Pashkela 31.07.2009 02:36

2 n0ne:

Ты тоже мой фанат?:)

По сабжу - чем js тут лучше чем просто header('location:url') or die('be-be');???

n0ne 31.07.2009 02:38

Pashkela, нет, ты меня бесишь и у тебя ублюдочная аватарка, помимо того, что просто клоун :-*

Ничем, просто здесь будет достаточно хтмл форму после пхп пустить, а когда кода много удобнее не гемороица и юзать js. Короче, просто мне так удобнее и привычнее.

Lionis 31.07.2009 02:38

test пашет , а test2 вместо того чтобы на Yandex - выдаешь страницу ошибки google , как при условии неверного введения ...
PHP код:


<form>
<input type="text" name="url">
</form>
<?php
if(isset($_GET['url']))
{
switch(
$_GET['url'])//)
{
case 
"test":
header("location:http://google.ru");
break;
case 
"test2":
header("location:http://yandex.ru");
default;
header("location:http://google.ru?error");
break;
}
}
?>


rushter 31.07.2009 02:40

Цитата:

Сообщение от Lionis
test пашет , а test2 вместо того чтобы на Yandex - выдаешь страницу ошибки google , как при условии неверного введения ...
PHP код:


<form>
<input type="text" name="url">
</form>
<?php
if(isset($_GET['url']))
{
switch(
$_GET['url'])//)
{
case 
"test":
header("location:http://google.ru");
break;
case 
"test2":
header("location:http://yandex.ru");
default;
header("location:http://google.ru?error");
break;
}
}
?>


Мой код скопируй вверху который,тут break; не хватает.

n0ne 31.07.2009 02:41

После header("location:http://yandex.ru"); добавь break;

Короче, вот готовый вариант:

Цитата:

<?php
if(isset($_GET['url']))
{
switch($_GET['url'])
{
case "test":
header("location:http://google.ru");
break;
case "test2":
header("location:http://yandex.ru");
break;
default:
header("location:http://google.ru?error");
break;
}
}
?>
<form>
<input type="text" name="url">
</form>

Pashkela 31.07.2009 02:43

Цитата:

Сообщение от n0ne
Pashkela, нет, ты меня бесишь и у тебя ублюдочная аватарка, помимо того, что просто клоун :-*

Ничем, просто здесь будет достаточно хтмл форму после пхп пустить, а когда кода много удобнее не гемороица и юзать js. Короче, просто мне так удобнее и привычнее.

Не, что бешу, это понятно, а если опять по сабжу - ну если javascript в браузере отключен, то что? Несмотря на то, что так привычней? Какие действия, как проверять будешь и etc. Я серьезно. Просто интересно, может пригодится

Spyder 31.07.2009 02:45

ну да, тут серьёзная бага, если отключён js то можно попасть в эту часть кода

Цитата:

<form>
<input type="text" name="url">
</form>
а здесь уже сам понимкаешь и до заливки шелла недалеко

Lionis 31.07.2009 02:46

rushter , n0ne , Spyder Большое вам спасибо ! Все работат - всем +10 , Pashkela ^_^

Pashkela 31.07.2009 02:46

Spyder фишку рубит, но хотелось бы услышать n0ne

n0ne 31.07.2009 02:47

Pashkela, юзать js в каком-то проекте не буду, буду юзать хэдеры или на крайняк, если уж совсем припрет - инклюдить meta-редирект

Pashkela 31.07.2009 02:48

А, понятно. Ну, проблему автору темы решили, всем гуртом, и слава богу

Spyder 31.07.2009 02:58

мне не за что спасибо, я ничем не поиог и пшп не знаю ввобще. в тему случайно попал

Pashkela 31.07.2009 03:00

2 Spyder:

Ну как же, ты развил тему и предложил сразу два новых способа залить шелл - грины как всегда на высоте. Зачод

Spyder 31.07.2009 03:10

такая вот у нас, у гринов, работа

m0Hze 31.07.2009 03:17

Ура, теперь МОА тоже грины!

Ctacok 31.07.2009 07:41

Цитата:

Сообщение от Pashkela
2 rushter:

Кривда. Только школьники уже не знают, что после

header("location:http://google.ru?error");

надо писать

or die('Ошибон');

дальше сам додумкаешь

Знаю :D


Время: 03:46