Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Помогите раскусить хитрость программиста.

Сообщения:  [1-9] 

 
 автор: Indemion   (27.02.2007 в 13:02)   письмо автору
 
   для: Indemion   (17.02.2007 в 21:27)
 

А как теперь сделать так, что щелкая по картинке попадать именно на фигуру? Если я не попадаю, то все приходится вводить заново? Что-то я не нашел какой там код?

Пока додумался только до такой вставочки.

$string_start = strpos($line, "/captcha_show.phtml?");
$string_end = strpos($line, 'style="border-style: solid; border-width: 1; border-color: black;">');
$string = substr($line, $string_start, $string_end - $string_start - 2);
$path2 = "/haggle.phtml?".$string;


Или дело не в этой строке?

<input type="image" src="/captcha_show.phtml?_x_pwned=abfc7eca658bdc8ced7f95e611ef2c30" style="border-style: solid; border-width: 1; border-color: black;">

   
 
 автор: Indemion   (17.02.2007 в 21:27)   письмо автору
 
   для: Indemion   (14.02.2007 в 13:23)
 

Cпасибо, на 50% получилось.

   
 
 автор: Indemion   (14.02.2007 в 13:23)   письмо автору
 
   для: kasmanaft   (13.02.2007 в 21:51)
 

Попробую, спасибо. Я программу скорее всего на VB буду писать, просто пытаюсь понять механизм защиты.

Да, после подтверждения еще и на картинку надо нажать, но это я уже решил на VB. Сложность в том, как перейти от выбора предмета + нажатие + подтверждение к следующей странице, где уже нужно вводить цену и нажимать как подтверждающую картинку :)

Видимо у меня проблемы с пониманием соккета + понимание реферера.

А меняется только две вещи, а именно id (obj_info_id=8591&stock_id=878629824). Видимо наличие и сам предмет.

Буду пробовать. Может имеет смысл попросить помощь за вознаграждение.

   
 
 автор: kasmanaft   (13.02.2007 в 21:51)   письмо автору
 
   для: Indemion   (13.02.2007 в 11:21)
 

Эх.. Обшарил штук 10 магазинов в поисках дешевых товаров, а там оказывается после подтверждения еще понажимать нуда перед тем, как купить :D

Действительно, проверяют реферер (ну и, конечно, наличие куков)

<?php
$hostname 
"neopets.com"
$path "/haggle.phtml?obj_info_id=8591&stock_id=878629824&g=3"
// часть после %, как я понял меняется. Скорее всего дается при авторизации.
// возьмите из своих кук и воткните в скрипт для теста.
// (сначала лучше так попробовать)
$cookie "neologin=anna_mellamory%2BVN5TZL6VCZCVCKC1;"

$line "";
$fp fsockopen($hostname80$errno$errstr30); 
if (
$fp
{
    
$headers "GET $path HTTP/1.1\r\n"
    
$headers .= "Host: $hostname\r\n"
    
$headers .= "Cookie: ".$cookie."\r\n"
    
$headers .= "Referer: http://www.neopets.com/objects.phtml?type=shop&obj_type=37\r\n"
    
$headers .= "Connection: Close\r\n\r\n"

    
fwrite($fp$headers); 
    while (!
feof($fp)) 
        
$line .= fgets($fp1024); 
    
fclose($fp); 
}

echo 
substr($linestrpos($line"\r\n\r\n"));
?>

   
 
 автор: Indemion   (13.02.2007 в 11:21)   письмо автору
 
   для: kasmanaft   (12.02.2007 в 21:10)
 

Пароль не жалко, можно зарегистрировать аккаунтов много. Да и не думаю, что кто-то здесь будет воровать у ребенка.

Давайте я попробую описать ситуацию подробней. Мой ребенок играет в онлайноваю браузерную игру. Чтобы зарабатывать деньги нужно покупать в магазине одни предметы, и перепродавать другим игрокам. Предметы появляются случайно при обновлении страницы. Примерно один раз в 10-20 минут. Нужно сидеть и тупо жать рефреш. Трафик жрется порядочно. :)
Предметов мало и можно успеть не купить. Ребенок нервничает, и обратился ко мне с просьбой помочь. Я хочу написать программу немного облегчающую ему задачу. Разработчиками это не запрещено.

Logon: anna_mellamory
Пароль: buster#

Вот линк на один из магазинов:
http://www.neopets.com/objects.phtml?type=shop&obj_type=46
Далее нажимаешь на предмет, подтвержаетшь желание купить и переходишь к экрану покупки товара.

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

   
 
 автор: kasmanaft   (12.02.2007 в 21:10)   письмо автору
 
   для: indemion   (12.02.2007 в 20:24)
 

>> Если для решения задачи нужен логин и пароль, я могу их дать. Спасибо.
Ну, если не страшно их потерять, мало ли..... можно было бы сказать точнее.

На мой взгляд там стоит проверка реферера - можно проверить это с помощью сокетов (но нужен пароль+логин).

Или сами попробуйте:
<?php
    $hostname 
"neopets.com";
    
$path "/haggle.phtml?obj_info_id=20807&stock_id=633969465&brr=1366";
    
$line "";
    
$cookie "pass=123;name=admin;";

    
$fp fsockopen($hostname80$errno$errstr30);
    if (
$fp)
    {
        
$headers "GET $path HTTP/1.1\r\n";
        
$headers .= "Host: $hostname\r\n";
        
$headers .= "Cookie: ".$cookie."\r\n";
        
$headers .= "Referer: http://страница откуда можно попасть на данную\r\n";
        
$headers .= "Connection: Close\r\n\r\n";

        
fwrite($fp$headers);
        while (!
feof($fp))
            
$line .= fgets($fp1024);
        
fclose($fp);
    }

Подставте свои данные в $cookie, правильно обзавите их (нужно посмотреть имена куков) и вывидите $line после... Можно посмотреть что будет с реферером и без него.

   
 
 автор: indemion   (12.02.2007 в 20:24)   письмо автору
 
   для: AlexSol   (12.02.2007 в 17:43)
 

Конечно. Я привел код программы для примера. Я могу залогинится и ошибка будет повторятся.

Мне важно понять почему оба линка неправильные и в чем хитрость. Почему нужно обязательно использовать javascript, что пройти по линку. Может быть дело в return? Или первый линк это обманка? А второй верный только если идет с сайта? Может быть такое, что линк работает только тогда когда непосредственно запускается с сайта программы?

Если для решения задачи нужен логин и пароль, я могу их дать. Спасибо.

   
 
 автор: AlexSol   (12.02.2007 в 17:43)   письмо автору
 
   для: Indemion   (12.02.2007 в 17:22)
 

>При попытке скопировать и перейти по линку
neopets.com/haggle.phtml?obj_info_id=20807&stock_id=633969465&g=3 получаю ошибку.
>
>При попытке пройти по линку
neopets.com/haggle.phtml?obj_info_id=20807&stock_id=633969465&brr=1366 тоже ошибка.


http://neopets.com/haggle.phtml?obj_info_id=20807&stock_id=633969465&brr=1366
-не ошибка, а говорит что вы не залогинены.

   
 
 автор: Indemion   (12.02.2007 в 17:22)   письмо автору
 
 

Вот вся строка кода:
<A href="haggle.phtml?obj_info_id=20807&stock_id=633969465&g=3" onClick="this.href='haggle.phtml?ob'+'j_info_id=20807&stock_id=633969465&brr=1366';if (!confirm('Are you sure you wish to purchase Mr Irgo Stamp at 951 NP?\n\n(you can still haggle to push the price lower!)')) { return false; }">
<IMG src="http://images.neopets.com/items/stamp_neoquest_irgo.gif" width="80" height="80" alt="This black market dealer is now immortalised in stamp form!" title="This black market dealer is now immortalised in stamp form!" border="1">
</A>


При попытке скопировать и перейти по линку neopets.com/haggle.phtml?obj_info_id=20807&stock_id=633969465&g=3 получаю ошибку.

При попытке пройти по линку neopets.com/haggle.phtml?obj_info_id=20807&stock_id=633969465&brr=1366 тоже ошибка.

Почему? В чем хитрость программиста? Если делать все с сайта, то нормально переходит по линку.

Заранее спасибо.

   

Сообщения:  [1-9] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования